@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Outfit Fallback;src:local("Arial");ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.00%;size-adjust:99.82%}.__className_f052b8{font-family:Outfit,Outfit Fallback;font-style:normal}.__variable_f052b8{--font-outfit:"Outfit","Outfit Fallback"}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_cb1528{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_cb1528{--font-dmsans:"DM Sans","DM Sans Fallback"}:root{--bg:#f5f5f6;--surface:#ffffff;--surface-2:#f1f1f3;--hover:#f7f7f8;--ink:#111111;--ink-2:#45454d;--muted:#75757f;--line:#e6e6e9;--line-2:#d4d4d9;--accent:#111111;--accent-2:#000000;--accent-ink:#ffffff;--accent-soft:#efeff1;--side:#ffffff;--side-ink:#111111;--side-2:#5c5c66;--side-hover:#f3f3f5;--good:#047857;--good-bg:#e6f6ef;--warn:#a16207;--warn-bg:#fdf3dc;--crit:#c81e1e;--crit-bg:#fdecec;--info:#111111;--info-bg:#ececef;--s1:#111111;--s2:#c8c8ce;--grid:#efeff1;--shadow:0 1px 2px rgba(16,24,40,.04),0 2px 8px rgba(16,24,40,.04);--shadow-lg:0 12px 32px rgba(16,24,40,.12);--f-display:var(--font-outfit),"Avenir Next",system-ui,sans-serif;--f-body:var(--font-dmsans),system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light}*{box-sizing:border-box}body,html{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100%}.side{background:var(--side);color:var(--side-ink);border-right:1px solid var(--line);padding:20px 14px;display:flex;flex-direction:column;gap:14px;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{padding:4px 10px 10px}.brand img{width:132px;height:auto;display:block}.brand small{display:block;color:var(--side-2);font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-top:8px}.nav{display:flex;flex-direction:column;gap:1px}.nav-label{font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:14px 10px 6px}.nav button{all:unset;cursor:pointer;display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:7px;color:var(--side-2);font-weight:500}.nav button:hover{background:var(--side-hover);color:var(--side-ink)}.nav button.on{background:var(--side-ink);color:var(--side);font-weight:700}.nav button:focus-visible{outline:2px solid var(--side-ink)}.nav svg{width:17px;height:17px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nav .count{margin-left:auto;font-size:11px;background:var(--crit);color:#fff;border-radius:20px;padding:1px 7px;font-weight:700}.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding:12px 10px 0;border-top:1px solid var(--line)}.side-foot label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.side .seg{background:#1f1f1f}.side .seg button{color:var(--side-2)}.side .seg button.on{background:var(--side-ink);color:var(--side)}.seg{display:flex;background:var(--surface-2);border-radius:8px;padding:3px;gap:2px}.seg button{all:unset;cursor:pointer;flex:1 1;white-space:nowrap;text-align:center;font-size:12px;padding:5px 4px;border-radius:6px;color:var(--ink-2);font-weight:500}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-weight:600}.main{min-width:0;flex-direction:column}.main,.top{display:flex}.top{align-items:center;gap:12px;padding:12px 32px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:5}.top .menu-btn{display:none}.search{flex:1 1;max-width:460px;position:relative}.search input{width:100%;border:1px solid transparent;background:var(--surface-2);border-radius:10px;padding:9px 12px 9px 36px}.search input:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:2}.search-results{position:absolute;left:0;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);max-height:320px;overflow:auto;z-index:20}.search-results button{all:unset;cursor:pointer;display:flex;justify-content:space-between;gap:10px;width:100%;box-sizing:border-box;padding:9px 12px;border-bottom:1px solid var(--line)}.search-results button:hover{background:var(--surface-2)}.search-results small{color:var(--muted)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.icon-btn{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:36px;height:36px;display:grid;place-items:center;position:relative}.icon-btn svg{width:17px;height:17px;stroke:var(--ink-2);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-btn .dot{position:absolute;top:6px;right:7px;width:7px;height:7px;border-radius:50%;background:var(--ink)}.avatar{width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--surface);display:grid;place-items:center;font-weight:700;font-size:12px}.sample{background:var(--ink);color:var(--surface);font-size:12px;padding:6px 28px;display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line)}.page{padding:28px 32px 56px;display:flex;flex-direction:column;gap:20px;max-width:1360px;width:100%}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}h1{font-size:26px;letter-spacing:-.01em;text-wrap:balance}h1,h2{font-family:var(--f-display);font-weight:600;margin:0}h2{font-size:16px}.sub{color:var(--muted);margin:2px 0 0}.btn{border:1px solid var(--line-2);background:var(--surface);border-radius:9px;padding:8px 14px;font-weight:600;box-shadow:0 1px 1px rgba(16,24,40,.04);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn:hover{background:var(--hover);border-color:#c4c8d8}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 1px 2px rgba(0,0,0,.25)}.btn.primary:hover{background:#2a2a2a;border-color:#2a2a2a}.btn.sm{padding:4px 10px;font-size:12.5px}.btn:disabled{opacity:.5;cursor:not-allowed}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;min-width:0;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.panel-head p{margin:2px 0 0;color:var(--muted);font-size:12.5px}.grid{display:grid;grid-gap:16px;gap:16px}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-21{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:12px;gap:12px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px}.stat .k{font-size:12px;color:var(--muted);font-weight:500}.stat .v{font-family:var(--f-display);font-size:24px;font-weight:600;letter-spacing:-.01em}.stat .d{font-size:12px;color:var(--ink-2)}.up{color:var(--good)}.down,.up{font-weight:600}.down{color:var(--crit)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}th{text-align:left;font-size:11.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:11px 12px;background:#fafbfd}td,th{border-bottom:1px solid var(--line);white-space:nowrap}td{padding:12px;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr.click{cursor:pointer}tbody tr.click:hover td{background:var(--hover)}.num{text-align:right}td.wrap{white-space:normal;min-width:200px}.muted{color:var(--muted)}.pill,.strong{font-weight:600}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;padding:3px 9px;border-radius:20px;white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.p-good{background:var(--good-bg);color:var(--good)}.p-info{background:var(--info-bg);color:var(--info)}.p-warn{background:var(--warn-bg);color:var(--warn)}.p-crit{background:var(--crit-bg);color:var(--crit)}.p-neutral{color:var(--muted)}.p-neutral,.tag{background:var(--surface-2)}.tag{display:inline-block;font-size:11px;padding:2px 8px;border:1px solid var(--line);border-radius:6px;color:var(--ink-2);margin:1px 3px 1px 0;white-space:nowrap}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{border:1px solid var(--line-2);background:var(--surface);border-radius:20px;padding:4px 12px;font-size:12.5px;font-weight:500;color:var(--ink-2)}.chip.on{background:var(--ink);color:#fff;border-color:#cfcfd5}.field{display:flex;flex-direction:column;gap:4px;min-width:0}.field label{font-size:12px;color:var(--muted);font-weight:500}.field input,.field select,.field textarea,.inp{border:1px solid var(--line-2);background:var(--surface);border-radius:9px;padding:8px 11px;min-width:0}.field input:focus,.field select:focus,.field textarea:focus,.inp:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.chart{width:100%;position:relative}.chart svg{display:block;width:100%}.chart text{fill:var(--muted);font-size:11px;font-family:var(--f-body)}.c-grid{stroke:var(--grid);stroke-width:1}.c-base{stroke:var(--line-2);stroke-width:1}.c-s1{fill:var(--s1)}.c-s2{fill:var(--s2)}.c-line{fill:none;stroke:var(--s1);stroke-width:2}.c-area{fill:var(--s1);opacity:.08}.c-cross{stroke:var(--line-2);stroke-width:1}.c-dot{fill:var(--s1);stroke:var(--surface);stroke-width:2}.legend{display:flex;gap:16px;font-size:12px;color:var(--ink-2);flex-wrap:wrap}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}.hbars{display:flex;flex-direction:column;gap:9px}.hbar{display:grid;grid-template-columns:minmax(90px,40%) minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;font-size:13px}.hbar .l{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}.hbar .t{height:8px;background:var(--surface-2);border-radius:4px}.hbar .f{height:100%;background:var(--s1);border-radius:4px;min-width:3px}.hbar .v{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;min-width:64px;text-align:right}#tip{position:fixed;pointer-events:none;background:#1b1f33;color:var(--surface);border-radius:8px;padding:8px 10px;font-size:12px;z-index:60;min-width:140px;box-shadow:var(--shadow);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}#tip b{display:block;margin-bottom:3px}#tip .tr{display:flex;justify-content:space-between;gap:14px}#tip i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}.list{flex-direction:column}.li,.list{display:flex}.li{gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.li:last-child{border-bottom:0}.li .when{font-size:12px;color:var(--muted);min-width:72px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.li .what{flex:1 1;min-width:0}.li .what div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.li .what small{color:var(--muted)}.kind{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex:none;font-size:11px;font-weight:700}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);grid-gap:12px;gap:12px;overflow-x:auto;padding-bottom:6px}.col{background:#eceef5;border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:300px}.col.over{outline:2px dashed var(--accent);outline-offset:-2px}.col-head{display:flex;justify-content:space-between;align-items:baseline;padding:2px 4px 4px}.col-head b{font-size:13px}.col-head span{font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card{background:var(--surface);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);padding:10px 12px;display:flex;flex-direction:column;gap:6px;cursor:-webkit-grab;cursor:grab}.card:active{cursor:-webkit-grabbing;cursor:grabbing}.card .t{font-weight:600}.card .m{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:6px}.scrim{position:fixed;inset:0;background:rgba(10,14,20,.45);z-index:40;display:flex;justify-content:flex-end}.drawer{background:var(--bg);width:min(760px,100%);height:100%;overflow-y:auto;display:flex;flex-direction:column;box-shadow:-10px 0 40px rgba(0,0,0,.2)}.drawer-head{background:var(--surface);border-bottom:1px solid var(--line);padding:18px 22px;display:flex;gap:14px;align-items:flex-start;position:-webkit-sticky;position:sticky;top:0;z-index:2}.drawer-body{padding:20px 22px 40px;display:flex;flex-direction:column;gap:16px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto}.tabs button{all:unset;cursor:pointer;padding:9px 12px;font-weight:500;color:var(--ink-2);border-bottom:2px solid transparent;white-space:nowrap}.tabs button.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}.kv{display:grid;grid-template-columns:140px minmax(0,1fr);grid-gap:8px 14px;gap:8px 14px;font-size:13.5px}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.sheet{background:#fff;color:#141820;border-radius:6px;padding:28px;font-size:12.5px;box-shadow:var(--shadow);border:1px solid var(--line)}.sheet table th{background:#fff;color:#5b6272;border-bottom:1px solid #d9dde4}.sheet td{border-bottom:1px solid #eceef2;color:#141820}.sheet .hd{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:2px solid #141820;padding-bottom:14px;margin-bottom:14px}.sheet h3{font-family:var(--f-display);font-size:20px;margin:0}.sheet .tot{margin-left:auto;width:min(280px,100%);display:grid;grid-template-columns:1fr auto;grid-gap:4px 16px;gap:4px 16px;margin-top:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sheet .tot .g{font-weight:700;font-size:14px;border-top:1px solid #141820;padding-top:6px}.sheet .foot{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;margin-top:18px;padding-top:12px;border-top:1px solid #d9dde4;color:#4a5263}.qr{width:84px;height:84px;display:grid;grid-template-columns:repeat(9,1fr);grid-gap:1px;gap:1px;padding:4px;border:1px solid #d9dde4}.qr span{background:#141820}.qr span.o{background:transparent}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}.cal .dh{background:var(--surface-2);padding:6px 8px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.cal .d{background:var(--surface);min-height:96px;padding:6px;display:flex;flex-direction:column;gap:3px;min-width:0}.cal .d.x{background:var(--surface-2)}.cal .d .n{font-size:11.5px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal .d.today .n{background:var(--accent);color:var(--surface);font-weight:700;border-radius:4px;padding:0 5px;align-self:flex-start}.ev{font-size:11px;border-radius:5px;padding:2px 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:3px solid}.toast{color:var(--surface)!important;position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);background:#1b1f33;color:var(--bg);padding:10px 16px;border-radius:9px;z-index:80;font-weight:500;box-shadow:var(--shadow);max-width:calc(100% - 32px)}.bulkbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--accent-soft);border:1px solid #cfcfd5;border-radius:10px;padding:10px 14px}.empty{padding:40px;color:var(--muted)}.empty,.lock{text-align:center}.lock{display:flex;flex-direction:column;align-items:center;gap:8px;padding:60px 20px;color:var(--ink-2)}.err td{background:var(--surface-2)}.err td:first-child{box-shadow:inset 3px 0 0 var(--crit)}.err-msg{color:var(--crit);font-weight:600;font-size:12px;white-space:normal}.progress{height:6px;background:var(--surface-2);border-radius:4px;overflow:hidden;min-width:80px}.progress i{display:block;height:100%;background:var(--accent);border-radius:4px}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow)}.filters .inp{max-width:100%}.flabel{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:2px}.fsum{margin-left:auto;font-size:12.5px;color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.eyebrow{margin:0 0 4px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}.quick .btn{padding:7px 12px}.hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px;color:var(--ink)}.hcell{padding:20px 22px 18px;display:flex;flex-direction:column;gap:6px;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.htop{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px}.hk{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hchip{flex:none;font-size:11.5px;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:2px 9px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.hchip,.hv{font-weight:600}.hv{font-family:var(--f-display);font-size:34px;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.big,.hv{letter-spacing:-.02em}.big{font-size:44px;line-height:1.05}.big,.mid{font-family:var(--f-display);font-weight:600}.mid{font-size:28px;letter-spacing:-.01em;line-height:1.1}.hs{font-size:12.5px;color:var(--ink-2)}.hviz{margin-top:auto;padding-top:14px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;min-height:84px}.hviz .spark{height:44px;margin-top:0}.hviz .stack{margin-top:0}.hfoot{display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hprog{position:relative;height:8px;background:var(--surface-2)}.hprog,.hprog i{border-radius:4px}.hprog i{display:block;height:100%;background:var(--ink)}.hprog b{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:var(--muted);border-radius:1px}.hage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.hage div{display:flex;flex-direction:column;gap:2px;min-width:0}.hage span{font-size:11.5px;color:var(--muted);white-space:nowrap}.hage b{font-size:13px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.dotk,.hage i,.hleg i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;vertical-align:-1px}.hleg{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:11.5px;color:#bdbdbd;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stack{display:flex;gap:2px;height:12px;border-radius:4px;overflow:hidden;margin-top:6px}.stack span{min-width:3px}.seg-1{background:#111111}.seg-2{background:#55555c}.seg-3{background:#9d9da5}.seg-4{background:#dcdce0}.hleg .seg-1.on-dark .seg-2,.hleg .seg-2.on-dark .seg-3,.hleg .seg-3.on-dark .seg-4,.hleg .seg-4
.spark,.on-dark .seg-1{display:block;width:100%;height:36px;margin-top:auto}.sp-l{fill:none;stroke:var(--accent);stroke-width:1.75}.sp-a{fill:var(--accent);opacity:.08}.spark.on-dark .sp-l{stroke:var(--surface)}.spark.on-dark .sp-a{fill:var(--surface);opacity:.1}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.kpi-cap{grid-column:1/-1;margin:0;font-size:12px;color:var(--muted);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px 12px;display:flex;flex-direction:column;gap:3px;min-width:0}.kpi .k{font-size:12.5px;color:var(--ink-2);font-weight:600}.kpi .v{font-family:var(--f-display);font-size:24px;font-weight:600;letter-spacing:-.01em}.kpi .d{font-size:12px;color:var(--muted)}.kpi .spark{margin-top:8px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.chart-foot{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.chart-foot div{display:flex;flex-direction:column;gap:2px;min-width:0}.chart-foot span{font-size:11.5px;color:var(--muted)}.chart-foot b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.atts{display:flex;flex-direction:column}.att{all:unset;cursor:pointer;display:flex;align-items:center;gap:12px;padding:11px 6px;border-bottom:1px solid var(--line);border-radius:6px}.att:last-child{border-bottom:0}.att:hover{background:var(--hover)}.att:focus-visible{outline:2px solid var(--accent)}.mark{width:30px;height:30px;border-radius:9px;flex:none;display:grid;place-items:center;font-weight:900;font-size:13px}.m-crit{background:var(--crit-bg);color:var(--crit)}.m-warn{background:var(--warn-bg);color:var(--warn)}.m-info{background:var(--info-bg);color:var(--info)}.at{flex:1 1;min-width:0;display:flex;flex-direction:column}.at b{font-weight:600}.at small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.aa,.at small{white-space:nowrap}.aa{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chev{color:var(--muted);font-size:18px}.li.slim{padding:7px 0}.tn{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rowbtn{all:unset;cursor:pointer;display:flex;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.rowbtn:hover .what div{text-decoration:underline;text-underline-offset:3px}.rank{width:24px;height:24px;border-radius:50%;background:var(--accent-soft);color:var(--ink);display:grid;place-items:center;font-size:11px;font-weight:700;flex:none}.agenda{display:flex;flex-direction:column}.aday{display:grid;grid-template-columns:64px minmax(0,1fr);grid-gap:14px;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.aday:last-child{border-bottom:0}.adate{display:flex;flex-direction:column;align-items:flex-start}.adate b{font-family:var(--f-display);font-size:22px;line-height:1}.adate span{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:3px}.aitems{display:flex;flex-direction:column;gap:4px;min-width:0}.aitem{all:unset;cursor:pointer;display:flex;align-items:baseline;gap:10px;padding:4px 6px;border-radius:6px;min-width:0}.aitem:hover{background:var(--hover)}.ak{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;min-width:112px;color:var(--ink-2)}.atx{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atx small{color:var(--muted)}.funnel{display:flex;flex-direction:column;gap:10px}.fr{display:grid;grid-template-columns:104px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;font-size:13px}.fl{color:var(--ink-2)}.ft{height:10px;background:var(--surface-2)}.ft,.ft span{border-radius:0 4px 4px 0}.ft span{display:block;height:100%;background:var(--accent);min-width:2px}.fv{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--muted);min-width:78px;text-align:right}.fv b{color:var(--ink)}@media (max-width:1100px){.hero{grid-template-columns:minmax(0,1fr)}.hcell+.hcell{border-left:0}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.big{font-size:36px}.chart-foot{grid-template-columns:repeat(2,minmax(0,1fr))}.ak{min-width:0}.aitem{flex-wrap:wrap}.quick{width:100%}.quick .btn{flex:1 1;justify-content:center}}.eform{display:flex;flex-direction:column;gap:16px}.egrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 14px;gap:12px 14px}.egrid .wide{grid-column:1/-1}.field .req{color:var(--crit)}.field .hint{color:var(--muted);font-size:11.5px}.field.chk{justify-content:flex-end}.flab{font-size:12px;color:var(--muted);font-weight:500}.chip input{margin:0 4px 0 0;vertical-align:-1px}.ferr{margin:0;padding:10px 12px;background:var(--crit-bg);color:var(--crit);border:1px solid #f5c2c2;border-radius:9px;font-weight:600}.factions{border-top:1px solid var(--line);padding-top:14px}.btn.danger{margin-left:auto;color:var(--crit);border-color:#f0b4b4}.btn.danger:hover{background:var(--crit-bg)}.litable td{padding:6px 8px}.litable .li-d{width:100%;min-width:220px}.litable .li-a{width:120px;text-align:right}.litot{display:grid;grid-template-columns:1fr auto;grid-gap:4px 16px;gap:4px 16px;margin:12px 0 0 auto;width:min(300px,100%);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.litot .g{font-size:15px}@media (max-width:560px){.egrid{grid-template-columns:minmax(0,1fr)}}details summary{cursor:pointer;color:var(--ink);text-decoration:underline;text-underline-offset:3px;font-weight:500;font-size:12.5px}@media (max-width:1100px){.g-21,.g-3{grid-template-columns:minmax(0,1fr)}}@media (max-width:860px){.app{grid-template-columns:minmax(0,1fr)}.side{position:fixed;left:0;top:0;bottom:0;width:260px;z-index:50;transform:translateX(-100%);transition:transform .2s;height:100%}.side.open{transform:none;box-shadow:0 0 40px rgba(0,0,0,.3)}.top .menu-btn{display:grid}.top{padding:10px 16px}.page{padding:18px 16px 40px}.sample{padding:6px 16px}.g-2{grid-template-columns:minmax(0,1fr)}.kv{grid-template-columns:110px minmax(0,1fr)}.avatar{display:none}}@media (prefers-reduced-motion:reduce){.side{transition:none}}.src{font-size:11px;color:var(--muted)}a.site{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2);text-underline-offset:3px}a.site:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}body,html{margin:0}body{font-size:14px}a{color:inherit}.nav a{all:unset;cursor:pointer;display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:9px;color:var(--side-2);font-weight:500}.nav a:hover{background:var(--side-hover);color:var(--side-ink)}.nav a.on{background:var(--accent);color:#fff;font-weight:600}.nav a:focus-visible{outline:2px solid var(--accent)}.nav a svg{width:17px;height:17px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}a.btn{text-decoration:none;color:inherit}a.btn.primary{color:var(--accent-ink)}tr.click td a.rowlink{color:inherit;text-decoration:none;display:block}.login{position:relative;isolation:isolate;overflow:hidden;min-height:100vh;display:grid;place-items:center;padding:32px 16px;background:#0b0b0c}.login:before{z-index:-2;background:radial-gradient(50% 45% at 50% 0,rgba(255,255,255,.14),transparent 70%),radial-gradient(40% 40% at 85% 100%,rgba(255,255,255,.06),transparent 70%)}.login:after,.login:before{content:"";position:absolute;inset:0}.login:after{z-index:-1;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 0);background-size:22px 22px;-webkit-mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent);mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent)}.login-wrap{width:min(400px,100%);display:flex;flex-direction:column;align-items:center;gap:28px;animation:rise .5s ease-out both}.login-logo{width:168px;height:auto;display:block}.login>.card{width:min(400px,100%)}.login .card{width:100%;background:var(--surface);border-radius:20px;padding:32px 30px 30px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 80px rgba(0,0,0,.55);display:flex;flex-direction:column;gap:16px;cursor:default}.login-head{text-align:center;margin-bottom:4px}.login-head h1{font-size:24px}.login-head p{margin:6px 0 0;color:var(--muted)}.login .field input{height:44px;padding:0 13px;font-size:14.5px}.login .field label{font-weight:600;color:var(--ink-2)}.pw{position:relative}.pw input{width:100%;padding-right:64px!important}.pw button{all:unset;cursor:pointer;position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:600;color:var(--ink-2);padding:6px 9px;border-radius:7px}.pw button:hover{background:var(--surface-2)}.pw button:focus-visible{outline:2px solid var(--ink)}.login-btn{height:46px;justify-content:center;font-size:15px;margin-top:4px;border-radius:11px}.login-btn span{transition:transform .15s}.login-btn:hover span{transform:translateX(3px)}.login-foot{margin:0;font-size:12px;color:rgba(255,255,255,.45)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.login-wrap{animation:none}.login-btn span{transition:none}}.page-narrow{max-width:880px}.back{font-size:13px;color:var(--muted);text-decoration:none}.back:hover{color:var(--ink)}.empty-state{padding:36px 20px;text-align:center;color:var(--ink-2);display:flex;flex-direction:column;gap:10px;align-items:center}.empty-state b{font-size:15px;color:var(--ink)}.pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;font-size:13px;color:var(--muted)}.drawer-body .sheet{max-width:900px}.side-foot form button{all:unset;cursor:pointer;color:var(--muted);font-size:12px}.side-foot form button:hover{color:var(--crit)}.mobile-top{display:none}@media (max-width:860px){.mobile-top{display:flex}}@media print{.no-print,.side,.top{display:none!important}.app{display:block}.page{padding:0;max-width:none}body{background:#fff}.sheet{box-shadow:none;border:0;padding:0}}.skel{display:flex;flex-direction:column;gap:16px}.skel-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px}.skel-box,.skel-line{background:linear-gradient(90deg,var(--surface-2) 25%,var(--accent-soft) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:skel 1.2s ease-in-out infinite;border-radius:12px}.skel-line{border-radius:6px}@keyframes skel{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skel-box,.skel-line{animation:none}}.seg a{all:unset;cursor:pointer;white-space:nowrap;font-size:12px;padding:5px 10px;border-radius:6px;color:var(--ink-2);font-weight:500}.seg a.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-weight:600}.mstats{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));grid-gap:4px 20px;gap:4px 20px;align-items:start;padding:12px 14px;margin:0 0 16px;background:var(--surface-2);border-radius:11px}.mstats .mcap{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:2px;white-space:nowrap}.mstats div{display:flex;flex-direction:column;gap:1px;min-width:0}.mstats div>span{font-size:12px;color:var(--muted)}.mstats b{font-family:var(--f-display);font-size:18px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mstats .d{font-size:11.5px}.mstats .d,.note{color:var(--muted)}.note{margin:12px 0 0;font-size:12.5px}.note a{color:var(--ink);font-weight:600}.focus .att{padding:10px 8px;margin:0 -8px}.up-head{display:flex;justify-content:space-between;align-items:baseline;margin:18px 0 6px;padding-top:14px;border-top:1px solid var(--line)}.up-head b{font-size:13px}.up-head span{font-size:12px;color:var(--muted)}.ups{display:flex;flex-direction:column}.up{all:unset;cursor:pointer;display:flex;align-items:center;gap:12px;padding:8px;margin:0 -8px;border-radius:10px}.up:hover{background:var(--hover)}.up:focus-visible{outline:2px solid var(--accent)}.up-d{width:42px;flex:none;display:flex;flex-direction:column;align-items:center;padding:4px 0;border-radius:9px;background:var(--accent-soft);color:var(--ink)}.up-d b{font-family:var(--f-display);font-size:16px;line-height:1.1}.up-d small{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}@media (max-width:700px){.mstats{grid-template-columns:repeat(2,minmax(0,1fr))}.mstats .mcap{grid-column:1/-1}}.mstats .d b{font-family:var(--f-body);font-size:11.5px;font-weight:700}.li .tn,.rowbtn .tn{margin-left:auto;white-space:nowrap}.rowbtn .what div{white-space:normal;overflow:visible}@media (max-width:1100px){.focus{order:-1}}.ftoggle,.tabbar{display:none}tr.click{position:relative}tr.click .rowlink:after{content:"";position:absolute;inset:0}tr.click a.site,tr.click button{position:relative;z-index:1}@media (max-width:860px){.tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px))}.tabbar a,.tabbar button{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10.5px;font-weight:600;color:var(--muted);padding:4px 0;border-radius:10px;-webkit-tap-highlight-color:transparent}.tabbar .ti{position:relative;display:grid;place-items:center;width:44px;height:28px;border-radius:14px}.tabbar svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tabbar .on{color:var(--ink)}.tabbar .on .ti{background:var(--ink);color:#fff}.tabbar .ti i{position:absolute;top:-3px;right:2px;font-style:normal;font-size:9.5px;font-weight:700;background:var(--crit);color:#fff;border-radius:9px;padding:0 5px;line-height:15px;border:2px solid #fff}.tabbar :focus-visible{outline:2px solid var(--ink)}.page{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.side{padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.page-head{align-items:center}.page-head h1{font-size:22px}.page-head .sub{font-size:13px}.filters{padding:10px;gap:8px}.filters .flabel{display:none}.filters input[type=search]{flex:1 1;min-width:0!important}.ftoggle{display:inline-flex;align-items:center;gap:6px;order:1;border:1px solid var(--line-2);background:var(--surface);border-radius:9px;padding:0 12px;height:38px;font-weight:600;font-size:13px}.ftoggle svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}.ftoggle span{background:var(--ink);color:#fff;border-radius:9px;font-size:11px;padding:0 6px;line-height:17px}.filters input[type=search]{order:0;height:38px}.filters>:not(input[type=search]):not(.ftoggle):not(.fsum){order:2}.filters:not(.open)>:not(input[type=search]):not(.ftoggle):not(.fsum){display:none}.filters.open>.inp:not([type=search]),.filters.open>select{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 4px);min-width:0;max-width:none}.filters .fsum{order:3;flex-basis:100%;margin:0;font-size:12px;color:var(--muted)}.chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:0 16px 2px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:13px 14px}.stat .v{font-size:20px}.panel{padding:16px}}@media (max-width:700px){.cardable{border:0;background:none;box-shadow:none;overflow:visible}.cardable thead{display:none}.cardable table,.cardable tbody{display:block}.cardable tbody{gap:10px}.cardable tbody,.cardable tr{display:flex;flex-direction:column}.cardable tr{gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow)}.cardable tr.click:active{background:var(--hover)}.cardable td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0;border:0;white-space:normal;text-align:right;min-width:0;font-size:13.5px}.cardable td:before{content:attr(data-label);flex:none;color:var(--muted);font-size:12px;font-weight:500;text-align:left}.cardable td:first-child{font-size:15px;font-weight:600;text-align:left;padding-bottom:6px;margin-bottom:2px;border-bottom:1px solid var(--line)}.cardable td:empty,.cardable td:first-child:before,.cardable td[data-label=""]:before,.cardable td[data-label=""]:not(:first-child):empty{display:none}.cardable td.wrap{min-width:0}.cardable tbody tr.click:hover td{background:none}.cardable td.nil:not(:first-child){display:none}.cardable td{overflow-wrap:anywhere}.cardable td>*{min-width:0}}@media (max-width:700px){.cardable td:has(>div):not(:first-child){display:grid;grid-template-columns:auto minmax(0,1fr);grid-column-gap:12px;column-gap:12px;justify-items:end;align-items:start}.cardable td:has(>div):not(:first-child):before{grid-row:span 2;justify-self:start}}@media (max-width:700px){.cardable td:has(>div):not(:first-child){row-gap:1px}.cardable td:not(:first-child){justify-content:flex-end;flex-wrap:wrap;column-gap:6px}.cardable td:not(:first-child):before{margin-right:auto;padding-right:12px}}.viewas{display:flex;flex-direction:column;gap:4px;padding-bottom:10px;margin-bottom:4px;border-bottom:1px solid var(--line)}.viewas label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.viewas select{border:1px solid var(--line-2);border-radius:8px;padding:6px 8px;background:var(--surface);font-size:13px}.preview-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--ink);color:#fff;padding:8px 32px;font-size:13px}.preview-bar button{all:unset;cursor:pointer;margin-left:auto;font-weight:600;text-decoration:underline;text-underline-offset:3px}.top-title{font-family:var(--f-display);font-weight:600;font-size:15px}.tabbar.few{grid-template-columns:repeat(4,1fr)}@media (max-width:860px){.preview-bar{padding:8px 16px}}.soon{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--ink-2)}.fok{margin:0;padding:10px 12px;background:var(--good-bg);color:var(--good);border:1px solid #bfe6d3;border-radius:9px;font-weight:600}.login-ops{display:flex;flex-direction:column;gap:10px}.login-ops .row{flex-wrap:nowrap}.login-ops .inp{flex:1 1;min-width:0}.chip input[type=radio]{margin:0 6px 0 0;vertical-align:-1px;accent-color:var(--ink)}.chip.on input[type=radio]{accent-color:#fff}.late{color:var(--crit);font-weight:600}.day{display:flex;flex-direction:column;gap:16px}.task-li{gap:10px}.task-li .tl{font-weight:600;text-decoration:none;color:var(--ink)}.task-li .tl:hover{text-decoration:underline;text-underline-offset:3px}.task-li .what small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-sel{padding:5px 8px;font-size:12.5px;font-weight:600;border-radius:8px;max-width:150px}.status-sel.s-done{background:var(--good-bg);color:var(--good);border-color:#bfe6d3}.status-sel.s-in_progress{background:var(--info-bg)}.status-sel.s-client_review,.status-sel.s-in_review{background:var(--warn-bg);color:var(--warn);border-color:#f1dca6}.card .m .late{font-size:12px}.task-cal .d{min-height:110px}.task-cal .ev{text-decoration:none;color:var(--ink);background:var(--surface-2);border-left-color:var(--muted)}.task-cal .ev.st-in_progress{border-left-color:var(--ink)}.task-cal .ev.st-done{color:var(--muted);text-decoration:line-through;border-left-color:var(--good)}.task-cal .ev.late{background:var(--crit-bg);border-left-color:var(--crit);color:var(--crit)}.task-page .desc{white-space:pre-wrap;margin:14px 0 0;padding-top:14px;border-top:1px solid var(--line);color:var(--ink-2)}.checklist ul,.links,.todos ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.checklist li,.todos li{display:flex;align-items:center;gap:8px;padding:7px 4px;border-bottom:1px solid var(--line);border-radius:6px}.checklist li:last-child,.todos li:last-child{border-bottom:0}.checklist li label,.todos li label{flex:1 1;min-width:0;display:flex;gap:8px;align-items:flex-start;cursor:pointer;overflow-wrap:anywhere}.checklist li input,.todos li input{margin-top:3px;accent-color:var(--ink);width:16px;height:16px;flex:none}.checklist li.done label,.todos li.done label{color:var(--muted);text-decoration:line-through}.checklist li button,.todos li button,.xbtn{all:unset;cursor:pointer;color:var(--muted);font-size:16px;line-height:1;padding:2px 6px;border-radius:6px}.checklist li button:hover,.todos li button:hover,.xbtn:hover{background:var(--surface-2);color:var(--crit)}.todos li button:focus-visible,.xbtn:focus-visible{outline:2px solid var(--ink)}.grip{color:var(--line-2);cursor:-webkit-grab;cursor:grab;font-size:11px;letter-spacing:-2px;width:10px}.todos li.dragging{opacity:.4}.todo-add{display:flex;gap:8px;margin-bottom:8px}.todo-add .inp:first-child{flex:1 1;min-width:0}.checklist .progress{margin-bottom:8px}.checklist .todo-add{margin:10px 0 0}.links li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid var(--line)}.link-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.link-form .inp:first-child{flex:2 1 220px}.link-form .inp:nth-child(2){flex:1 1 140px}.comments{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.comment{background:var(--surface-2);border-radius:11px;padding:10px 12px}.comment p{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.mention{background:var(--ink);color:#fff;border-radius:5px;padding:0 4px;font-weight:600}.comment-form{display:flex;flex-direction:column;gap:8px}.comment-form textarea{width:100%;resize:vertical}@media (max-width:700px){.task-li{flex-wrap:wrap}.task-li .what{flex-basis:100%}.task-li .status-sel{margin-left:auto}.todo-add input[type=date]{width:130px}}.timer{position:relative;margin-left:auto;display:flex;align-items:center;gap:6px}.timer-start{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:#fff;border-radius:999px;padding:8px 14px;font-weight:600;font-size:13px}.timer-start:disabled{opacity:.5;cursor:not-allowed}.timer-start .dot{width:8px;height:8px;border-radius:50%;background:#fff}.timer.on{background:var(--ink);color:#fff;border-radius:999px;padding:4px 4px 4px 12px}.timer-label{all:unset;cursor:pointer;display:flex;align-items:center;gap:8px;min-width:0;max-width:280px}.timer-label .dot{width:8px;height:8px;border-radius:50%;background:#ef4444;animation:blink 1.4s ease-in-out infinite;flex:none}.timer.paused .timer-label .dot{background:#f59e0b;animation:none}.timer-label b{font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tdesc{font-size:12.5px;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tbtn{all:unset;cursor:pointer;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:rgba(255,255,255,.14)}.tbtn:hover{background:rgba(255,255,255,.26)}.tbtn.stop{background:#fff;color:var(--ink)}.timer :focus-visible{outline:2px solid #fff;outline-offset:2px}.timer-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:min(340px,calc(100vw - 32px));background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);padding:14px;display:flex;flex-direction:column;gap:9px}.timer-pop .inp{width:100%}@keyframes blink{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.timer-label .dot{animation:none}}@media (max-width:860px){.tdesc{display:none}.timer-start{padding:8px 12px}.top .search{min-width:0}}.entries{display:flex;flex-direction:column}.entry{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.entry:last-child{border-bottom:0}.entry .what{flex:1 1;min-width:0}.entry .what small{display:block;color:var(--muted)}.entry.review{background:var(--crit-bg);margin:0 -10px;padding:10px;border-radius:10px}.ewhen{font-size:12.5px;color:var(--muted);min-width:86px}.ehm{min-width:44px;text-align:right}.entry.editing{display:block;background:var(--surface-2);margin:6px -10px;padding:12px;border-radius:12px}.entry-form{display:flex;flex-direction:column;gap:12px}.entry-form .seg button{padding:6px 10px}.grid-wrap{overflow-x:auto}.wgrid td,.wgrid th{padding:8px 6px}.wgrid td:first-child{min-width:200px}.wgrid .cell{width:64px;text-align:right;border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:var(--surface)}.wgrid .cell:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px var(--accent-soft)}.wgrid .cell:disabled{background:var(--surface-2)}.wgrid tfoot td{border-top:2px solid var(--line);border-bottom:0}@media (max-width:700px){.entry{flex-wrap:wrap}.entry .what{flex-basis:calc(100% - 100px)}.ewhen{min-width:0}}.stat .of{font-size:13px;color:var(--muted);font-weight:500}.stat .progress{margin-top:6px}.hours{font-size:12.5px;color:var(--ink-2);white-space:nowrap}.wbars{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:8px;gap:8px;align-items:end;height:170px}.wbar{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}.wcol{flex:1 1;max-width:34px;background:var(--surface-2);border-radius:6px;overflow:hidden}.wcol,.wcol .nb{width:100%;display:flex;align-items:flex-end}.wcol .nb{background:#c8c8ce;border-radius:6px 6px 0 0;min-height:0}.wcol .b{display:block;width:100%;background:var(--ink)}.wv{font-size:11px;color:var(--ink-2);min-height:14px}.wl{font-size:11.5px;color:var(--muted)}.wbar.today .wl{color:var(--ink);font-weight:700}@media (max-width:700px){.hours{white-space:normal;flex-basis:100%;order:3}}.hbar .f,.li .what small{display:block}.meters{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:12px;gap:12px}.meter{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink)}.meter:hover{border-color:var(--line-2)}.mname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.mbig{font-family:var(--f-display);font-size:30px;font-weight:600;line-height:1.1}.mbig small{font-size:14px;color:var(--muted)}.mtrack{position:relative;height:12px;background:var(--surface-2);border-radius:6px;margin:8px 0 4px}.mtrack .mproj{background:repeating-linear-gradient(135deg,#d4d4d9 0 4px,transparent 4px 8px)}.mtrack .mfill,.mtrack .mproj{position:absolute;left:0;top:0;bottom:0;border-radius:6px}.mtrack .mfill{background:var(--ink);z-index:1}.mtrack b{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:var(--muted);z-index:2}.mtrack b.mmax{background:var(--crit)}.mfoot{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted);flex-wrap:wrap}.malert{color:var(--warn);font-weight:600;font-size:12.5px}tr.flag td:first-child{box-shadow:inset 3px 0 0 var(--crit)}.allocs{display:flex;flex-direction:column;gap:12px}.allocs table{width:100%}.allocs td,.allocs th{padding:8px 6px}.allocs .cell{width:80px;text-align:right;border:1px solid var(--line);border-radius:8px;padding:6px 8px}.days{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));grid-gap:6px;gap:6px}.days div{background:var(--surface-2);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;font-size:12px}.days span{color:var(--muted)}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:8px;gap:8px;margin-bottom:14px}.split div{background:var(--surface-2);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.split span{font-size:11.5px;color:var(--muted)}.alertbar{display:flex;gap:6px 10px;flex-wrap:wrap;align-items:center;background:var(--crit-bg);border-color:#f3c4c4;color:var(--crit);padding:12px 16px}.alertbar a{color:var(--crit);font-weight:600;text-underline-offset:3px}.util{display:flex;flex-direction:column;gap:10px}.urow{display:grid;grid-template-columns:minmax(80px,120px) minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;font-size:13px}.ul{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}.ul,.ut{overflow:hidden}.ut{position:relative;height:12px;background:var(--surface-2)}.ut,.ut i{border-radius:6px}.ut i{position:absolute;left:0;top:0;bottom:0}.ut .ua{background:#c8c8ce}.ut .ub{background:var(--ink)}.uv{min-width:120px;text-align:right}.uv small{color:var(--muted)}.heat-wrap{overflow-x:auto}.heat{border-collapse:separate;border-spacing:3px;width:100%;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.heat th{font-size:10.5px;font-weight:600;color:var(--muted);padding:0 2px;text-align:center;border:0;background:none;text-transform:none;letter-spacing:0}.heat thead th span{display:block;font-size:9.5px;font-weight:500}.heat thead th.we{opacity:.5}.heat tbody th{text-align:left;font-size:12.5px;color:var(--ink-2);padding-right:8px;white-space:nowrap}.heat td{min-width:24px;height:26px;padding:0;text-align:center;font-size:10px;border-radius:5px;border:0;background:var(--surface-2);color:var(--ink)}.heat td.we{background:#fafafb}.heat td.h1{background:#e3e3e7}.heat td.h2{background:#b9b9c0}.heat td.h3{background:#6b6b74;color:#fff}.heat td.h4{background:var(--ink);color:#fff}.heat td.gap{background:var(--crit-bg);box-shadow:inset 0 0 0 1px #f3c4c4}.heat td.now{outline:2px solid var(--ink);outline-offset:-2px}.heat td.num{background:none;font-size:12px;min-width:56px;text-align:right}.hk{border-radius:3px}.hk.h1{background:#e3e3e7}.hk.h2{background:#b9b9c0}.hk.h3{background:#6b6b74}.hk.h4{background:var(--ink)}.hk.gapk{background:var(--crit-bg);box-shadow:inset 0 0 0 1px #f3c4c4}.finance{border-color:var(--line-2)}.weekbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 16px;box-shadow:var(--shadow)}.weekbar .what{flex:1 1;min-width:200px;display:flex;flex-direction:column}.weekbar small{color:var(--muted)}.weekbar.ws-submitted{border-color:#c9cbd3;background:var(--info-bg)}.weekbar.ws-approved{border-color:#bfe6d3;background:var(--good-bg)}.weekbar.ws-approved b{color:var(--good)}.weekbar.ws-rejected{border-color:#f3c4c4;background:var(--crit-bg)}.weekbar.ws-rejected b{color:var(--crit)}.approvals{gap:12px}.appr,.approvals{display:flex;flex-direction:column}.appr{gap:8px}.appr .weekbar{box-shadow:none}.reminder{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:12px 16px;border-radius:14px;text-decoration:none;font-size:13.5px;border:1px solid}.reminder b{margin-left:auto}.reminder.r-warn{background:var(--warn-bg);color:var(--warn);border-color:#f1dca6}.reminder.r-crit{background:var(--crit-bg);color:var(--crit);border-color:#f3c4c4}.reminder.r-info{background:var(--surface);color:var(--ink);border-color:var(--line-2);box-shadow:var(--shadow)}.sumrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:10px;gap:10px;margin:0 0 16px}.sumrow div{background:#f5f5f6;border-radius:8px;padding:8px 10px;display:flex;flex-direction:column}.sumrow span{font-size:11px;color:#5b6272}.sheet td.wrap{white-space:normal;min-width:180px}@media print{.report .table-wrap{overflow:visible}.report table{font-size:11px}.panel.report{box-shadow:none;border:0;padding:0}}.import-form{display:flex;flex-direction:column;gap:12px}.import-form input[type=file]{padding:10px;border:1px dashed var(--line-2);border-radius:10px;background:var(--surface-2)}.daily-form textarea{width:100%;resize:vertical}.mgr-note{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line-2);border-left:4px solid var(--ink);border-radius:12px;padding:12px 16px}.reports{display:flex;flex-direction:column;gap:14px}.report-card h2{font-size:17px}.report-card .kv{margin:12px 0}.report-card .pre{white-space:pre-wrap}.feedback{display:flex;gap:8px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);padding-top:12px}.react{all:unset;cursor:pointer;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line);font-size:16px}.react.on{background:var(--ink);border-color:var(--ink)}.react:focus-visible{outline:2px solid var(--ink)}.donut{display:grid;grid-template-columns:130px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:center}.donut svg{width:130px;height:130px}.donut .dv{font-size:13px;font-weight:700;fill:var(--ink);font-family:var(--f-display)}.donut ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:12.5px}.donut li{display:grid;grid-template-columns:10px minmax(0,1fr) auto 38px;grid-gap:8px;gap:8px;align-items:center}.donut li i{width:10px;height:10px;border-radius:3px}.donut li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut li small{color:var(--muted);text-align:right}.cover{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px 24px}.cover img{width:150px;height:auto;display:block;margin-bottom:10px}.cover h1{font-size:26px}.cover .muted{margin:4px 0 0}.stars{font-size:20px;letter-spacing:2px}.stars .off{color:var(--line-2)}.mom{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:10px;gap:10px}.mom div{background:var(--surface-2);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.mom span{font-size:12px;color:var(--muted)}@media print{.cover{border:0;padding:0 0 12px;border-bottom:2px solid #111;border-radius:0}.panel{page-break-inside:avoid;break-inside:avoid;box-shadow:none}.page{gap:12px}}.bell,.bell .icon-btn{position:relative}.bell .badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:9px;background:var(--crit);color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;padding:0 4px;border:2px solid var(--surface)}.bell-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:45;width:min(380px,calc(100vw - 24px));background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);padding:14px;gap:10px}.bell-list,.bell-pop{display:flex;flex-direction:column}.bell-list{max-height:60vh;overflow:auto;margin:0 -6px}.note{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:9px 8px;border-radius:9px;font-size:13px}.note:hover{background:var(--hover)}.note:focus-visible{outline:2px solid var(--ink)}.note.unread{background:var(--surface-2)}.note.unread .nt{font-weight:700}.note .nb{color:var(--ink-2);font-size:12.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.note .nw{color:var(--muted);font-size:11.5px}.linkbtn{all:unset;cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.note-li.unread .what div{font-weight:700}.dotu{width:8px;height:8px;border-radius:50%;background:var(--crit);flex:none}.top .bell{margin-left:auto}.top .timer+.bell{margin-left:0}.side-link{color:var(--muted);font-size:12px;text-decoration:none}.side-link:hover{color:var(--ink)}