@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap";:root,:root[data-theme=dark]{--surface-page:#090a0f;--surface-card:#12131c;--surface-raised:#181a25;--surface-3:#1e2130;--inset:#0d0e15;--surface-sidebar:#0d0e15f5;--surface-hover:#ffffff0d;--text-primary:#eceef5;--text-secondary:#9ba1b6;--text-muted:#61667a;--text-inverse:#eceef5;--text-inverse-muted:#9ba1b6;--accent:#7c83ff;--accent-2:#a78bfa;--accent-strong:#6a71f0;--accent-soft:#7c83ff24;--accent-line:#7c83ff66;--accent-contrast:#fff;--glow:0 0 0 1px #7c83ff73, 0 10px 34px -8px #7c83ff8c;--glow-1:#7c83ff33;--glow-2:#38bdf81f;--border:#ffffff12;--border-strong:#ffffff21;--gridline:#ffffff12;--shadow-card:0 1px 2px #00000080, 0 20px 44px -22px #000000d9;--shadow-pop:0 40px 80px -24px #000000d9;--series-1:#7c83ff;--series-2:#38bdf8;--series-3:#a78bfa;--series-4:#34d399;--series-5:#fbbf24;--danger:#fb7185;--danger-soft:#fb718524;--success:#34d399}:root[data-theme=light]{--surface-page:#eceef4;--surface-card:#fff;--surface-raised:#f6f7fb;--surface-3:#eef0f6;--inset:#f1f2f8;--surface-sidebar:#f8f9fcf5;--surface-hover:#11131c0a;--text-primary:#12131c;--text-secondary:#565a6e;--text-muted:#8a8ea3;--text-inverse:#12131c;--text-inverse-muted:#565a6e;--accent:#5b53f0;--accent-2:#7c3aed;--accent-strong:#4f46e5;--accent-soft:#5b53f01a;--accent-line:#5b53f059;--accent-contrast:#fff;--glow:0 0 0 1px #5b53f04d, 0 10px 28px -8px #5b53f080;--glow-1:#5b53f024;--glow-2:#0ea5e917;--border:#11131c17;--border-strong:#11131c29;--gridline:#11131c17;--shadow-card:0 1px 2px #11131c0f, 0 18px 38px -18px #11131c38;--shadow-pop:0 34px 66px -22px #11131c47;--series-1:#5b53f0;--series-2:#0ea5e9;--series-3:#7c3aed;--series-4:#16a34a;--series-5:#d97706;--danger:#e11d48;--danger-soft:#e11d4814;--success:#16a34a}:root{--status-todo:#8b8fa3;--status-in-progress:#7c83ff;--status-review:#a78bfa;--status-done:#34d399;--priority-low:#8b8fa3;--priority-medium:#7c83ff;--priority-high:#a78bfa;--priority-urgent:#fb7185;--radius-sm:11px;--radius-md:12px;--radius-lg:20px;--radius-pill:999px;--font-sans:"Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Space Grotesk", var(--font-sans);--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:18px;--text-xl:23px;--text-hero:34px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background:var(--surface-page);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}:root[data-theme] *{transition:background-color .45s,border-color .45s,color .3s,box-shadow .45s,fill .4s,stroke .4s}body:before,body:after{content:"";filter:blur(32px);pointer-events:none;z-index:0;border-radius:50%;position:fixed}body:before{background:radial-gradient(circle, var(--glow-1), transparent 62%);width:620px;height:620px;animation:18s ease-in-out infinite floatA;top:-160px;left:-120px}body:after{background:radial-gradient(circle, var(--glow-2), transparent 62%);width:680px;height:680px;animation:22s ease-in-out infinite floatB;bottom:-220px;right:-140px}@keyframes floatA{0%,to{transform:translate(0)scale(1)}50%{transform:translate(50px,-36px)scale(1.08)}}@keyframes floatB{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-40px,34px)scale(1.12)}}h1,h2,h3,p{margin:0}.page-title,.panel-title,.modal-title,.kpi-value,.sidebar-logo{font-family:var(--font-display);letter-spacing:-.02em}button{font-family:inherit;font-size:inherit;color:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:var(--text-base);color:var(--text-primary)}a{color:inherit;text-decoration:none}.field{gap:var(--space-1);flex-direction:column;display:flex}.field-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.input,.select,.textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);outline:none;padding:9px 12px;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.textarea{resize:vertical;min-height:72px}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;padding:9px 16px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:var(--accent-contrast);box-shadow:var(--glow)}.btn-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.btn-ghost{border-color:var(--border);color:var(--text-primary);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-hover)}.btn-danger{color:var(--danger);background:0 0;border-color:#0000}.btn-danger:hover:not(:disabled){background:var(--danger-soft)}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){filter:brightness(.94)}.btn-sm{font-size:var(--text-sm);padding:5px 10px}.card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.form-error{font-size:var(--text-sm);color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.error-boundary{text-align:center;gap:var(--space-3);max-width:480px;padding:var(--space-5);flex-direction:column;align-items:center;margin:15vh auto;display:flex}.error-boundary h1{font-size:var(--text-xl)}.error-boundary p{color:var(--text-secondary)}.app-shell{z-index:1;grid-template-columns:250px 1fr;height:100%;display:grid;position:relative}.sidebar{background:var(--surface-sidebar);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-right:1px solid var(--border);color:var(--text-primary);gap:var(--space-5);flex-direction:column;padding:22px 16px;display:flex}.sidebar-logo{font-size:var(--text-lg);letter-spacing:-.02em;padding:0 var(--space-2);align-items:center;gap:10px;font-weight:700;display:flex}.sidebar-logo-mark{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;width:34px;height:34px;box-shadow:var(--glow);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sidebar-logo span{color:var(--accent-2)}.sidebar-nav{gap:var(--space-1);flex-direction:column;display:flex}.nav-link{align-items:center;gap:var(--space-3);padding:10px var(--space-3);border-radius:var(--radius-sm);color:var(--text-secondary);font-weight:500;transition:background .15s,color .15s,box-shadow .15s;display:flex}.nav-link:hover{color:var(--text-primary);background:var(--surface-hover)}.nav-link.active{color:var(--text-primary);background:var(--surface-card);box-shadow:inset 0 0 0 1px var(--border-strong), var(--shadow-card)}.sidebar-footer{align-items:center;gap:var(--space-3);padding:var(--space-2);margin-top:auto;display:flex}.sidebar-footer .who{flex:1;min-width:0}.sidebar-footer .who .name{font-size:var(--text-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sidebar-footer .who .role{font-size:var(--text-xs);color:var(--text-muted)}.logout-btn,.theme-toggle{color:var(--text-muted);padding:var(--space-2);border-radius:var(--radius-sm);background:0 0;border:none;line-height:0}.logout-btn:hover,.theme-toggle:hover{color:var(--text-primary);background:var(--surface-hover)}.theme-toggle{align-self:flex-start;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);padding:8px 10px;font-weight:600;line-height:1;display:inline-flex}.main-area{padding:28px 34px 48px;overflow-y:auto}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.page-title{font-size:var(--text-xl);letter-spacing:-.02em;font-weight:700}.page-subtitle{color:var(--text-muted);margin-top:var(--space-1)}.avatar{border-radius:var(--radius-pill);color:#fff;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.badge{border-radius:var(--radius-pill);font-size:var(--text-xs);border:1px solid var(--border);color:var(--text-secondary);background:var(--surface-raised);align-items:center;gap:6px;padding:3px 10px;font-weight:600;display:inline-flex}.badge .dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:7vh var(--space-4) var(--space-4);z-index:50;background:#06070c9e;justify-content:center;align-items:flex-start;animation:.2s fadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);width:100%;max-width:640px;padding:var(--space-5);gap:var(--space-4);flex-direction:column;animation:.22s cubic-bezier(.2,.8,.3,1) pop;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.94)translateY(6px)}to{opacity:1;transform:none}}.modal-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.modal-title{font-size:var(--text-lg);font-weight:700}.icon-btn{color:var(--text-muted);border-radius:var(--radius-sm);padding:var(--space-1);background:0 0;border:none;line-height:0}.icon-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.empty-state{text-align:center;color:var(--text-muted);padding:var(--space-6)}.spinner{border:2.5px solid var(--border);border-top-color:var(--accent);width:22px;height:22px;margin:var(--space-6) auto;border-radius:50%;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.app-shell{grid-template-columns:64px 1fr}.sidebar{padding:var(--space-4) var(--space-2);align-items:center}.sidebar-logo,.nav-link span,.sidebar-search span,.sidebar-search kbd,.theme-toggle span,.sidebar-footer .who{display:none}.nav-link,.sidebar-search,.theme-toggle{justify-content:center;align-self:center;gap:0;width:40px;height:40px;padding:0}.sidebar-nav{align-items:center}.sidebar-footer{gap:var(--space-2);flex-direction:column;padding:0}.main-area{padding:var(--space-4)}}.kpi-grid{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.kpi-tile{padding:var(--space-4) var(--space-5)}.kpi-label{font-size:var(--text-sm);color:var(--text-secondary)}.kpi-value{font-size:var(--text-hero);letter-spacing:-.02em;margin-top:var(--space-1);font-weight:650}.kpi-value.danger{color:var(--danger)}.kpi-tile-row{justify-content:space-between;align-items:flex-end;gap:var(--space-3);display:flex}.kpi-tile{transition:transform .18s,box-shadow .18s,border-color .18s}.kpi-tile:hover{border-color:var(--border-strong);transform:translateY(-2px)}.sparkline path{stroke-dasharray:1;stroke-dashoffset:1px;animation:1.1s .15s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}.live-indicator{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);font-variant-numeric:tabular-nums;display:inline-flex}.live-dot{background:var(--success);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--success) 25%, transparent);border-radius:50%;animation:1.8s ease-in-out infinite livePulse}@keyframes livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.68)}}.donut-wrap{align-items:center;gap:var(--space-5);flex-wrap:wrap;display:flex}.donut-chart{flex-shrink:0;width:180px;position:relative}.donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-total{font-family:var(--font-display);font-size:28px;font-weight:700;line-height:1}.donut-total-label{font-size:var(--text-xs);color:var(--text-muted)}.donut-legend{gap:var(--space-2);flex-direction:column;flex:1;min-width:160px;display:flex}.donut-legend-row{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.donut-legend-row .dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.donut-legend-name{color:var(--text-secondary);flex:1}.donut-legend-count{font-variant-numeric:tabular-nums;font-weight:650}.dashboard-grid{gap:var(--space-4);grid-template-columns:3fr 2fr;align-items:start;display:grid}.panel{padding:var(--space-4) var(--space-5) var(--space-5)}.panel-title{font-size:var(--text-md);margin-bottom:var(--space-4);font-weight:650}.team-load-row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;display:flex}.team-load-row .name{text-overflow:ellipsis;white-space:nowrap;width:140px;font-size:var(--text-sm);overflow:hidden}.team-load-track{border-radius:var(--radius-pill);background:var(--accent-soft);flex:1;height:8px;overflow:hidden}.team-load-fill{border-radius:var(--radius-pill);background:var(--accent);height:100%}.team-load-count{text-align:right;width:56px;font-size:var(--text-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums}.activity-list{flex-direction:column;display:flex}.activity-item{gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--gridline);display:flex}.activity-item:first-child{border-top:none}.activity-body{min-width:0;font-size:var(--text-sm);flex:1;line-height:1.45}.activity-body .task{font-weight:600}.activity-body .detail{color:var(--text-secondary)}.activity-time{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.tasks-toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.tasks-toolbar .input{width:240px}.view-switch{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);display:inline-flex;overflow:hidden}.view-switch button{color:var(--text-muted);background:0 0;border:none;padding:8px 14px;font-weight:600}.view-switch button.active{background:var(--accent-soft);color:var(--accent-strong)}.kanban{gap:var(--space-4);grid-template-columns:repeat(4,minmax(220px,1fr));align-items:start;display:grid}.kanban-col{background:var(--inset);border-radius:var(--radius-lg);padding:var(--space-3);outline-offset:-2px;outline:2px solid #0000;min-height:200px;transition:background .15s,outline-color .15s}.kanban-col.over{background:var(--accent-soft);outline-color:var(--accent)}.kanban-col-head{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:650;display:flex}.kanban-col-head .dot{border-radius:50%;width:9px;height:9px}.kanban-col-head .count{color:var(--text-muted);font-weight:500}.kanban-cards{gap:var(--space-2);flex-direction:column;display:flex}.task-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);cursor:grab;transition:box-shadow .15s,border-color .15s,opacity .15s}.task-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card);transform:translateY(-2px)}.task-card.dragging{opacity:.4}.task-card-title{margin-bottom:var(--space-2);overflow-wrap:anywhere;font-weight:550;line-height:1.35}.task-card-meta{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}.task-card-meta .spacer{flex:1}.meta-chip{align-items:center;gap:4px;display:inline-flex}.meta-chip.overdue{color:var(--danger);font-weight:600}.tag-chip{background:var(--surface-hover);border-radius:var(--radius-pill);color:var(--text-secondary);padding:1px 8px}.tasks-table{border-collapse:collapse;width:100%}.tasks-table th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--gridline);font-weight:600}.tasks-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--gridline);font-size:var(--text-base)}.tasks-table tr:last-child td{border-bottom:none}.tasks-table tbody tr{cursor:pointer;transition:background .1s}.tasks-table tbody tr:hover{background:var(--surface-hover)}.due-overdue{color:var(--danger);font-weight:600}.task-form-grid{gap:var(--space-3) var(--space-4);grid-template-columns:1fr 1fr;display:grid}.task-form-grid .full{grid-column:1/-1}.comments-section{border-top:1px solid var(--gridline);padding-top:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.comment{gap:var(--space-3);display:flex}.comment-bubble{background:var(--surface-hover);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);flex:1}.comment-head{justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);margin-bottom:2px;display:flex}.comment-head .author{color:var(--text-secondary);font-weight:600}.comment-body{font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.45}.comment-form{gap:var(--space-2);display:flex}.comment-form .input{flex:1}.team-table-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.member-cell{align-items:center;gap:var(--space-3);display:flex}.member-cell .email{font-size:var(--text-xs);color:var(--text-muted)}.cards-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.work-card{text-align:left;padding:var(--space-4);gap:var(--space-3);cursor:pointer;flex-direction:column;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.work-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-pop);transform:translateY(-3px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.page-header,.kpi-grid,.dashboard-grid,.cards-grid,.tasks-toolbar,.kanban{animation:.4s both fadeUp}.dashboard-grid{animation-delay:60ms}.work-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.work-card-photos{font-size:var(--text-xs);color:var(--text-muted)}.work-card-code{font-size:var(--text-xs);letter-spacing:.06em;color:var(--accent-2);font-weight:600;font-family:var(--font-display);align-self:flex-start}.card-code-chip{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-hover);padding:7px 12px;transition:border-color .15s,background .15s;display:inline-flex}.card-code-chip:hover{border-color:var(--accent-line);background:var(--accent-soft)}.card-code-label{font-size:var(--text-xs);color:var(--text-muted)}.card-code-value{font-family:var(--font-display);letter-spacing:.06em;color:var(--accent-2);font-weight:700}.card-code-hint{font-size:var(--text-xs);color:var(--text-secondary);border-left:1px solid var(--border-strong);padding-left:var(--space-2)}.work-card-title{overflow-wrap:anywhere;font-weight:650;line-height:1.3}.work-card-excerpt{font-size:var(--text-sm);color:var(--text-secondary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.work-card-reward{gap:var(--space-1) var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);flex-wrap:wrap;display:flex}.work-card-reward .reward-part b{color:var(--text-primary)}.work-card-foot{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-1);margin-top:auto;display:flex}.work-card-worker{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:500;display:inline-flex}.work-card-worker.muted{color:var(--text-muted);font-weight:400}.card-form{gap:var(--space-4);flex-direction:column;display:flex}.card-form-grid{gap:var(--space-3) var(--space-4);grid-template-columns:1fr 1fr;display:grid}.card-content-input{min-height:120px}.modal-actions{justify-content:space-between;gap:var(--space-2);align-items:center;display:flex}.worker-card-view{gap:var(--space-4);flex-direction:column;display:flex}.worker-card-content{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-hover);border-radius:var(--radius-md);padding:var(--space-4);line-height:1.55}.worker-card-meta{gap:var(--space-6);flex-wrap:wrap;display:flex}.reward-line{margin-top:var(--space-1);font-weight:600}.attachments-section{border-top:1px solid var(--gridline);padding-top:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.attachments-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.attachments-hint{font-size:var(--text-xs);color:var(--text-muted);margin-top:-6px}.attachments-empty{color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-3) 0}.attachments-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(96px,1fr));display:grid}.attachment-thumb{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-hover);position:relative;overflow:hidden}.attachment-thumb img,.attachment-thumb video{object-fit:cover;background:#000;width:100%;height:100%;display:block}.attachment-file{width:100%;height:100%;padding:var(--space-2);text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.attachment-file-name{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.attachment-file-kind{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.attachment-remove{color:#fff;border-radius:var(--radius-sm);opacity:0;background:#0b0b0d99;border:none;padding:4px;line-height:0;transition:opacity .15s;position:absolute;top:4px;right:4px}.attachment-thumb:hover .attachment-remove{opacity:1}.attachment-remove:hover:not(:disabled){background:var(--danger)}.card-action-bar{border-top:1px solid var(--gridline);padding-top:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.card-action-buttons{justify-content:flex-end;display:flex}.submit-wrap{align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end;display:flex}.submit-hint{font-size:var(--text-sm);color:var(--text-muted)}.waiting-note{font-size:var(--text-sm);color:var(--text-secondary);background:var(--accent-soft);border-radius:var(--radius-sm);padding:var(--space-3)}.review-buttons{justify-content:flex-end;gap:var(--space-2);display:flex}.review-result{border-radius:var(--radius-sm);padding:var(--space-3);border:1px solid var(--border)}.review-result.approved{background:#0ca30c14;border-color:#0ca30c4d}.review-result.rejected{background:var(--danger-soft);border-color:#d03b3b4d}.review-result-head{font-weight:650}.review-result-time{color:var(--text-muted);font-weight:400;font-size:var(--text-sm)}.review-result-note{margin-top:var(--space-2);font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.5}.earnings-kpi{margin-bottom:var(--space-2)}.kpi-value.money{font-size:var(--text-xl)}.kpi-value.money.accent{color:var(--accent-strong)}.kpi-value.money.muted{color:var(--text-muted)}.earnings-rule{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-4)}.num-cell{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.payout-balance{font-size:var(--text-sm);color:var(--text-secondary);background:var(--surface-hover);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}@media (width<=1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(2,minmax(200px,1fr))}}@media (width<=640px){.card-form-grid{grid-template-columns:1fr}.page-header{align-items:stretch;gap:var(--space-3);flex-direction:column}.page-header .btn{align-self:flex-start}.tasks-toolbar{flex-wrap:wrap}.kpi-grid,.kanban{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}.modal-actions>div{flex:1;justify-content:flex-end}}.login-shell{grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-brand{padding:var(--space-6) 7%;background:linear-gradient(150deg,#0c0d16,#14132a 55%,#0d0e16);align-items:center;display:flex;position:relative;overflow:hidden}.login-brand:before,.login-brand:after{content:"";filter:blur(40px);pointer-events:none;border-radius:50%;position:absolute}.login-brand:before{background:radial-gradient(circle,#7c83ff59,#0000 62%);width:460px;height:460px;animation:18s ease-in-out infinite floatA;top:-120px;left:-80px}.login-brand:after{background:radial-gradient(circle,#38bdf82e,#0000 62%);width:520px;height:520px;animation:22s ease-in-out infinite floatB;bottom:-160px;right:-100px}.login-brand-inner{z-index:1;color:#eceef5;max-width:460px;position:relative}.login-badge{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);color:#c7cbe0;background:#ffffff0f;border:1px solid #ffffff1f;margin:28px 0 22px;padding:6px 14px;font-weight:600;display:inline-flex}.login-heading{font-family:var(--font-display);letter-spacing:-.03em;color:#fff;text-wrap:balance;max-width:15ch;margin:0 0 18px;font-size:44px;font-weight:700;line-height:1.08}.login-brand-sub{font-size:var(--text-md);color:#9ba1b6;max-width:42ch;line-height:1.6}.login-metrics{gap:var(--space-6);margin-top:34px;display:flex}.login-metric-value{font-family:var(--font-display);color:#fff;font-size:27px;font-weight:700}.login-metric-label{font-size:var(--text-xs);color:#9ba1b6;margin-top:2px}.login-form-side{padding:var(--space-6);background:var(--surface-page);justify-content:center;align-items:center;display:flex}.login-form{gap:var(--space-4);flex-direction:column;width:100%;max-width:380px;display:flex}.login-form-title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.02em;font-weight:700}.login-divider{text-align:center;margin:var(--space-1) 0;position:relative}.login-divider:before{content:"";background:var(--border);height:1px;position:absolute;top:50%;left:0;right:0}.login-divider span{background:var(--surface-page);padding:0 var(--space-3);font-size:var(--text-xs);color:var(--text-muted);position:relative}.demo-login{gap:var(--space-3);flex-direction:column;display:flex}.demo-login-hint{font-size:var(--text-xs);color:var(--text-muted);text-align:center}.demo-login-buttons{gap:var(--space-2);display:flex}.demo-login-buttons .btn{flex:1}.demo-creds{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.demo-cred{align-items:center;gap:var(--space-3);display:flex}.demo-cred-role{width:62px;font-size:var(--text-xs);color:var(--text-secondary);flex-shrink:0;font-weight:600}.demo-cred-fill{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-hover);flex:1;padding:8px 12px;transition:border-color .15s,background .15s;display:flex}.demo-cred-fill:hover:not(:disabled){border-color:var(--accent-line);background:var(--accent-soft)}.demo-cred-fill code{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.demo-cred-fill code:last-child{color:var(--text-muted);flex-shrink:0}@media (width<=820px){.login-shell{grid-template-columns:1fr}.login-brand{display:none}}.sidebar-search{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-hover);color:var(--text-muted);font-size:var(--text-sm);text-align:left;padding:9px 12px;transition:border-color .15s,color .15s;display:flex}.sidebar-search:hover{border-color:var(--border-strong);color:var(--text-secondary)}.sidebar-search span{flex:1}.sidebar-search kbd,.palette-hint kbd{font-family:var(--font-sans);border:1px solid var(--border);background:var(--surface-card);color:var(--text-muted);border-radius:6px;padding:2px 6px;font-size:11px}.palette-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:12vh var(--space-4) var(--space-4);z-index:60;background:#06070c9e;justify-content:center;align-items:flex-start;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.palette{background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:100%;max-width:560px;box-shadow:var(--shadow-pop);animation:.18s cubic-bezier(.2,.8,.3,1) pop;overflow:hidden}.palette-input-row{align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);color:var(--text-muted);display:flex}.palette-input{font-size:var(--text-md);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.palette-list{max-height:52vh;padding:var(--space-2);overflow-y:auto}.palette-empty{padding:var(--space-5);text-align:center;color:var(--text-muted)}.palette-group{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:var(--space-3) var(--space-3) var(--space-1);font-weight:700}.palette-item{align-items:center;gap:var(--space-3);width:100%;padding:9px var(--space-3);border-radius:var(--radius-sm);color:var(--text-primary);text-align:left;background:0 0;border:none;display:flex}.palette-item.active{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line,var(--accent-soft))}.palette-item-icon{color:var(--text-muted);flex-shrink:0;line-height:0}.palette-item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.palette-hint{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--text-muted)}
