.ui-root{--app-bg: var(--tg-theme-bg-color, #ffffff);--app-section-bg: var(--tg-theme-section-bg-color, #ffffff);--app-card-bg: var(--tg-theme-bg-color, #ffffff);--app-border: var(--tg-theme-section-separator-color, rgba(0, 0, 0, .12));--app-text: var(--tg-theme-text-color, #11181c);--app-hint: var(--tg-theme-hint-color, #788898);min-height:100vh;color:var(--app-text);-webkit-tap-highlight-color:transparent}.ui-root-dark{--app-bg: #0c0f14;--app-section-bg: #171b22;--app-card-bg: #12161c;--app-border: rgba(255, 255, 255, .12);--app-text: #f2f5f8;--app-hint: #9aa4b4;color-scheme:dark}.ui-root-light{color-scheme:light}.app-shell{min-height:100vh;max-width:840px;margin:0 auto;padding-top:max(10px,calc(env(safe-area-inset-top) + 20px));padding-right:max(10px,env(safe-area-inset-right));padding-bottom:calc(78px + max(12px,env(safe-area-inset-bottom)));padding-left:max(10px,env(safe-area-inset-left));display:flex;flex-direction:column;gap:10px}.page-content{display:flex;flex-direction:column;gap:10px}.ui-section{border-radius:14px;border:1px solid var(--app-border);background:var(--app-section-bg);overflow:hidden}.ui-section-header{padding:12px 14px 4px;color:var(--app-hint);font-size:14px;font-weight:600}.ui-section-body{padding:12px;display:flex;flex-direction:column;gap:10px}.ui-section-footer{padding:0 14px 12px;color:var(--app-hint);font-size:13px;line-height:1.35}.ui-avatar{border-radius:50%;display:grid;place-items:center;font-weight:700;letter-spacing:.3px;color:var(--tg-theme-button-text-color, #fff);background:linear-gradient(140deg,#3ca5ff,#1f7bff);overflow:hidden}.ui-avatar-image{width:100%;height:100%;object-fit:cover;display:block}.ui-btn{min-width:0;border-radius:12px;border:1px solid transparent;padding:0 14px;font-weight:600;cursor:pointer;transition:opacity .18s ease,transform .08s ease;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.ui-btn:active{transform:translateY(1px)}.ui-btn:disabled{opacity:.5;cursor:default;transform:none}.ui-btn-s{min-height:34px;font-size:13px}.ui-btn-m{min-height:40px;font-size:14px}.ui-btn-l{min-height:44px;font-size:15px}.ui-btn-filled{background:var(--tg-theme-button-color, #248dff);color:var(--tg-theme-button-text-color, #ffffff)}.ui-btn-outline{background:transparent;color:var(--app-text);border-color:var(--app-border)}.ui-btn-bezeled{background:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 14%,transparent);color:var(--tg-theme-link-color, #248dff)}.ui-btn-plain{background:transparent;color:var(--tg-theme-destructive-text-color, #d34f4f);border-color:transparent}.btn-with-icon{display:inline-flex;align-items:center;justify-content:center;gap:6px}.ui-list{display:flex;flex-direction:column;gap:8px}.ui-cell{border:1px solid var(--app-border);border-radius:12px;background:var(--app-card-bg);display:flex;align-items:flex-start;gap:10px;padding:10px 12px;color:inherit;text-align:left}.ui-cell-clickable{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.ui-cell-before{display:flex;align-items:center}.ui-cell-main{flex:1;min-width:0}.ui-cell-title{font-size:15px;font-weight:600;line-height:1.3;overflow-wrap:anywhere}.ui-cell-subtitle{margin-top:2px;font-size:13px;color:var(--app-hint);line-height:1.3}.ui-cell-description{margin-top:4px;font-size:13px;color:var(--app-hint);line-height:1.35}.ui-cell-after{align-self:flex-start;margin-left:auto;max-width:46%;overflow-wrap:anywhere;text-align:right;flex-shrink:0;font-size:14px;color:var(--app-text);white-space:normal}.ui-field{display:grid;gap:6px}.ui-field-label{font-size:13px;color:var(--app-hint)}.ui-input{width:100%;box-sizing:border-box;border-radius:12px;border:1px solid var(--app-border);background:var(--app-card-bg);color:var(--app-text);padding:10px 12px;min-height:42px;outline:none;font-size:15px}.ui-input:focus{border-color:var(--tg-theme-link-color, #248dff)}.ui-textarea{resize:vertical;min-height:104px}.ui-placeholder{border:1px dashed var(--app-border);border-radius:12px;padding:18px 14px;text-align:center}.ui-placeholder-title{margin:0;font-size:18px;font-weight:700}.ui-placeholder-description{margin:8px 0 0;color:var(--app-hint);font-size:14px;line-height:1.35}.app-head{display:flex;align-items:center;gap:10px}.app-title{margin:0;font-size:19px;font-weight:700}.app-subtitle{margin:3px 0 0;color:var(--app-hint);font-size:13px}.tab-row{margin-top:2px;display:flex;gap:8px}.tab-row .ui-btn{flex:1}.form-grid{display:flex;flex-direction:column;gap:10px}.form-label{margin:4px 0 0;color:var(--app-hint);font-size:13px}.feed-toolbar{display:flex;gap:8px}.feed-toolbar .ui-btn{flex:1}.feed-inline-hint{margin:0;color:var(--app-hint);font-size:13px}.task-feed-list{display:grid;gap:8px}.task-feed-card{border:1px solid var(--app-border);border-radius:12px;background:var(--app-card-bg);padding:11px;display:flex;flex-direction:column;gap:8px}.task-feed-card-head{display:flex;align-items:flex-start;gap:10px}.task-feed-card-title{margin:0;flex:1;min-width:0;font-size:15px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}.task-feed-card-budget{margin:0;font-size:14px;font-weight:700;color:var(--tg-theme-link-color, #248dff);text-align:right;flex-shrink:0}.task-feed-meta-row{display:flex;flex-wrap:wrap;gap:6px}.task-feed-meta-chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--app-border);padding:4px 9px;font-size:12px;color:var(--app-hint);background:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 6%,transparent)}.task-feed-description{margin:0;font-size:14px;line-height:1.4;color:var(--app-text);white-space:pre-wrap}.task-feed-readmore-row{display:flex;justify-content:flex-start}.task-feed-actions{display:flex;gap:8px}.task-feed-actions .ui-btn{flex:1}.task-detail-head{display:flex;align-items:flex-start;gap:10px}.task-detail-title{margin:0;flex:1;min-width:0;font-size:17px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}.task-detail-budget{margin:0;font-size:16px;font-weight:700;color:var(--tg-theme-link-color, #248dff);text-align:right;flex-shrink:0}.task-detail-customer-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-detail-customer-text{margin:0;color:var(--app-hint);font-size:13px}.task-detail-description{margin:0;font-size:14px;line-height:1.45;color:var(--app-text);white-space:pre-wrap}.task-detail-description-clamped{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.chip-row,.row-actions{display:flex;flex-wrap:wrap;gap:8px}.row-actions>*{flex:1 1 180px}.row-actions-tight>*{flex-basis:120px}.role-choice-grid{display:flex;flex-direction:column;gap:8px}.role-choice-card{width:100%;border:1px solid var(--app-border);border-radius:12px;background:var(--app-card-bg);padding:12px;text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;transition:border-color .18s ease,background-color .18s ease}.role-choice-card:active{border-color:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 42%,var(--tg-theme-section-separator-color, rgba(0, 0, 0, .14)));background:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 8%,var(--tg-theme-bg-color, #ffffff))}.role-choice-card:disabled{opacity:.62;cursor:default}.role-choice-title{font-size:15px;font-weight:700;color:var(--app-text)}.role-choice-description{font-size:13px;color:var(--app-hint);line-height:1.35}.role-switch-row{display:flex;flex-wrap:wrap;gap:8px}.role-switch-row .ui-btn{flex:1 1 170px}.inline-hint{margin:2px 0 0;color:var(--app-hint);font-size:13px}.proposal-list{display:grid;gap:8px}.proposal-card{border:1px solid var(--app-border);border-radius:12px;padding:11px;background:var(--app-card-bg)}.proposal-title{margin:0;font-size:15px;font-weight:600}.proposal-head{display:flex;align-items:center;gap:10px}.proposal-head-main{min-width:0}.proposal-mini-meta{margin:2px 0 0;color:var(--app-hint);font-size:12px;line-height:1.3}.proposal-meta{margin:4px 0 0;color:var(--app-hint);font-size:13px}.proposal-skill-row{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}.proposal-skill-chip{border-radius:999px;border:1px solid var(--app-border);padding:3px 8px;font-size:12px;color:var(--app-text);background:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 7%,transparent)}.proposal-mini-about{margin:8px 0 0;color:var(--app-hint);font-size:13px;line-height:1.35}.proposal-mini-portfolio{margin:6px 0 0;color:var(--tg-theme-link-color, #248dff);font-size:12px;line-height:1.3}.proposal-comment{margin:8px 0 0;font-size:14px;line-height:1.35}.proposal-actions{margin-top:10px;display:flex;gap:8px}.proposal-actions>*{flex:1 1 140px}.proposal-form{margin-top:10px}.proposal-profile-gate{margin-top:10px;border:1px dashed var(--app-border);border-radius:12px;padding:10px}.proposal-profile-gate-title{margin:0 0 6px;font-size:14px;font-weight:600}.profile-check-list{display:grid;gap:4px}.profile-check-item{margin:0;color:var(--app-hint);font-size:13px;line-height:1.35}.account-menu-after{display:inline-flex;align-items:center;gap:6px;color:var(--app-hint)}.account-menu-after-text{font-size:12px;line-height:1;white-space:nowrap}.status-history-list{display:grid;gap:8px}.status-history-card{border:1px solid var(--app-border);border-radius:12px;padding:10px 11px;background:var(--app-card-bg)}.status-history-line{margin:0;font-size:14px;font-weight:600}.status-history-meta{margin:4px 0 0;color:var(--app-hint);font-size:13px}.status-history-comment{margin:8px 0 0;font-size:14px;line-height:1.35}.status-chip{display:inline-flex;align-items:center;border:1px solid var(--app-border);border-radius:999px;padding:2px 8px;font-size:12px;line-height:1.2}.status-chip-error{border-color:color-mix(in srgb,#ea5f6d 52%,var(--app-border));color:color-mix(in srgb,#ea5f6d 82%,var(--app-text))}.status-chip-warn{border-color:color-mix(in srgb,#d7a347 52%,var(--app-border));color:color-mix(in srgb,#d7a347 82%,var(--app-text))}.status-chip-info{border-color:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 52%,var(--app-border));color:var(--tg-theme-link-color, #248dff)}.admin-log-context{margin:8px 0 0;border:1px solid var(--app-border);border-radius:10px;padding:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:11px;line-height:1.35;white-space:pre-wrap;overflow-x:auto}.notification-list{display:grid;gap:8px}.notification-card{border:1px solid var(--app-border);border-radius:12px;padding:10px 11px;background:var(--app-card-bg)}.notification-unread{border-color:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 45%,var(--tg-theme-section-separator-color, rgba(0, 0, 0, .12)))}.notification-read{opacity:.9}.notification-title{margin:0;font-size:14px;font-weight:600}.notification-body{margin:6px 0 0;font-size:14px;line-height:1.35}.notification-meta{margin:7px 0 0;color:var(--app-hint);font-size:12px}.notification-actions{margin-top:8px}.notification-actions .ui-btn{width:100%}.task-chat-list{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto;padding-right:2px}.task-chat-message{max-width:88%;border:1px solid var(--tg-theme-section-separator-color, rgba(0, 0, 0, .14));border-radius:12px;padding:8px 10px}.task-chat-message-own{align-self:flex-end;background:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 12%,transparent)}.task-chat-message-other{align-self:flex-start;background:var(--tg-theme-bg-color, #ffffff)}.task-chat-author{margin:0;font-size:12px;color:var(--tg-theme-hint-color, #788898)}.task-chat-text{margin:4px 0 0;font-size:14px;line-height:1.35;white-space:pre-wrap}.task-chat-meta{margin:6px 0 0;font-size:11px;color:var(--tg-theme-hint-color, #788898)}.task-chat-form{display:flex;flex-direction:column;gap:8px}.bottom-nav{position:fixed;z-index:40;left:50%;transform:translate(-50%);bottom:max(6px,env(safe-area-inset-bottom));width:min(840px,calc(100vw - 16px));display:flex;gap:8px;padding:8px;border-radius:16px;border:1px solid var(--app-border);background:color-mix(in srgb,var(--app-section-bg) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bottom-nav-item{flex:1;min-height:50px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--app-hint);display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:600;position:relative;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.bottom-nav-item-active{color:var(--tg-theme-link-color, #248dff);background:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 12%,transparent);border-color:color-mix(in srgb,var(--tg-theme-link-color, #248dff) 30%,transparent)}.bottom-nav-badge{position:absolute;top:4px;right:10px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--tg-theme-destructive-text-color, #d34f4f);color:#fff;font-size:11px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.error-text{margin:2px 0 0;color:var(--tg-theme-destructive-text-color, #cc4b4b);font-size:14px}.visually-hidden-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}body{margin:0;min-width:320px;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--tg-theme-secondary-bg-color, #f4f4f7)}#root{min-height:100vh}
