:root{--font-ui:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-display:"Fraunces",Georgia,"Times New Roman",serif;--ground:#f6f8f4;--surface:#fff;--surface-2:#f1f4ec;--border:#e0e6da;--border-strong:#cdd6c4;--ink:#1b241e;--ink-2:#4b564d;--ink-3:#77816f;--accent:#0f7361;--accent-strong:#0b5a4c;--accent-soft:#e3f1ed;--accent-ink:#0a4d41;--crit:#c24234;--crit-soft:#fbe7e3;--crit-ink:#9a3123;--warn:#b87914;--warn-soft:#fbefd8;--warn-ink:#8a5a0c;--info:#356c99;--info-soft:#e4eef6;--info-ink:#274f72;--ok:#3c7a54;--ok-soft:#e3f0e7;--ok-ink:#2c5c3f;--shadow:0 1px 2px rgba(27,36,30,.05),0 6px 20px -12px rgba(27,36,30,.22);--shadow-lg:0 12px 40px -16px rgba(27,36,30,.3);--radius:14px;--radius-sm:9px;--maxw:1180px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#10140f;--surface:#181d15;--surface-2:#1f2620;--border:#2a3128;--border-strong:#3a4438;--ink:#e9eee6;--ink-2:#aeb8a9;--ink-3:#7e8a79;--accent:#3bb79e;--accent-strong:#59c9b1;--accent-soft:#153029;--accent-ink:#8fe0d0;--crit:#e8705f;--crit-soft:#3a1d18;--crit-ink:#f3a79a;--warn:#e0a73e;--warn-soft:#382a12;--warn-ink:#f0cb85;--info:#6fa7d6;--info-soft:#16283a;--info-ink:#a6cbea;--ok:#6fb98a;--ok-soft:#15291c;--ok-ink:#a3d8b6;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 26px -14px rgba(0,0,0,.7);--shadow-lg:0 16px 46px -18px rgba(0,0,0,.75)}}:root[data-theme=dark]{--ground:#10140f;--surface:#181d15;--surface-2:#1f2620;--border:#2a3128;--border-strong:#3a4438;--ink:#e9eee6;--ink-2:#aeb8a9;--ink-3:#7e8a79;--accent:#3bb79e;--accent-strong:#59c9b1;--accent-soft:#153029;--accent-ink:#8fe0d0;--crit:#e8705f;--crit-soft:#3a1d18;--crit-ink:#f3a79a;--warn:#e0a73e;--warn-soft:#382a12;--warn-ink:#f0cb85;--info:#6fa7d6;--info-soft:#16283a;--info-ink:#a6cbea;--ok:#6fb98a;--ok-soft:#15291c;--ok-ink:#a3d8b6;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 26px -14px rgba(0,0,0,.7);--shadow-lg:0 16px 46px -18px rgba(0,0,0,.75)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-ui);background:var(--ground);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font-family:inherit}::selection{background:var(--accent-soft);color:var(--accent-ink)}a{color:var(--accent)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--ground) 86%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--border)}.topbar-in{gap:16px;padding:14px 20px;max-width:var(--maxw);margin:0 auto;flex-wrap:wrap}.brand,.topbar-in{display:flex;align-items:center}.brand{gap:12px;min-width:0}.mark{width:40px;height:40px;border-radius:11px;flex:none;background:linear-gradient(150deg,var(--accent),var(--accent-strong));display:grid;place-items:center;color:#fff;box-shadow:var(--shadow)}.mark svg{width:22px;height:22px}.brand-txt{display:flex;flex-direction:column;line-height:1.05;min-width:0}.brand-name{font-family:var(--font-display);font-weight:600;font-size:19px;letter-spacing:.2px}.brand-sub{font-size:11.5px;color:var(--ink-3);text-transform:uppercase;letter-spacing:1.4px;font-weight:600}.topbar-spacer{flex:1 1 auto;min-width:8px}.topbar-tools{gap:10px;flex-wrap:wrap}.me,.topbar-tools{display:flex;align-items:center}.me{gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 14px 5px 8px;box-shadow:var(--shadow)}.me .who{font-size:13px;font-weight:600}.me .role{font-size:10.5px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.6px;font-weight:700}.icon-btn{width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);cursor:pointer;display:grid;place-items:center;box-shadow:var(--shadow);transition:.15s}.icon-btn:hover{color:var(--accent);border-color:var(--border-strong);transform:translateY(-1px)}.icon-btn svg{width:18px;height:18px}.icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav{border-bottom:1px solid var(--border);background:var(--surface)}.nav-in{display:flex;gap:4px;max-width:var(--maxw);margin:0 auto;padding:0 12px;overflow-x:auto;scrollbar-width:thin}.nav-in::-webkit-scrollbar{height:5px}.nav-in::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;cursor:pointer;padding:15px 15px 13px;font-size:14px;font-weight:600;color:var(--ink-2);white-space:nowrap;border:none;border-bottom:2.5px solid transparent;display:flex;align-items:center;gap:8px;transition:.15s}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.tab .dot{width:8px;height:8px;border-radius:50%;background:var(--tab-dot,var(--ink-3));flex:none}.tab .cnt{font-size:11.5px;background:var(--surface-2);color:var(--ink-2);border-radius:999px;padding:1px 7px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tab[aria-selected=true] .cnt{background:var(--accent-soft);color:var(--accent-ink)}.tab.add{color:var(--ink-3)}.tab.add:hover{color:var(--accent)}.tab svg{width:16px;height:16px}main{padding:26px 0 90px}.view-head{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:20px}.view-title{font-family:var(--font-display);font-weight:600;font-size:26px;letter-spacing:.2px;margin:0;text-wrap:balance}.view-desc{color:var(--ink-3);font-size:14px;margin:3px 0 0}.view-head .spacer{flex:1 1}.kpis{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:16px}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 16px 15px;box-shadow:var(--shadow);position:relative;overflow:hidden}.kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--k,var(--accent))}.kpi .num{font-family:var(--font-display);font-weight:600;font-size:38px;line-height:1;letter-spacing:-.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ki,var(--ink))}.kpi .lab{display:flex;align-items:center;gap:7px;margin-top:9px;font-size:12.5px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.5px}.kpi .lab svg{width:15px;height:15px;color:var(--k,var(--accent))}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-h{gap:10px;padding:15px 18px;border-bottom:1px solid var(--border)}.panel-h,.panel-h h2{display:flex;align-items:center}.panel-h h2{margin:0;font-size:15px;font-weight:700;letter-spacing:.2px;gap:9px}.panel-h h2 svg{width:17px;height:17px;color:var(--ink-3)}.panel-h .spacer{flex:1 1}.panel-b{padding:16px 18px}.grid-2{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:16px;gap:16px;align-items:start}.progress-wrap{margin-top:4px}.progress-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:9px}.progress-top .pct{font-family:var(--font-display);font-weight:600;font-size:30px;line-height:1;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.progress-top .cap{color:var(--ink-3);font-size:13px;font-weight:500}.bar{height:12px;border-radius:999px;background:var(--surface-2);overflow:hidden;border:1px solid var(--border)}.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-strong));border-radius:999px;transition:width .5s cubic-bezier(.4,0,.2,1)}.bar.mini{height:7px}.legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:13px;font-size:12.5px;color:var(--ink-2)}.legend b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink)}.alert-list{display:flex;flex-direction:column;gap:8px}.alert{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;transition:.12s;text-align:left;width:100%}.alert:hover{border-color:var(--border-strong);transform:translateX(2px)}.alert.lv-over{background:var(--crit-soft);border-color:color-mix(in srgb,var(--crit) 30%,var(--border))}.alert.lv-soon{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 30%,var(--border))}.alert .when{flex:none;width:66px;text-align:center;font-weight:700;font-size:11.5px;text-transform:uppercase;letter-spacing:.4px}.alert.lv-over .when{color:var(--crit-ink)}.alert.lv-soon .when{color:var(--warn-ink)}.alert .body{flex:1 1;min-width:0}.alert .t{font-weight:600;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alert .m{font-size:12px;color:var(--ink-3);display:flex;gap:8px;align-items:center}.alert .who{display:inline-flex;align-items:center;gap:5px}.empty-note{color:var(--ink-3);font-size:13.5px;display:flex;align-items:center;gap:9px;padding:6px 2px}.empty-note svg{width:18px;height:18px;color:var(--ok)}.ppl{display:flex;flex-direction:column;gap:2px}.prow{display:grid;grid-template-columns:1.4fr auto 1fr;grid-gap:14px;gap:14px;align-items:center;padding:11px 8px;border-radius:10px;cursor:pointer;transition:.12s;border:1px solid transparent}.prow:hover{background:var(--surface-2);border-color:var(--border)}.prow .pinfo{display:flex;align-items:center;gap:11px;min-width:0}.prow .stats{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.prow .prog{display:flex;align-items:center;gap:9px}.prow .prog .bar{flex:1 1;min-width:60px}.prow .prog .pp{font-size:12px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;width:34px;text-align:right;font-weight:600}.avatar{border-radius:10px;flex:none;display:grid;place-items:center;font-weight:700;color:#fff;font-family:var(--font-display)}.pmeta{min-width:0;display:flex;flex-direction:column;line-height:1.2}.pmeta .pn{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pmeta .pd{font-size:12px;color:var(--ink-3)}.chip{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.2px;line-height:1.7;white-space:nowrap}.chip.c-open{background:var(--surface-2);color:var(--ink-2)}.chip.c-prog{background:var(--info-soft);color:var(--info-ink)}.chip.c-over{background:var(--crit-soft);color:var(--crit-ink)}.chip.c-done{background:var(--ok-soft);color:var(--ok-ink)}.composer{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 15px;margin-bottom:18px}.composer form{display:flex;flex-direction:column;gap:11px}.comp-main{display:flex;gap:10px;align-items:center}.comp-main .plus{width:34px;height:34px;border-radius:9px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex:none}.comp-main .plus svg{width:19px;height:19px}.ti{flex:1 1;border:none;background:transparent;font-size:16px;font-weight:500;color:var(--ink);padding:6px 2px}.ti::placeholder{color:var(--ink-3)}.ti:focus{outline:none}.comp-note{padding-left:44px}.ti-note{width:100%;border:1px solid var(--border);background:var(--surface-2);border-radius:9px;padding:8px 11px;font-size:13.5px;color:var(--ink-2);resize:vertical;min-height:38px;line-height:1.5}.ti-note::placeholder{color:var(--ink-3)}.ti-note:focus{outline:none;border-color:var(--accent)}.comp-row{display:flex;gap:9px;flex-wrap:wrap;padding-left:44px}.comp-row,.field{align-items:center}.field{display:inline-flex;gap:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:4px 4px 4px 10px}.field label{font-size:11px;color:var(--ink-3);font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:4px}.field label svg{width:13px;height:13px}.field input,.field select{border:none;background:transparent;color:var(--ink);font-size:13px;font-weight:600;padding:3px 2px;cursor:pointer}.field input:focus,.field select:focus{outline:none}.field input[type=date]{cursor:text;min-width:120px}.btn{border:none;border-radius:9px;padding:8px 16px;font-size:13.5px;font-weight:700;cursor:pointer;transition:.15s;display:inline-flex;align-items:center;gap:7px}.btn.primary{background:var(--accent);color:#fff;box-shadow:var(--shadow)}.btn.primary:hover{background:var(--accent-strong);transform:translateY(-1px)}.btn.primary:disabled{opacity:.6;cursor:default;transform:none}.btn.ghost{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--border)}.btn.ghost:hover{color:var(--ink);border-color:var(--border-strong)}.btn svg{width:16px;height:16px}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.suggests{display:flex;gap:7px;flex-wrap:wrap;padding-left:44px;align-items:center}.sug{border:1px dashed var(--border-strong);background:transparent;color:var(--ink-2);border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:600;cursor:pointer;transition:.12s}.sug:hover{border-style:solid;border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.sug-lab{color:var(--ink-3);font-weight:700;display:inline-flex;align-items:center;gap:5px}.sug-lab svg{width:13px;height:13px}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.seg{display:inline-flex;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:3px;box-shadow:var(--shadow)}.seg button{border:none;background:none;padding:6px 12px;border-radius:7px;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.seg button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-ink)}.seg button:hover{color:var(--ink)}.seg button .n{opacity:.6}.toolbar .spacer{flex:1 1}.toggle-done{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-done input{accent-color:var(--accent);width:16px;height:16px}.tasks{display:flex;flex-direction:column;gap:10px}.task{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px;display:flex;gap:12px;align-items:flex-start;position:relative;transition:.15s;border:1px solid var(--border);border-left:4px solid var(--pc,var(--border))}.task:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg)}.task.done{opacity:.62}.task.done .t-title input{text-decoration:line-through;color:var(--ink-3)}.check{width:22px;height:22px;flex:none;margin-top:2px;border-radius:7px;border:2px solid var(--border-strong);background:var(--surface);cursor:pointer;display:grid;place-items:center;transition:.15s;color:transparent}.check:hover{border-color:var(--accent)}.check svg{width:13px;height:13px}.task.done .check{background:var(--ok);border-color:var(--ok);color:#fff}.check:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.t-body{flex:1 1;min-width:0}.t-title{display:flex;align-items:center;gap:8px}.t-title input{flex:1 1;border:none;background:transparent;font-size:15px;font-weight:600;color:var(--ink);padding:3px 4px;border-radius:6px;min-width:0}.t-title input:focus,.t-title input:hover{background:var(--surface-2)}.t-title input:focus{outline:none;box-shadow:inset 0 0 0 1.5px var(--accent)}.t-note{margin-top:6px}.t-note textarea{width:100%;border:1px solid var(--border);background:var(--surface-2);border-radius:8px;padding:8px 10px;font-size:13px;color:var(--ink-2);resize:vertical;min-height:34px;line-height:1.5}.t-note textarea:focus{outline:none;border-color:var(--accent)}.t-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.pill,.t-meta{align-items:center}.pill{display:inline-flex;gap:6px;border-radius:8px;padding:4px 6px 4px 9px;font-size:12px;font-weight:600;border:1px solid var(--border);background:var(--surface-2);color:var(--ink-2)}.pill svg{width:13px;height:13px;opacity:.8}.pill select{border:none;background:transparent;color:inherit;font-size:12px;font-weight:700;cursor:pointer;padding:0 2px}.pill select:focus{outline:none}.pill.dl input{border:none;background:transparent;color:inherit;font-size:12px;font-weight:700;cursor:pointer;width:130px}.pill.dl input:focus{outline:none}.pill.st-progress{background:var(--info-soft);color:var(--info-ink);border-color:color-mix(in srgb,var(--info) 26%,var(--border))}.pill.st-blocked{background:var(--warn-soft);color:var(--warn-ink);border-color:color-mix(in srgb,var(--warn) 26%,var(--border))}.pill.st-done{background:var(--ok-soft);color:var(--ok-ink);border-color:color-mix(in srgb,var(--ok) 26%,var(--border))}.pill.dl-over{background:var(--crit-soft);color:var(--crit-ink);border-color:color-mix(in srgb,var(--crit) 30%,var(--border))}.pill.dl-soon{background:var(--warn-soft);color:var(--warn-ink);border-color:color-mix(in srgb,var(--warn) 30%,var(--border))}.pill.prio-urgent{background:var(--crit-soft);color:var(--crit-ink);border-color:color-mix(in srgb,var(--crit) 26%,var(--border))}.t-actions{display:flex;gap:4px;align-items:center;flex:none;align-self:flex-start}.mini{width:30px;height:30px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--ink-3);cursor:pointer;display:grid;place-items:center;transition:.12s}.mini:hover{background:var(--surface-2);color:var(--ink)}.mini.danger:hover{background:var(--crit-soft);color:var(--crit-ink)}.mini svg{width:16px;height:16px}.mini:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.confirm{display:flex;align-items:center;gap:6px;background:var(--crit-soft);border:1px solid color-mix(in srgb,var(--crit) 30%,var(--border));border-radius:8px;padding:3px 4px 3px 10px}.confirm span{color:var(--crit-ink)}.confirm button,.confirm span{font-size:12px;font-weight:700}.confirm button{border:none;border-radius:6px;padding:4px 9px;cursor:pointer}.confirm .yes{background:var(--crit);color:#fff}.confirm .no{background:var(--surface);color:var(--ink-2);border:1px solid var(--border)}.emptyboard{text-align:center;padding:50px 20px;color:var(--ink-3)}.emptyboard svg{width:42px;height:42px;color:var(--border-strong);margin-bottom:10px}.emptyboard p{margin:0;font-size:14px}.person-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;width:100%}.person-head .pn-edit{border:none;background:transparent;font-family:var(--font-display);font-weight:600;font-size:26px;color:var(--ink);padding:2px 6px;border-radius:8px;width:auto;max-width:min(90vw,420px)}.person-head .pn-edit:hover{background:var(--surface-2)}.person-head .pn-edit:focus{outline:none;background:var(--surface-2);box-shadow:inset 0 0 0 1.5px var(--accent)}.modal-scrim{position:fixed;inset:0;background:rgba(10,14,10,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:60;display:grid;place-items:center;padding:20px;animation:fade .15s ease}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-lg);width:min(440px,100%);padding:22px;animation:pop .18s cubic-bezier(.2,.8,.2,1)}@keyframes pop{0%{transform:translateY(8px) scale(.98);opacity:0}to{transform:none;opacity:1}}.modal h3{margin:0 0 4px;font-family:var(--font-display);font-weight:600;font-size:20px}.modal p{margin:0 0 16px;color:var(--ink-3);font-size:13.5px}.mfield{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.mfield label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-2)}.mfield input,.mfield select{border:1px solid var(--border-strong);background:var(--surface-2);border-radius:9px;padding:9px 11px;font-size:14px;color:var(--ink)}.mfield input:focus,.mfield select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.modal-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:6px}.toasts{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:80;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{background:var(--ink);color:var(--ground);padding:10px 16px;border-radius:10px;font-size:13.5px;font-weight:600;box-shadow:var(--shadow-lg);animation:tin .2s ease;max-width:min(90vw,420px)}.toast.warn{background:var(--warn);color:#231a06}.toast.error{background:var(--crit);color:#fff}.toast.ok{background:var(--ok);color:#fff}@keyframes tin{0%{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}.footnote{text-align:center;color:var(--ink-3);font-size:12.5px;margin-top:34px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.footnote svg{width:14px;height:14px;color:var(--accent)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 50% -10%,var(--accent-soft),transparent 60%),var(--ground)}.login-card{width:min(420px,100%);background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-lg);padding:30px 28px}.login-brand{display:flex;align-items:center;gap:13px;margin-bottom:22px}.login-brand .mark{width:46px;height:46px;border-radius:13px}.login-brand .mark svg{width:25px;height:25px}.login-brand .bn{font-family:var(--font-display);font-weight:650;font-size:22px}.login-brand .bs{font-size:11.5px;color:var(--ink-3);text-transform:uppercase;letter-spacing:1.4px;font-weight:700}.login-card h1{font-family:var(--font-display);font-weight:600;font-size:23px;margin:0 0 6px}.login-card p.sub{color:var(--ink-3);font-size:14px;margin:0 0 20px}.login-card label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-2);margin-bottom:6px}.login-card input[type=email]{width:100%;border:1px solid var(--border-strong);background:var(--surface-2);border-radius:11px;padding:12px 14px;font-size:15px;color:var(--ink);margin-bottom:14px}.login-card input[type=email]:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.login-card .btn.primary{width:100%;justify-content:center;padding:12px;font-size:15px}.login-msg{margin-top:16px;padding:12px 14px;border-radius:11px;font-size:13.5px;font-weight:600;display:flex;gap:9px;align-items:flex-start}.login-msg svg{width:18px;height:18px;flex:none;margin-top:1px}.login-msg.ok{background:var(--ok-soft);color:var(--ok-ink)}.login-msg.err{background:var(--crit-soft);color:var(--crit-ink)}.login-foot{text-align:center;color:var(--ink-3);font-size:12px;margin-top:20px}.center-screen{min-height:100vh;display:grid;place-items:center;color:var(--ink-3);font-size:14px}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:spin .8s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(1turn)}}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px}.team-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;display:flex;flex-direction:column;gap:12px}.team-card .th{display:flex;align-items:center;gap:12px}.team-card .tmini{display:flex;gap:6px;flex-wrap:wrap}@media (max-width:860px){.kpis{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}}@media (max-width:560px){.comp-note,.comp-row,.suggests{padding-left:0}.prow{grid-template-columns:1fr auto;gap:10px}.prow .prog{grid-column:1/-1}.view-title{font-size:22px}.t-actions{flex-direction:column}}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}