:root{color-scheme:light;--bg: #f4f6fb;--card: #ffffff;--fill: #f8fafc;--hairline: #e6e9ef;--hairline-soft: #eef1f6;--hover: #f4f6fb;--ink: #1a202c;--ink-soft: #2d3748;--text: #4a5568;--muted: #718096;--faint: #a0aec0;--brand: #f05d49;--brand-dark: #d84c38;--brand-light: #ff7d6a;--brand-soft: rgba(240, 93, 73, .1);--indigo: var(--brand);--success: #16a34a;--success-soft: #dcfce7;--warning: #d97706;--warning-soft: #fef3c7;--danger: #dc2626;--danger-soft: #fee2e2;--info: #2563eb;--info-soft: #dbeafe;--boulder: #f05d49;--rock: #2563eb;--pebble: #16a34a;--st-notstarted: #718096;--st-inprogress: #2563eb;--st-submitted: #d97706;--st-approved: #16a34a;--st-rejected: #dc2626;--st-overdue: #dc2626;--st-awaiting: #d97706;--st-declined: #d97706;--sidebar: #161b26;--sidebar-2: #1e2532;--sidebar-ink: #b7c0d0;--sidebar-dim: #7c869a;--text-micro: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-lg: 16px;--text-title: 22px;--text-display: 28px;--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.22, 1, .36, 1);--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 4px 16px rgba(16, 24, 40, .05);--shadow-lg: 0 12px 40px rgba(16, 24, 40, .16);--scroll-thumb: rgba(113, 128, 150, .32);--scroll-thumb-hover: rgba(74, 85, 104, .55)}*{box-sizing:border-box}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent;border:none}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:999px;border:3px solid transparent;background-clip:padding-box;min-height:32px;transition:background .16s ease}::-webkit-scrollbar-thumb:hover,::-webkit-scrollbar-thumb:active{background:var(--scroll-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-button{display:none;width:0;height:0}.sidebar::-webkit-scrollbar-thumb{background:#ffffff24;background-clip:padding-box}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff42;background-clip:padding-box}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}.sidebar{scrollbar-color:rgba(255,255,255,.24) transparent}}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:var(--text-base);line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"cv02","cv03","cv04"}h1,h2,h3{font-family:inherit;margin:0;line-height:1.25;color:var(--ink);font-weight:800}a{color:inherit;text-decoration:none}button{font-family:inherit}:focus-visible{outline:2px solid var(--indigo);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-property:opacity,background-color,border-color,color,box-shadow!important;transition-duration:.12s!important;scroll-behavior:auto!important}}.app-shell{display:flex;height:100vh;height:100dvh}.sidebar{width:264px;flex-shrink:0;height:100%;background:linear-gradient(180deg,var(--sidebar) 0%,var(--sidebar-2) 100%);color:var(--sidebar-ink);display:flex;flex-direction:column}.brand-band{display:flex;align-items:center;gap:11px;padding:16px;border-bottom:1px solid rgba(255,255,255,.06)}.brand-tile{width:38px;height:38px;border-radius:var(--radius-sm);flex-shrink:0;display:grid;place-items:center;font-weight:800;font-size:18px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-dark));box-shadow:0 4px 12px #f05d4959}.brand-wm{display:flex;flex-direction:column;line-height:1.15;min-width:0}.brand-name{font-weight:800;font-size:16px;color:#fff}.brand-tag{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sidebar-dim)}.rail-user{display:flex;align-items:center;gap:10px;margin:12px 12px 4px;padding:9px 11px;border-radius:var(--radius);background:#ffffff0d}.rail-avatar{width:34px;height:34px;font-size:12px;flex-shrink:0;background:#ffffff1f;color:#fff}.rail-user-body{display:flex;flex-direction:column;gap:3px;min-width:0}.rail-user-name{font-size:var(--text-sm);font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-pill{align-self:flex-start;font-size:10px;font-weight:800;text-transform:capitalize;color:#fff;background:var(--brand);border-radius:999px;padding:1px 8px}.rail-nav{flex:1;min-height:0;overflow-y:auto;padding:8px 12px 16px;display:flex;flex-direction:column;gap:2px}.nav-group{display:flex;flex-direction:column;gap:2px;margin-top:14px}.nav-group:first-child{margin-top:6px}.nav-section{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--sidebar-dim);padding:4px 10px}.nav-item{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:9px;color:var(--sidebar-ink);font-weight:500;font-size:var(--text-sm);border:none;background:transparent;width:100%;text-align:left;cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease)}.nav-item svg{flex-shrink:0;opacity:.85}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{background:var(--brand-soft);color:var(--brand-light);font-weight:600;box-shadow:inset 3px 0 0 var(--brand)}.nav-item.active svg{opacity:1;color:var(--brand-light)}.rail-help{display:flex;align-items:center;gap:11px;margin:4px 12px 14px;padding:9px 10px;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:#ffffff08;color:var(--sidebar-ink);font:inherit;font-size:var(--text-sm);font-weight:500;text-align:left;cursor:pointer;transition:background .12s var(--ease),color .12s var(--ease),border-color .12s var(--ease)}.rail-help svg{flex-shrink:0;opacity:.85}.rail-help:hover{background:#ffffff14;border-color:#ffffff29;color:#fff}.hiw{max-width:520px;display:flex;flex-direction:column}.hiw-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px 14px;border-bottom:1px solid var(--hairline);flex-shrink:0}.hiw-head h2{margin:0;font-size:19px;letter-spacing:-.02em}.hiw-body{padding:20px 24px 40px;overflow-y:auto}.hiw-lede{margin:0 0 20px;font-size:var(--text-base);color:var(--text);max-width:62ch}.hiw-ladder{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:2px}.hiw-step{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;padding:11px 0 11px 12px;position:relative}.hiw-step:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;border-radius:2px}.hiw-step.lvl-root:before{background:var(--faint)}.hiw-step.lvl-boulder:before{background:var(--boulder)}.hiw-step.lvl-rock:before{background:var(--rock)}.hiw-step.lvl-pebble:before{background:var(--pebble)}.hiw-rung{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:999px;background:var(--fill);font-size:var(--text-xs);font-weight:700;color:var(--muted)}.hiw-step-title{margin:2px 0 3px;font-size:var(--text-base);font-weight:650;color:var(--ink);display:flex;align-items:baseline;gap:8px}.hiw-alias{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--faint)}.hiw-step-body{margin:0;font-size:var(--text-sm);color:var(--text);max-width:58ch}.hiw-h{margin:30px 0 10px;font-size:var(--text-sm);font-weight:700;letter-spacing:.02em;color:var(--ink)}.hiw-defs{margin:0}.hiw-defs dt{font-size:var(--text-sm);font-weight:650;color:var(--ink-soft);margin-top:14px}.hiw-defs dt:first-child{margin-top:0}.hiw-defs dd{margin:3px 0 0;font-size:var(--text-sm);color:var(--text);max-width:60ch}.hiw-keys{list-style:none;margin:0;padding:0;display:grid;gap:8px}.hiw-keys li{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--text)}.hiw-keys span{color:var(--text)}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:2px 6px;border:1px solid var(--hairline);border-bottom-width:2px;border-radius:5px;background:var(--card);font-family:inherit;font-size:11px;font-weight:650;color:var(--ink-soft)}.firstrun{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding:16px 18px;margin-bottom:18px;border:1px solid color-mix(in srgb,var(--brand) 22%,var(--hairline));border-radius:14px;background:color-mix(in srgb,var(--brand) 4%,var(--card))}.firstrun h3{margin:0 0 5px;font-size:var(--text-base);letter-spacing:-.01em}.firstrun p{margin:0;font-size:var(--text-sm);color:var(--text);max-width:68ch}.firstrun-ladder{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:11px}.firstrun-ladder .bc-sep{color:var(--faint)}.firstrun-acts{display:flex;align-items:center;gap:6px;flex-shrink:0}@media(max-width:680px){.firstrun{grid-template-columns:minmax(0,1fr)}.firstrun-acts{justify-content:flex-start}}.nav-badge{margin-left:auto;flex-shrink:0;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;font-size:10.5px;font-weight:700;line-height:1;border-radius:999px}.sidebar.collapsed .nav-badge{display:none}.sidebar.collapsed{width:76px}.sidebar.collapsed .brand-wm,.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-section,.sidebar.collapsed .rail-user-body{display:none}.sidebar.collapsed .brand-band{justify-content:center;padding:16px 0}.sidebar.collapsed .rail-user{justify-content:center}.sidebar.collapsed .nav-item{justify-content:center;padding:10px 0}.sidebar.collapsed .nav-item.active{box-shadow:none}.slideover.wpanel{width:min(560px,100vw);padding:0;display:flex;flex-direction:column;gap:0}.whead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 24px 12px}.slideover .whead h2{font-size:17px}.whead .muted{font-size:var(--text-xs)}.wsquares .fill{position:absolute;left:7px;top:50%;height:2px;transform:translateY(-50%);background:var(--indigo);max-width:calc(100% - 14px);transition:width .28s cubic-bezier(.22,1,.36,1)}.wsq.filled{background:var(--indigo);border-color:var(--indigo)}.wsq.active{box-shadow:0 0 0 4px color-mix(in srgb,var(--indigo) 16%,transparent)}.wsq.done{cursor:pointer}.wsq.done:hover{transform:scale(1.25)}.wgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wgrid .span-2{grid-column:span 2}.wadd{border:1px dashed var(--hairline);background:none;color:var(--indigo);font-weight:600;font-size:var(--text-sm);font-family:inherit;border-radius:8px;padding:10px;cursor:pointer;width:100%}.wadd:hover{background:color-mix(in srgb,var(--indigo) 5%,transparent)}.dp{position:relative;display:grid;min-width:0}.dp input{padding-right:38px;width:100%;min-width:0;box-sizing:border-box}.dp-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--muted);cursor:pointer;padding:6px;border-radius:6px;line-height:0;display:grid;place-items:center}.dp-btn:hover{color:var(--indigo);background:var(--hover)}.dp-pop{position:fixed;z-index:120;width:min(296px,92vw);box-sizing:border-box;overflow:hidden;background:var(--card);border:1px solid var(--hairline);border-radius:12px;box-shadow:0 16px 40px #0f172a2e;padding:12px;display:grid;gap:8px;transform-origin:top;animation:menuIn .13s var(--ease)}.dp-head{display:flex;align-items:center;gap:6px;min-width:0}.dp-sel{flex:1 1 0;width:0;min-width:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1px solid var(--hairline);border-radius:7px;background:var(--bg);color:var(--ink);font-family:inherit;font-size:var(--text-sm);font-weight:700;text-align:center;padding:5px 4px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dp-sel:hover,.dp-sel:focus{border-color:var(--indigo);outline:none}.dp-nav{border:1px solid var(--hairline);background:var(--card);color:var(--ink);width:28px;height:28px;border-radius:7px;cursor:pointer;font-size:15px;line-height:1}.dp-nav:hover{background:var(--hover);border-color:var(--indigo)}.dp-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;min-width:0}.dp-dow{text-align:center;font-size:10.5px;font-weight:700;color:var(--muted);padding:2px 0 4px;text-transform:uppercase}.dp-day{border:none;background:transparent;color:var(--ink);font-family:inherit;height:30px;min-width:0;padding:0;border-radius:7px;cursor:pointer;font-size:var(--text-xs);font-weight:600;transition:background .1s ease}.dp-day:hover{background:var(--hover)}.dp-day.out{color:color-mix(in srgb,var(--muted) 45%,transparent)}.dp-day.today{box-shadow:inset 0 0 0 1px var(--indigo)}.dp-day.sel{background:var(--indigo);color:#fff}.dp-foot{display:flex;align-items:center;border-top:1px solid var(--hairline);padding-top:8px}.dp-link{border:none;background:none;color:var(--indigo);font-family:inherit;font-size:var(--text-xs);font-weight:700;cursor:pointer;padding:2px 4px;border-radius:5px}.dp-link:hover{background:color-mix(in srgb,var(--indigo) 8%,transparent)}.nb-page{max-width:1100px}.nb-head{display:flex;align-items:center;gap:10px}.nb-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start}.nb-tree{position:sticky;top:76px;border:1px solid var(--hairline);border-radius:10px;background:var(--card);padding:12px 8px;display:grid;gap:2px;align-content:start;max-height:calc(100vh - 120px);overflow-y:auto}.nb-row{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;cursor:pointer;font-size:var(--text-sm);min-width:0;transition:background .11s ease}.nb-row:hover{background:var(--hover)}.nb-row.sel{background:color-mix(in srgb,var(--indigo) 10%,transparent)}.nb-row.sel .nb-name{color:var(--indigo)}.nb-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.nb-add{border:none;background:none;color:var(--indigo);font-family:inherit;font-size:var(--text-xs);font-weight:700;cursor:pointer;text-align:left;padding:5px 8px;border-radius:6px;justify-self:start}.nb-add:hover{background:color-mix(in srgb,var(--indigo) 8%,transparent)}.nb-editor{border:1px solid var(--hairline);border-radius:10px;background:var(--card);padding:18px 20px;display:grid;gap:14px;align-content:start}.nb-editor .field{gap:5px}.nb-editor .field label{font-size:var(--text-xs);font-weight:600;color:var(--muted)}.nb-editor .field input,.nb-editor .field select,.nb-editor .picker-row select,.nb-editor .ms-trigger,.nb-editor .dp input{height:44px;min-height:44px;font-size:var(--text-sm);border-radius:8px;padding:0 12px;box-sizing:border-box}.nb-editor .dp input{padding-right:38px}.nb-editor .field textarea{min-height:76px;font-size:var(--text-sm);border-radius:8px;padding:10px 12px}.nb-editor .wgrid{gap:12px 14px}.nb-review{max-width:760px;display:grid}@media(max-width:900px){.nb-layout{grid-template-columns:1fr}.nb-tree{position:static;max-height:300px}}.tnode-name{font-weight:600;font-size:var(--text-sm);overflow-wrap:anywhere;min-width:0}.tnode-meta{font-size:var(--text-xs);white-space:nowrap}.tnode-warn{color:var(--st-submitted);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.lvl-details{padding:14px 14px 12px;border-top:1px solid var(--hairline);display:grid;gap:12px;animation:fadeUp .14s var(--ease)}.lvl-children{border-top:1px solid var(--hairline);padding:10px 12px 12px;display:grid;gap:8px}.lvl-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 2px}.ctx-line{font-size:var(--text-xs);color:var(--muted);margin:-4px 0 0}.wrow{display:grid;grid-template-columns:minmax(0,1fr) 78px 118px;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid var(--hairline);font-size:var(--text-sm)}.wrow:last-child{border-bottom:none}.wrow.whead-row{border-bottom:2px solid var(--hairline)}.wname{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.wname .wtitle{font-weight:600;overflow-wrap:anywhere}.wname .wsub{font-size:var(--text-xs)}.wweight{justify-self:end;text-align:right}.weff{font-size:var(--text-xs);text-align:right;white-space:nowrap}.w-inp{width:72px;text-align:right;border:1px solid var(--hairline);border-radius:7px;padding:5px 8px;font-size:var(--text-sm);font-family:inherit;background:var(--card);color:var(--ink);min-height:32px}.w-inp:focus{border-color:var(--indigo);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}.w-inp:disabled{opacity:.55}.btn-ghost{border:1px solid var(--hairline);background:var(--card);color:var(--ink);border-radius:8px;padding:12px;font-size:var(--text-base);font-weight:600;cursor:pointer;min-height:44px;font-family:inherit}.btn-ghost:hover{background:var(--hover)}.wpanel .field label{font-size:var(--text-xs);font-weight:600;color:var(--ink)}.wpanel .field input,.wpanel .field select,.wpanel .field textarea,.wpanel .picker-row select{height:40px;min-height:40px;width:100%;padding:8px 11px;font-size:var(--text-sm);border-radius:8px;background:var(--card);border:1px solid var(--hairline)}.wpanel .field textarea{height:auto;min-height:64px}.wpanel .picker-row{grid-template-columns:1fr 1fr}.wsec-head input{height:34px!important;min-height:34px!important}.wpanel .field input:focus,.wpanel .field select:focus,.wpanel .field textarea:focus,.wpanel .picker-row select:focus{border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}@media(max-width:560px){.wgrid{grid-template-columns:1fr}.wgrid .span-2{grid-column:auto}}.main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow-y:auto;background:var(--bg)}.main:has(.board-page){overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px;padding:0 24px;flex-shrink:0;border-bottom:1px solid var(--hairline);background:var(--card);position:sticky;top:0;z-index:10}.topbar-left{display:flex;align-items:center;gap:12px;min-width:0}.topbar-title{min-width:0}.topbar-title h1{font-size:var(--text-lg);font-weight:800;color:var(--ink);line-height:1.2}.topbar-sub{display:block;font-size:var(--text-xs);color:var(--muted);line-height:1.2;margin-top:1px}.topbar-right{display:flex;align-items:center;gap:8px}.topbar-toggle{color:var(--muted)}.content{flex:1;min-height:0;width:100%;max-width:1440px;margin:0 auto;display:flex;flex-direction:column}.app-footer{margin-top:auto;padding:18px 24px;text-align:center;font-size:var(--text-xs);color:var(--faint)}.role-badge{background:var(--brand-soft);color:var(--brand-dark);font-size:11px;border-radius:999px;padding:2px 8px;font-weight:700;text-transform:capitalize}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--hairline);background:var(--card);color:var(--ink-soft);border-radius:var(--radius-sm);padding:7px 10px;cursor:pointer;font-size:var(--text-sm);font-weight:600;min-height:36px;transition:background .12s var(--ease),border-color .12s var(--ease)}.icon-btn:hover{background:var(--fill);border-color:color-mix(in srgb,var(--brand) 30%,var(--hairline))}.usermenu{position:relative}.usermenu-btn{border:none;background:none;padding:2px;cursor:pointer;border-radius:999px}.usermenu-avatar{width:34px;height:34px;font-size:12px}.usermenu-avatar.lg{width:42px;height:42px;font-size:15px}.usermenu-pop{position:absolute;top:calc(100% + 8px);right:0;width:250px;z-index:60;background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden;padding:6px;transform-origin:top right;animation:menuIn .14s var(--ease)}.usermenu-head{display:flex;align-items:center;gap:11px;padding:10px}.usermenu-name{font-size:var(--text-sm);font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.usermenu-sub{font-size:var(--text-xs);color:var(--muted);display:flex;align-items:center;gap:6px;margin-top:2px}.usermenu-sep{height:1px;background:var(--hairline);margin:4px 0}.usermenu-item{display:block;width:100%;text-align:left;border:none;background:none;font-family:inherit;font-size:var(--text-sm);color:var(--ink-soft);padding:9px 10px;border-radius:8px;cursor:pointer}.usermenu-item:hover{background:var(--fill)}.usermenu-item.danger{color:var(--danger)}.kbd{font-family:inherit;font-size:11px;color:var(--muted);border:1px solid var(--hairline);border-bottom-width:2px;border-radius:4px;padding:0 5px;margin-left:6px}.notif-root{position:relative;display:inline-flex}.notif-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:6px 9px}.notif-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;background:var(--indigo);color:#fff;font-size:10.5px;font-weight:700;line-height:1;border-radius:999px;border:2px solid var(--card)}.notif-panel{position:absolute;top:calc(100% + 10px);right:0;width:min(370px,calc(100vw - 24px));background:var(--card);border:1px solid var(--hairline);border-radius:14px;box-shadow:var(--shadow);z-index:60;overflow:hidden;transform-origin:top right;animation:menuIn .14s var(--ease)}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--hairline)}.notif-head-title{font-weight:700;font-size:var(--text-sm)}.notif-mark-all{border:none;background:none;color:var(--indigo);font-family:inherit;font-size:var(--text-xs);font-weight:700;cursor:pointer;padding:3px 6px;border-radius:6px}.notif-mark-all:disabled{opacity:.5;cursor:default}.notif-list{max-height:min(440px,70vh);overflow-y:auto}.notif-item{display:flex;align-items:flex-start;gap:11px;width:100%;padding:11px 14px;border:none;border-bottom:1px solid var(--hairline);background:none;text-align:left;cursor:pointer;font-family:inherit;transition:background .12s var(--ease)}.notif-item:last-child{border-bottom:none}.notif-item.unread{background:color-mix(in srgb,var(--indigo) 6%,transparent)}.notif-ico{flex-shrink:0;width:32px;height:32px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center}.notif-ico.tone-indigo{color:var(--indigo);background:color-mix(in srgb,var(--indigo) 14%,transparent)}.notif-ico.tone-amber{color:#d97706;background:color-mix(in srgb,#f59e0b 16%,transparent)}.notif-ico.tone-green{color:#059669;background:color-mix(in srgb,#10b981 16%,transparent)}.notif-ico.tone-blue{color:#2563eb;background:color-mix(in srgb,#3b82f6 16%,transparent)}.notif-ico.tone-violet{color:#7c3aed;background:color-mix(in srgb,#8b5cf6 16%,transparent)}.notif-ico.tone-rose{color:var(--st-rejected);background:color-mix(in srgb,var(--st-rejected) 15%,transparent)}.notif-item-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.notif-item-title{font-size:var(--text-sm);font-weight:600;color:var(--ink);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-item-sub{font-size:var(--text-xs);color:var(--muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-item-time{font-size:11px;color:color-mix(in srgb,var(--muted) 85%,transparent);margin-top:1px}.notif-dot{flex-shrink:0;width:8px;height:8px;border-radius:999px;background:var(--indigo);margin-top:6px}.notif-empty{padding:34px 16px;text-align:center;color:var(--muted);font-size:var(--text-sm)}.notif-empty-star{display:block;font-size:24px;color:color-mix(in srgb,var(--indigo) 55%,transparent);margin-bottom:6px}@media(hover:hover)and (pointer:fine){.notif-item:hover{background:var(--hover)}.notif-item.unread:hover{background:color-mix(in srgb,var(--indigo) 10%,transparent)}.notif-mark-all:hover:not(:disabled){background:color-mix(in srgb,var(--indigo) 8%,transparent)}}.page{padding:clamp(16px,3vw,28px);display:grid;gap:clamp(16px,2.4vw,24px)}.page-airy{padding:44px clamp(24px,6vw,72px);max-width:1080px;display:grid;gap:36px}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){.board-card,.todo-row,.feed-row{animation:riseIn .32s var(--ease-spring) both}.todo-group>:nth-child(2),.feed>:nth-child(2),.board-cards>:nth-child(2){animation-delay:40ms}.todo-group>:nth-child(3),.feed>:nth-child(3),.board-cards>:nth-child(3){animation-delay:80ms}.todo-group>:nth-child(4),.feed>:nth-child(4),.board-cards>:nth-child(4){animation-delay:.12s}.todo-group>:nth-child(5),.feed>:nth-child(5),.board-cards>:nth-child(5){animation-delay:.16s}.todo-group>:nth-child(6),.feed>:nth-child(6),.board-cards>:nth-child(6){animation-delay:.2s}.todo-group>:nth-child(n+7),.feed>:nth-child(n+7),.board-cards>:nth-child(n+7){animation-delay:.24s}}.page-title{font-size:var(--text-display);font-weight:700;letter-spacing:-.5px}.page-subtitle{color:var(--muted);font-size:var(--text-base);margin-top:4px}.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.stat{--accent: var(--muted);position:relative;background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);padding:16px 18px 17px;display:grid;gap:5px;overflow:hidden}.stat-label{color:var(--muted);font-size:var(--text-sm);margin:0}@media(max-width:680px){.stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:12px 13px 13px}.stat-value{font-size:22px}}.stat-value{font-family:inherit;font-size:28px;font-weight:800;letter-spacing:-.6px;line-height:1.05;color:var(--ink)}.stat-none{font-size:var(--text-xs);font-weight:500;color:var(--faint);letter-spacing:0}.stat.accent-amber{--accent: var(--st-submitted)}.stat.accent-amber .stat-value{color:var(--st-submitted)}.stat.accent-rose{--accent: var(--st-overdue)}.stat.accent-rose .stat-value{color:var(--st-overdue)}.stat.accent-green{--accent: var(--st-approved)}.stat.accent-green .stat-value{color:var(--st-approved)}.card{background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px}.section-title{font-size:var(--text-sm);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.filterbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filterbar .search{border:1px solid var(--hairline);border-radius:8px;background:var(--card);color:var(--ink);padding:7px 12px;font-size:var(--text-sm);min-height:36px;min-width:170px;font-family:inherit}.fchip{border:1px solid var(--hairline);background:var(--card);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:var(--text-xs);font-weight:600;cursor:pointer;font-family:inherit;transition:background .13s var(--ease),border-color .13s var(--ease),color .13s var(--ease);display:inline-flex;align-items:center;gap:6px}.fchip:hover{border-color:var(--indigo);color:var(--ink)}.fchip.on{background:var(--indigo);border-color:var(--indigo);color:#fff}.fchip .fdot{width:7px;height:7px;border-radius:50%;background:currentColor}.fdivider{width:1px;height:20px;background:var(--hairline)}.fmenu{position:relative}.fmenu-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:60;background:var(--card);border:1px solid var(--hairline);border-radius:10px;box-shadow:0 12px 32px #0f172a2e;padding:5px;display:grid;gap:1px;min-width:190px;max-height:300px;overflow-y:auto;transform-origin:top left;animation:menuIn .13s var(--ease)}.fmenu-item{display:flex;align-items:center;gap:8px;width:100%;border:none;background:transparent;color:var(--ink);font-family:inherit;font-size:var(--text-sm);text-align:left;padding:7px 10px;border-radius:7px;cursor:pointer}.fmenu-item:hover{background:var(--hover)}.fmenu-item.sel{color:var(--indigo);font-weight:600}.fmenu-search{position:sticky;top:-5px;z-index:1;margin:-5px -5px 4px;width:calc(100% + 10px);border:none;border-bottom:1px solid var(--hairline-soft);padding:9px 11px;font-size:var(--text-sm);font-family:inherit;color:var(--ink);background:var(--fill);outline:none}.fmenu-search::placeholder{color:var(--faint)}.avatar{width:22px;height:22px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-size:10px;font-weight:700;background:color-mix(in srgb,var(--indigo) 14%,transparent);color:var(--indigo)}.lvl-dot{width:9px;height:9px;border-radius:3px;flex-shrink:0}.crumb-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.due-late{color:var(--st-overdue);font-weight:600}.follow-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1px solid var(--hairline);border-radius:999px;background:var(--card);font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--muted);cursor:pointer;transition:color .12s var(--ease),border-color .12s var(--ease),background .12s var(--ease)}.follow-btn:hover:not(:disabled){color:var(--brand);border-color:color-mix(in srgb,var(--brand) 35%,var(--hairline))}.follow-btn.on{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 35%,var(--hairline));background:var(--brand-soft)}.follow-btn:disabled{opacity:.6;cursor:default}.follow-btn svg{flex-shrink:0}.board-hint{display:flex;align-items:center;gap:7px;margin:0 0 12px;font-size:var(--text-xs);color:var(--muted)}.board-hint svg{color:var(--faint);flex-shrink:0}.hint-touch{display:none}@media(hover:none),(max-width:680px){.hint-pointer{display:none}.hint-touch{display:inline}}.board-col.empty{flex:0 1 150px;min-width:118px}.board-empty{margin:0;padding:10px 2px;font-size:var(--text-xs);color:var(--faint)}.explain{position:relative;display:inline-flex;vertical-align:middle}.explain-trigger{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:4px;border:none;background:none;border-radius:999px;color:var(--faint);cursor:help}.explain-trigger:hover,.explain-trigger:focus-visible{color:var(--brand);background:var(--brand-soft)}.explain-pop,.level-gloss{position:absolute;top:calc(100% + 7px);z-index:60;width:max-content;max-width:min(280px,calc(100vw - 32px));display:grid;gap:3px;padding:9px 11px;background:var(--sidebar);color:#e8ecf4;border-radius:10px;box-shadow:0 6px 20px -6px #10162273;font-size:var(--text-xs);font-weight:400;line-height:1.45;text-transform:none;letter-spacing:0;pointer-events:none}.explain-pop strong,.level-gloss strong{color:#fff;font-weight:650}.explain-pop.align-start{left:0}.explain-pop.align-center{left:50%;transform:translate(-50%)}.explain-pop.align-end{right:0}.level-pill-wrap{position:relative;display:inline-flex}.level-pill-wrap .level-gloss{left:0;opacity:0;visibility:hidden;transition:opacity .12s ease}.level-pill-wrap:hover .level-gloss,.level-pill-wrap:focus-visible .level-gloss{opacity:1;visibility:visible}.level-pill-wrap:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:5px}.task-table{overflow:visible}.task-table-inner{min-width:0}.task-thead,.task-row{display:grid;grid-template-columns:minmax(180px,2.6fr) minmax(100px,1.1fr) 88px 92px 54px 132px 150px 26px;gap:10px;align-items:center}@media(max-width:1024px){.task-thead,.task-row{grid-template-columns:minmax(150px,2.4fr) minmax(96px,1fr) 84px 92px 124px 146px 26px}.col-score{display:none}}@media(max-width:680px){.task-thead{display:none}.task-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:11px 12px}.task-name-cell{flex:1 1 100%;min-width:0;order:-1}.task-row>.chip{order:1;flex:0 0 auto}.task-row .tree-chevron{order:2;margin-left:auto}.col-assignee,.col-due,.col-score,.col-prog{display:none}.col-act{order:3;flex:0 0 auto;margin-left:auto}.task-row .tree-chevron{order:4;margin-left:0}}.task-thead{padding:8px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--hairline)}.task-row{padding:9px 10px;border-bottom:1px solid var(--hairline);cursor:pointer;transition:background .11s ease}.task-row:hover{background:var(--hover)}.task-row:hover .row-open-hint{opacity:1}.tree-chevron.open svg{transform:rotate(90deg)}.tree-chevron svg{transition:transform .14s var(--ease)}.tree-chevron-spacer{display:block}.col-act{display:flex;justify-content:flex-end}.row-actions{display:inline-flex;gap:6px;align-items:center}.row-actions-none{font-size:var(--text-xs);color:var(--faint);white-space:nowrap}.task-cell.num{font-variant-numeric:tabular-nums;text-align:right;color:var(--ink-soft);font-weight:600}.cell-empty{font-size:var(--text-xs);color:var(--faint);font-weight:400}.row-open-hint{opacity:0;transition:opacity .12s ease;color:var(--faint);flex-shrink:0;display:inline-flex}@media(hover:none){.row-open-hint{opacity:1}}.task-name-cell{display:flex;align-items:center;gap:8px;min-width:0;padding-left:calc(var(--depth, 0) * 24px)}.task-name-cell .row-title{white-space:normal;overflow-wrap:break-word;word-break:break-word}.task-cell{font-size:var(--text-sm);color:var(--muted);overflow-wrap:break-word}@media(max-width:680px){.task-name-cell{padding-left:calc(min(var(--depth, 0),3)*11px)}}.row-list{border-top:1px solid var(--hairline)}.row{display:flex;align-items:center;gap:12px;padding:10px 8px;border-bottom:1px solid var(--hairline);transition:background .1s ease;cursor:pointer}.row:hover{background:var(--hover)}.row-title{font-weight:600;font-size:var(--text-base)}.row-meta{color:var(--muted);font-size:var(--text-sm)}.row-spacer{flex:1}.chip{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:600;border-radius:999px;padding:3px 9px;white-space:nowrap}.chip:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.chip-notstarted{color:var(--st-notstarted);background:color-mix(in srgb,var(--st-notstarted) 13%,transparent)}.chip-inprogress{color:var(--st-inprogress);background:color-mix(in srgb,var(--st-inprogress) 13%,transparent)}.chip-submitted{color:var(--st-submitted);background:color-mix(in srgb,var(--st-submitted) 15%,transparent)}.chip-approved{color:var(--st-approved);background:color-mix(in srgb,var(--st-approved) 14%,transparent)}.chip-rejected{color:var(--st-rejected);background:color-mix(in srgb,var(--st-rejected) 13%,transparent)}.chip-overdue{color:var(--st-overdue);background:color-mix(in srgb,var(--st-overdue) 13%,transparent)}.chip-awaiting{color:var(--st-awaiting);background:color-mix(in srgb,var(--st-awaiting) 15%,transparent)}.chip-declined{color:var(--st-declined);background:color-mix(in srgb,var(--st-declined) 16%,transparent)}.chip-draft{color:#d97706;background:color-mix(in srgb,#f59e0b 16%,transparent)}.chip-closed{color:var(--st-approved);background:color-mix(in srgb,var(--st-approved) 15%,transparent)}.chip-blocked{color:var(--st-rejected);background:color-mix(in srgb,var(--st-rejected) 13%,transparent)}.chip-blocked:before{background:var(--st-rejected)}.blk-list{display:grid;gap:6px}.blk-row{display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid var(--hairline);border-radius:9px}.blk-row.done{background:color-mix(in srgb,var(--st-approved) 5%,transparent);border-color:color-mix(in srgb,var(--st-approved) 25%,var(--hairline))}.blk-dot{width:18px;height:18px;border-radius:999px;border:1.5px solid var(--hairline);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#fff}.blk-dot.done{background:var(--st-approved);border-color:var(--st-approved)}.blk-name{flex:1;min-width:0;text-align:left;border:none;background:none;font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--ink);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0}.blk-name:hover:not(:disabled){color:var(--brand)}.blk-name:disabled{cursor:default}.accept-banner{border-radius:10px;padding:10px 12px;font-size:var(--text-sm);line-height:1.45;color:color-mix(in srgb,var(--st-awaiting) 82%,var(--ink));background:color-mix(in srgb,var(--st-awaiting) 12%,transparent);border:1px solid color-mix(in srgb,var(--st-awaiting) 28%,transparent)}.bc-flag{display:flex}.dash{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.dash-hero2{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.dash-hero-text{min-width:0}.dash-greet{font-size:var(--text-display);font-weight:800;letter-spacing:-.6px;line-height:1.1}.dash-hero-date{color:var(--muted);font-size:var(--text-sm);margin:5px 0 0}.dash-hero-status{font-size:var(--text-base);color:var(--ink-soft);margin:9px 0 0;font-weight:500}.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;grid-auto-flow:row dense;align-items:stretch}.bento-tile{margin:0}.bento-tile.b2{grid-column:span 2}.bento-tile.b3{grid-column:span 3}.bento-chart{display:flex;flex-direction:column;gap:14px;min-height:210px}.bento-chart .chart-body{flex:1;align-items:center}@media(max-width:900px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}.bento-tile.b2,.bento-tile.b3{grid-column:span 2}}@media(max-width:620px){.bento{grid-template-columns:1fr}.bento-tile.b2,.bento-tile.b3{grid-column:auto}}.dash-charts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.chart-body{display:flex;align-items:center;gap:16px}.donut{width:116px;height:116px;flex-shrink:0}.donut-num{font-size:20px;font-weight:800;fill:var(--ink);text-anchor:middle;font-family:inherit}.donut-lbl{font-size:8px;fill:var(--muted);text-anchor:middle;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.chart-legend{display:grid;gap:6px;min-width:0}.chart-leg{display:flex;align-items:center;gap:7px;font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.chart-leg b{color:var(--ink);margin-left:2px}.chart-leg-dot{width:9px;height:9px;border-radius:3px;flex-shrink:0}.mbars{display:grid;gap:9px;align-content:center;flex:1}.mbar-row{display:grid;grid-template-columns:64px 1fr 26px;gap:10px;align-items:center;font-size:var(--text-xs)}.mbar-label{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mbar-track{height:9px;border-radius:999px;background:var(--hover);overflow:hidden}.mbar-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand-light),var(--brand));min-width:3px;transition:transform .4s var(--ease),width .4s var(--ease);will-change:transform}.mbar-num{text-align:right;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.dash-panel .section-title{margin:0 0 12px}.todo-group+.todo-group{margin-top:14px}.todo-group-head{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 4px;color:var(--muted)}.todo-group-head.tone-overdue{color:var(--st-overdue)}.todo-group-head.tone-today{color:var(--st-submitted)}.todo-group-head.tone-rework{color:var(--st-rejected)}.todo-group-head.tone-week{color:var(--st-inprogress)}.todo-group-head.tone-later{color:var(--muted)}.ss{position:relative;display:inline-block;width:100%}.ss-btn{width:100%;display:flex;align-items:center;gap:8px;justify-content:space-between;padding:9px 12px;border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--card);color:var(--ink);font-size:var(--text-sm);font-family:inherit;cursor:pointer;min-height:38px;transition:border-color .12s var(--ease)}.ss-btn:hover{border-color:color-mix(in srgb,var(--brand) 30%,var(--hairline))}.ss-btn.on{border-color:var(--brand)}.ss-cur{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-cur.ph{color:var(--muted)}.ss-caret{color:var(--muted);flex-shrink:0;display:inline-flex;transform:rotate(90deg)}.ss-pop{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:60;background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden;min-width:220px;animation:fadeUp .12s var(--ease)}.ss-search{width:100%;border:none;border-bottom:1px solid var(--hairline-soft);padding:10px 12px;font-size:var(--text-sm);font-family:inherit;color:var(--ink);background:var(--fill);outline:none}.ss-search::placeholder{color:var(--faint)}.ss-list{max-height:260px;overflow-y:auto;padding:4px}.ss-empty{margin:0;padding:14px 12px;color:var(--muted);font-size:var(--text-sm);text-align:center}.ss-item{width:100%;display:flex;align-items:center;gap:8px;text-align:left;padding:8px 10px;border:none;background:none;border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--ink-soft);cursor:pointer;font-family:inherit}.ss-item.active{background:var(--hover)}.ss-item.sel{color:var(--brand);font-weight:600}.ss-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-item-sub{color:var(--muted);font-size:var(--text-xs);flex-shrink:0}.ss-check{margin-left:auto;color:var(--brand)}.emp-home{display:grid;gap:16px;align-content:start}.emp-primary{padding-top:16px}.emp-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}@media(max-width:860px){.emp-two{grid-template-columns:1fr}}.todo-row{display:flex;align-items:center;gap:10px;padding:10px 8px;border-radius:9px;transition:background .12s var(--ease)}.todo-group .todo-row+.todo-row{border-top:1px solid var(--hairline)}.todo-open{display:flex;align-items:center;gap:10px;flex:1;min-width:0;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;padding:0}.todo-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.todo-title{font-size:var(--text-sm);font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px;min-width:0}.todo-path{font-size:var(--text-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-rework{font-size:10px;font-weight:700;color:var(--st-rejected);background:color-mix(in srgb,var(--st-rejected) 13%,transparent);padding:1px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.todo-actions{display:flex;gap:6px;flex-shrink:0}.dash-sub+.dash-sub{margin-top:14px;padding-top:14px;border-top:1px solid var(--hairline)}.dash-sub-head{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 8px;display:flex;align-items:center;gap:6px}.pill-count{background:color-mix(in srgb,var(--indigo) 14%,transparent);color:var(--indigo);font-size:11px;font-weight:700;border-radius:999px;padding:1px 7px}.dash-note{font-size:var(--text-sm);margin:0}.verify-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:none;background:none;text-align:left;cursor:pointer;font-family:inherit;border-radius:8px;transition:background .12s var(--ease)}.verify-row+.verify-row{margin-top:2px}.verify-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.btn-icon{display:inline-flex;align-items:center;gap:6px}.verify-open{border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;padding:0}.your-role{font-size:11.5px;font-weight:600;color:var(--muted);background:var(--hover);border-radius:999px;padding:2px 10px}.role-tag{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--hover);color:var(--ink);flex-shrink:0}.role-dot{width:7px;height:7px;border-radius:999px;background:var(--muted);flex-shrink:0}.role-owner .role-dot{background:var(--indigo)}.role-reporting_manager .role-dot{background:#0d9488}.role-reviewer .role-dot{background:var(--st-approved)}.role-collaborator .role-dot{background:var(--st-submitted)}.role-founder_office .role-dot{background:var(--st-awaiting)}.roles-list{display:grid;gap:2px}.role-row{display:flex;align-items:center;gap:10px;padding:6px 4px}.role-row+.role-row{border-top:1px solid var(--hairline)}.role-row-name{flex:1;min-width:0;font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-remove{border:none;background:none;color:var(--muted);cursor:pointer;font-size:13px;padding:2px 6px;border-radius:6px;flex-shrink:0}.role-remove:hover{color:var(--st-rejected);background:color-mix(in srgb,var(--st-rejected) 10%,transparent)}.roles-add-box{margin-top:10px;border:1px solid var(--hairline);border-radius:10px;padding:10px;display:grid;gap:9px}.roles-role-pick{display:flex;gap:6px;flex-wrap:wrap}.role-pick{border:1px solid var(--hairline);background:var(--card);color:var(--muted);font-family:inherit;font-size:var(--text-xs);font-weight:600;border-radius:999px;padding:4px 11px;cursor:pointer;transition:border-color .12s var(--ease),color .12s var(--ease)}.role-pick.on{border-color:var(--indigo);color:var(--indigo);background:color-mix(in srgb,var(--indigo) 8%,transparent)}.roles-people{max-height:220px;overflow-y:auto;display:grid;gap:1px}.roles-person{display:flex;align-items:center;gap:9px;width:100%;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;padding:7px 6px;border-radius:8px}.roles-person:hover{background:var(--hover)}.roles-person:disabled{opacity:.5;cursor:default}.roles-person-main{display:grid;gap:0;min-width:0;flex:1}.roles-person-name{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roles-person-add{font-size:var(--text-xs);color:var(--indigo);font-weight:600;flex-shrink:0}.sc-count{margin-left:8px;white-space:nowrap;font-size:11px;font-weight:700;color:var(--st-submitted);background:color-mix(in srgb,var(--st-submitted) 14%,transparent);padding:1px 8px;border-radius:999px}.sc-count.ok{color:var(--st-approved);background:color-mix(in srgb,var(--st-approved) 14%,transparent)}.sc-gate{font-size:var(--text-xs);color:var(--st-submitted);margin:0 0 8px}.sc-list{display:grid;gap:4px}.sc-row{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--hairline);border-radius:9px}.sc-row.met{border-color:color-mix(in srgb,var(--st-approved) 30%,var(--hairline));background:color-mix(in srgb,var(--st-approved) 5%,transparent)}.sc-check{width:17px;height:17px;flex-shrink:0;accent-color:var(--indigo)}.sc-dot{width:18px;height:18px;border-radius:999px;border:1.5px solid var(--hairline);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#fff}.sc-dot.met{background:var(--st-approved);border-color:var(--st-approved)}.sc-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sc-label{font-size:var(--text-sm);font-weight:600;color:var(--ink);display:flex;align-items:center;gap:7px;flex-wrap:wrap}.sc-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:var(--hover);padding:1px 6px;border-radius:999px}.sc-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:var(--text-xs);color:var(--muted)}.sc-target{font-weight:600;color:var(--ink)}.sc-bar{width:90px;height:6px;border-radius:999px;background:var(--hover);overflow:hidden}.sc-bar span{display:block;height:100%;border-radius:999px}.sc-current.met{color:var(--st-approved);font-weight:600}.sc-update{display:flex;align-items:center;gap:6px;flex-shrink:0}.sc-editor{display:grid;gap:10px;border:1px solid var(--hairline);border-radius:10px;padding:10px}.sc-edit-row{display:grid;gap:7px;padding-bottom:9px;border-bottom:1px solid var(--hairline)}.sc-edit-row:last-of-type{border-bottom:none;padding-bottom:0}.sc-edit-top{display:flex;align-items:center;gap:8px}.sc-edit-top .chat-input{flex:1}.sc-kind{font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:6px;flex-shrink:0}.sc-kind-checklist{color:var(--indigo);background:color-mix(in srgb,var(--indigo) 12%,transparent)}.sc-kind-metric{color:#0d9488;background:color-mix(in srgb,#0d9488 14%,transparent)}.sc-edit-metric{display:flex;gap:7px;flex-wrap:wrap}.sc-req{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--muted)}.sc-editor-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.root-list{display:grid;gap:16px}.root-card{background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;display:grid;gap:14px}.root-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.root-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.root-name{font-family:inherit;font-size:var(--text-lg);font-weight:700}.root-sub{display:block;font-size:var(--text-sm);color:var(--muted);margin-top:3px}.root-progress{text-align:right;flex-shrink:0}.root-progress-num{display:block;font-family:inherit;font-size:26px;font-weight:700;line-height:1}.root-progress-label{display:inline-flex;align-items:center;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.root-bars{display:grid;gap:8px}.root-bar{height:9px}.root-bar-row{display:grid;grid-template-columns:132px minmax(0,1fr) 76px;align-items:center;gap:10px;font-size:var(--text-xs)}.root-bar-label{display:inline-flex;align-items:center;color:var(--muted);white-space:nowrap}.root-bar-num{font-weight:700;color:var(--ink-soft);text-align:right;font-variant-numeric:tabular-nums}@media(max-width:620px){.root-bar-row{grid-template-columns:minmax(0,1fr) 64px}.root-bar-label{grid-column:1 / -1}}.kpi-list{display:grid;gap:4px;border-top:1px solid var(--hairline);padding-top:12px}.kpi-row{display:flex;align-items:center;gap:11px;padding:8px 4px}.kpi-row+.kpi-row{border-top:1px solid var(--hairline)}.kpi-status-dot{width:9px;height:9px;border-radius:999px;flex-shrink:0}.kpi-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.kpi-name{font-size:var(--text-sm);font-weight:600;color:var(--ink);display:flex;align-items:center;gap:7px}.kpi-trend{display:inline-flex;align-items:center}.kpi-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:var(--text-xs);color:var(--muted)}.kpi-target{font-weight:600;color:var(--ink)}.kpi-bar{display:block;height:6px;border-radius:999px;background:var(--hover);overflow:hidden;min-width:70px}.kpi-meta .kpi-bar{width:110px}.kpi-bar span{display:block;height:100%;border-radius:999px}.kpi-now{white-space:nowrap}.kpi-att{font-size:var(--text-sm);font-weight:700;width:44px;text-align:right;flex-shrink:0}.kpi-update{display:flex;align-items:center;gap:6px;flex-shrink:0}.verify-open:disabled{cursor:default}.verify-title{font-size:var(--text-sm);font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.verify-sub{font-size:var(--text-xs);color:var(--muted);display:flex;align-items:center;gap:6px}.feed{display:grid;gap:1px}.feed-row{display:flex;align-items:baseline;gap:10px;padding:7px 8px;border-radius:8px;font-size:var(--text-sm);line-height:1.4}.feed-mark{font-weight:700;width:16px;text-align:center;flex-shrink:0}.feed-body{flex:1;min-width:0}.feed-when{font-size:var(--text-xs);color:var(--muted);flex-shrink:0}.dash-empty{text-align:center;padding:28px 12px;color:var(--muted)}.dash-empty-star{display:block;font-size:24px;color:color-mix(in srgb,var(--indigo) 55%,transparent);margin-bottom:6px}.dash-empty p{margin:0;font-size:var(--text-sm)}@media(hover:hover)and (pointer:fine){.todo-row:hover,.verify-row:hover,.feed-row:hover{background:var(--hover)}}.accept-banner.declined{color:color-mix(in srgb,var(--st-declined) 82%,var(--ink));background:color-mix(in srgb,var(--st-declined) 12%,transparent);border-color:color-mix(in srgb,var(--st-declined) 28%,transparent)}.accept-banner.closed{color:color-mix(in srgb,var(--st-approved) 82%,var(--ink));background:color-mix(in srgb,var(--st-approved) 12%,transparent);border-color:color-mix(in srgb,var(--st-approved) 28%,transparent)}.level-pill{display:inline-flex;align-items:center;font-size:10.5px;font-weight:700;letter-spacing:.05em;border-radius:5px;padding:2px 7px;text-transform:uppercase;color:#fff}.level-root{background:var(--indigo)}.level-boulder{background:var(--boulder)}.level-rock{background:var(--rock)}.level-pebble{background:var(--pebble)}.field{display:grid;gap:6px;min-width:0}.field label{font-size:var(--text-sm);font-weight:600}.field input,.field select{border:1px solid var(--hairline);border-radius:8px;padding:11px 12px;font-size:var(--text-base);background:var(--bg);color:var(--ink);min-height:44px;height:44px}.field textarea{border:1px solid var(--hairline);border-radius:8px;padding:11px 12px;font-size:var(--text-base);background:var(--bg);color:var(--ink)}.btn-primary{background:var(--indigo);color:#fff;border:none;border-radius:8px;padding:12px 18px;font-size:var(--text-base);font-weight:600;cursor:pointer;min-height:44px;transition:filter .12s ease}.btn-primary:hover{background:var(--brand-dark)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-danger{background:var(--st-overdue);color:#fff;border:none;border-radius:8px;padding:12px 18px;font-size:var(--text-base);font-weight:600;cursor:pointer;min-height:44px;transition:filter .12s ease}.btn-danger:hover{filter:brightness(1.08)}.btn-danger:disabled{opacity:.6;cursor:default}.error-banner{background:color-mix(in srgb,var(--st-overdue) 10%,transparent);color:var(--st-overdue);border:1px solid color-mix(in srgb,var(--st-overdue) 30%,transparent);border-radius:8px;padding:10px 12px;font-size:var(--text-sm)}.muted{color:var(--muted);font-size:var(--text-sm)}.login-page{--dot: color-mix(in srgb, var(--ink) 7%, transparent);min-height:100vh;min-height:100dvh;overflow:auto;display:grid;place-items:center;padding:24px;background-color:var(--bg);background-image:radial-gradient(100% 70% at 50% 50%,var(--bg) 30%,transparent 70%),radial-gradient(var(--dot) 1.5px,transparent 1.6px),radial-gradient(var(--dot) 1.5px,transparent 1.6px);background-size:auto,22px 22px,22px 22px;background-position:center,-8px -8px,3px 3px}.login-card{width:100%;max-width:900px;display:grid;grid-template-columns:1.02fr 1fr;background:var(--card);border:1px solid var(--hairline);border-radius:22px;box-shadow:0 24px 70px #1018281a;overflow:hidden;animation:fadeUp .28s var(--ease)}.login-art{position:relative;padding:30px;display:flex;flex-direction:column;gap:14px;background:radial-gradient(120% 90% at 15% 0%,color-mix(in srgb,var(--brand) 7%,transparent),transparent 60%),var(--fill);border-right:1px solid var(--hairline-soft)}.login-art-svg{width:100%;height:auto;margin:auto 0;max-height:320px}.login-mark{display:inline-flex;align-items:center;gap:10px}.login-mark-tile{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--brand);color:#fff;font-weight:800;font-size:18px;letter-spacing:-.02em;box-shadow:0 5px 15px color-mix(in srgb,var(--brand) 34%,transparent)}.login-mark-text{display:inline-flex;align-items:baseline;gap:7px;font-size:var(--text-lg);font-weight:700;color:var(--ink)}.login-mark-tag{font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}.login-panel{padding:clamp(30px,4vw,52px);display:flex;flex-direction:column;justify-content:center;gap:6px}.login-panel h1{margin:0;font-size:clamp(26px,3vw,34px);letter-spacing:-.02em;color:var(--ink)}.login-lead{margin:6px 0 20px;font-size:var(--text-sm);line-height:1.55;color:var(--muted);max-width:34ch}.login-form{display:grid;gap:14px}.login-input{position:relative;display:flex;align-items:center}.login-input>svg:first-child{position:absolute;left:15px;width:18px;height:18px;color:var(--faint);pointer-events:none}.login-input input{width:100%;padding:14px 16px 14px 44px;border:1px solid var(--hairline);border-radius:12px;background:var(--card);font-size:var(--text-base);font-family:inherit;color:var(--ink);outline:none;transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.login-input input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.login-input input::placeholder{color:var(--faint)}.login-input .eye-btn{position:absolute;right:8px}.login-pill{margin-top:6px;border-radius:999px;padding:14px 24px;font-size:var(--text-base);box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 30%,transparent)}.login-help{margin:16px 0 0;font-size:var(--text-xs);color:var(--muted)}.eye-btn{border:none;background:transparent;color:var(--muted);cursor:pointer;padding:6px;border-radius:6px;line-height:0;display:grid;place-items:center}.eye-btn:hover{color:var(--ink);background:var(--hover)}@media(max-width:760px){.login-card{grid-template-columns:1fr;max-width:420px}.login-art{flex-direction:row;align-items:center;justify-content:space-between;padding:22px 26px;border-right:none;border-bottom:1px solid var(--hairline-soft)}.login-art-svg{display:none}.login-panel{padding:26px}}@media(max-height:620px)and (min-width:761px){.login-art-svg{max-height:220px}}.palette-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:grid;justify-items:center;align-items:start;padding-top:14vh;z-index:100;animation:fadeIn .12s ease}.palette{width:min(560px,calc(100vw - 32px));background:var(--card);border:1px solid var(--hairline);border-radius:12px;box-shadow:0 24px 64px #00000040;overflow:hidden}.palette input{width:100%;border:none;border-bottom:1px solid var(--hairline);background:transparent;color:var(--ink);font-size:var(--text-lg);font-family:inherit;padding:16px 18px}.palette input:focus{outline:none}.palette-list{max-height:320px;overflow-y:auto;padding:6px}.palette-item{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;color:var(--ink);font-size:var(--text-base);text-align:left;padding:10px 12px;border-radius:8px;cursor:pointer}.palette-item.selected,.palette-item:hover{background:var(--hover)}.palette-item .hint{margin-left:auto;color:var(--muted);font-size:var(--text-xs)}.palette-empty{padding:18px;color:var(--muted);text-align:center;font-size:var(--text-sm)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar .row-spacer{flex:1}.tree-chevron{border:none;background:transparent;color:var(--muted);cursor:pointer;width:22px;height:22px;border-radius:5px;font-size:11px;flex-shrink:0}.tree-chevron:hover{background:var(--hover)}.score-bar{width:64px;height:5px;border-radius:999px;background:var(--hairline);overflow:hidden;flex-shrink:0}.score-bar>span{display:block;height:100%;background:var(--indigo);border-radius:999px}.btn-sm{border:1px solid var(--hairline);background:var(--card);color:var(--ink);border-radius:6px;padding:4px 10px;font-size:var(--text-xs);font-weight:600;cursor:pointer}.btn-sm:hover{background:var(--hover)}.btn-sm.primary{background:var(--indigo);border-color:var(--indigo);color:#fff}.btn-sm.primary:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.btn-sm.approve{background:var(--st-approved);border-color:var(--st-approved);color:#fff}.btn-sm.approve:hover{background:#15803d;border-color:#15803d}.btn-sm.danger{color:var(--st-rejected);border-color:color-mix(in srgb,var(--st-rejected) 40%,transparent)}.btn-sm.danger:hover{background:var(--danger-soft);border-color:color-mix(in srgb,var(--st-rejected) 55%,transparent)}.board-page{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.board-toolbar{flex-shrink:0;margin-bottom:14px}.board-toolbar .search{flex:0 1 220px}.board{flex:1;min-height:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);gap:14px;align-items:stretch;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity}.board-col{scroll-snap-align:start}@media(max-width:720px){.board{grid-auto-columns:min(86vw,320px)}}.board-card strong{overflow-wrap:anywhere;min-width:0}.board-col-head .chip{white-space:nowrap}.board-col{background:color-mix(in srgb,var(--ink) 3%,var(--bg));border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:0}.board-cards{flex:1;min-height:0;overflow-y:auto;display:grid;gap:8px;align-content:start;padding:1px}.board-col-head{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:700;padding:2px 4px}.board-col-head .count{color:var(--muted);font-weight:600}.board-card.lvl-boulder{--lvl: var(--boulder)}.board-card.lvl-rock{--lvl: var(--rock)}.board-card.lvl-pebble{--lvl: var(--pebble)}.board-card{--lvl: var(--muted);background:color-mix(in srgb,var(--lvl) 7%,var(--card));border:1px solid color-mix(in srgb,var(--lvl) 26%,var(--hairline));border-radius:12px;padding:11px 13px 12px;display:flex;flex-direction:column;gap:8px;cursor:pointer}.board-card .avatar{background:color-mix(in srgb,var(--lvl) 18%,transparent);color:color-mix(in srgb,var(--lvl) 62%,var(--ink))}@media(hover:hover)and (pointer:fine){.board-card:hover{background:color-mix(in srgb,var(--lvl) 11%,var(--card));border-color:color-mix(in srgb,var(--lvl) 48%,var(--hairline));transform:translateY(-2px);box-shadow:0 8px 20px color-mix(in srgb,var(--lvl) 18%,transparent)}}.bc-path{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;line-height:1.35;color:color-mix(in srgb,var(--lvl) 40%,var(--muted));word-break:break-word}.bc-seg{white-space:normal}.bc-sep{color:color-mix(in srgb,var(--muted) 60%,transparent);margin:0 5px}.bc-head{display:flex;gap:8px;align-items:baseline;min-width:0}.bc-head .lvl-dot{position:relative;top:1px}.bc-title{font-size:var(--text-sm);font-weight:650;line-height:1.32;overflow-wrap:break-word;min-width:0}@media(max-width:680px){.bc-head{flex-wrap:wrap;align-items:center}.bc-title{flex:1 1 100%}}.bc-foot{display:flex;align-items:center;gap:8px;margin-top:1px}.bc-assignee{font-size:var(--text-xs);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.bc-due{flex-shrink:0;margin-left:auto;font-size:11px;font-weight:600;line-height:1;padding:3px 8px;border-radius:999px;white-space:nowrap;letter-spacing:.1px}.bc-due.far{background:var(--hover);color:var(--muted)}.bc-due.soon{background:color-mix(in srgb,var(--st-submitted) 15%,transparent);color:var(--st-submitted)}.bc-due.today{background:color-mix(in srgb,var(--st-submitted) 18%,transparent);color:var(--st-submitted)}.bc-due.late{background:color-mix(in srgb,var(--st-overdue) 13%,transparent);color:var(--st-overdue)}.bc-due.done{background:color-mix(in srgb,var(--st-approved) 15%,transparent);color:var(--st-approved)}.bc-score{width:100%;margin-top:2px}.slideover-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:90;animation:fadeIn .18s ease}@keyframes slideInRight{0%{transform:translate(48px);opacity:0}to{transform:none;opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes menuIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:none}}@keyframes modalIn{0%{opacity:0;transform:translate(-50%) translateY(8px) scale(.98)}to{opacity:1;transform:translate(-50%)}}.slideover{animation:slideInRight .26s var(--ease)}.page,.page-airy{animation:fadeUp .2s var(--ease)}.sidebar{transition:width .22s var(--ease)}.board-card{transition:border-color .13s var(--ease),transform .13s var(--ease),box-shadow .13s var(--ease),background .13s var(--ease)}.row{transition:background .11s var(--ease)}.btn-primary,.btn-sm,.btn-danger,.btn-ghost{transition:filter .13s var(--ease),transform .1s var(--ease)}.btn-primary:active,.btn-sm:active,.btn-danger:active,.btn-ghost:active{transform:scale(.97)}.chip,.level-pill{transition:background .13s var(--ease)}.tree-chevron{transition:transform .15s var(--ease),background .12s var(--ease)}.slideover{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);z-index:95;background:var(--card);border-left:1px solid var(--hairline);box-shadow:-12px 0 40px #00000026;overflow-y:auto;padding:26px 28px;display:grid;gap:22px;align-content:start}.slideover .crumb{color:var(--muted);font-size:var(--text-sm)}.slideover.detail-panel{padding:0;display:flex;flex-direction:column;gap:0}.detail-panel .dhead{padding:18px 24px 16px;border-bottom:1px solid var(--hairline);display:grid;gap:11px}.detail-panel .dhead h2{font-size:19px;line-height:1.25;letter-spacing:-.2px}.detail-panel .dbody{flex:1;overflow-y:auto;overflow-x:hidden;padding:18px 24px 28px;display:flex;flex-direction:column;gap:20px}.detail-panel .dbody>*{flex-shrink:0}.detail-panel .detail-section{padding-top:18px}.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:12px;overflow:hidden}.pcell{background:var(--card);padding:12px 14px;min-height:64px;display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0}.pcell-wide{grid-column:1 / -1}.pk{color:var(--muted);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.pv{font-size:var(--text-sm);font-weight:650;display:flex;align-items:center;gap:8px;min-width:0}.ptrunc{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.pv-score{gap:10px}.pv-score .score-bar{flex:1;height:6px}.pv-score b{font-variant-numeric:tabular-nums}.subtask-list{display:grid;gap:8px}.subtask-row{display:grid;gap:8px;width:100%;min-height:64px;text-align:left;font-family:inherit;border:1px solid var(--hairline);border-radius:12px;background:var(--card);padding:11px 14px;cursor:pointer;align-content:center}.subtask-row:hover:not(:disabled){border-color:var(--indigo);background:var(--hover)}.subtask-row:disabled{cursor:default}.subtask-top{display:flex;align-items:center;gap:8px}.subtask-name{font-size:var(--text-sm);font-weight:650;overflow-wrap:anywhere;min-width:0;flex:1}.subtask-top .chip{flex-shrink:0}.subtask-bot{display:flex;align-items:center;gap:7px;font-size:var(--text-xs);color:var(--muted)}.subtask-who{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.subtask-dot{opacity:.5}.subtask-score{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.subtask-score .score-bar{width:74px}.subtask-score b{color:var(--ink);font-variant-numeric:tabular-nums}.avatar.xs{width:18px;height:18px;font-size:8.5px}.detail-panel .dhead .btn-sm{min-height:32px;min-width:92px;padding:6px 14px;border-radius:8px;font-size:var(--text-xs);display:inline-flex;align-items:center;justify-content:center}.detail-panel .wadd{border-radius:12px;min-height:52px}.detail-panel .section-title{margin:0 0 2px}.slideover h2{font-size:var(--text-title)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.fact-label{color:var(--muted);font-size:var(--text-xs);margin:0 0 2px}.fact-value{font-size:var(--text-sm);font-weight:600}.detail-section{border-top:1px solid var(--hairline);padding-top:16px;display:grid;gap:10px}.hist-list{border-left:2px solid var(--hairline);margin-left:4px;padding-left:16px;display:grid}.history-item{display:grid;gap:1px;font-size:var(--text-sm);padding:6px 0;position:relative}.history-item .when{color:var(--muted);font-size:var(--text-xs)}.hdot{position:absolute;left:-21px;top:11px;width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 2px var(--card)}.hist-branch{margin-top:6px}.hist-branch summary{cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:5px 0;display:flex;align-items:center;gap:7px;list-style-position:outside}.hist-branch summary:hover{color:var(--indigo)}.hist-branch-body{border-left:1px solid var(--hairline);margin-left:6px;padding-left:12px}.wizard-steps{display:grid;gap:10px}.step-pill .n{opacity:.6;font-weight:600}.step-pill.active{background:var(--indigo);border-color:var(--indigo);color:#fff;box-shadow:0 4px 14px color-mix(in srgb,var(--indigo) 35%,transparent)}.step-pill.done{background:color-mix(in srgb,var(--indigo) 10%,transparent);border-color:transparent;color:var(--indigo);cursor:pointer}.step-pill.done:hover{background:color-mix(in srgb,var(--indigo) 18%,transparent)}.step-track>span{display:block;height:100%;border-radius:999px;background:var(--indigo);transition:transform .3s cubic-bezier(.22,1,.36,1),width .3s cubic-bezier(.22,1,.36,1);will-change:transform}.wizard-compact .field input,.wizard-compact .field select,.wizard-compact .field textarea,.wizard-compact .picker-row select{background:var(--bg);border-color:transparent}.wizard-compact .field input:hover,.wizard-compact .field select:hover,.wizard-compact .field textarea:hover,.wizard-compact .picker-row select:hover{border-color:var(--hairline)}.wizard-compact .field input:focus,.wizard-compact .field select:focus,.wizard-compact .field textarea:focus,.wizard-compact .picker-row select:focus{background:var(--card);border-color:var(--indigo)}.field input,.field select,.field textarea,.picker-row select{background:var(--card);transition:border-color .12s ease,box-shadow .12s ease}.field input:focus,.field select:focus,.field textarea:focus,.picker-row select:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 15%,transparent)}.field textarea{min-height:64px;max-height:160px;resize:vertical}.board-col.drag-over{outline:2px dashed var(--indigo);outline-offset:-2px;background:color-mix(in srgb,var(--indigo) 6%,var(--bg))}.modal-card{position:fixed;top:24vh;left:50%;transform:translate(-50%);z-index:95;width:min(420px,calc(100vw - 32px));background:var(--card);border:1px solid var(--hairline);border-radius:12px;box-shadow:0 24px 64px #00000040;padding:20px 22px;display:grid;gap:12px;transform-origin:center;animation:modalIn .18s var(--ease)}.modal-card h3{font-size:var(--text-lg)}.pbar{display:inline-block;width:64px;height:4px;flex-shrink:0;border-radius:999px;background:var(--hairline);overflow:hidden;vertical-align:middle}.pbar-fill{display:block;height:100%;border-radius:999px;background:var(--st-inprogress);transition:transform .24s var(--ease),width .24s var(--ease);will-change:transform}.pbar.conf-at_risk .pbar-fill{background:var(--warning)}.pbar.conf-off_track .pbar-fill{background:var(--danger)}.pline{display:inline-flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.pline-pct{font-size:var(--text-xs);font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.conf-chip.at_risk{color:var(--warning);background:var(--warning-soft)}.conf-chip.off_track{color:var(--danger);background:var(--danger-soft)}.stale-chip{color:var(--muted);background:var(--fill);border:1px dashed var(--hairline)}.slip-chip{color:var(--warning);background:var(--warning-soft)}.dprog{border:1px solid var(--hairline);border-radius:var(--radius);padding:12px 14px;margin-bottom:14px;background:var(--fill);display:grid;gap:8px}.dprog.stale{border-style:dashed}.dprog-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.dprog-when{font-size:var(--text-xs);color:var(--faint)}.dprog-say{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.dprog-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:var(--text-xs);color:var(--text)}.dprog-meta strong{color:var(--muted);font-weight:600}.dprog-blocked,.dprog-blocked strong{color:var(--danger)}.dprog-empty{margin:0;font-size:var(--text-xs);color:var(--faint)}.qu-sheet{position:fixed;z-index:96;background:var(--card);border:1px solid var(--hairline);box-shadow:0 24px 64px #00000040;display:flex;flex-direction:column;max-height:min(88vh,720px);top:12vh;left:50%;transform:translate(-50%);width:min(560px,calc(100vw - 32px));border-radius:14px;animation:modalIn .18s var(--ease)}.qu-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid var(--hairline-soft)}.qu-head h3{font-size:var(--text-lg);margin-top:2px}.qu-eyebrow{font-size:var(--text-micro);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.qu-body{padding:14px 18px;overflow-y:auto;display:grid;gap:14px}.qu-field{display:grid;gap:6px;min-width:0}.qu-field>label{font-size:var(--text-xs);font-weight:600;color:var(--ink-soft)}.qu-optional{font-weight:500;color:var(--faint)}.qu-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.qu-field input,.qu-field textarea{width:100%;border:1px solid var(--hairline);border-radius:8px;padding:9px 11px;font-family:inherit;font-size:var(--text-sm);background:var(--card);color:var(--ink)}.qu-field input:focus,.qu-field textarea:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}.qu-field textarea{resize:vertical;min-height:52px}.qu-steps{display:flex;gap:6px}.qu-step{flex:1;padding:9px 0;min-height:40px;border:1px solid var(--hairline);background:var(--card);border-radius:8px;font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--text);cursor:pointer;transition:background .13s var(--ease),border-color .13s var(--ease),color .13s var(--ease)}.qu-step:hover{border-color:var(--indigo)}.qu-step.on{background:var(--indigo);border-color:var(--indigo);color:#fff}.qu-bar{height:4px;border-radius:999px;background:var(--hairline);overflow:hidden;margin-top:2px}.qu-bar span{display:block;height:100%;background:var(--indigo);border-radius:999px;transition:transform .24s var(--ease),width .24s var(--ease);will-change:transform}.qu-conf{display:flex;gap:6px}.qu-conf-btn{flex:1;padding:9px 0;min-height:40px;border:1px solid var(--hairline);background:var(--card);border-radius:8px;font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--text);cursor:pointer;transition:background .13s var(--ease),border-color .13s var(--ease),color .13s var(--ease)}.qu-conf-btn.on.on_track{background:var(--success-soft);border-color:var(--success);color:var(--success)}.qu-conf-btn.on.at_risk{background:var(--warning-soft);border-color:var(--warning);color:var(--warning)}.qu-conf-btn.on.off_track{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.qu-warn{font-size:var(--text-xs);color:var(--warning)}.qu-note{margin:0;font-size:var(--text-xs);color:var(--muted)}.qu-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--hairline-soft)}.qu-foot button{min-height:40px;padding:0 18px}.todo-prog{display:flex;align-items:center;gap:7px;margin-top:4px;flex-wrap:wrap}.todo-update{flex-shrink:0}.inbox-page{max-width:900px}.inbox-head{margin-bottom:16px}.inbox-title{font-size:var(--text-display);letter-spacing:-.6px}.inbox-sub{margin:4px 0 0;font-size:var(--text-sm)}.inbox-filters{margin-bottom:14px}.fchip.on .muted{color:currentColor;opacity:.75}.inbox-list{display:grid;gap:10px}.inbox-item{display:grid;grid-template-columns:8px 1fr auto;gap:14px;align-items:start;background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);padding:14px 16px;animation:riseIn .3s var(--ease-spring) both}.inbox-item.late{border-color:color-mix(in srgb,var(--danger) 35%,var(--hairline))}.inbox-dot{width:8px;height:8px;border-radius:999px;margin-top:7px;background:var(--muted)}.inbox-dot.tone-amber{background:var(--warning)}.inbox-dot.tone-violet{background:#7c3aed}.inbox-dot.tone-indigo{background:var(--indigo)}.inbox-dot.tone-blue{background:var(--info)}.inbox-dot.tone-green{background:var(--success)}.inbox-body{min-width:0}.inbox-row1{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:3px}.inbox-kind{font-size:var(--text-micro);font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.inbox-when{font-size:var(--text-xs);color:var(--faint);margin-left:auto}.inbox-item-title{font-size:var(--text-base);font-weight:700;line-height:1.35}.inbox-item-body{margin:4px 0 0;font-size:var(--text-sm);color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inbox-meta{margin-top:7px;font-size:var(--text-xs);color:var(--muted);display:flex;gap:6px;flex-wrap:wrap}.inbox-meta strong{color:var(--ink-soft);font-weight:650}.inbox-sep{color:var(--faint)}.inbox-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}.chip-late{color:var(--danger);background:var(--danger-soft)}.inbox-foot{margin-top:16px;font-size:var(--text-xs)}@media(max-width:680px){.inbox-item{grid-template-columns:8px 1fr}.inbox-actions{grid-column:2;margin-top:10px}.inbox-actions button{flex:1;min-height:40px}.inbox-title{font-size:var(--text-title)}}.board-card{cursor:grab;-webkit-user-select:none;user-select:none;-webkit-user-drag:element}.board-card:active{cursor:grabbing}.board-card.dragging{opacity:.5}.wizard-compact{padding:26px clamp(20px,4vw,44px)!important;gap:16px!important;max-width:1040px!important}.wizard-compact .page-title{font-size:21px;letter-spacing:-.3px}.wizard-compact .page-subtitle{font-size:var(--text-sm);margin-top:2px}.wizard-compact .card{padding:14px 16px;border-radius:10px}.wizard-compact .field{gap:3px}.wizard-compact .field label{font-size:var(--text-xs);font-weight:600;color:var(--muted)}.wizard-compact .field input,.wizard-compact .field select,.wizard-compact .picker-row select{min-height:38px;padding:7px 10px;font-size:var(--text-sm);border-radius:7px}.wizard-compact .field textarea{min-height:40px;max-height:100px;padding:7px 10px;font-size:var(--text-sm);border-radius:7px}.wizard-compact .form-grid{gap:8px 10px}.wizard-compact .wizard-step .dot{width:20px;height:20px}@media(max-width:900px){.wizard-compact .field input,.wizard-compact .field select,.wizard-compact .picker-row select{min-height:44px}}.struct-children{margin-left:4px;border-left:1px solid var(--hairline);padding-left:12px;display:grid;gap:2px}.wizard-side .mini{padding:2px 0;font-size:var(--text-xs)}.wizard-side .mini{display:flex;align-items:center;gap:8px;font-size:var(--text-sm)}.wizard-side .ok{color:var(--pebble)}.wizard-side .warn{color:var(--st-submitted)}.chip-x{border:none;background:transparent;cursor:pointer;color:inherit;font-weight:700;padding:0 2px}.dep-box{border:1px dashed var(--hairline);border-radius:8px;padding:12px;display:grid;gap:10px}.dep-people{display:grid;gap:10px}.dep-person{display:grid;gap:6px;padding:8px;border:1px solid var(--hairline-soft);border-radius:10px;background:var(--fill)}.dep-person-top{display:flex;align-items:center;gap:8px}.dep-ask{width:100%;padding:8px 10px;border:1px solid var(--hairline);border-radius:8px;font-size:var(--text-sm);font-family:inherit;color:var(--ink);background:var(--card);outline:none}.dep-ask:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.dep-ask::placeholder{color:var(--faint)}.dep-view{display:grid;gap:8px}.dep-view-row{display:grid;gap:2px}.dep-view-ask{font-size:var(--text-sm);color:var(--text)}.dep-view-ask:before{content:"“"}.dep-view-ask:after{content:"”"}.view-chip{display:inline-flex;align-items:center;gap:2px;padding-right:4px}.view-apply{border:none;background:none;font:inherit;color:inherit;cursor:pointer;padding:0}.view-namer{display:inline-flex;align-items:center;gap:6px}.view-namer .fmenu-search{width:170px}.watch-list{display:flex;gap:6px;flex-wrap:wrap}.chip-you{background:var(--brand-soft);color:var(--brand)}.icon-btn.on{color:var(--brand)}.ctrl-lede{margin:14px 0 16px;font-size:var(--text-sm);color:var(--text);max-width:78ch}.ctrl-list{display:grid;gap:8px}.ctrl-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--hairline);border-radius:12px;background:var(--card)}.ctrl-row.locked{background:color-mix(in srgb,var(--st-approved) 4%,transparent);border-color:color-mix(in srgb,var(--st-approved) 22%,var(--hairline))}.ctrl-main{min-width:0;display:grid;gap:3px}.ctrl-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--text-sm)}.ctrl-sub{margin:0;font-size:var(--text-xs)}.ctrl-flag{margin:2px 0 0;font-size:var(--text-xs);color:var(--st-submitted)}.ctrl-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ctrl-blockers{border:1px solid color-mix(in srgb,var(--st-submitted) 30%,var(--hairline));border-radius:10px;padding:10px 12px;display:grid;gap:6px}.ctrl-blockers ul{margin:0;padding-left:18px;font-size:var(--text-sm)}.ledger{display:grid;gap:2px}.ledger-row{display:grid;grid-template-columns:132px minmax(0,1fr) 72px;gap:10px;align-items:baseline;padding:7px 10px;border-radius:8px;font-size:var(--text-sm)}.ledger-row:nth-child(odd){background:var(--fill)}.ledger-when{font-size:var(--text-xs);color:var(--faint);font-variant-numeric:tabular-nums}.ledger-body{min-width:0;overflow-wrap:anywhere}.ledger-target{font-weight:600}.ledger-delta{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600}.ledger-role{font-size:var(--text-xs);color:var(--faint);text-align:right}@media(max-width:720px){.ctrl-row{grid-template-columns:minmax(0,1fr)}.ctrl-acts{justify-content:flex-start}.ledger-row{grid-template-columns:minmax(0,1fr);gap:2px}.ledger-role{text-align:left}}.dep-terms{display:grid;gap:6px}.dep-toggle{display:flex;align-items:flex-start;gap:8px;font-size:var(--text-sm);cursor:pointer}.dep-toggle input{margin-top:2px;flex-shrink:0;accent-color:var(--brand)}.dep-v2{display:grid;gap:8px}.dep-v2-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:9px 10px;border:1px solid var(--hairline);border-radius:10px}.dep-v2-row.st-accepted_by_requester{background:color-mix(in srgb,var(--st-approved) 5%,transparent);border-color:color-mix(in srgb,var(--st-approved) 25%,var(--hairline))}.dep-v2-row.st-rejected{border-color:color-mix(in srgb,var(--st-rejected) 35%,var(--hairline))}.dep-v2-main{display:grid;gap:4px;min-width:0}.dep-v2-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--text-sm);font-weight:600;color:var(--ink)}.dep-v2-you{font-size:var(--text-xs);font-weight:600;color:var(--brand);background:var(--brand-soft);border-radius:999px;padding:1px 7px}.dep-v2-state{font-size:var(--text-xs);font-weight:600;color:var(--faint);text-transform:uppercase;letter-spacing:.04em}.dep-v2-state.accepted,.dep-v2-state.delivered{color:var(--st-inprogress)}.dep-v2-state.rejected{color:var(--st-rejected)}.dep-v2-state.accepted_by_requester{color:var(--st-approved)}.dep-v2-note{font-size:var(--text-xs);color:var(--text)}.dep-v2-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.blk-dot.live{background:var(--st-inprogress);border-color:var(--st-inprogress)}.blk-dot.bad{background:var(--st-rejected);border-color:var(--st-rejected)}.wizard-card.b-boulder,.wizard-card.b-rock,.wizard-card.b-pebble{border-left-color:var(--hairline)}.field select,.field textarea{border:1px solid var(--hairline);border-radius:8px;padding:10px 12px;font-size:var(--text-base);background:var(--bg);color:var(--ink);font-family:inherit;min-height:44px}.field input[type=date]{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:44px;font-family:inherit;font-size:var(--text-sm);cursor:pointer}.field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.65;padding:4px}.field input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.picker-row{display:grid;grid-template-columns:minmax(150px,42%) 1fr;gap:8px;align-items:stretch}.picker-row select{border:1px solid var(--hairline);border-radius:8px;padding:10px 12px;font-size:var(--text-sm);background:var(--bg);color:var(--ink);font-family:inherit;min-height:44px;min-width:0;max-width:100%}.ms{position:relative;display:grid;min-width:0}.ms-trigger{display:flex;align-items:center;gap:8px;width:100%;min-width:0;min-height:44px;border:1px solid var(--hairline);border-radius:8px;padding:8px 12px;cursor:pointer;background:var(--bg);color:var(--ink);font-family:inherit;font-size:var(--text-sm);text-align:left;transition:border-color .12s ease,box-shadow .12s ease}.ms-trigger:hover{border-color:var(--indigo)}.ms-trigger.on{border-color:color-mix(in srgb,var(--indigo) 45%,var(--hairline))}.ms-trigger:focus-visible{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 15%,transparent)}.ms-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.ms-trigger:not(.on) .ms-summary{color:var(--muted);font-weight:500}.ms-caret{color:var(--muted);flex-shrink:0;display:inline-flex;transform:rotate(90deg)}.wpanel .ms-trigger{min-height:40px}.wizard-compact .ms-trigger{min-height:38px}@media(max-width:640px){.wizard-compact .ms-trigger{min-height:44px}}.ms-pop{position:fixed;z-index:120;box-sizing:border-box;background:var(--card);border:1px solid var(--hairline);border-radius:12px;box-shadow:0 16px 40px #0f172a38;padding:8px;display:flex;flex-direction:column;gap:2px;max-height:340px;transform-origin:top;animation:menuIn .13s var(--ease)}.ms-search{border:1px solid var(--hairline);border-radius:8px;background:var(--bg);color:var(--ink);padding:8px 10px;font-size:var(--text-sm);font-family:inherit;margin-bottom:4px;width:100%;box-sizing:border-box}.ms-search:focus{outline:none;border-color:var(--indigo)}.ms-list{overflow-y:auto;display:flex;flex-direction:column;gap:1px}.ms-item{display:flex;align-items:center;gap:9px;width:100%;border:none;background:transparent;color:var(--ink);font-family:inherit;font-size:var(--text-sm);text-align:left;padding:8px 9px;border-radius:8px;cursor:pointer}.ms-item:hover{background:var(--hover)}.ms-item.sel{color:var(--indigo);font-weight:600}.ms-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ms-count{color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex-shrink:0}.ms-box{width:17px;height:17px;border-radius:5px;border:1.5px solid var(--hairline);flex-shrink:0;display:grid;place-items:center;font-size:11px;color:#fff;line-height:1}.ms-box.on{background:var(--indigo);border-color:var(--indigo)}.ms-radio{width:15px;height:15px;border-radius:50%;border:1.5px solid var(--hairline);flex-shrink:0;position:relative}.ms-radio.on{border-color:var(--indigo)}.ms-radio.on:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:var(--indigo)}.ms-divider{height:1px;background:var(--hairline);margin:4px 2px}.ms-foot{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 2px;font-size:var(--text-xs)}.ms-clear{border:none;background:none;color:var(--indigo);font-weight:700;font-family:inherit;font-size:var(--text-xs);cursor:pointer}.ms-empty{color:var(--muted);font-size:var(--text-sm);padding:10px;text-align:center}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.form-grid .field.span-2{grid-column:span 2}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.form-grid .field.span-2{grid-column:auto}.picker-row{grid-template-columns:1fr}}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--hairline);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{white-space:nowrap}.tab{border:none;background:transparent;color:var(--muted);font-weight:600;font-size:var(--text-sm);padding:8px 14px;cursor:pointer;border-bottom:2px solid transparent}.tab.active{color:var(--ink);border-bottom-color:var(--indigo)}.inline-note{font-size:var(--text-xs);color:var(--muted)}.appr-card{display:grid;gap:12px;transition:border-color .13s var(--ease),box-shadow .13s var(--ease),transform .13s var(--ease)}.appr-card.clickable{cursor:pointer}.appr-card.clickable:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media(hover:hover)and (pointer:fine){.appr-card.clickable:hover{border-color:color-mix(in srgb,var(--brand) 34%,var(--hairline));box-shadow:var(--shadow-lg);transform:translateY(-2px)}}.appr-open-hint{margin-left:auto;align-self:center;font-size:var(--text-xs);color:var(--muted)}@media(max-width:560px){.appr-open-hint{display:none}}.appr-main{display:flex;align-items:center;gap:12px}.appr-avatar{width:40px;height:40px;font-size:14px;flex-shrink:0}.appr-body{min-width:0;flex:1;display:grid;gap:3px}.appr-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.appr-name{font-size:var(--text-base);overflow-wrap:anywhere}.appr-code{font-size:var(--text-xs)}.appr-sub{font-size:var(--text-xs);color:var(--muted)}.appr-age{flex-shrink:0;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap}.appr-age.tone-fresh{color:var(--st-approved);background:color-mix(in srgb,var(--st-approved) 13%,transparent)}.appr-age.tone-warm{color:var(--st-submitted);background:color-mix(in srgb,var(--st-submitted) 15%,transparent)}.appr-age.tone-stale{color:var(--st-overdue);background:color-mix(in srgb,var(--st-overdue) 13%,transparent)}.appr-actions{display:flex;gap:8px;padding-left:52px}.appr-reject{padding-left:52px}@media(max-width:560px){.appr-actions,.appr-reject{padding-left:0}}.appr-history{display:grid;gap:2px}.appr-hist-row{display:flex;align-items:center;gap:12px;padding:11px 8px;border-bottom:1px solid var(--hairline)}.appr-hist-row:last-child{border-bottom:none}.appr-hist-mark{flex-shrink:0;width:26px;height:26px;border-radius:999px;display:grid;place-items:center;font-size:13px;color:#fff}.appr-hist-mark.ok{background:var(--st-approved)}.appr-hist-mark.no{background:var(--st-rejected)}.appr-hist-body{flex:1;min-width:0;display:grid;gap:2px}.appr-hist-top{display:flex;align-items:center;gap:8px;min-width:0}.appr-hist-when{font-size:var(--text-xs);color:var(--muted);flex-shrink:0}.appr-evidence{display:grid;gap:10px;padding:12px 0 2px 52px;border-top:1px solid var(--hairline)}@media(max-width:560px){.appr-evidence{padding-left:0}}.appr-note{background:var(--fill);border:1px solid var(--hairline);border-radius:10px;padding:10px 12px}.appr-note-k{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:3px}.appr-note p{margin:0;font-size:var(--text-sm);line-height:1.5;overflow-wrap:anywhere}.appr-desc{margin:0;font-size:var(--text-sm);color:var(--text);line-height:1.5}.appr-crit{display:grid;gap:6px}.appr-crit-head{font-size:var(--text-xs);font-weight:700;color:var(--st-submitted)}.appr-crit-head.ok{color:var(--st-approved)}.appr-crit-list{display:flex;flex-wrap:wrap;gap:6px}.appr-crit-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--muted);background:var(--hover);border-radius:999px;padding:3px 10px 3px 5px}.appr-crit-item.met{color:var(--st-approved);background:color-mix(in srgb,var(--st-approved) 12%,transparent)}.appr-crit-dot{width:15px;height:15px;border-radius:999px;border:1.5px solid var(--hairline);display:inline-flex;align-items:center;justify-content:center;font-size:9px;color:#fff}.appr-crit-item.met .appr-crit-dot{background:var(--st-approved);border-color:var(--st-approved)}.appr-kids{font-size:var(--text-xs);color:var(--muted);font-weight:600}.appr-extra{display:grid;gap:8px}.appr-files{display:grid;gap:4px}.appr-file-list{display:flex;flex-wrap:wrap;gap:6px}.appr-file{font-size:var(--text-xs);color:var(--brand);background:color-mix(in srgb,var(--brand) 9%,transparent);border-radius:999px;padding:3px 10px;text-decoration:none;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appr-file:hover{text-decoration:underline}.appr-comments{display:grid;gap:3px}.appr-comment{margin:0;font-size:var(--text-xs);color:var(--muted)}.appr-comment strong{color:var(--ink);font-weight:600}.done-panel{border:1px solid color-mix(in srgb,var(--brand) 30%,var(--hairline));border-radius:12px;padding:14px;display:grid;gap:10px;background:color-mix(in srgb,var(--brand) 4%,var(--card));animation:fadeUp .14s var(--ease)}.done-panel-title{margin:0;font-size:var(--text-sm);font-weight:700;color:var(--ink)}.done-metrics{margin:0;font-size:var(--text-xs)}.done-metrics.ok{color:var(--st-approved)}.coming-soon{display:grid;place-items:center;padding:72px 20px;color:var(--muted);text-align:center;gap:10px}.dir-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.dir-add-btn{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 16px;flex-shrink:0;margin-left:auto}.onboard-panel{padding:0;display:flex;flex-direction:column;gap:0}.onboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 24px 14px;border-bottom:1px solid var(--hairline)}.onboard-head h2{font-size:19px;line-height:1.25}.onboard-body{flex:1;overflow-y:auto;padding:18px 24px;display:grid;gap:14px;align-content:start}.cred-card{border:1px solid color-mix(in srgb,var(--brand) 30%,var(--hairline));border-radius:14px;padding:16px;display:grid;gap:10px;background:color-mix(in srgb,var(--brand) 4%,var(--card))}.cred-name{margin:0;font-weight:700;color:var(--ink);font-size:var(--text-base)}.cred-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--hairline-soft)}.cred-k{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.cred-v{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--text-base);color:var(--ink);font-weight:600}.onboard-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--hairline)}.dir-toolbar .search{border:1px solid var(--hairline);border-radius:8px;background:var(--card);color:var(--ink);padding:0 12px;height:40px;font-size:var(--text-sm);font-family:inherit;flex:1;min-width:200px}.dir-toolbar .search:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}.dir-filter{width:220px}.dir-filter .ms-trigger{height:40px;min-height:40px}.dir-groups{display:grid;gap:20px}.dir-group{display:grid;gap:10px}.dir-group-head{display:flex;align-items:center;gap:8px}.dir-dept{font-weight:700;font-size:var(--text-sm)}.dir-count{color:var(--muted);font-size:var(--text-xs);font-weight:600;background:var(--hover);border-radius:999px;padding:1px 8px}.dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:10px}.dir-card{display:flex;align-items:center;gap:8px;border:1px solid var(--hairline);border-radius:10px;padding:11px 13px;background:var(--card);width:100%;text-align:left;font-family:inherit;transition:border-color .12s var(--ease),background .12s var(--ease)}@media(hover:hover)and (pointer:fine){.dir-card:hover{border-color:color-mix(in srgb,var(--indigo) 40%,var(--hairline));background:var(--hover)}}.dir-open{display:flex;align-items:center;gap:11px;flex:1;min-width:0;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;padding:0;color:inherit}.dir-msg{flex-shrink:0;width:32px;height:32px;border-radius:8px;border:1px solid var(--hairline);background:var(--card);color:var(--muted);display:grid;place-items:center;cursor:pointer;transition:color .12s var(--ease),border-color .12s var(--ease),background .12s var(--ease)}.dir-msg:hover{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 40%,var(--hairline));background:var(--brand-soft)}@media(hover:hover)and (pointer:fine){.dir-card .dir-msg{opacity:0}.dir-card:hover .dir-msg,.dir-msg:focus-visible{opacity:1}}.member-hero{display:flex;align-items:center;gap:14px}.member-avatar{width:56px;height:56px;font-size:19px;flex-shrink:0}.member-sub{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--text-sm);color:var(--ink);margin-top:4px}.member-status{font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px}.member-status.on{color:var(--st-approved);background:color-mix(in srgb,var(--st-approved) 14%,transparent)}.member-status.off{color:var(--muted);background:var(--hover)}.org-chain{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.org-node{font-size:var(--text-sm);font-weight:600;padding:5px 11px;border:1px solid var(--hairline);border-radius:999px;background:var(--card)}.org-node.current{border-color:color-mix(in srgb,var(--indigo) 45%,transparent);color:var(--indigo);background:color-mix(in srgb,var(--indigo) 8%,transparent)}.org-arrow{color:var(--muted)}.member-levels{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:var(--text-sm);color:var(--muted)}.member-levels span{display:inline-flex;align-items:center;gap:6px}.m-goals{display:grid;gap:8px}.m-goal{display:flex;align-items:center;gap:10px}.m-goal-name{font-size:var(--text-sm);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-goal-bar{width:90px;height:6px;border-radius:999px;background:var(--hover);overflow:hidden;flex-shrink:0}.m-goal-bar span{display:block;height:100%;background:var(--indigo);border-radius:999px}.m-goal-val{font-size:var(--text-xs);font-weight:700;color:var(--muted);width:34px;text-align:right}.member-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mstat{display:flex;flex-direction:column;gap:1px;padding:10px 12px;border:1px solid var(--hairline);border-radius:10px;background:var(--bg)}.mstat b{font-size:20px;font-weight:700}.mstat span{font-size:var(--text-xs);color:var(--muted)}.mstat.accent-rose b{color:var(--st-overdue)}.mstat.accent-violet b{color:var(--st-awaiting)}.mstat.accent-green b{color:var(--st-approved)}.m-tasks{display:grid;gap:2px}.m-task{display:flex;align-items:center;gap:9px;padding:8px 6px}.m-task+.m-task{border-top:1px solid var(--hairline)}.m-task-main{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.m-task-name{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-task-path{font-size:var(--text-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-reports{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.m-report{display:flex;align-items:center;gap:9px;border:1px solid var(--hairline);border-radius:9px;padding:8px 10px;background:var(--card);width:100%;text-align:left;font-family:inherit;cursor:pointer;transition:border-color .12s var(--ease),background .12s var(--ease)}.m-report:disabled{cursor:default}.m-report-main{display:grid;gap:0;min-width:0}.m-report-name{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(hover:hover)and (pointer:fine){.m-report:hover:not(:disabled){border-color:color-mix(in srgb,var(--indigo) 40%,var(--hairline));background:var(--hover)}}.dir-avatar{width:38px;height:38px;font-size:13px}.dir-body{display:grid;gap:1px;min-width:0}.dir-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dir-code{font-size:var(--text-xs);color:var(--muted)}.dir-mgr{font-size:var(--text-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}@media(max-width:760px){.an-grid{grid-template-columns:1fr}}.an-panel{display:grid;gap:8px;align-content:start}.an-bars{display:grid;gap:10px}.an-bar-row{display:grid;grid-template-columns:150px 1fr 60px;gap:12px;align-items:center;font-size:var(--text-sm)}.an-bar-label{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.an-track{height:10px;border-radius:999px;background:var(--hover);overflow:hidden}.an-fill{display:block;height:100%;border-radius:999px;min-width:2px;transition:transform .4s cubic-bezier(.22,1,.36,1),width .4s cubic-bezier(.22,1,.36,1);will-change:transform}.an-num{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.an-flag{color:var(--st-overdue);font-weight:600;font-size:var(--text-xs)}.an-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:4px}.an-level{display:grid;justify-items:start;gap:4px;border:1px solid var(--hairline);border-radius:10px;padding:13px 14px}.an-level-dot{width:10px;height:10px;border-radius:3px}.an-level-num{font-size:26px;font-weight:700;letter-spacing:-.5px;line-height:1}.an-level-label{font-size:var(--text-xs);color:var(--muted)}.goal-stats{flex:1}.dir-toolbar .goal-stats{min-width:320px}.goal-boulders{display:grid;gap:1px;max-height:220px;overflow-y:auto;border:1px solid var(--hairline);border-radius:10px;padding:5px}.goal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:2px}.goal-metric .muted{font-size:var(--text-xs)}.tl-list{display:none}@media(max-width:640px){.tl-list{display:grid;gap:18px}.gantt,.gantt-only{display:none!important}}.tl-month{display:grid;gap:6px}.tl-month-head{display:flex;align-items:center;gap:8px;margin:0 0 2px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.tl-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:11px 13px;text-align:left;cursor:pointer;border:1px solid var(--hairline);border-radius:11px;background:var(--card);font:inherit}.tl-item:hover{border-color:color-mix(in srgb,var(--brand) 30%,var(--hairline))}.tl-item-main{display:grid;gap:2px;min-width:0}.tl-item-name{font-size:var(--text-sm);font-weight:600;color:var(--ink);overflow-wrap:break-word}.tl-item-meta{font-size:var(--text-xs);color:var(--muted)}@media(max-width:440px){.tl-item{grid-template-columns:10px minmax(0,1fr)}.tl-item>.chip{grid-column:2;justify-self:start}}.gantt{border:1px solid var(--hairline);border-radius:12px;overflow:hidden;background:var(--card)}.tl-toolbar{margin-bottom:4px}.tl-toolbar .search{flex:0 1 200px}.tl-zoom{display:inline-flex;align-items:center;gap:6px}.tl-zoom-label{font-size:var(--text-xs);font-weight:600;color:var(--muted);min-width:68px;text-align:center}.gantt-scroll{overflow-x:auto;overflow-y:hidden}.gantt-head,.gantt-row{grid-template-columns:minmax(300px,348px) var(--track-w, 1fr)}.gantt-head{display:grid;border-bottom:1px solid var(--hairline);background:color-mix(in srgb,var(--ink) 2%,var(--card))}.gantt-head-name,.gantt-name{position:sticky;left:0;z-index:3}.gantt-head-name{background:color-mix(in srgb,var(--ink) 2%,var(--card))}.gantt-name{background:var(--card);box-shadow:1px 0 0 var(--hairline)}.gantt-row:nth-child(2n) .gantt-name{background:color-mix(in srgb,var(--ink) 1.5%,var(--card))}.gantt-head-name{padding:0 14px;height:52px;display:flex;align-items:center;gap:8px;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.gantt-head-owner{margin-left:auto;width:76px}.gantt-count{background:var(--hover);color:var(--muted);border-radius:999px;padding:1px 8px;font-size:11px}.gantt-head-track{position:relative;height:52px;border-left:1px solid var(--hairline);overflow:hidden}.gantt-band{position:absolute;top:0;bottom:0;display:flex;align-items:flex-start;justify-content:center;padding-top:8px;border-right:1px solid var(--hairline);overflow:hidden}.gantt-band.alt{background:color-mix(in srgb,var(--ink) 3%,transparent)}.gantt-band-label{font-size:var(--text-xs);color:var(--muted);font-weight:600;white-space:nowrap;text-transform:none;letter-spacing:0}.gantt-today-pill{position:absolute;bottom:6px;transform:translate(-50%);z-index:3;background:var(--indigo);color:#fff;font-size:10px;font-weight:700;padding:1px 7px;border-radius:999px;white-space:nowrap}.gantt-body{display:grid}.gantt-row{display:grid;min-height:38px;border-top:1px solid var(--hairline)}.gantt-row:first-child{border-top:none}.gantt-row:nth-child(2n){background:color-mix(in srgb,var(--ink) 1.5%,transparent)}.gantt-name{display:flex;align-items:center;gap:7px;padding:6px 10px 6px 0;min-width:0}.gantt-owner{flex:0 0 76px;width:76px;font-size:var(--text-xs);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.gantt-name-spacer{width:22px;flex-shrink:0}.gantt-name-text{border:none;background:none;padding:0;margin:0;text-align:left;color:inherit;font-family:inherit;font-weight:inherit;font-size:var(--text-sm);cursor:pointer;min-width:0;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word}.gantt-name-text:hover{color:var(--indigo)}.gantt-track{position:relative;border-left:1px solid var(--hairline);overflow:hidden}.gantt-band-bg{position:absolute;top:0;bottom:0;border-right:1px solid var(--hairline)}.gantt-band-bg.alt{background:color-mix(in srgb,var(--ink) 2.5%,transparent)}.gantt-today{position:absolute;top:0;bottom:0;width:2px;background:var(--indigo);opacity:.55;z-index:1}.gantt-legend{display:flex;flex-wrap:wrap;gap:16px;padding:11px 14px;border-top:1px solid var(--hairline);background:color-mix(in srgb,var(--ink) 2%,var(--card))}.gantt-leg{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--muted)}.gantt-leg-sw{width:14px;height:10px;border-radius:3px}.gantt-leg-sw.overdue{background:color-mix(in srgb,var(--st-overdue) 22%,var(--card));box-shadow:inset 3px 0 0 var(--st-overdue)}.gantt-leg-sw.done{background:color-mix(in srgb,var(--st-approved) 30%,var(--card));box-shadow:inset 3px 0 0 var(--st-approved)}.gantt-bar{position:absolute;top:50%;transform:translateY(-50%);height:22px;border-radius:6px;border:none;cursor:pointer;overflow:hidden;padding:0 8px;display:flex;align-items:center;font-family:inherit;min-width:6px;z-index:2;background:color-mix(in srgb,var(--rock) 26%,var(--card));box-shadow:inset 3px 0 0 var(--rock)}.gantt-bar.lvl-boulder{background:color-mix(in srgb,var(--boulder) 24%,var(--card));box-shadow:inset 3px 0 0 var(--boulder)}.gantt-bar.lvl-rock{background:color-mix(in srgb,var(--rock) 24%,var(--card));box-shadow:inset 3px 0 0 var(--rock)}.gantt-bar.lvl-pebble{background:color-mix(in srgb,var(--pebble) 24%,var(--card));box-shadow:inset 3px 0 0 var(--pebble)}.gantt-bar.done{background:color-mix(in srgb,var(--st-approved) 30%,var(--card));box-shadow:inset 3px 0 0 var(--st-approved)}.gantt-bar.overdue{background:color-mix(in srgb,var(--st-overdue) 22%,var(--card));box-shadow:inset 3px 0 0 var(--st-overdue)}.gantt-bar-fill{position:absolute;left:0;top:0;bottom:0;background:color-mix(in srgb,var(--indigo) 22%,transparent)}.gantt-bar-label{position:relative;font-size:var(--text-xs);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}.gantt-bar:hover{box-shadow:inset 3px 0 0 var(--indigo),0 0 0 2px color-mix(in srgb,var(--indigo) 40%,transparent)}.set2{max-width:1000px;gap:24px}.set-head{margin-bottom:0}.set2-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start}@media(max-width:780px){.set2-layout{grid-template-columns:1fr;gap:16px}}.set2-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:84px}.set2-nav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:none;background:none;font-family:inherit;font-size:var(--text-sm);font-weight:600;color:var(--text);padding:9px 12px;border-radius:10px;cursor:pointer;white-space:nowrap;transition:background .12s var(--ease),color .12s var(--ease)}.set2-nav-item svg{color:var(--muted);flex-shrink:0}.set2-nav-item:hover{background:var(--fill)}.set2-nav-item.active{background:var(--brand-soft);color:var(--brand-dark)}.set2-nav-item.active svg{color:var(--brand)}@media(max-width:780px){.set2-nav{position:static;flex-direction:row;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 22px),transparent 100%)}.set2-nav::-webkit-scrollbar{display:none}.set2-nav-item{width:auto;flex-shrink:0;border:1px solid var(--hairline)}.set2-nav-item.active{border-color:color-mix(in srgb,var(--brand) 35%,var(--hairline))}}.set2-content{min-width:0}.set2-section{display:grid;gap:16px;animation:fadeUp .16s var(--ease)}.set2-sec-head h2{font-size:var(--text-title);font-weight:800;letter-spacing:-.3px}.set2-sec-head .muted{margin:5px 0 0;max-width:60ch}.set2-card{background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px;display:grid;gap:14px}.set2-profile{display:flex;align-items:center;gap:14px}.set2-profile-main{flex:1;min-width:0;display:grid;gap:1px}.set2-profile-name{font-weight:800;font-size:var(--text-lg);color:var(--ink)}.set-avatar{width:56px;height:56px;font-size:19px}.set2-fields{margin-top:0}.set-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:10px;overflow:hidden;width:100%}.set-field{background:var(--card);padding:10px 13px;display:grid;gap:3px}.set-k{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.set-v{font-weight:600;text-transform:capitalize}.set-row{display:flex;align-items:center;gap:12px}.set-row-info{display:grid;gap:2px;flex:1;min-width:0}.set-row-title{font-weight:600}.set-pw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:640px){.set-pw-grid{grid-template-columns:1fr}}.set-show-pw{display:inline-flex;align-items:center;gap:7px;font-size:var(--text-sm);color:var(--muted);cursor:pointer}.set-show-pw input{width:15px;height:15px;accent-color:var(--brand)}.set-prefs{display:grid;gap:2px}.set-pref-row{display:flex;align-items:center;gap:12px;padding:11px 2px;border-bottom:1px solid var(--hairline)}.set-pref-row:last-child{border-bottom:none}.toggle{flex-shrink:0;width:42px;height:24px;border-radius:999px;border:none;background:var(--hairline);cursor:pointer;padding:0;position:relative;transition:background .16s var(--ease)}.toggle.on{background:var(--brand)}.toggle-knob{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #1018284d;transition:transform .16s var(--ease)}.toggle.on .toggle-knob{transform:translate(18px)}.seg{display:inline-flex;background:var(--hover);border-radius:8px;padding:3px;gap:2px;flex-shrink:0}.seg-btn{border:none;background:transparent;color:var(--muted);font-family:inherit;font-size:var(--text-sm);font-weight:600;padding:6px 14px;border-radius:6px;cursor:pointer}.seg-btn.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.msg-page{flex:1;min-height:0;display:flex;padding:0}.main:has(.msg-page){overflow:hidden}.msg-page .chat-shell{border-radius:0;border-width:1px 0 0 0}@media(max-width:900px){.page.msg-page{padding:0 0 58px}}.chat-shell{position:relative;flex:1;min-height:0;display:grid;grid-template-columns:300px 1fr;border:1px solid var(--hairline);border-radius:12px;overflow:hidden;background:var(--card)}.chat-list{border-right:1px solid var(--hairline);display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--card)}.chat-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 12px 10px 16px}.chat-list-title{font-size:var(--text-title);font-weight:700;letter-spacing:-.3px}.chat-new-btn{width:34px;height:34px;border-radius:50%;border:none;cursor:pointer;background:color-mix(in srgb,var(--indigo) 12%,transparent);color:var(--indigo);display:grid;place-items:center;transition:background .12s var(--ease)}.chat-new-btn:hover{background:color-mix(in srgb,var(--indigo) 20%,transparent)}.chat-search-row{padding:0 12px 8px}.chat-search{width:100%;box-sizing:border-box;border:1px solid var(--hairline);border-radius:999px;background:var(--bg);color:var(--ink);padding:8px 14px;font-size:var(--text-sm);font-family:inherit}.chat-search:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}.chat-convs{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 6px 6px;display:flex;flex-direction:column;gap:1px}.chat-conv{display:flex;align-items:center;gap:12px;width:100%;max-width:100%;text-align:left;border:none;background:transparent;font-family:inherit;padding:9px 10px;border-radius:11px;cursor:pointer;min-width:0}.chat-conv:hover{background:var(--hover)}.chat-conv.on{background:color-mix(in srgb,var(--indigo) 11%,transparent)}.chat-conv-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0;background:color-mix(in srgb,var(--indigo) 14%,transparent);color:var(--indigo)}.chat-conv-icon.k-general{background:color-mix(in srgb,#0d9488 16%,transparent);color:#0d9488}.chat-conv-icon.k-group{background:color-mix(in srgb,#7c3aed 16%,transparent);color:#7c3aed}.chat-conv-body{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;min-width:0;flex:1}.chat-conv-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}.chat-conv-title{flex:1;font-weight:650;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.chat-conv-preview{font-size:var(--text-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-conv-time{font-size:10.5px;color:var(--muted);flex-shrink:0}.chat-conv.on .chat-conv-time{color:var(--indigo)}.chat-conv-bottom{display:flex;align-items:center;gap:8px}.chat-conv-bottom .chat-conv-preview{flex:1;min-width:0}.chat-conv-badge{flex-shrink:0;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;font-size:10.5px;font-weight:700;line-height:1;border-radius:999px}.chat-conv.has-unread .chat-conv-title{color:var(--ink);font-weight:750}.chat-conv.has-unread .chat-conv-preview{color:var(--ink-soft);font-weight:600}.chat-conv.has-unread .chat-conv-time{color:var(--brand);font-weight:700}.chat-main{display:flex;flex-direction:column;min-height:0;min-width:0}.chat-head{display:flex;align-items:center;gap:11px;padding:10px 16px;border-bottom:1px solid var(--hairline)}.chat-head-body{display:grid;gap:1px;min-width:0}.chat-head-title{font-weight:700}.chat-head-sub{font-size:var(--text-xs);color:var(--muted)}.chat-input{border:1px solid var(--hairline);border-radius:9px;background:var(--bg);color:var(--ink);padding:10px 12px;font-size:var(--text-sm);font-family:inherit;width:100%;box-sizing:border-box}.chat-input:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}.chat-head-row{display:flex;align-items:stretch;min-width:0}.chat-head-row .chat-head-btn{flex:1;min-width:0}.chat-back{display:none;align-items:center;padding:0 4px 0 12px;border:none;background:none;color:var(--muted);cursor:pointer}.chat-back svg{transform:rotate(180deg)}.chat-back:hover{color:var(--ink)}@media(max-width:720px){.chat-shell,.chat-shell.has-info{grid-template-columns:minmax(0,1fr)}.chat-shell.mobile-list .chat-main,.chat-shell.mobile-thread .chat-list{display:none}.chat-back{display:inline-flex}}.msg-day{display:flex;align-items:center;justify-content:center;margin:10px 0 6px}.msg-day span{font-size:11px;color:var(--muted);background:color-mix(in srgb,var(--ink) 6%,var(--card));border-radius:999px;padding:3px 12px}.wa-feed{flex:1;min-height:0;overflow-y:auto;padding:12px 6%;display:flex;flex-direction:column;gap:2px;background:radial-gradient(color-mix(in srgb,var(--ink) 5%,transparent) 1px,transparent 0) 0 0 / 22px 22px,color-mix(in srgb,var(--ink) 3%,var(--bg))}.wa-empty{margin:auto;color:var(--muted)}.wa-row{display:flex;gap:8px;align-items:flex-end;max-width:74%}.wa-row.them{align-self:flex-start}.wa-row.mine{align-self:flex-end;flex-direction:row-reverse}.wa-row.first{margin-top:8px}.wa-av{width:28px;height:28px;font-size:10px;flex-shrink:0;margin-bottom:2px}.wa-av-spacer{width:28px;flex-shrink:0}.wa-bubble{min-width:0;padding:6px 11px;border-radius:12px;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--hairline);box-shadow:0 1px 1px #0f172a0a}.wa-row.mine .wa-bubble{background:color-mix(in srgb,var(--brand) 12%,var(--card));border-color:color-mix(in srgb,var(--brand) 32%,var(--hairline))}.wa-row.them.first .wa-bubble{border-top-left-radius:4px}.wa-row.mine.first .wa-bubble{border-top-right-radius:4px}.wa-sender{font-size:var(--text-xs);font-weight:700;margin-bottom:1px}.wa-text{font-size:var(--text-sm);line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.wa-meta{align-self:flex-end;display:inline-flex;align-items:center;gap:4px;margin-top:2px}.wa-time{font-size:10px;color:var(--muted)}.wa-tick{font-size:11px;color:var(--indigo)}.wa-del{border:none;background:none;color:var(--muted);cursor:pointer;font-size:10px;padding:0;opacity:0;transition:opacity .12s var(--ease)}.wa-row:hover .wa-del{opacity:.7}.wa-del:hover{color:var(--st-overdue);opacity:1}.wa-composer{display:flex;gap:10px;align-items:flex-end;padding:10px 14px;border-top:1px solid var(--hairline);background:var(--card)}.wa-composer textarea{flex:1;resize:none;min-height:42px;max-height:150px;border:1px solid var(--hairline);border-radius:22px;padding:10px 16px;font-size:var(--text-sm);font-family:inherit;background:var(--bg);color:var(--ink)}.wa-composer textarea:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px color-mix(in srgb,var(--indigo) 12%,transparent)}.wa-send{flex-shrink:0;width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;background:var(--indigo);color:#fff;display:grid;place-items:center;transition:filter .12s var(--ease),transform .1s var(--ease)}.wa-send:hover:not(:disabled){filter:brightness(1.08)}.wa-send:active:not(:disabled){transform:scale(.94)}.wa-send:disabled{opacity:.5;cursor:default}.wa-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:95;width:min(460px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 48px));background:var(--card);border:1px solid var(--hairline);border-radius:16px;box-shadow:0 24px 64px #00000047;display:flex;flex-direction:column;overflow:hidden;animation:modalPop .18s var(--ease)}@keyframes modalPop{0%{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}.wa-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--hairline)}.wa-group-setup{padding:12px 16px 2px;display:grid;gap:10px}.wa-chips{display:flex;flex-wrap:wrap;gap:6px}.wa-chip{display:inline-flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--indigo) 12%,transparent);color:var(--indigo);border:none;border-radius:999px;padding:3px 10px 3px 3px;font-size:var(--text-xs);font-weight:600;font-family:inherit;cursor:pointer}.wa-chip .avatar.xs{width:20px;height:20px;font-size:9px}.wa-chip-x{opacity:.6;font-size:10px}.wa-search-wrap{padding:12px 16px}.wa-contacts{flex:1;min-height:0;overflow-y:auto;padding:2px 8px 8px}.wa-contacts-note{color:var(--muted);text-align:center;padding:26px 12px;font-size:var(--text-sm)}.wa-contact{display:flex;align-items:center;gap:12px;width:100%;border:none;background:transparent;font-family:inherit;text-align:left;padding:8px 10px;border-radius:10px;cursor:pointer}.wa-contact:hover{background:var(--hover)}.wa-contact.on{background:color-mix(in srgb,var(--indigo) 10%,transparent)}.wa-contact-av{width:40px;height:40px;font-size:14px;flex-shrink:0}.wa-contact-body{display:grid;gap:1px;min-width:0;flex:1}.wa-contact-name{font-weight:600;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-contact-sub{font-size:var(--text-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-check{width:22px;height:22px;border-radius:50%;border:2px solid var(--hairline);flex-shrink:0;display:grid;place-items:center;font-size:12px;color:#fff}.wa-check.on{background:var(--indigo);border-color:var(--indigo)}.wa-modal-foot{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid var(--hairline)}.wa-composer-actions{position:relative;display:flex;align-items:center;gap:2px;align-self:flex-end;padding-bottom:3px}.wa-icon-btn{border:none;background:none;color:var(--muted);cursor:pointer;padding:6px;border-radius:8px;display:inline-flex;transition:background .12s var(--ease),color .12s var(--ease)}.wa-icon-btn:hover{background:var(--hover);color:var(--ink)}.emoji-pop{position:absolute;bottom:calc(100% + 8px);left:0;z-index:130;width:320px;max-height:300px;overflow-y:auto;padding:8px 10px;background:var(--card);border:1px solid var(--hairline);border-radius:12px;box-shadow:0 16px 40px #0f172a38;display:flex;flex-direction:column;gap:6px;animation:menuIn .13s var(--ease);transform-origin:bottom left}.emoji-cat-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:4px 2px 2px;position:sticky;top:-8px;background:var(--card);z-index:1}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px}.emoji-btn{border:none;background:none;cursor:pointer;font-size:20px;padding:4px 0;border-radius:8px;line-height:1}.emoji-btn:hover{background:var(--hover)}.wa-att-img{display:block;margin-bottom:4px;border-radius:10px;overflow:hidden;max-width:240px}.wa-att-img img{display:block;width:100%;height:auto;max-height:280px;object-fit:cover}.wa-att-file{display:flex;align-items:center;gap:10px;margin-bottom:4px;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--ink) 6%,transparent);text-decoration:none;color:inherit;max-width:260px}.wa-att-file:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.wa-att-fileicon{color:var(--indigo);flex-shrink:0;display:inline-flex}.wa-att-filebody{display:grid;gap:1px;min-width:0}.wa-att-name{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-att-size{font-size:10.5px;color:var(--muted)}.wa-pending{display:flex;align-items:center;gap:10px;padding:8px 14px;border-top:1px solid var(--hairline);background:color-mix(in srgb,var(--indigo) 5%,var(--card))}.wa-pending-thumb{width:34px;height:34px;border-radius:7px;object-fit:cover;flex-shrink:0}.wa-pending-name{font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.wa-pending-x{border:none;background:none;color:var(--muted);cursor:pointer;font-size:13px}.wa-pending-x:hover{color:var(--st-overdue)}.dock-root{position:fixed;right:22px;bottom:22px;z-index:80;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.dock-launcher{width:56px;height:56px;border-radius:50%;border:none;cursor:pointer;font-size:17px;background:var(--indigo);color:#fff;display:grid;place-items:center;box-shadow:0 10px 28px color-mix(in srgb,var(--indigo) 45%,transparent);transition:transform .13s var(--ease),filter .13s var(--ease)}.dock-launcher:hover{filter:brightness(1.08)}.dock-launcher:active{transform:scale(.94)}.dock-panel{width:min(340px,calc(100vw - 32px));height:min(520px,calc(100vh - 100px));background:var(--card);border:1px solid var(--hairline);border-radius:16px;box-shadow:0 24px 64px #00000047;display:flex;flex-direction:column;overflow:hidden;animation:dockIn .2s var(--ease);transform-origin:bottom right}@keyframes dockIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}.dock-head{display:flex;align-items:center;gap:8px;padding:9px 10px 9px 12px;border-bottom:1px solid var(--hairline);background:color-mix(in srgb,var(--ink) 2%,var(--card))}.dock-head-body{display:grid;min-width:0}.dock-title{font-weight:700;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dock-sub{font-size:10.5px;color:var(--muted)}.dock-mini{border:none;background:none;color:var(--muted);cursor:pointer;font-size:15px;padding:4px 6px;border-radius:6px;display:inline-flex;align-items:center}.dock-mini:hover{background:var(--hover);color:var(--ink)}.dock-body{flex:1;min-height:0;display:flex;flex-direction:column}.dock-convs{flex:1;min-height:0;overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px}@media(max-width:900px){.dock-root{display:none}}.chat-head-btn{width:100%;border:none;background:transparent;font-family:inherit;text-align:left;cursor:pointer}.chat-head-btn:hover{background:var(--hover)}.chat-head-photo{width:34px;height:34px;border-radius:10px;object-fit:cover;flex-shrink:0}.chat-head-info{color:var(--muted);font-size:16px;margin-left:auto}.dock-head-open{display:flex;align-items:center;gap:8px;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;min-width:0;padding:2px;border-radius:8px}.dock-head-open:hover{background:var(--hover)}.dock-head-photo{width:30px;height:30px;border-radius:9px;object-fit:cover;flex-shrink:0}.chat-info{display:flex;flex-direction:column;min-height:0;height:100%;background:var(--card)}.ci-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--hairline)}.ci-head strong{font-size:var(--text-base)}.ci-body{flex:1;min-height:0;overflow-y:auto}.ci-hero{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 16px 18px;border-bottom:1px solid var(--hairline)}.ci-photo{position:relative}.ci-photo img{width:88px;height:88px;border-radius:24px;object-fit:cover}.ci-photo-edit{position:absolute;right:-4px;bottom:-4px;width:30px;height:30px;border-radius:50%;border:2px solid var(--card);background:var(--indigo);color:#fff;cursor:pointer;font-size:13px}.ci-title-row,.ci-edit-row{display:flex;align-items:center;gap:8px}.ci-edit-row{width:100%}.ci-edit-row .chat-input{flex:1}.ci-title{font-size:var(--text-lg);font-weight:700;text-align:center}.ci-inline-edit{border:none;background:none;color:var(--muted);cursor:pointer;font-size:13px;padding:2px 4px;border-radius:6px}.ci-inline-edit:hover{background:var(--hover);color:var(--indigo)}.ci-sub{font-size:var(--text-sm);color:var(--muted)}.ci-section{padding:14px 16px;border-bottom:1px solid var(--hairline)}.ci-section:last-child{border-bottom:none}.ci-section-head{display:flex;align-items:center;justify-content:space-between}.ci-section-title{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.ci-desc{font-size:var(--text-sm);line-height:1.5;margin:8px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.ci-edit-col{display:grid;gap:8px;margin-top:8px}.ci-media{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:10px}.ci-media-item{display:block;aspect-ratio:1;border-radius:8px;overflow:hidden;background:var(--hover)}.ci-media-item img{width:100%;height:100%;object-fit:cover}.ci-add-btn{border:none;background:none;color:var(--indigo);font-weight:700;font-size:var(--text-xs);font-family:inherit;cursor:pointer}.ci-addbox{margin-top:10px;display:grid;gap:8px;border:1px solid var(--hairline);border-radius:10px;padding:8px}.ci-addlist{max-height:200px;overflow-y:auto;display:grid;gap:1px}.ci-members{display:grid;gap:2px;margin-top:8px}.ci-member{display:flex;align-items:center;gap:10px;padding:6px 4px}.ci-member-name{flex:1;min-width:0;font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ci-creator{font-size:10px;font-weight:700;color:var(--indigo);background:color-mix(in srgb,var(--indigo) 12%,transparent);border-radius:999px;padding:1px 8px}.ci-remove{border:none;background:none;color:var(--st-overdue);font-size:var(--text-xs);font-weight:600;font-family:inherit;cursor:pointer;padding:2px 6px;border-radius:6px}.ci-remove:hover{background:color-mix(in srgb,var(--st-overdue) 12%,transparent)}.chat-shell.has-info{grid-template-columns:300px minmax(0,1fr) 340px}.chat-info-col{min-height:0;display:flex;flex-direction:column;overflow:hidden;border-left:1px solid var(--hairline);background:var(--card);animation:infoIn .22s var(--ease)}.chat-info-col .chat-info{height:100%}@keyframes infoIn{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@media(max-width:980px){.chat-shell.has-info{grid-template-columns:300px minmax(0,1fr)}.chat-info-col{position:absolute;top:0;right:0;bottom:0;width:min(360px,100%);z-index:6;box-shadow:-14px 0 40px #00000029}}@media(max-width:720px){.chat-shell.has-info{grid-template-columns:84px minmax(0,1fr)}}.tabbar,.nav-scrim{display:none}@media(max-width:900px){.sidebar{position:fixed;top:0;left:0;bottom:0;width:min(284px,82vw);z-index:70;transform:translate(-100%);transition:transform .24s var(--ease)}.sidebar.drawer-open{transform:none;box-shadow:14px 0 44px #0f172a52}.nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;background:#0f172a73;animation:fadeIn .16s ease}.sidebar.collapsed{width:min(284px,82vw)}.sidebar.collapsed .brand-wm,.sidebar.collapsed .rail-user-body{display:flex}.sidebar.collapsed .nav-label{display:inline}.sidebar.collapsed .nav-section{display:block}.sidebar.collapsed .brand-band{justify-content:flex-start;padding:16px}.sidebar.collapsed .rail-user{justify-content:flex-start}.sidebar.collapsed .nav-item{justify-content:flex-start;padding:8px 10px}.sidebar.collapsed .nav-item.active{box-shadow:inset 3px 0 0 var(--brand)}.qu-sheet{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;max-height:86vh;border-radius:16px 16px 0 0;border-bottom:none;animation:sheetUp .22s var(--ease-spring)}.qu-row{grid-template-columns:1fr}.page,.page-airy{padding:18px 16px 90px}.app-footer{margin-bottom:calc(64px + env(safe-area-inset-bottom))}.topbar{padding:12px 16px;gap:10px}.topbar h1{font-size:18px}.topbar .user-chip{display:none}.topbar-right{gap:6px}.topbar-right .icon-btn{padding:6px 8px}.topbar-toggle{display:none}.tabbar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);background:var(--card);border-top:1px solid var(--hairline);padding:6px 8px calc(6px + env(safe-area-inset-bottom));z-index:50}.tab-item{display:grid;justify-items:center;gap:2px;border:none;background:transparent;color:var(--muted);font-size:10.5px;font-weight:600;padding:6px 0;border-radius:8px;min-height:44px}.tab-item.active{color:var(--indigo)}.tab-item .tab-icon{font-size:17px}.tab-plus{width:46px;height:46px;margin-top:-18px;justify-self:center;border-radius:50%;background:var(--indigo);color:#fff;border:none;font-size:22px;box-shadow:0 6px 16px color-mix(in srgb,var(--indigo) 45%,transparent)}}@media(max-width:640px){.gantt-head,.gantt-row{grid-template-columns:minmax(200px,1fr) var(--track-w, 1fr)}.an-bar-row{grid-template-columns:118px minmax(0,1fr) 34px;gap:8px}.dir-filter{width:100%}.set-row{flex-wrap:wrap}}.tab-sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0f172a6b;display:flex;align-items:flex-end;animation:fadeIn .15s ease}.tab-sheet{width:100%;max-height:82vh;overflow-y:auto;background:var(--card);border-radius:18px 18px 0 0;padding:8px 14px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -18px 44px #0f172a38;animation:sheetUp .22s var(--ease)}@keyframes sheetUp{0%{transform:translateY(14%);opacity:.6}to{transform:translateY(0);opacity:1}}.tab-sheet-grip{width:40px;height:4px;border-radius:999px;background:var(--hairline);margin:6px auto 12px}.tab-sheet-head{display:flex;align-items:center;gap:10px;padding:4px 6px 12px;border-bottom:1px solid var(--hairline-soft);margin-bottom:8px}.tab-sheet-group{display:grid;gap:2px;margin-bottom:8px}.tab-sheet-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);padding:8px 8px 2px}.tab-sheet-item{display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:10px;color:var(--ink-soft);font-size:var(--text-base);font-weight:500;text-decoration:none;border:none;background:none;width:100%;text-align:left;font-family:inherit;cursor:pointer}.tab-sheet-item.active{background:var(--brand-soft);color:var(--brand)}.tab-sheet-item.danger{color:var(--danger)}.tab-sheet-item svg{width:19px;height:19px;flex-shrink:0}.cmt-list{display:flex;flex-direction:column;gap:12px;margin:4px 0 12px}.cmt-item{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}.cmt-main{min-width:0}.cmt-meta{display:flex;align-items:center;gap:8px}.cmt-meta strong{font-size:var(--text-sm);color:var(--ink)}.cmt-meta .when{font-size:var(--text-xs);color:var(--muted)}.cmt-del{margin-left:auto;border:none;background:none;color:var(--muted);font-family:inherit;font-size:var(--text-xs);cursor:pointer;padding:2px 4px;border-radius:5px;opacity:0;transition:opacity .12s}.cmt-item:hover .cmt-del{opacity:1}.cmt-del:hover{color:var(--st-rejected, #d84c38);background:var(--hover)}.cmt-body{font-size:var(--text-sm);color:var(--ink-soft);line-height:1.5;white-space:pre-wrap;word-break:break-word;margin-top:1px}.cmt-mention{color:var(--brand);font-weight:600;background:var(--brand-soft);border-radius:4px;padding:0 2px}.cmt-compose{display:flex;flex-direction:column;gap:6px}.cmt-input-wrap{position:relative}.cmt-input{width:100%;resize:vertical;min-height:52px;border:1px solid var(--hairline);border-radius:10px;background:var(--card);color:var(--ink);font-family:inherit;font-size:var(--text-sm);padding:9px 11px}.cmt-input:focus{outline:none;border-color:var(--indigo);box-shadow:0 0 0 3px var(--brand-soft)}.cmt-suggest{position:absolute;left:0;right:0;bottom:calc(100% + 4px);z-index:5;background:var(--card);border:1px solid var(--hairline);border-radius:10px;box-shadow:var(--shadow, 0 8px 24px rgba(16,24,40,.12));overflow:hidden;max-height:216px;overflow-y:auto}.cmt-suggest-item{display:flex;align-items:center;gap:8px;width:100%;border:none;background:none;padding:7px 10px;cursor:pointer;font-family:inherit;text-align:left}.cmt-suggest-item:hover{background:var(--hover)}.cmt-suggest-name{font-size:var(--text-sm);color:var(--ink);font-weight:600}.cmt-suggest-item .muted{margin-left:auto;font-size:var(--text-xs);text-transform:capitalize}.cmt-compose-foot{display:flex;align-items:center;justify-content:space-between}.cmt-hint{font-size:var(--text-xs)}.att-list{display:flex;flex-direction:column;gap:8px;margin:4px 0 12px}.att-item{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;border:1px solid var(--hairline);border-radius:10px;padding:7px 9px;background:var(--card)}.att-preview{width:40px;height:40px;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--hairline-soft);flex-shrink:0}.att-preview img{width:100%;height:100%;object-fit:cover}.att-file-ico{color:var(--muted);display:flex}.att-main{min-width:0}.att-top{display:flex;align-items:center;gap:6px}.att-name{font-size:var(--text-sm);font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.att-name:hover{color:var(--indigo);text-decoration:underline}.att-badge{flex-shrink:0;font-size:10px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:var(--brand);background:var(--brand-soft);border-radius:999px;padding:1px 7px}.att-meta{font-size:var(--text-xs);color:var(--muted);margin-top:1px}.att-del{border:none;background:none;color:var(--muted);cursor:pointer;font-size:13px;padding:4px 6px;border-radius:6px;line-height:1}.att-del:hover{color:var(--brand-dark);background:var(--hover)}.att-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.att-kind{display:inline-flex;border:1px solid var(--hairline);border-radius:8px;overflow:hidden}.att-kind button{border:none;background:var(--card);color:var(--muted);font-family:inherit;font-size:var(--text-xs);font-weight:600;padding:6px 12px;cursor:pointer}.att-kind button.active{background:var(--brand-soft);color:var(--brand)}.att-kind button+button{border-left:1px solid var(--hairline)}.att-hint{font-size:var(--text-xs)}.tt-summary{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:2px 0 10px}.tt-total{font-size:var(--text-lg, 18px);font-weight:800;color:var(--ink)}.tt-mine{font-size:var(--text-sm)}.tt-note{flex-basis:100%;font-size:var(--text-xs)}.tt-controls{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.tt-start{display:inline-flex;align-items:center;gap:6px}.tt-timer{display:inline-flex;align-items:center;gap:7px}.tt-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:tt-pulse 1.2s ease-in-out infinite}@keyframes tt-pulse{0%,to{opacity:1}50%{opacity:.35}}.tt-form{display:grid;gap:10px;margin-bottom:10px}.tt-form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.tt-num input{text-align:left}.tt-list{display:flex;flex-direction:column}.tt-item{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:7px 0;border-top:1px solid var(--hairline-soft)}.tt-item:first-child{border-top:none}.tt-item-dur{font-size:var(--text-sm);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;min-width:48px}.tt-item-main{min-width:0;font-size:var(--text-sm);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tt-item-who{font-weight:600}.tt-item-date{font-size:var(--text-xs);font-variant-numeric:tabular-nums}.tt-del{border:none;background:none;color:var(--muted);cursor:pointer;font-size:12px;padding:2px 5px;border-radius:5px;line-height:1;opacity:0;transition:opacity .12s}.tt-item:hover .tt-del{opacity:1}.tt-del:hover{color:var(--brand-dark);background:var(--hover)}.chip-misc{color:var(--muted);background:color-mix(in srgb,var(--muted) 12%,transparent);font-weight:700;letter-spacing:.01em}.chip-misc:before{background:var(--muted)}.modal-wide{width:min(480px,calc(100vw - 32px));top:8vh;max-height:84vh;overflow-y:auto}.nt-seg{display:grid;grid-template-columns:1fr 1fr;gap:8px}.nt-seg button{display:flex;flex-direction:column;gap:2px;text-align:left;border:1px solid var(--hairline);border-radius:10px;background:var(--card);padding:10px 12px;cursor:pointer;font-family:inherit}.nt-seg button strong{font-size:var(--text-sm);color:var(--ink);font-weight:700}.nt-seg button .muted{font-size:var(--text-xs)}.nt-seg button.active{border-color:var(--indigo);background:var(--brand-soft);box-shadow:0 0 0 1px var(--indigo)}.reset-panel{display:grid;gap:10px;border:1px solid var(--hairline);border-radius:10px;background:var(--bg);padding:12px 14px}.reset-panel.done{border-color:color-mix(in srgb,var(--brand) 30%,var(--hairline));background:var(--brand-soft)}.reset-warn{margin:0;font-size:var(--text-sm);color:var(--ink-soft);line-height:1.45}.reset-done-title{margin:0;font-size:var(--text-sm);color:var(--ink)}.reset-pass-row{display:flex;align-items:center;gap:8px}.reset-pass{flex:1;font-family:ui-monospace,SF Mono,Cascadia Code,Menlo,monospace;font-size:var(--text-sm);font-weight:600;letter-spacing:.02em;background:var(--card);border:1px solid var(--hairline);border-radius:8px;padding:8px 10px;color:var(--ink);-webkit-user-select:all;user-select:all;word-break:break-all}.reset-note{margin:0;font-size:var(--text-xs);color:var(--muted)}.smtp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px}.email-log{display:flex;flex-direction:column}.email-log-row{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;padding:7px 0;border-top:1px solid var(--hairline-soft)}.email-log-row:first-child{border-top:none}.email-log-main{min-width:0;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-to{font-weight:600;color:var(--ink)}.email-err{color:var(--st-rejected)}.email-status{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 8px;min-width:54px;text-align:center}.email-sent{color:var(--st-approved);background:color-mix(in srgb,var(--st-approved) 14%,transparent)}.email-failed{color:var(--st-rejected);background:color-mix(in srgb,var(--st-rejected) 13%,transparent)}.email-skipped{color:var(--muted);background:color-mix(in srgb,var(--muted) 12%,transparent)}@media(max-width:640px){.smtp-grid{grid-template-columns:1fr}}.an-attention{display:flex;flex-direction:column;margin-top:8px}.an-att-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--hairline-soft)}.an-att-row:first-child{border-top:none}.an-att-name{font-size:var(--text-sm);font-weight:600;color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.an-att-who{font-size:var(--text-xs);flex-shrink:0}.health-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;min-width:0}.health{background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius);padding:12px 14px;display:grid;gap:1px;align-content:start;min-width:0}.health-l,.health-h{overflow-wrap:anywhere}.health-n{font-size:26px;font-weight:800;letter-spacing:-.5px;line-height:1.1;color:var(--ink)}.health-l{font-size:var(--text-xs);font-weight:650;color:var(--ink-soft)}.health-h{font-size:var(--text-micro);color:var(--faint)}.health.warn .health-n{color:var(--warning)}.health.bad .health-n{color:var(--danger)}.health.dim .health-n{color:var(--muted)}@media(max-width:860px){.health-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.req-row{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--hairline-soft)}.req-row:last-of-type{border-bottom:none}.req-main{flex:1;min-width:0;display:grid;gap:2px}.req-label{font-size:var(--text-sm);font-weight:650;color:var(--ink)}.req-reason{font-size:var(--text-xs);color:var(--text)}.req-note{font-size:var(--text-xs);color:var(--muted)}.req-state.pending{color:var(--warning);background:var(--warning-soft)}.req-state.approved{color:var(--success);background:var(--success-soft)}.req-state.rejected{color:var(--danger);background:var(--danger-soft)}.req-state.cancelled{color:var(--muted);background:var(--fill)}.req-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.req-form{margin-top:10px;display:grid;gap:10px}
