/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Noto Sans CJK SC,Microsoft YaHei,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}:is(button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline-offset:2px;outline:2px solid #5f82f275}button:disabled{cursor:wait;opacity:.58}.login-page{background:radial-gradient(circle at 76% 8%,#f36da71c,#0000 28%),radial-gradient(circle at 14% 18%,#8b7cf61c,#0000 30%),#f1f2f5;place-items:center;min-height:100vh;padding:28px;display:grid;position:relative;overflow:hidden}.login-dots{opacity:.34;background-image:radial-gradient(#8b7cf61f 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.login-card{z-index:1;background:radial-gradient(circle at 18% 12%,#ffffffd1,#0000 22%),linear-gradient(135deg,#f8fafc,#eef2ff 28%,#dff7f2,#dfe8ff);border:1px solid #e6e3eedb;border-radius:30px;grid-template-columns:minmax(0,1fr) minmax(340px,.92fr);width:min(920px,100%);min-height:560px;display:grid;position:relative;overflow:hidden;box-shadow:0 28px 70px #2a23421f}.login-intro,.login-form{min-width:0;padding:48px}.login-intro{color:#1f2937;flex-direction:column;justify-content:center;display:flex;position:relative}.login-logo{color:#24202f;align-items:center;gap:11px;width:fit-content;display:inline-flex;position:absolute;top:48px;left:48px}.login-brand-image{object-fit:contain;width:30px;height:30px}.login-logo strong{letter-spacing:-.02em;font-size:20px;font-weight:800}.login-copy{-webkit-font-smoothing:antialiased;max-width:360px;margin-top:0;font-family:PingFang SC,Noto Sans CJK SC,Microsoft YaHei UI,Microsoft YaHei,sans-serif;transform:translateY(-4px)}.login-copy p{color:#8a86a0;letter-spacing:.12em;margin:0 0 12px;font-size:12px;font-weight:700}.login-copy h1{color:#24202f;letter-spacing:-.06em;margin:0;font-size:clamp(42px,5.6vw,62px);font-weight:520;line-height:1.12}.login-form{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff70;flex-direction:column;justify-content:center;display:flex}.login-form-head{color:#24202f;margin-bottom:24px}.login-form-head span{color:#8a86a0;font-size:13px}.login-form-head h2{letter-spacing:0;margin:8px 0 0;font-size:28px;font-weight:720}.login-member-copy{color:#655f72;margin:0 0 22px;font-size:14px;line-height:1.75}.login-field{color:#706a82;gap:8px;margin-bottom:14px;font-size:12px;font-weight:500;display:grid}.login-field div{color:#8a86a0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb8;border:1px solid #e5e0ef;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:58px;padding:0 14px;transition:border-color .14s,background .14s;display:grid}.login-field div:focus-within{background:#fff;border-color:#c9d4ff}.login-field input{color:#24202f;background:0 0;border:0;outline:0;min-width:0;font-size:15px}.login-field input::placeholder{color:#a09aad}.login-options{color:#706a82;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 12px;font-size:12px;display:flex}.login-options label{align-items:center;gap:8px;display:inline-flex}.login-options input{accent-color:#5f82f2;width:14px;height:14px}.login-security-note{color:#77718b;align-items:center;gap:7px;margin:0 0 18px;font-size:12px;display:flex}.login-security-note svg{color:#5f82f2}.login-submit{color:#fff;background:#5f82f2;border:0;border-radius:12px;justify-content:center;align-items:center;min-height:48px;font-size:15px;font-weight:760;display:inline-flex;box-shadow:0 18px 34px #5f82f238}.login-submit:hover{background:#4f73e6}.password-change-card{background:#fff;border-radius:28px;width:min(520px,100%);padding:44px;box-shadow:0 28px 70px #414c6829}.password-change-icon{width:58px;height:58px;color:var(--blue);background:#edf3ff;border-radius:18px;place-items:center;display:grid}.password-change-card>p{color:var(--blue);margin:24px 0 8px;font-size:12px;font-weight:750}.password-change-card h1{letter-spacing:-.03em;margin:0;font-size:26px}.password-change-card>span{color:var(--muted);margin-top:12px;font-size:12px;line-height:1.7;display:block}.password-change-card form{gap:18px;margin-top:28px;display:grid}.access-denied-card{z-index:1;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe0;border:1px solid #e6e3eedb;border-radius:28px;width:min(480px,100%);padding:46px;position:relative;box-shadow:0 28px 70px #2a23421f}.access-denied-card>span{color:#5f82f2;background:#eef2ff;border-radius:16px;place-items:center;width:54px;height:54px;margin:0 auto 20px;display:grid}.access-denied-card>p:first-of-type{color:#8a86a0;letter-spacing:.1em;margin:0;font-size:12px;font-weight:750}.access-denied-card h1{color:#24202f;margin:10px 0 8px;font-size:24px}.access-denied-card h1+p{color:#706a82;margin:0 0 24px;font-size:13px}.access-denied-card>small{color:#8b8592;margin:-10px 0 22px;font-size:12px;line-height:1.65;display:block}.access-denied-card a{color:#fff;background:#5f82f2;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.app-shell{grid-template-columns:216px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;z-index:20;background:#242938;flex-direction:column;width:216px;padding:24px 18px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand-mark{color:#111;background:#fff;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.brand-mark img{object-fit:contain;width:24px;height:24px}.brand-copy{flex-direction:column;gap:4px;margin:12px 4px 38px;display:flex}.brand-copy strong{letter-spacing:.03em;font-size:16px}.sidebar nav{gap:6px;display:grid}.nav-item{color:#aeb4c5;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;width:100%;height:46px;padding:0 12px;font-size:13px;transition:all .16s;display:flex}.nav-item small{color:#687087;margin-left:auto;font:600 9px ui-monospace,SFMono-Regular,Menlo,monospace}.nav-divider{background:#353b4d;height:1px;margin:19px 5px 13px}.sidebar-foot{border-top:1px solid #393f51;align-items:flex-start;gap:10px;margin-top:auto;padding:20px 4px 0;display:flex}.live-dot{background:var(--green);border-radius:50%;flex:none;width:8px;height:8px;margin-top:4px;box-shadow:0 0 0 4px #28b98f1f}.sidebar-foot div{flex-direction:column;gap:3px;display:flex}.sidebar-foot strong{color:#cbd0dc;font-size:11px;font-weight:600}.workspace{grid-column:2;min-width:0}.topbar{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#fffffff0;justify-content:space-between;align-items:center;gap:24px;height:64px;padding:0 34px;display:flex;position:sticky;top:0}.mobile-brand{display:none}.search{color:#9893a4;background:#f8f8fa;border:1px solid #e3e5eb;border-radius:7px;align-items:center;gap:10px;width:min(460px,42vw);height:38px;padding:0 13px;display:flex}.search input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.topbar-actions{align-items:center;gap:14px;display:flex}.test-pill{color:#20856a;background:#f0fbf7;border:1px solid #cce9de;border-radius:5px;align-items:center;gap:5px;height:26px;padding:0 9px;font-size:9px;font-weight:700;display:flex}.user-chip{min-width:max-content;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:10px;display:flex}.avatar{color:#6758cf;background:#ece9ff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:700;display:grid}.user-chip>span:nth-child(2){flex-direction:column;gap:2px;display:flex}.user-chip small{color:var(--muted);font-size:9px}.user-chip svg{color:#9a95a5}.logout-chip{color:#777181;border-left:1px solid #e3e5eb;align-items:center;gap:6px;min-height:34px;padding-left:14px;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex}.logout-chip:hover{color:#4f73e6}.content{width:min(1180px,100% - 64px);margin:0 auto;padding:38px 0 70px}.page-intro{justify-content:space-between;align-items:flex-end;gap:24px;min-height:63px;display:flex}.eyebrow{letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-weight:750;color:var(--blue)!important;font-size:10px!important}.page-intro h1{letter-spacing:-.04em;margin:0;font-size:29px;line-height:1.2}.page-intro p{color:var(--muted);margin:7px 0 0;font-size:12px}.primary-button,.secondary-button,.danger-button,.quiet-button{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:35px;padding:0 13px;font-size:10px;font-weight:700;display:inline-flex}.primary-button{border:1px solid var(--blue);background:var(--blue);color:#fff;box-shadow:0 4px 12px #5f82f224}.secondary-button{color:#5f5a69;background:#fff;border:1px solid #d9dbe3}.danger-button{color:#fff;background:#d94d79;border:1px solid #d94d79}.quiet-button{border:1px solid var(--line);color:#5d586c;background:#fff}.text-button{color:var(--blue);background:0 0;border:0;padding:2px;font-size:10px}.icon-button{color:#716c7b;background:#fff;border:1px solid #e1e3e9;border-radius:6px;place-items:center;width:34px;height:34px;display:grid}.today-load{border:1px solid var(--line);border-left:3px solid var(--amber);background:#fff;border-radius:7px;grid-template-columns:auto auto;align-items:end;column-gap:14px;min-width:200px;padding:12px 14px 10px 16px;display:grid}.today-load small{color:var(--muted);grid-column:1/-1;font-size:9px}.today-load strong{font-size:25px;line-height:1.1}.today-load i{color:var(--muted);font-size:10px;font-style:normal;font-weight:500}.today-load span{color:#c97b22;margin-bottom:2px;font-size:10px;font-weight:700}.signal-strip{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:repeat(3,minmax(130px,1fr)) 1.45fr;min-height:82px;margin-top:26px;display:grid;box-shadow:0 3px 14px #20263a08}.signal-strip>div{border-right:1px solid #ebecf0;align-items:center;gap:12px;min-width:0;padding:16px 20px;display:flex}.signal-icon{border-radius:7px;flex:none;place-items:center;width:33px;height:33px;display:grid}.signal-icon.red{color:#c53f6c;background:#fff0f5}.signal-icon.amber{color:#ce7918;background:#fff5e8}.signal-icon.blue{color:#4c6edb;background:#eef2ff}.signal-strip p{margin:0}.signal-strip p:not(.signal-note){flex-direction:column;display:flex}.signal-strip strong{font-size:20px;line-height:1.1}.signal-strip small{color:var(--muted);margin-top:4px;font-size:9px}.signal-note{color:var(--muted);align-items:center;gap:9px;padding:0 20px;font-size:10px;display:flex}.signal-note span{background:var(--blue);border-radius:50%;width:5px;height:5px}.section-head{justify-content:space-between;align-items:flex-end;margin:32px 0 14px;display:flex}.section-head h2,.overview-panel h2,.admin-panel h2{letter-spacing:-.01em;margin:0;font-size:15px}.section-head p,.overview-panel header p,.admin-panel header p{color:var(--muted);margin:5px 0 0;font-size:10px}.task-list{gap:10px;display:grid}.task-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) 390px;min-height:150px;display:grid;position:relative;overflow:hidden;box-shadow:0 2px 10px #20263a07}.task-card:before{content:"";background:#bdc4d8;width:3px;position:absolute;inset:0 auto 0 0}.task-card.is-overdue:before{background:var(--red)}.task-main{min-width:0;padding:22px 24px}.task-meta{min-width:0;color:var(--muted);align-items:center;gap:10px;font-size:10px;display:flex}.task-meta>span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.urgency{border-radius:4px;flex:none;padding:4px 7px;font-size:8px;font-weight:750}.urgency-逾期{color:#c63e6b;background:#fff0f5}.urgency-今日到期,.urgency-黄色风险{color:#c87314;background:#fff3e1}.urgency-正常{color:#36846d;background:#edf9f5}.task-card h3{letter-spacing:-.01em;margin:13px 0 17px;font-size:16px}.task-facts{gap:30px;display:flex}.task-facts span{color:#45414e;flex-direction:column;gap:3px;font-size:10px;display:flex}.task-facts small{color:#9a95a5;font-size:8px}.blocker-note{color:#bc476a;align-items:center;gap:5px;margin:12px 0 0;font-size:9px;display:flex}.task-side{border-left:1px solid #ececf0;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:21px 22px;display:flex}.status{color:#4e668e;white-space:nowrap;background:#eef3fb;border-radius:4px;justify-content:center;align-items:center;min-width:57px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex}.status-有风险{color:#bf405f;background:#fff0f4}.status-待开始{color:#767181;background:#f1f1f3}.status-待外部{color:#c16d10;background:#fff3e2}.status-已完成{color:#23896c;background:#eaf8f3}.task-actions{justify-content:flex-end;gap:7px;width:100%;display:flex}.task-actions button{border-radius:6px;min-width:74px;height:34px;padding:0 11px;font-size:9px;font-weight:700}.primary-action{border:1px solid var(--blue);color:#fff;background:var(--blue)}.secondary-action{color:#625d6d;background:#fff;border:1px solid #d9dbe3}.risk-action{color:#c33f69;background:#fff8fa;border:1px solid #f1c6d4}.project-toolbar{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:42px;margin:26px 0 15px;padding:5px;display:flex;position:relative}.risk-tabs{gap:3px;display:flex}.risk-tabs button{color:#777181;background:0 0;border:0;border-radius:5px;align-items:center;gap:6px;height:31px;padding:0 10px;font-size:9px;display:flex}.risk-tabs button:hover{background:#f5f5f7}.risk-tabs button.active{color:#4969d2;background:#eef2ff;font-weight:700}.risk-tabs button span,.risk-pin,.project-risk i,.risk-label i{border-radius:50%;width:6px;height:6px}.risk-tabs button span.red,.risk-pin.red,.risk-red .project-risk i,.risk-label.red i{background:var(--red)}.risk-tabs button span.amber,.risk-pin.amber,.risk-amber .project-risk i,.risk-label.amber i{background:var(--amber)}.risk-tabs button span.green,.risk-pin.green,.risk-green .project-risk i,.risk-label.green i{background:var(--green)}.risk-tabs button b{color:#7c7785;background:#f0f1f4;border-radius:3px;place-items:center;min-width:16px;height:16px;font-size:8px;display:grid}.filter-trigger{margin-right:2px;position:relative}.filter-trigger i{background:var(--red);color:#0000;border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;right:-2px;overflow:hidden}.filter-popover{z-index:8;border:1px solid var(--line);background:#fff;border-radius:8px;gap:11px;width:260px;padding:15px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 36px #252a3a1c}.filter-popover label,.form-grid label,.note-field{color:#706a82;gap:6px;font-size:9px;font-weight:650;display:grid}.filter-popover select,.form-grid input,.form-grid select,.note-field textarea{width:100%;min-height:38px;color:var(--ink);background:#fafafd;border:1px solid #dfe1e7;border-radius:6px;outline:0;padding:0 10px;font-size:10px}.project-grid{grid-template-columns:repeat(3,minmax(280px,1fr));gap:13px;display:grid}.project-card{border:1px solid var(--line);min-width:0;min-height:292px;color:var(--ink);text-align:left;background:#fff;border-radius:8px;padding:18px 18px 14px;transition:transform .16s,box-shadow .16s,border-color .16s;position:relative;overflow:hidden;box-shadow:0 2px 10px #20263a07}.project-card:before{content:"";background:var(--green);height:3px;position:absolute;inset:0 0 auto}.project-card.risk-red:before{background:var(--red)}.project-card.risk-amber:before{background:var(--amber)}.project-risk{color:#817b8b;align-items:center;gap:5px;font-size:8px;display:flex;position:absolute;top:16px;right:16px}.project-card-head{color:#9893a4;justify-content:space-between;align-items:center;padding-right:72px;display:flex}.project-card-head p{letter-spacing:.04em;margin:0;font-size:8px}.project-card h2{white-space:nowrap;text-overflow:ellipsis;margin:14px 0 17px;padding-right:15px;font-size:14px;line-height:1.4;overflow:hidden}.owner-row{align-items:center;height:38px;display:flex}.owner-avatar{color:#536fd2;background:#eef2ff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:9px;font-weight:750;display:grid}.owner-row>div:nth-child(2){flex-direction:column;gap:2px;margin-left:8px;display:flex}.owner-row small{color:#a09aa8;font-size:7px}.owner-row strong{text-overflow:ellipsis;white-space:nowrap;max-width:94px;font-size:9px;overflow:hidden}.avatar-stack{align-items:center;margin-left:auto;padding-left:7px;display:flex}.avatar-stack span,.avatar-stack b{color:#6a5ece;background:#f0edff;border:2px solid #fff;border-radius:50%;place-items:center;width:25px;height:25px;margin-left:-7px;font-size:7px;font-weight:700;display:grid}.avatar-stack b{color:#7e7888;background:#f2f3f5}.project-next{background:#f7f7f9;border-radius:6px;grid-template-columns:auto 12px minmax(0,1fr);align-items:center;gap:6px;margin:15px 0 12px;padding:10px;display:grid}.project-next small{color:#9a95a5;grid-column:1/-1;margin-bottom:2px;font-size:7px}.project-next span{color:#6f6978;font-size:9px}.project-next svg{color:#aaa5b1}.project-next strong{text-overflow:ellipsis;white-space:nowrap;color:#45414e;font-size:9px;overflow:hidden}.milestone-row{color:#817b8b;align-items:center;font-size:8px;display:flex}.milestone-row svg{color:#a7a2ae}.milestone-row span{margin-left:5px}.milestone-row strong{color:#504b57;margin-left:auto;font-size:9px}.score-row{justify-content:space-between;align-items:flex-end;margin-top:13px;display:flex}.score-row>div{flex-direction:column;gap:3px;display:flex}.score-row span{color:#9a95a5;font-size:7px}.score-row strong small{color:#8d8797;font-size:8px;font-weight:500}.score-row>b{color:#777181;font-size:8px}.progress-track{background:#eceef2;border-radius:2px;height:4px;overflow:hidden}.score-row+.progress-track{margin-top:6px}.progress-track span{border-radius:inherit;background:var(--blue);height:100%;display:block}.project-card footer{color:#aaa5b1;border-top:1px solid #eeeef2;justify-content:space-between;align-items:center;margin-top:12px;padding-top:11px;font-size:7px;display:flex}.project-card footer b{color:#5f7bda;align-items:center;gap:3px;font-size:8px;display:flex}.sync-note{border:1px solid var(--line);color:#777181;background:#fff;border-radius:5px;align-items:center;gap:8px;height:29px;padding:0 10px;font-size:9px;display:flex}.overview-metrics{grid-template-columns:repeat(4,1fr);gap:11px;margin-top:26px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;min-height:110px;padding:16px;display:flex;box-shadow:0 2px 10px #20263a06}.metric-card>span{color:#6177c7;background:#f1f3f9;border-radius:7px;flex:none;place-items:center;width:34px;height:34px;display:grid}.metric-red>span{color:#c84570;background:#fff0f5}.metric-amber>span{color:#ca7411;background:#fff5e8}.metric-purple>span{color:#7565d2;background:#f2efff}.metric-card div{flex:1;grid-template-columns:1fr auto;align-items:baseline;display:grid}.metric-card small{color:var(--muted);font-size:9px}.metric-card strong{grid-area:1/2/3;font-size:27px;line-height:1}.metric-card p{color:#a19ba9;margin:8px 0 0;font-size:8px}.overview-layout{grid-template-columns:.9fr 1.1fr;gap:13px;margin-top:13px;display:grid}.overview-panel{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;overflow:hidden;box-shadow:0 2px 10px #20263a06}.overview-panel>header,.admin-panel>header{border-bottom:1px solid #ebecf0;justify-content:space-between;align-items:center;gap:12px;min-height:70px;padding:16px 18px;display:flex}.overview-panel>header>span{color:#918b9b;font-size:8px}.exception-list button{text-align:left;background:#fff;border:0;border-bottom:1px solid #f0f0f3;grid-template-columns:7px minmax(0,1fr) auto 14px;align-items:center;gap:10px;width:100%;min-height:63px;padding:10px 16px;display:grid}.exception-list button:hover{background:#fafafd}.exception-list button:last-child{border-bottom:0}.exception-list div{flex-direction:column;gap:4px;min-width:0;display:flex}.exception-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.exception-list small{color:#938d9c;font-size:8px}.exception-list time{color:#6c6675;font-size:8px}.exception-list svg{color:#aaa5b1}.workload-list{padding:4px 0}.workload-row{border-bottom:1px solid #f0f0f3;grid-template-columns:30px 90px minmax(60px,1fr) 44px 58px;align-items:center;gap:9px;min-height:61px;padding:9px 16px;display:grid}.workload-row:last-child{border-bottom:0}.work-avatar{color:#516bd0;background:#eef2ff;border-radius:50%;place-items:center;width:29px;height:29px;font-size:8px;font-weight:750;display:grid}.work-person{flex-direction:column;gap:3px;min-width:0;display:flex}.work-person small{color:#9a95a5;font-size:7px}.work-bar{background:#eceef2;border-radius:3px;height:5px;overflow:hidden}.work-bar span{border-radius:inherit;background:var(--blue);height:100%;display:block}.workload-row>strong{text-align:right;font-size:11px}.workload-row>strong small{color:#96909f;font-size:7px;font-weight:500}.workload-row em{text-align:center;color:#5e7190;background:#eef3fb;border-radius:4px;justify-self:end;min-width:53px;padding:4px 5px;font-size:7px;font-style:normal;font-weight:700}.workload-row em.level-超载{color:#c43f6a;background:#fff0f4}.workload-row em.level-负载较高{color:#c47216;background:#fff4e5}.workload-row em.level-负载较低{color:#29866d;background:#eaf8f3}.admin-grid{grid-template-columns:1.25fr .75fr;gap:13px;margin-top:26px;display:grid}.admin-panel{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #20263a06}.user-list{max-height:640px;overflow-y:auto}.user-list>div{border-bottom:1px solid #f0f0f3;align-items:center;gap:11px;min-height:61px;padding:10px 18px;display:flex}.user-list>div:last-child{border-bottom:0}.admin-avatar{border-radius:50%;place-items:center;width:31px;height:31px;font-size:8px;font-weight:800;display:grid}.user-list>div>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.user-list>div>div small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-list small{color:#96909e;font-size:8px}.reset-password-button{color:#64718b;background:#fff;border:1px solid #dce3f0;border-radius:7px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:9px;font-weight:700;display:inline-flex}.reset-password-button:hover{color:var(--blue);background:#f7faff;border-color:#9bb8ed}.reset-password-button:disabled{opacity:.55;cursor:wait}.roster-count{color:#5b75d8;background:#eef2ff;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700}.active-status{color:#20856a;margin-left:auto;font-size:10px;font-weight:700}.switch{margin-left:auto}.switch input{opacity:0;pointer-events:none;position:absolute}.switch span{background:#d9dbe1;border-radius:10px;width:34px;height:19px;padding:2px;transition:all .16s;display:block}.switch span:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:transform .16s;display:block;box-shadow:0 1px 4px #21263326}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{transform:translate(15px)}.operations>button{text-align:left;width:100%;min-height:68px;color:var(--ink);background:#fff;border:0;border-bottom:1px solid #f0f0f3;align-items:center;gap:11px;padding:12px 17px;display:flex}.operations>button:hover{background:#fafafd}.operation-icon{color:#5b75d8;background:#eef2ff;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.operation-icon.danger{color:#c7426c;background:#fff0f5}.operations button div,.backup-status div{flex-direction:column;gap:4px;display:flex}.operations button small,.backup-status small{color:#938d9c;font-size:8px;line-height:1.5}.operations button>svg{color:#aaa5b1;margin-left:auto}.backup-status{color:#695fc0;background:#f8f7fe;border:1px solid #e4e1f5;border-radius:7px;align-items:flex-start;gap:9px;margin:14px;padding:12px;display:flex}.test-boundary{border:1px solid #cce9de;border-left:3px solid var(--green);color:#20856a;background:#f4fcf9;border-radius:7px;align-items:flex-start;gap:10px;margin-top:13px;padding:15px 17px;display:flex}.test-boundary div{flex-direction:column;gap:4px;display:flex}.test-boundary p{color:#5d716b;margin:0;font-size:9px;line-height:1.6}.member-form-note{color:#62719b;background:#f1f4ff;border-radius:6px;align-items:flex-start;gap:8px;margin:0;padding:11px 12px;font-size:11px;line-height:1.55;display:flex}.member-form-note svg{flex:none;margin-top:1px}.empty-state{color:#97919f;text-align:center;background:#f7f7f9;border:1px dashed #d5d7df;border-radius:8px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;min-height:220px;display:flex}.empty-state>span{color:#7588ce;background:#fff;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:12px;display:grid}.empty-state strong{color:#504b58;font-size:11px}.empty-state p{margin:6px 0 0;font-size:9px}.data-loading{color:#6f7a90;align-content:center;place-items:center;gap:14px;min-height:360px;display:grid}.data-loading span{border:3px solid #dce6f8;border-top-color:var(--blue);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}.data-loading strong{font-size:12px}.overlay{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1e243052;justify-content:flex-end;animation:.16s ease-out fade;display:flex;position:fixed;inset:0}.drawer{background:#f6f6f8;width:min(560px,92vw);height:100%;animation:.22s ease-out slide;overflow:auto;box-shadow:-18px 0 50px #1419261f}.drawer-head{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;min-height:67px;padding:15px 20px;display:flex}.drawer-head>div{align-items:center;gap:10px;display:flex}.drawer-head p{color:#8c8695;margin:0;font-size:9px}.risk-label{color:#777181;background:#f1f2f5;border-radius:4px;align-items:center;gap:6px;padding:5px 8px;font-size:8px;font-weight:700;display:flex}.drawer-title{background:#fff;padding:24px 22px 18px}.drawer-title h2{letter-spacing:-.03em;margin:0;font-size:21px}.drawer-title p{color:#8e8897;margin:7px 0 0;font-size:9px}.drawer-kpis{background:#fff;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 22px 20px;display:grid}.drawer-kpis div{border:1px solid #e4e5ea;border-radius:6px;flex-direction:column;gap:7px;min-height:60px;padding:11px;display:flex}.drawer-kpis small,.drawer-progress span{color:#9892a1;font-size:8px}.drawer-progress{background:#fff;padding:0 22px 22px}.drawer-progress>div:first-child{justify-content:space-between;margin-bottom:7px;display:flex}.drawer-progress strong{font-size:9px}.stage-flow{border:1px solid var(--line);background:#fff;border-radius:9px;margin:12px;padding:16px}.stage-flow>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px;display:flex}.stage-flow h3{margin:0;font-size:11px}.stage-flow header p{color:#9892a1;margin:4px 0 0;font-size:8px}.stage-flow header>span{color:#4e6dbd;background:#eef4ff;border-radius:6px;flex:none;padding:5px 8px;font-size:8px;font-weight:750}.stage-flow header>span.complete{color:#23896c;background:#eaf8f3}.stage-track{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;display:grid}.stage-track>div{color:#aaa5b1;text-align:center;justify-items:center;gap:6px;min-width:0;display:grid;position:relative}.stage-track>div:before{content:"";background:#e7e9ef;width:calc(100% - 14px);height:2px;position:absolute;top:12px;left:calc(10px - 50%)}.stage-track>div:first-child:before{display:none}.stage-track>div.done:before,.stage-track>div.current:before{background:#87a8ef}.stage-track>div>span{z-index:1;background:#fff;border:2px solid #e3e6ed;border-radius:50%;place-items:center;width:25px;height:25px;font-size:8px;font-weight:750;display:grid;position:relative}.stage-track>div.done>span{color:#fff;background:#7699e8;border-color:#7699e8}.stage-track>div.current>span{border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 4px #1478f217}.stage-track small{min-width:0;font-size:7px;line-height:1.3}.stage-track>div.done small,.stage-track>div.current small{color:#465575;font-weight:700}.stage-advance-button{color:#fff;background:var(--blue);border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:40px;margin-top:16px;padding:0 13px;font-size:9px;font-weight:750;display:flex;box-shadow:0 7px 16px #1478f22e}.stage-advance-button svg:last-child{margin-left:auto}.stage-advance-button:disabled{opacity:.6;cursor:wait}.next-milestone{border:1px solid #dfe3f2;border-left:3px solid var(--blue);background:#fff;border-radius:7px;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;margin:12px;padding:14px 16px;display:grid}.next-milestone>span{color:#5e77da;background:#eef2ff;border-radius:6px;place-items:center;width:34px;height:34px;display:grid}.next-milestone div{flex-direction:column;gap:3px;display:flex}.next-milestone small{color:#9892a1;font-size:8px}.next-milestone time{color:#5d5866;font-size:9px;font-weight:700}.drawer-section{border:1px solid var(--line);background:#fff;border-radius:7px;margin:0 12px 12px;padding:17px}.drawer-section>header{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.drawer-section h3{margin:0;font-size:11px}.drawer-section header p{color:#9892a1;margin:4px 0 0;font-size:8px}.member-chips{flex-wrap:wrap;gap:6px;display:flex}.member-chips>span{color:#4e4956;background:#f3f4f7;border-radius:5px;padding:7px 8px;font-size:8px}.member-chips small{color:#9993a0;margin-left:6px;font-size:7px}.mini-task-list{display:grid}.mini-task-list>div{border-top:1px solid #eeeef2;grid-template-columns:59px 1fr auto;align-items:center;gap:9px;min-height:50px;display:grid}.mini-task-list>div:first-child{border-top:0}.mini-task-list p{flex-direction:column;gap:4px;margin:0;display:flex}.mini-task-list p small{color:#96909f;font-size:7px}.mini-task-list b{font-size:9px}.mini-task-list>.mini-task-row{grid-template-columns:68px minmax(0,1fr) auto 86px}.mini-task-row>button{white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:3px;min-height:32px;padding:0 9px;font-size:8px;font-weight:750;display:inline-flex}.mini-task-next{border:1px solid var(--blue);color:#fff;background:var(--blue)}.mini-task-reopen{color:#677188;background:#fff;border:1px solid #dce1eb}.mini-task-row>button:disabled{opacity:.55;cursor:wait}.mini-empty{color:#9993a0;text-align:center;padding:20px 0;font-size:9px}.drawer-footer{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;justify-content:space-between;padding:12px 20px;display:flex;position:sticky;bottom:0}.modal-overlay{justify-content:center;align-items:center;padding:20px}.modal{background:#fff;border-radius:8px;width:min(480px,96vw);max-height:calc(100vh - 40px);animation:.18s ease-out pop;overflow:auto;box-shadow:0 24px 70px #171c292b}.modal>header{border-bottom:1px solid #e7e8ed;grid-template-columns:38px 1fr 34px;align-items:center;gap:10px;min-height:74px;padding:16px 18px;display:grid}.modal-icon{color:#5e78db;background:#eef2ff;border-radius:7px;place-items:center;width:38px;height:38px;display:grid}.modal-icon.risk{color:#ca456e;background:#fff0f5}.modal header h2{margin:0;font-size:13px}.modal header p{color:#918b9b;margin:4px 0 0;font-size:8px}.modal-body>label:first-child{color:#696472;margin-bottom:9px;font-size:9px;font-weight:700;display:block}.reason-grid{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.reason-grid button{color:#625d6b;text-align:left;background:#fff;border:1px solid #dfe1e7;border-radius:6px;justify-content:space-between;align-items:center;min-height:38px;padding:0 10px;font-size:9px;display:flex}.reason-grid button svg{opacity:0}.reason-grid button.active{color:#b64265;background:#fff6f8;border-color:#e592ab}.reason-grid button.active svg{opacity:1}.note-field{margin-top:13px;position:relative}.note-field textarea{resize:vertical;min-height:88px;padding:10px;line-height:1.5}.note-field small{color:#aaa4b0;font-size:7px;position:absolute;bottom:8px;right:9px}.modal>footer{border-top:1px solid #e7e8ed;justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.form-modal{width:min(560px,96vw)}.form-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.full-field{grid-column:1/-1}.form-grid input,.form-grid select{min-height:39px}.score-preview{background:#f5f7ff;border:1px solid #dfe3f2;border-radius:6px;justify-content:space-between;align-items:center;min-height:39px;margin-top:16px;padding:0 11px;display:flex}.score-preview small{color:#777fa1;font-size:8px}.score-preview strong{color:#526fd3;font-size:12px}.toast{z-index:90;color:#fff;background:#252a39;border-radius:7px;align-items:center;gap:9px;min-width:230px;padding:13px 16px;font-size:10px;animation:.2s ease-out rise;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 16px 35px #20263a33}.toast svg{color:#6de0bc}.mobile-nav{display:none}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@keyframes fade{0%{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide{0%{opacity:.5;transform:translate(30px)}}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.99)}}.brand-copy small{font-size:11px}.nav-item{font-size:15px}.nav-item small{font-size:11px}.sidebar-foot strong{font-size:13px}.sidebar-foot small{font-size:12px}.test-pill{font-size:11px}.avatar{font-size:13px}.eyebrow{font-size:12px!important}.page-intro h1{font-size:34px}.page-intro p{font-size:15px}.primary-button,.secondary-button,.danger-button,.quiet-button{min-height:40px;font-size:13px}.signal-strip small,.signal-note{font-size:12px}.section-head p,.overview-panel header p,.admin-panel header p{font-size:13px}.task-card{min-height:170px}.task-meta{font-size:13px}.urgency{font-size:11px}.task-card h3{font-size:21px}.task-facts span{font-size:14px}.status{min-width:66px;font-size:12px}.task-actions button{min-width:84px;height:40px;font-size:13px}.risk-tabs button{height:36px;font-size:12px}.risk-tabs button b{font-size:10px}.filter-popover{width:290px}.filter-popover label,.form-grid label,.note-field{font-size:12px}.filter-popover select,.form-grid input,.form-grid select,.note-field textarea{min-height:43px;font-size:13px}.project-grid{grid-template-columns:repeat(3,minmax(300px,1fr))}.project-card{min-height:338px}.project-risk,.project-card-head p{font-size:11px}.project-card h2{font-size:18px}.owner-avatar{font-size:11px}.owner-row strong{max-width:112px;font-size:12px}.avatar-stack span,.avatar-stack b,.project-next small{font-size:10px}.project-next span,.project-next strong{font-size:12px}.milestone-row{font-size:11px}.milestone-row strong{font-size:12px}.score-row span{font-size:10px}.score-row strong{font-size:15px}.score-row strong small,.score-row>b{font-size:11px}.project-card footer{font-size:10px}.project-card footer b{font-size:11px}.sync-note,.metric-card small{font-size:12px}.metric-card p,.overview-panel>header>span{font-size:11px}.exception-list small,.exception-list time,.work-avatar{font-size:11px}.work-person small{font-size:10px}.workload-row>strong{font-size:14px}.workload-row>strong small{font-size:10px}.workload-row em{min-width:64px;font-size:10px}.admin-avatar{font-size:11px}.empty-state p,.drawer-head p{font-size:12px}.risk-label{font-size:11px}.drawer-kpis strong,.drawer-progress strong{font-size:12px}.next-milestone small{font-size:11px}.next-milestone strong{font-size:14px}.drawer-section h3{font-size:14px}.drawer-section header p,.member-chips>span{font-size:11px}.member-chips small{font-size:10px}.mini-task-list p strong{font-size:12px}.mini-task-list p small,.mini-task-list b,.mini-empty{font-size:10px}.modal header h2{font-size:17px}.modal-body>label:first-child{font-size:12px}.reason-grid button{min-height:43px;font-size:12px}.note-field small{font-size:10px}.score-preview small{font-size:11px}.score-preview strong{font-size:16px}.toast{font-size:13px}.project-display-bar{justify-content:space-between;align-items:center;gap:18px;margin-top:26px;display:flex}.project-display-bar>p{color:#8a8492;white-space:nowrap;margin:0;font-size:12px}.project-view-switch{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:3px;min-height:42px;padding:4px;display:inline-flex;box-shadow:0 2px 8px #20263a06}.project-view-switch button{color:#777181;background:0 0;border:0;border-radius:5px;align-items:center;gap:7px;height:32px;padding:0 12px;font-size:12px;font-weight:650;display:flex}.project-view-switch button:hover{color:#4f4a58;background:#f6f6f8}.project-display-bar+.project-toolbar{margin-top:10px}.project-table{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #20263a06}.project-table-head,.project-row{grid-template-columns:5px minmax(190px,1.55fr) minmax(104px,.8fr) 92px 88px minmax(108px,.8fr) 116px 110px 86px 18px;align-items:center;column-gap:12px;display:grid}.project-table-head{color:#8b8592;letter-spacing:.02em;background:#f8f8fa;border-bottom:1px solid #e9eaf0;min-height:38px;padding:0 15px;font-size:10px;font-weight:700}.project-row{width:100%;min-height:68px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #ededf1;padding:8px 15px;transition:background .15s}.project-row:last-of-type{border-bottom:0}.project-row:hover{background:#fafbff}.row-risk{background:var(--green);border-radius:4px;width:5px;height:34px}.row-risk.red{background:var(--red)}.row-risk.amber{background:var(--amber)}.project-name-cell{flex-direction:column;gap:4px;min-width:0;display:flex}.project-name-cell strong{color:#312d38;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.25;overflow:hidden}.project-name-cell small{color:#918b98;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.row-owner{color:#5f5967;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;min-width:0;font-size:11px;display:flex;overflow:hidden}.row-owner i{color:#536fd2;background:#eef2ff;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:10px;font-style:normal;font-weight:750;display:grid}.row-members .avatar-stack{margin-left:0;padding-left:7px}.row-stage{color:#59667e;white-space:nowrap;background:#f1f3f8;border-radius:4px;width:max-content;max-width:100%;padding:5px 8px;font-size:10px;font-weight:700}.row-next{color:#4f4a56;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650;overflow:hidden}.row-date{color:#716b78;white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:flex}.row-date svg{color:#aaa4af;flex:none}.row-progress{flex-direction:column;gap:5px;min-width:0;display:flex}.row-progress>i{background:#eceef3;border-radius:3px;width:100%;height:4px;font-style:normal;overflow:hidden}.row-progress>i b{border-radius:inherit;background:var(--blue);height:100%;display:block}.row-progress small{color:#77717e;white-space:nowrap;font-size:10px}.row-updated{color:#98929f;white-space:nowrap;font-size:10px}.row-arrow{color:#aaa5b0}.designer-groups{gap:9px;display:grid}.designer-group{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #20263a05}.designer-group-head{width:100%;min-height:64px;color:var(--ink);text-align:left;background:#fff;border:0;grid-template-columns:36px minmax(0,1fr) auto 18px;align-items:center;gap:11px;padding:10px 16px;display:grid}.designer-group-head:hover{background:#fafbff}.designer-avatar{color:#536fd2;background:#eef2ff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:12px;font-weight:750;display:grid}.designer-name{flex-direction:column;gap:3px;display:flex}.designer-name strong{font-size:14px}.designer-name small{color:#8f8996;font-size:11px}.designer-load{color:#34866f;text-align:center;white-space:nowrap;background:#edf8f4;border-radius:5px;min-width:126px;padding:7px 10px;font-size:10px}.designer-load b{font-size:13px}.designer-load.busy{color:#aa670f;background:#fff4e4}.designer-load.danger{color:#bb405f;background:#fff0f4}.designer-group-head>svg{color:#99939f;transition:transform .15s}.designer-group-head>svg.expanded{transform:rotate(180deg)}.designer-task-list{border-top:1px solid #ececf1}.designer-task-row{width:100%;min-height:58px;color:var(--ink);text-align:left;background:#fcfcfd;border:0;border-bottom:1px solid #efeff2;grid-template-columns:70px minmax(200px,1fr) 118px 48px 16px;align-items:center;gap:12px;padding:8px 16px 8px 63px;display:grid}.designer-task-row:last-child{border-bottom:0}.designer-task-row:hover{background:#f7f8fc}.designer-task-title{flex-direction:column;gap:3px;min-width:0;display:flex}.designer-task-title small,.designer-task-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.designer-task-title small{color:#918b98;font-size:10px}.designer-task-title strong{color:#403b47;font-size:12px}.designer-task-due{color:#716b78;white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:flex}.designer-task-due.overdue{color:#bf405f;font-weight:700}.designer-task-points{color:#5d5864;white-space:nowrap;font-size:11px}.designer-task-row>svg{color:#aaa5b0}.risk-board{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;display:grid}.risk-column{border:1px solid var(--line);border-top:3px solid var(--green);background:#f8f8fa;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #20263a05}.risk-column-red{border-top-color:var(--red)}.risk-column-amber{border-top-color:var(--amber)}.risk-column>header{background:#fff;border-bottom:1px solid #e8e8ed;flex-direction:column;justify-content:center;gap:5px;min-height:66px;padding:11px 13px;display:flex}.risk-column>header span{color:#413c48;align-items:center;gap:7px;font-size:13px;font-weight:750;display:flex}.risk-column>header span i{background:var(--green);border-radius:50%;width:7px;height:7px}.risk-column-red>header span i{background:var(--red)}.risk-column-amber>header span i{background:var(--amber)}.risk-column>header span b{color:#716b78;background:#f0f1f4;border-radius:4px;place-items:center;min-width:20px;height:20px;margin-left:auto;font-size:10px;display:grid}.risk-column>header small{color:#928c99;font-size:10px}.risk-column>div{gap:6px;padding:7px;display:grid}.risk-project-row{width:100%;min-height:74px;color:var(--ink);text-align:left;background:#fff;border:1px solid #e5e6eb;border-radius:6px;grid-template-columns:minmax(0,1fr) auto 15px;align-items:center;gap:9px;padding:10px;display:grid;box-shadow:0 1px 4px #20263a05}.risk-project-row:hover{border-color:#ced4e5;box-shadow:0 4px 12px #20263a0a}.risk-project-row>span:first-child,.risk-project-next{flex-direction:column;gap:4px;min-width:0;display:flex}.risk-project-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.risk-project-row small{color:#8d8794;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.risk-project-next{align-items:flex-end}.risk-project-next b{color:#5b5662;white-space:nowrap;font-size:10px}.risk-project-row>svg{color:#aaa5b0}.risk-column-empty{color:#9c96a2;text-align:center;margin:0;padding:26px 10px;font-size:11px}@media (max-width:1100px){.project-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}.project-table-head,.project-row{grid-template-columns:5px minmax(190px,1.5fr) minmax(104px,.8fr) 88px minmax(108px,.8fr) 112px 100px 18px}.project-table-head>span:nth-child(4),.project-table-head>span:nth-child(9),.row-members,.row-updated{display:none}.overview-metrics{grid-template-columns:repeat(2,1fr)}.overview-layout,.admin-grid{grid-template-columns:1fr}}@media (max-width:900px){.app-shell{display:block}.sidebar{display:none}.workspace{min-height:100vh}.topbar{padding:0 20px}.mobile-brand{align-items:center;gap:10px;font-size:14px;display:flex}.mobile-brand .brand-mark{width:30px;height:30px;font-size:15px}.search{width:min(300px,37vw);margin-left:auto}.content{width:min(100% - 40px,760px);padding:28px 0 100px}.project-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}.project-table-head,.project-row{column-gap:9px}.risk-board,.task-card{grid-template-columns:1fr}.task-side{border-top:1px solid #ececf0;border-left:0;flex-direction:row;align-items:center;gap:16px}}@media (max-width:640px){.login-page{padding:18px}.login-card{border-radius:24px;grid-template-columns:minmax(0,1fr);min-height:auto}.login-intro,.login-form{padding:30px}.login-intro{min-height:330px}.login-logo{top:30px;left:30px}.login-copy{margin-top:0;transform:none}.login-copy h1{font-size:44px}.login-security-note{line-height:1.45}.access-denied-card{padding:34px 24px}.topbar{height:58px;padding:0 14px}.search{background:0 0;border:0;justify-content:center;width:34px;padding:0}.search input,.test-pill,.user-chip>span:nth-child(2),.user-chip>svg{display:none}.topbar-actions{gap:0}.logout-chip{border-left:0;justify-content:center;width:34px;min-height:34px;padding:0;font-size:0;overflow:hidden}.content{width:calc(100% - 28px);padding-top:24px}.page-intro{align-items:flex-start;min-height:auto}.page-intro h1{font-size:28px}.page-intro p{max-width:220px;line-height:1.5}.page-intro>.primary-button{min-width:42px;height:38px;padding:0 10px;font-size:0;overflow:hidden}.page-intro>.primary-button svg{width:17px;height:17px}.today-load{grid-template-columns:1fr;min-width:112px;padding:10px 10px 9px 12px}.today-load small{font-size:10px}.today-load strong{font-size:24px}.today-load span{font-size:11px}.signal-strip{grid-template-columns:repeat(3,1fr);min-height:72px}.signal-strip>div{border-right:1px solid #ebecf0;justify-content:center;gap:7px;padding:12px 6px}.signal-icon{width:27px;height:27px}.signal-strip strong{font-size:20px}.signal-strip small{font-size:10px}.signal-note{display:none}.section-head{margin-top:26px}.section-head .quiet-button{min-width:34px;padding:0 9px;font-size:0}.task-card{min-height:0}.task-main{padding:18px 17px 16px}.task-card h3{margin:12px 0 15px;font-size:19px}.task-facts{gap:24px}.task-side{padding:13px;display:block}.status{margin-bottom:11px;display:inline-flex}.task-actions{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.task-actions button{white-space:nowrap;width:100%;min-width:0;height:38px;padding:0 4px}.project-display-bar{margin-top:22px}.project-display-bar>p{display:none}.project-view-switch{width:100%}.project-view-switch button{flex:1;justify-content:center}.project-toolbar{min-height:42px;margin-top:22px}.project-display-bar+.project-toolbar{margin-top:8px}.risk-tabs{scrollbar-width:none;flex:1;min-width:0;overflow-x:auto}.risk-tabs::-webkit-scrollbar{display:none}.risk-tabs button{flex:none;padding:0 8px}.risk-tabs button b{display:none}.filter-trigger{min-width:34px;padding:0;font-size:0}.filter-popover{border-radius:10px 10px 0 0;width:100%;padding:20px 18px 24px;position:fixed;inset:auto 0 68px;box-shadow:0 -16px 40px #252a3a20}.project-view-switch,.project-display-bar,.project-table-head{display:none}.project-table{margin-top:0}.project-row{grid-template-columns:5px minmax(0,1fr) auto auto 16px;column-gap:9px;min-height:76px;padding:9px 11px}.row-owner,.row-members,.row-next,.row-progress,.row-updated{display:none}.row-risk{height:40px}.row-stage{font-size:9px}.row-date{font-size:10px}.project-grid{grid-template-columns:1fr}.project-card{min-height:284px}.overview-metrics{grid-template-columns:repeat(2,1fr);gap:8px}.metric-card{gap:8px;min-height:96px;padding:13px}.metric-card>span{width:30px;height:30px}.metric-card strong{font-size:26px}.metric-card p{display:none}.overview-layout{margin-top:8px}.exception-list button{grid-template-columns:7px minmax(0,1fr) auto}.exception-list button>svg{display:none}.exception-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workload-row{grid-template-columns:29px 78px minmax(45px,1fr) 38px;gap:7px;padding:9px 11px}.workload-row em,.sync-note{display:none}.admin-grid{margin-top:22px}.drawer{width:100%}.drawer-kpis{grid-template-columns:1fr}.drawer-kpis div{min-height:49px}.next-milestone{grid-template-columns:34px 1fr}.next-milestone time{grid-column:2}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:10px 10px 0 0;width:100%;max-height:88vh}.reason-grid,.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.mobile-nav{z-index:30;height:68px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav button{color:#8c8797;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:11px;display:flex}.mobile-nav button.active{color:var(--blue);font-weight:700}.toast{text-align:center;justify-content:center;bottom:82px;left:14px;right:14px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--ink:#20283a;--muted:#818ba1;--line:#e8ecf4;--panel:#fff;--bg:#e8edf6;--blue:#1478f2;--purple:#b865ef;--green:#57bd77;--amber:#f3ba2f;--red:#ec686e}html,body{background:var(--bg)}body{-webkit-font-smoothing:antialiased;padding:28px;font-size:16px}.app-shell{background:#fff;border:1px solid #ffffffb3;border-radius:30px;grid-template-columns:224px minmax(0,1fr);width:min(1500px,100%);min-height:calc(100vh - 56px);margin:0 auto;overflow:hidden;box-shadow:0 28px 70px #414c6829}.sidebar{width:auto;min-height:100%;color:var(--ink);background:#fff;border-right:1px solid #eef1f7;padding:38px 26px 30px;position:relative;inset:auto}.brand-mark{background:#fff;border:1px solid #edf0f5;border-radius:12px;width:38px;height:38px;box-shadow:0 7px 18px #26314a14}.brand-mark img{width:27px;height:27px}.brand-copy{gap:5px;margin:14px 4px 44px}.brand-copy strong{color:var(--ink);letter-spacing:0;font-size:17px}.brand-copy small{color:#a0a9ba;letter-spacing:.13em;font-size:10px}.sidebar nav{gap:9px}.nav-item{color:#929bad;border-radius:12px;gap:12px;height:47px;padding:0 13px;font-size:14px;font-weight:560}.nav-item:hover{color:#4d5a70;background:#f5f7fb}.nav-item.active{color:var(--blue);box-shadow:none;background:#edf5ff}.nav-item small{color:#b0b7c5;font-size:10px}.nav-item.active small{color:#70a8ef}.nav-divider{background:#edf0f5;margin:22px 7px 16px}.admin-nav{color:#9ba3b1}.sidebar-foot{border-top:1px solid #edf0f5;padding:22px 5px 0}.sidebar-foot strong{color:#5f6a7d;font-size:12px}.sidebar-foot small{color:#9ca5b5;font-size:11px}.live-dot{background:#56c784;box-shadow:0 0 0 4px #56c78421}.workspace{background:#f3f5fd;grid-column:2;min-height:calc(100vh - 56px)}.topbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;border-bottom:1px solid #eef1f7;height:88px;padding:0 36px;position:relative;top:auto}.search{color:#9ba4b5;background:#f7f9fc;border:1px solid #e8ecf3;border-radius:12px;width:min(470px,46vw);height:44px;padding:0 15px}.search input{font-size:14px}.topbar-actions{gap:16px}.test-pill{color:#3c9860;background:#eef8f2;border:0;border-radius:9px;height:30px;padding:0 11px;font-size:11px}.user-chip{gap:11px}.avatar{color:#2675dc;background:#edf3ff;width:38px;height:38px;font-size:13px}.user-chip strong{font-size:13px}.user-chip small{font-size:11px}.logout-chip{color:#7d8799;min-height:38px;padding-left:16px;font-size:13px}.content{width:100%;max-width:none;margin:0;padding:36px clamp(26px,3.5vw,52px) 70px}.page-intro{align-items:flex-end;min-height:68px}.eyebrow{letter-spacing:.09em;margin-bottom:9px;font-size:11px!important}.page-intro h1{letter-spacing:-.035em;font-size:clamp(29px,2.4vw,36px);font-weight:720}.page-intro p{color:var(--muted);margin-top:9px;font-size:14px;line-height:1.6}.primary-button,.secondary-button,.danger-button,.quiet-button{border-radius:11px;min-height:42px;padding:0 16px;font-size:13px}.primary-button{border-color:var(--blue);background:var(--blue);box-shadow:0 8px 18px #1478f22e}.primary-button:hover{background:#0d6fe4}.secondary-button,.quiet-button{color:#5e687a;border-color:#e3e8f1}.icon-button{border-color:#e5e9f1;border-radius:11px;width:40px;height:40px}.text-button{font-size:13px}.today-load{border:0;border-left:4px solid var(--amber);border-radius:14px;min-width:220px;padding:15px 17px 13px;box-shadow:0 8px 24px #45506b12}.today-load small{font-size:11px}.today-load strong{font-size:28px}.today-load i,.today-load span{font-size:12px}.signal-strip{border:0;border-radius:18px;min-height:96px;margin-top:28px;box-shadow:0 8px 26px #3944600f}.signal-strip>div{border-right-color:#eef1f6;padding:18px 22px}.signal-icon{border-radius:12px;width:40px;height:40px}.signal-strip strong{font-size:24px}.signal-strip small{font-size:11px}.signal-note{font-size:12px;line-height:1.6}.section-head{margin:36px 0 16px}.section-head h2,.overview-panel h2,.admin-panel h2{font-size:18px}.section-head p,.overview-panel header p,.admin-panel header p{margin-top:7px;font-size:12px}.task-list{gap:13px}.task-card{border:0;border-radius:18px;grid-template-columns:minmax(0,1fr) minmax(310px,34%);min-height:166px;box-shadow:0 7px 24px #3944600e}.task-card:before{width:5px}.task-main{padding:24px 28px}.task-meta{gap:11px;font-size:12px}.urgency{border-radius:7px;padding:5px 8px;font-size:10px}.task-card h3{margin:15px 0 19px;font-size:18px}.task-facts{gap:34px}.task-facts span{gap:5px;font-size:12px}.task-facts small{font-size:10px}.blocker-note{font-size:11px}.task-side{border-left-color:#eef1f6;padding:23px 25px}.status{border-radius:8px;min-width:68px;padding:6px 10px;font-size:11px}.task-actions{gap:9px}.task-actions button{border-radius:10px;min-width:84px;height:40px;font-size:11px}.project-display-bar{background:#e9edfa;border:0;border-radius:14px;margin-top:30px;padding:5px}.project-display-bar>p{padding-left:9px;font-size:12px}.project-view-switch button{border-radius:10px;min-height:38px;font-size:12px}.project-view-switch button.active{color:var(--blue);background:#fff;box-shadow:0 4px 12px #39446014}.project-toolbar{border:0;border-radius:15px;min-height:52px;margin:14px 0 16px;padding:7px;box-shadow:0 6px 20px #3944600d}.risk-tabs button{border-radius:9px;height:36px;padding:0 12px;font-size:11px}.risk-tabs button.active{color:var(--blue);background:#edf5ff}.risk-tabs button b{border-radius:6px;min-width:20px;height:20px;font-size:9px}.filter-popover{border-color:#e6eaf2;border-radius:14px;width:290px;padding:18px;box-shadow:0 18px 42px #303a5321}.filter-popover label,.form-grid label,.note-field{gap:8px;font-size:12px}.filter-popover select,.form-grid input,.form-grid select,.note-field textarea{background:#fbfcfe;border-color:#e1e6ef;border-radius:10px;min-height:46px;padding:0 13px;font-size:13px}.project-table{background:#fff;border:0;border-radius:18px;overflow:hidden;box-shadow:0 8px 26px #3944600e}.project-table-head{color:#939daf;background:#fafbfe;border-bottom-color:#edf0f5;min-height:50px;padding-inline:18px;font-size:10px}.project-row{border-bottom-color:#eef1f6;min-height:78px;padding-inline:18px}.project-row:hover{box-shadow:none;background:#f8faff;transform:none}.row-project strong,.row-owner strong{font-size:12px}.row-project small,.row-owner small,.row-updated,.row-date{font-size:10px}.row-stage,.row-risk{border-radius:8px;font-size:10px}.row-next{font-size:11px}.project-grid{gap:16px}.project-card{border:0;border-radius:18px;min-height:306px;padding:21px 21px 17px;box-shadow:0 8px 24px #3944600e}.project-card:before{height:5px}.project-card:hover{border-color:#0000;transform:none;box-shadow:0 12px 30px #3944601a}.project-risk{font-size:10px;top:20px;right:20px}.project-card-head p{font-size:10px}.project-card h2{margin:16px 0 20px;font-size:17px}.owner-avatar{width:36px;height:36px;font-size:11px}.owner-row small{font-size:9px}.owner-row strong{font-size:11px}.project-next{border-radius:10px;margin:18px 0 14px;padding:12px}.project-next small,.project-next time{font-size:10px}.project-next strong{font-size:12px}.project-progress>div:first-child{font-size:10px}.project-progress>div:first-child strong{font-size:11px}.designer-list,.risk-board{gap:14px}.designer-group,.risk-column{border:0;border-radius:18px;box-shadow:0 8px 24px #3944600d}.designer-group>button{min-height:66px;padding:13px 18px}.designer-group strong,.risk-column h3{font-size:13px}.designer-group small,.risk-column p{font-size:10px}.designer-task-row{min-height:62px;padding:11px 18px 11px 62px}.designer-task-row strong{font-size:12px}.designer-task-row small{font-size:10px}.overview-metrics{gap:14px;margin-top:28px}.metric-card{border:0;border-radius:18px;gap:15px;min-height:126px;padding:20px;box-shadow:0 8px 24px #3944600d}.metric-card>span{border-radius:13px;width:44px;height:44px}.metric-card small{font-size:11px}.metric-card strong{font-size:30px}.metric-card p{font-size:10px}.overview-layout{gap:15px}.overview-panel,.admin-panel{border:0;border-radius:18px;box-shadow:0 8px 24px #3944600d}.overview-panel>header,.admin-panel>header{border-bottom-color:#eef1f6;min-height:76px;padding:18px 22px}.overview-panel header>span,.roster-count{border-radius:8px;font-size:11px}.exception-list button{min-height:66px;padding:12px 20px}.exception-list strong{font-size:12px}.exception-list small,.exception-list time{font-size:10px}.workload-row{min-height:62px;padding:11px 18px}.work-person strong{font-size:11px}.work-person small,.workload-row>strong,.workload-row em{font-size:10px}.admin-grid{gap:15px;margin-top:28px}.user-list>div{min-height:70px;padding:12px 22px}.admin-avatar{width:38px;height:38px;font-size:11px}.user-list strong{font-size:12px}.user-list small{font-size:10px}.operations>button{min-height:78px;padding:15px 20px}.operation-icon{border-radius:11px;width:40px;height:40px}.operations button strong,.backup-status strong{font-size:12px}.operations button small,.backup-status small{font-size:10px}.backup-status{border-radius:12px;margin:16px;padding:15px}.test-boundary{border:0;border-left:4px solid var(--green);border-radius:14px;padding:18px 20px}.test-boundary strong{font-size:12px}.test-boundary p{font-size:11px}.member-form-note{border-radius:10px;font-size:12px}.empty-state{background:#ffffff8c;border-color:#dbe1ec;border-radius:18px;min-height:260px}.empty-state>span{width:54px;height:54px}.empty-state strong{font-size:14px}.empty-state p{font-size:12px}.drawer{background:#f4f6fb}.drawer-head{min-height:76px;padding:17px 24px}.drawer-head p{font-size:11px}.drawer-title{padding:28px 25px 20px}.drawer-title h2{font-size:25px}.drawer-title p{font-size:11px}.drawer-kpis{gap:10px;padding:0 25px 22px}.drawer-kpis div{border-radius:11px;min-height:70px;padding:13px}.drawer-kpis small,.drawer-progress span{font-size:10px}.drawer-kpis strong{font-size:12px}.drawer-progress{padding:0 25px 25px}.stage-flow{border-radius:14px;margin:14px;padding:18px}.stage-flow h3{font-size:13px}.stage-flow header p,.stage-flow header>span{font-size:10px}.stage-track small{font-size:9px}.stage-advance-button{border-radius:10px;min-height:46px;font-size:11px}.mini-task-row>button{border-radius:9px;min-height:36px;font-size:10px}.next-milestone,.drawer-section{border-radius:14px;margin:14px}.next-milestone small,.drawer-section header p{font-size:10px}.next-milestone strong,.drawer-section h3{font-size:13px}.next-milestone time{font-size:11px}.modal{border:0;border-radius:18px;box-shadow:0 24px 70px #242c4033}.modal>header{min-height:78px;padding:17px 22px}.modal h2{font-size:18px}.modal header p{font-size:11px}.modal-body{padding:22px}.modal footer{min-height:72px;padding:14px 22px}.project-form-modal,.task-form-modal,.member-form{width:min(700px,96vw)}.project-form-grid,.task-form-grid,.member-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px 22px}.modal-body.project-form-grid>label,.modal-body.task-form-grid>label,.modal-body.member-form-grid>label,.score-field{grid-template-rows:22px 50px;align-content:start;gap:8px;min-width:0;margin:0;display:grid}.project-form-grid input,.project-form-grid select,.task-form-grid input,.task-form-grid select,.member-form-grid input,.member-form-grid select{background-color:#fbfcfe;border:1px solid #dfe5ef;border-radius:11px;width:100%;height:50px;min-height:50px;margin:0;padding:0 14px;font-size:14px;line-height:50px}.project-form-grid input::placeholder,.task-form-grid input::placeholder,.member-form-grid input::placeholder{color:#a0a8b6}.project-form-grid input:focus,.project-form-grid select:focus,.task-form-grid input:focus,.task-form-grid select:focus,.member-form-grid input:focus,.member-form-grid select:focus{background-color:#fff;border-color:#92baf2;box-shadow:0 0 0 3px #1478f214}.people-picker{min-width:0;height:50px;position:relative}.people-picker-control{cursor:text;background:#fbfcfe;border:1px solid #dfe5ef;border-radius:11px;align-items:center;gap:6px;width:100%;height:50px;padding:6px 11px;transition:border-color .15s,box-shadow .15s;display:flex}.people-picker:focus-within .people-picker-control{background:#fff;border-color:#92baf2;box-shadow:0 0 0 3px #1478f214}.project-form-grid .people-picker-control input[type=text]{width:auto;min-width:84px;height:34px;min-height:34px;box-shadow:none;background:0 0;border:0;border-radius:0;flex:84px;padding:0;font-size:13px;line-height:34px}.people-picker-control>svg{color:#7b8799;flex:none}.people-chip{color:#526784;background:#edf3fc;border-radius:8px;flex:none;align-items:center;gap:4px;height:30px;padding:0 7px 0 9px;font-size:11px;font-weight:700;display:inline-flex}.people-chip button{color:#8290a5;background:0 0;border:0;border-radius:50%;place-items:center;width:18px;height:18px;padding:0;display:grid}.people-chip button:hover{color:#334963;background:#dce8f8}.people-suggestions{z-index:50;background:#fff;border:1px solid #e0e6ef;border-radius:12px;max-height:230px;padding:6px;position:absolute;top:calc(100% + 7px);left:0;right:0;overflow:auto;box-shadow:0 16px 38px #2b375229}.people-suggestions button{color:#27364a;text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;width:100%;min-height:42px;padding:6px 8px;display:grid}.people-suggestions button:hover{background:#f3f7fc}.people-suggestions button>span{color:#5472a1;background:#eaf1fb;border-radius:8px;place-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:grid}.people-suggestions button>strong{font-size:12px}.people-suggestions button>small{color:#8d98aa;font-size:10px}.people-suggestions .people-custom{color:var(--blue);grid-template-columns:28px 1fr auto}.people-suggestions .people-custom>svg{margin:auto}.score-field>span{color:#706a82;font-size:12px;font-weight:650}.task-form-grid .score-preview{border-radius:11px;height:50px;min-height:50px;margin:0;padding:0 14px}.task-form-grid .score-preview small{font-size:11px}.task-form-grid .score-preview strong{font-size:16px}.drawer-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-count{color:#657188;background:#fff;border:1px solid #dde5f0;border-radius:10px;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:11px;font-weight:700;display:inline-flex}.archive-panel{background:#fff;border-radius:18px;margin-top:30px;overflow:hidden;box-shadow:0 8px 26px #3944600e}.archive-table-head,.archive-row{grid-template-columns:minmax(200px,1.4fr) minmax(105px,.72fr) minmax(145px,.95fr) 96px 68px 116px 126px 18px;align-items:center;column-gap:13px;display:grid}.archive-table-head{color:#939daf;background:#fafbfe;border-bottom:1px solid #edf0f5;min-height:50px;padding:0 20px;font-size:10px;font-weight:700}.archive-row{width:100%;min-height:82px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #eef1f6;padding:10px 20px;transition:background .15s}.archive-row:last-child{border-bottom:0}.archive-row:hover{background:#f8faff}.archive-project-name{align-items:center;gap:11px;min-width:0;display:flex}.archive-project-name>i{color:#71809a;background:#eef2f7;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.archive-project-name>span{flex-direction:column;gap:5px;min-width:0;display:flex}.archive-project-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.archive-project-name small,.archive-task-count{color:#929bad;font-size:10px}.archive-participants{align-items:center;gap:8px;min-width:0;display:flex}.archive-participants .avatar-stack{flex:none}.archive-participants>small{color:#7e899d;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;overflow:hidden}.archived-label{color:#67748a;background:#eef2f7;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex}.archive-restore-button{margin-left:auto}.mini-task-list>.mini-task-row.is-readonly{grid-template-columns:68px minmax(0,1fr) auto}.login-page{background:#e8edf6;padding:28px}.login-dots{display:none}.login-card{background:#fff;border:0;border-radius:30px;grid-template-columns:.96fr 1.04fr;width:min(980px,100%);min-height:610px;box-shadow:0 28px 70px #414c6829}.login-intro,.login-form{padding:52px}.login-intro{background:#f0f3ff}.login-logo{color:var(--ink);top:52px;left:52px}.login-logo strong{font-size:24px}.login-copy p{color:#7d8aae;font-size:15px}.login-copy h1{color:var(--ink);font-size:clamp(46px,6vw,68px);font-weight:300;line-height:1.08}.login-form{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}.login-form-head{margin-bottom:26px}.login-form-head span{color:var(--blue);font-size:12px;font-weight:700}.login-form-head h2{margin-top:10px;font-size:28px}.login-field{gap:9px;margin-bottom:16px;font-size:13px}.login-field div{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fafbfe;border-color:#e5e9f1;border-radius:11px;min-height:56px}.login-field input{font-size:14px}.login-security-note{margin-bottom:20px;font-size:12px}.login-submit{border-radius:11px;min-height:50px;box-shadow:0 10px 22px #1478f238}@media (max-width:900px){body{padding:0}.app-shell{border:0;border-radius:0;min-height:100vh}.workspace{min-height:100vh}.topbar{height:72px}.content{width:100%;padding:30px 24px calc(92px + env(safe-area-inset-bottom))}.mobile-brand{white-space:nowrap;flex:none}.mobile-brand strong{white-space:nowrap}.mobile-nav{z-index:30;height:calc(68px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav button{color:#8c8797;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;font-size:11px;display:flex}.mobile-nav button.active{color:var(--blue);font-weight:700}.mobile-nav.mobile-nav-admin{grid-template-columns:repeat(5,1fr)}.archive-table-head,.archive-row{grid-template-columns:minmax(180px,1.3fr) minmax(105px,.75fr) minmax(130px,.9fr) 88px 66px 108px 18px}.archive-table-head>span:nth-child(7),.archive-row>.row-date{display:none}}@media (max-width:640px){html,body{overflow-x:hidden}.login-page{background:#fff;min-height:100dvh;padding:0;display:block;overflow-y:auto}.login-card{width:100%;min-height:100dvh;box-shadow:none;border-radius:0;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);overflow:visible}.login-intro{min-height:214px;padding:calc(24px + env(safe-area-inset-top)) 24px 23px;background:linear-gradient(145deg,#f1f5ff 0%,#e9efff 100%);justify-content:flex-end}.login-logo{top:calc(22px + env(safe-area-inset-top));gap:9px;left:24px}.login-brand-image{width:28px;height:28px}.login-logo strong{font-size:18px}.login-copy{max-width:none;margin:66px 0 0;transform:none}.login-copy p{margin-bottom:8px;font-size:10px}.login-copy h1{letter-spacing:-.05em;font-size:32px;line-height:1.12}.login-form{min-height:0;padding:27px 24px calc(30px + env(safe-area-inset-bottom));justify-content:flex-start}.login-form-head{margin-bottom:22px}.login-form-head h2{margin-top:7px;font-size:24px}.login-field{gap:7px;margin-bottom:14px}.login-field div{min-height:54px;padding:0 14px}.login-field input{font-size:16px}.login-security-note{align-items:flex-start;margin:1px 0 17px;line-height:1.5}.login-submit{min-height:52px}.password-change-card{width:100%;min-height:100dvh;padding:calc(34px + env(safe-area-inset-top)) 24px calc(30px + env(safe-area-inset-bottom));box-shadow:none;border-radius:0}.topbar{height:calc(62px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);gap:8px}.mobile-brand{gap:7px}.mobile-brand .brand-mark{flex:0 0 30px;width:30px;height:30px}.mobile-brand .brand-mark img{width:21px;height:21px}.mobile-brand strong{font-size:13px}.search{flex:0 0 32px;width:32px;height:34px;margin-left:auto}.user-chip{min-width:34px}.avatar{width:34px;height:34px}.content{padding:24px 14px 94px}.page-intro:has(>.today-load){grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.page-intro:has(>.today-load)>div:first-child{min-width:0}.page-intro:has(>.today-load) .today-load{grid-template-columns:auto 1fr;align-items:center;width:100%;min-width:0}.page-intro:has(>.today-load) .today-load small{grid-column:1/-1}.page-intro:has(>.today-load) .today-load span{justify-self:end}.page-intro h1{font-size:29px}.page-intro p{max-width:250px;font-size:13px}.signal-strip small{font-size:10px}.task-card h3{font-size:18px}.overview-panel>header,.admin-panel>header{padding:16px}.project-form-modal,.task-form-modal,.member-form{width:100%}.project-form-grid,.task-form-grid,.member-form-grid{grid-template-columns:1fr;gap:16px}.stage-track{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px}.stage-track>div:nth-child(4):before{display:none}.mini-task-list>.mini-task-row{grid-template-columns:64px minmax(0,1fr) auto;padding:10px 0}.mini-task-row>button{grid-column:2/-1;width:100%}.archive-count{min-height:34px;font-size:10px}.archive-panel{box-shadow:none;background:0 0;margin-top:22px}.archive-table-head{display:none}.archive-list{gap:10px;display:grid}.archive-row{border:0;border-radius:14px;grid-template-columns:minmax(0,1fr) auto 18px;gap:12px;min-height:150px;padding:15px;box-shadow:0 6px 20px #3944600f}.archive-project-name{grid-column:1/3}.archive-row>.row-owner{grid-column:1}.archive-row>.row-stage{grid-area:2/2}.archive-row>.archive-participants{grid-area:3/1/auto/3}.archive-row>.archive-task-count,.archive-row>.row-progress,.archive-row>.row-date{display:none}.archive-row>.row-arrow{grid-area:1/3/4}.mini-task-list>.mini-task-row.is-readonly{grid-template-columns:64px minmax(0,1fr) auto}.mobile-nav{height:calc(66px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{white-space:nowrap;min-width:0;font-size:10px}.signal-strip>div{text-align:center;flex-direction:column}.signal-strip p:not(.signal-note){align-items:center}.modal{max-height:calc(92dvh - env(safe-area-inset-top));border-radius:20px 20px 0 0;flex-direction:column;display:flex;overflow:hidden}.modal>header,.modal>footer{flex:none}.modal>.modal-body{overscroll-behavior:contain;min-height:0;overflow-y:auto}}
