@font-face{font-family:Gravity Wide;src:url(/fonts/ABCGravity-Wide.otf) format("opentype");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-VariableFont_wght.ttf) format("truetype");font-weight:100 800;font-style:normal;font-display:swap}:root{--ink:#231f20;--paper:#fff;--grey:#6d6e71;--ink-90:#3a3637;--line:#dbdbdc;--line-strong:#b8b8ba;--line-ink:#3c3839;--fill-soft:#f4f4f4;--fill-softer:#fafafa;--fill-ink:#2e2a2b;--bg:var(--paper);--bg-invert:var(--ink);--fg1:var(--ink);--fg2:var(--grey);--fg-invert:var(--paper);--fg-invert-2:#9a9b9d;--font-display:"Gravity Wide","Arial Narrow",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",monospace;--display-tracking:-0.01em;--display-leading:0.90;--mono-tracking:0.06em;--mono-leading:1.55;--fs-hero:96px;--fs-h1:64px;--fs-h2:44px;--fs-h3:30px;--fs-sub:20px;--fs-body:16px;--fs-small:13px;--fs-caption:11px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:128px;--radius-0:0px;--radius-1:2px;--radius-pill:999px;--border-hair:1px solid var(--line);--border-ink:1px solid var(--ink);--border-2:2px solid var(--ink);--shadow-0:none;--shadow-1:0 1px 0 rgba(35,31,32,.08);--shadow-2:0 8px 24px rgba(35,31,32,.1);--ease-standard:cubic-bezier(0.2,0,0,1);--ease-out:cubic-bezier(0.16,1,0.3,1);--dur-fast:120ms;--dur:200ms;--dur-slow:360ms;--c-matched:#2c6bd4;--c-review:#c2410c;--c-skip:#8a8b8e;--accent:var(--ink);--accent-fg:#fff;--m-learned:#2e6f4e;--m-jobno:#5b4bc4;--m-ai:#2c6bd4;--m-manual:var(--ink)}.ima-h1,.ima-h2,.ima-h3,.ima-hero,.ima-statement,.ima-sub{font-family:var(--font-display);text-transform:uppercase;letter-spacing:var(--display-tracking);line-height:var(--display-leading);font-weight:400;margin:0;text-wrap:balance}.ima-hero{font-size:var(--fs-hero)}.ima-h1{font-size:var(--fs-h1)}.ima-h2{font-size:var(--fs-h2)}.ima-h3{font-size:var(--fs-h3)}.ima-statement{font-size:var(--fs-h1);line-height:.88}.ima-sub{font-size:var(--fs-sub);letter-spacing:.01em}.ima-kern-wide{letter-spacing:.35em}.ima-kern-xwide{letter-spacing:.7em}.ima-body,p.ima{font-family:var(--font-mono);font-size:var(--fs-body);letter-spacing:var(--mono-tracking);line-height:var(--mono-leading);font-weight:300;color:var(--fg1);margin:0 0 1em}.ima-body-bold{font-weight:700}.ima-caption,.ima-label{letter-spacing:.14em;color:var(--fg2)}.ima-caption,.ima-label,.ima-offices{font-family:var(--font-mono);font-size:var(--fs-caption);text-transform:uppercase;font-weight:500}.ima-offices{letter-spacing:.18em}a.ima{color:inherit;text-decoration:none;border-bottom:1px solid;transition:opacity var(--dur) var(--ease-standard)}a.ima:hover{opacity:.6}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{background:var(--paper);color:var(--fg1);font-family:var(--font-mono);font-weight:300;font-size:14px;letter-spacing:var(--mono-tracking);line-height:var(--mono-leading);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--ink);color:var(--paper)}button{font-family:inherit}.label{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2)}.kern-wide{letter-spacing:.32em}.mono{font-family:var(--font-mono)}.muted{color:var(--fg2)}.disp{font-family:var(--font-display);text-transform:uppercase;letter-spacing:var(--display-tracking);line-height:var(--display-leading);font-weight:400;margin:0}#root{height:100%}.app{height:100vh;display:flex;flex-direction:column;background:var(--paper)}.topbar{justify-content:space-between;padding:0 var(--sp-6);height:60px;border-bottom:var(--border-ink);flex:none}.topbar,.topbar .brand{display:flex;align-items:center}.topbar .brand{gap:var(--sp-4)}.topbar .brand img{height:17px;width:auto;display:block}.topbar .brand .div{width:1px;height:22px;background:var(--line-strong)}.topbar .brand .wordmark{font-family:var(--font-display);text-transform:uppercase;font-size:15.8px;letter-spacing:.02em;line-height:1}.topbar .brand .beta{align-self:flex-start;margin:1px 0 0 -8px;font-family:var(--font-mono);font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--paper);background:var(--ink);padding:2px 5px;line-height:1}.topbar .right{gap:var(--sp-4)}.idchip,.topbar .right{display:flex;align-items:center}.idchip{gap:var(--sp-3);border:var(--border-hair);background:var(--paper);padding:7px 10px 7px 12px;cursor:pointer;transition:background var(--dur) var(--ease-standard)}.idchip:hover{background:var(--fill-soft)}.idchip .av{width:24px;height:24px;flex:none;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;letter-spacing:.06em}.idchip .nm{font-size:12px;letter-spacing:.04em;color:var(--ink)}.idchip .caret{font-size:10px;color:var(--fg2)}.menu{position:absolute;top:52px;right:0;z-index:40;min-width:240px;background:var(--paper);border:var(--border-ink);box-shadow:0 8px 24px rgba(35,31,32,.1)}.menu .mhead{padding:12px 14px;border-bottom:var(--border-hair)}.menu .mhead .mn{font-size:13px;color:var(--ink)}.menu .mhead .me{font-size:11px;color:var(--fg2);margin-top:2px}.menu .mitem{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;background:none;border:none;border-bottom:var(--border-hair);padding:11px 14px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--ink);cursor:pointer}.menu .mitem:last-child{border-bottom:none}.menu .mitem:hover{background:var(--fill-soft)}.menu .mitem .st{font-size:10px;color:var(--fg2);letter-spacing:.1em;text-transform:uppercase}.menu .mitem .dot-ok{width:7px;height:7px;background:var(--ink)}.subbar{justify-content:space-between;height:48px;padding:0 var(--sp-6);border-bottom:var(--border-hair);flex:none}.subbar,.tabs{display:flex;align-items:stretch}.tabs{gap:0}.tab{background:none;cursor:pointer;padding:0 var(--sp-4);display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--dur) var(--ease-standard)}.tab:first-child{padding-left:0}.tab.active,.tab:hover{color:var(--ink)}.tab.active{border-bottom-color:var(--ink)}.tab .cnt{font-size:10px;color:var(--paper);background:var(--ink);min-width:16px;height:16px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;letter-spacing:0}.weeknav{gap:var(--sp-3)}.navbtn,.weeknav{display:flex;align-items:center}.navbtn{width:30px;height:30px;border:var(--border-hair);background:var(--paper);cursor:pointer;color:var(--ink);font-size:13px;line-height:1;justify-content:center;transition:background var(--dur) var(--ease-standard)}.navbtn:hover{background:var(--fill-soft)}.weeknav .wlabel{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);white-space:nowrap;min-width:188px;text-align:center}.weeknav .wlabel .now{color:var(--fg2)}.todaybtn{border:none;background:none;cursor:pointer;padding:0 0 0 6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.todaybtn:hover{opacity:.6}.workspace{flex:1 1;display:flex;min-height:0}.pane-main{flex:1 1;min-width:0;overflow-y:auto;padding:var(--sp-5) var(--sp-6) var(--sp-8)}.pane-side{width:408px;flex:none;border-left:var(--border-ink);display:flex;flex-direction:column;min-height:0;background:var(--fill-softer)}.pane-full{flex:1 1;overflow-y:auto;padding:var(--sp-6)}.desktop-only{display:none}@media (max-width:899px){.app{display:none!important}.desktop-only{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--sp-6);background:var(--paper);text-align:center}.desktop-only .do-inner{max-width:380px;display:flex;flex-direction:column;align-items:center;gap:var(--sp-3)}.desktop-only img{height:20px;width:auto;margin-bottom:var(--sp-3)}.desktop-only .do-title{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(36px,12vw,52px);line-height:.9;letter-spacing:-.01em;margin:0}.desktop-only .do-msg{color:var(--fg2);font-size:14px;line-height:1.6;margin:0}.desktop-only .do-offices{font-family:var(--font-mono);font-size:10px;letter-spacing:.24em;color:var(--fg2);margin-top:var(--sp-4)}}.ribbon{display:flex;align-items:stretch;border:var(--border-ink);margin-bottom:var(--sp-5)}.ribbon .stat{flex:1 1;padding:14px 18px;border-right:var(--border-hair);display:flex;flex-direction:column;gap:4px}.ribbon .stat:last-child{border-right:none}.ribbon .stat .v{font-family:var(--font-display);font-size:32px;line-height:.9;letter-spacing:-.01em;color:var(--ink)}.ribbon .stat .v.sm{font-size:26px}.ribbon .stat .k{font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2)}.ribbon .stat.review .v{color:var(--ink)}.ribbon .stat.review.has:after{content:"";width:7px;height:7px;background:var(--ink);position:absolute;margin:4px 0 0}.progress{margin-bottom:var(--sp-5)}.progress .track{display:flex;height:6px;border:var(--border-ink)}.progress .seg{height:100%}.progress .seg.matched{background:var(--ink)}.progress .seg.skipped{background:repeating-linear-gradient(45deg,var(--line-strong) 0 3px,transparent 3px 6px)}.progress .seg.review{background:var(--paper)}.progress .plabel{display:flex;gap:var(--sp-4);margin-top:8px;font-size:11px;color:var(--fg2);letter-spacing:.04em;flex-wrap:wrap}.progress .plabel .pi{display:flex;align-items:center;gap:6px}.progress .plabel .sw{width:10px;height:10px;flex:none}.progress .plabel .sw.matched{background:var(--ink)}.progress .plabel .sw.review{border:1px solid var(--ink);background:var(--paper)}.progress .plabel .sw.skipped{background:repeating-linear-gradient(45deg,var(--line-strong) 0 2px,transparent 2px 4px);border:1px solid var(--line-strong)}.filters{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-5);flex-wrap:wrap}.chip,.filters{align-items:center}.chip{border:var(--border-hair);background:var(--paper);cursor:pointer;padding:7px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg2);display:inline-flex;gap:7px;transition:all var(--dur) var(--ease-standard)}.chip:hover{color:var(--ink);border-color:var(--line-strong)}.chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chip .n{font-size:10px;opacity:.7}.filters .spacer{flex:1 1}.rerun{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--fg2)}.daygroup{margin-bottom:var(--sp-5)}.daygroup.empty{opacity:.5}.dayhead{display:flex;align-items:baseline;gap:var(--sp-3);padding-bottom:8px;border-bottom:var(--border-ink);margin-bottom:-1px}.dayhead .dow{font-family:var(--font-display);text-transform:uppercase;font-size:18px;letter-spacing:0;color:var(--ink)}.dayhead .dt{font-size:11px;letter-spacing:.08em;color:var(--fg2);text-transform:uppercase}.dayhead .spacer{flex:1 1}.dayhead .dh{font-size:11px;letter-spacing:.08em;color:var(--fg2)}.dayhead .dh strong{color:var(--ink);font-weight:500}.evrow{border:var(--border-hair);border-top:none;background:var(--paper);padding:0;position:relative}.daygroup .evrow:first-of-type{border-top:var(--border-hair)}.evrow.review{background:var(--fill-softer)}.evrow.skip{opacity:.55}.evrow .statusrule{position:absolute;left:0;top:0;bottom:0;width:3px}.evrow.matched .statusrule{background:var(--ink)}.evrow.review .statusrule{background:var(--line-strong)}.evrow.skip .statusrule{background:repeating-linear-gradient(180deg,var(--line-strong) 0 3px,transparent 3px 6px)}.evrow .top{display:flex;align-items:center;gap:var(--sp-4);padding:12px 16px 12px 18px;cursor:pointer}.evrow .top .time{font-size:12px;color:var(--fg2);width:104px;flex:none;letter-spacing:.02em}.evrow .top .title{flex:1 1;min-width:0;color:var(--ink);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.evrow .top .cal{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg2);flex:none}.evrow .top .dur{font-size:12px;color:var(--ink);width:44px;text-align:right;flex:none;font-weight:500}.booking{display:flex;align-items:center;gap:var(--sp-3);padding:0 16px 12px 18px}.booking .arrow{color:var(--fg2);flex:none;font-size:13px}.picker{position:relative;flex:1 1;min-width:0}.picker .pbtn{width:100%;display:flex;align-items:center;gap:10px;border:var(--border-hair);background:var(--paper);cursor:pointer;padding:8px 10px;text-align:left;color:var(--ink);transition:border-color var(--dur) var(--ease-standard)}.picker .pbtn:hover{border-color:var(--ink)}.picker.empty .pbtn{border-style:dashed;border-color:var(--line-strong);color:var(--fg2)}.picker .pbtn .pmain{flex:1 1;min-width:0;overflow:hidden;display:flex;flex-direction:column;gap:1px}.picker .pbtn .pclient,.picker .pbtn .pmeta{display:block}.picker .pbtn .pclient{font-size:13px;color:var(--ink);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker.empty .pbtn .pclient{color:var(--fg2);font-weight:300}.picker .pbtn .pmeta{font-size:11px;color:var(--fg2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em}.picker .pbtn .pcaret{color:var(--fg2);font-size:10px;flex:none}.pdrop{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;background:var(--paper);border:var(--border-ink);box-shadow:0 8px 24px rgba(35,31,32,.12);max-height:320px;display:flex;flex-direction:column}.pdrop .psearch{padding:10px;border-bottom:var(--border-hair);flex:none}.pdrop .psearch input{width:100%;border:var(--border-hair);background:var(--paper);font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;padding:8px 10px;color:var(--ink)}.pdrop .psearch input:focus{outline:2px solid var(--ink);outline-offset:1px}.pdrop .plist{overflow-y:auto}.popt{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;border-bottom:var(--border-hair);padding:9px 12px;cursor:pointer}.popt:last-child{border-bottom:none}.popt:hover{background:var(--fill-soft)}.popt.special{color:var(--fg2)}.popt .omain{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.popt .oclient,.popt .ometa{display:block}.popt .oclient{font-size:13px;color:var(--ink);font-weight:500}.popt .oclient,.popt .ometa{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popt .ometa{font-size:11px;color:var(--fg2)}.popt .ocode{font-size:10px;letter-spacing:.04em}.popt .ocode,.popt .ofreq{color:var(--fg2);flex:none}.popt .ofreq{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.popt.expand-open{position:-webkit-sticky;position:sticky;bottom:0;background:var(--fill-soft);border-top:var(--border-hair);border-bottom:none}.popt.expand-open .oclient{color:var(--ink)}.popt.expand-open:hover{background:var(--fill-softer)}.expandwrap{display:flex;flex-direction:column;min-height:0}.exhead{flex:none;border-bottom:var(--border-hair);background:var(--fill-soft)}.exback{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:9px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--fg2)}.exback:hover{color:var(--ink)}.conf{display:flex;gap:2px;flex:none}.conf .pip{width:7px;height:11px}.conf .pip.on{background:var(--ink)}.conf .pip.off{border:1px solid var(--line-strong)}.tag{flex:none;font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--fg2);width:74px;text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:5px}.tag .mk{width:6px;height:6px;flex:none}.tag.learned{color:var(--ink)}.tag.learned .mk{background:var(--ink)}.tag.ai .mk{border:1px solid var(--ink)}.tag.jobno .mk{background:var(--ink)}.tag.manual{color:var(--ink)}.tag.manual .mk{background:var(--ink)}.evdetail{padding:0 16px 14px 18px}.detailgrid{border:var(--border-hair);background:var(--fill-soft);display:grid;grid-template-columns:auto 1fr}.detailgrid .dk{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg2);border-right:var(--border-hair)}.detailgrid .dk,.detailgrid .dv{padding:7px 12px;border-bottom:var(--border-hair)}.detailgrid .dv{font-size:12px;color:var(--ink)}.detailgrid .dk:last-of-type,.detailgrid .dv:last-of-type{border-bottom:none}.evdetail .rationale{display:flex;gap:8px;margin-top:10px;font-size:12px;color:var(--fg2);font-style:italic;line-height:1.5}.evdetail .rationale .ic{font-style:normal;flex:none}.evactions{display:flex;align-items:center;gap:var(--sp-4);margin-top:10px}.linkbtn{border:none;background:none;padding:0;cursor:pointer;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.linkbtn:hover{opacity:.6}.linkbtn.warn{color:var(--ink)}.weakbar{display:flex;align-items:center;gap:12px;margin:0 16px 12px 18px;padding:9px 12px;border:1px dashed var(--line-strong);background:var(--fill-softer);font-size:12px;color:var(--fg2)}.weakbar .wsg{flex:1 1;min-width:0}.weakbar .wsg strong{color:var(--ink);font-weight:500}.rememberbar{display:flex;align-items:center;gap:12px;margin:0 16px 12px 18px;padding:9px 12px;border:1px solid var(--line);border-left:2px solid var(--m-learned);background:var(--fill-softer);font-size:12px;color:var(--fg2)}.rememberbar .wsg{flex:1 1;min-width:0}.rememberbar .linkbtn{color:var(--m-learned);flex:none}.teach{margin:0 16px 14px 18px;border:var(--border-ink);background:var(--paper)}.teach .thead{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;border-bottom:var(--border-hair);background:var(--ink);color:var(--paper)}.teach .thead .tt{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.teach .thead .tx{background:none;border:none;color:var(--paper);cursor:pointer;font-size:14px;line-height:1;opacity:.7}.teach .thead .tx:hover{opacity:1}.teach .tbody{padding:14px}.teach .tbody p{margin:0 0 12px;font-size:12px;color:var(--fg2);line-height:1.55}.teach .tbody p strong{color:var(--ink);font-weight:500}.teach .matchline{display:flex;align-items:center;gap:8px;padding:9px 11px;background:var(--fill-soft);border:var(--border-hair);margin-bottom:12px;font-size:12px}.teach .matchline .ml-when{color:var(--fg2)}.teach .matchline .ml-title{color:var(--ink);font-weight:500}.teach .tinput{width:100%;border:var(--border-hair);background:var(--paper);font-family:var(--font-mono);font-size:12px;letter-spacing:.03em;padding:10px 12px;color:var(--ink);margin-bottom:12px}.teach .tinput:focus{outline:2px solid var(--ink);outline-offset:1px}.teach .tinput::placeholder{color:var(--fg2)}.teach .tactions{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.teach .applies,.teach .thint{font-size:11px;color:var(--fg2)}.teach .applies{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:var(--border-hair)}.teach .applies .badge{border:var(--border-hair);padding:2px 7px;font-size:10px;letter-spacing:.08em}.btn,.teach .applies .badge{text-transform:uppercase;color:var(--ink)}.btn{font-family:var(--font-mono);font-weight:500;font-size:12px;letter-spacing:.12em;padding:12px 22px;border:1px solid var(--ink);background:var(--paper);cursor:pointer;border-radius:var(--radius-0);transition:opacity var(--dur) var(--ease-standard),background var(--dur) var(--ease-standard)}.btn.primary{background:var(--ink);color:var(--paper)}.btn.primary:hover:not(:disabled){background:var(--ink-90)}.btn.outline{background:transparent}.btn.outline:hover:not(:disabled){background:var(--fill-soft)}.btn:disabled{opacity:.4;cursor:default}.btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.btn.sm{font-size:11px;padding:8px 14px}.btn.block{width:100%}.tspanel{display:flex;flex-direction:column;height:100%;min-height:0}.tspanel .tshead{flex:none;padding:18px var(--sp-5) 16px;border-bottom:var(--border-ink);display:flex;align-items:baseline;justify-content:space-between}.tspanel .tshead .tt{font-family:var(--font-display);text-transform:uppercase;font-size:18px;letter-spacing:0}.tspanel .tshead .ts{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg2)}.tspanel .tsbody{flex:1 1;overflow-y:auto;padding:var(--sp-4) var(--sp-5)}.tspanel .empty-ts{padding:var(--sp-6) 0;text-align:center;color:var(--fg2);font-size:12px}.tsday{margin-bottom:var(--sp-4)}.tsday .tsdhead{display:flex;align-items:baseline;gap:10px;padding-bottom:6px;border-bottom:var(--border-ink);margin-bottom:6px}.tsday .tsdhead .dow{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}.tsday .tsdhead .dt{font-size:10px;letter-spacing:.06em;color:var(--fg2);flex:1 1}.tsday .tsdhead .h{font-family:var(--font-mono);font-size:12px;font-weight:500;color:var(--ink)}.tsline{display:flex;align-items:baseline;gap:8px;padding:5px 0}.tsline .tc{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.tsline .tc .cl,.tsline .tc .ph{display:block}.tsline .tc .cl{font-size:12px;color:var(--ink);font-weight:500}.tsline .tc .cl,.tsline .tc .ph{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tsline .tc .ph{font-size:11px;color:var(--fg2)}.tsline .th{font-size:12px;color:var(--ink);flex:none}.tspanel .tsfoot{flex:none;border-top:var(--border-ink)}.tspanel .tstotal{display:flex;align-items:center;justify-content:space-between;padding:14px var(--sp-5);background:var(--ink);color:var(--paper)}.tspanel .tstotal .k{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.tspanel .tstotal .v{font-family:var(--font-display);font-size:26px;line-height:1}.tspanel .savezone{padding:var(--sp-4) var(--sp-5) var(--sp-4);border-bottom:var(--border-hair)}.tspanel .sendzone{padding:var(--sp-4) var(--sp-5) var(--sp-5)}.tspanel .sendmeta{font-size:11px;color:var(--fg2);margin-bottom:12px;line-height:1.5}.tspanel .sendmeta strong{color:var(--ink);font-weight:500}.confirmbox{border:var(--border-ink);padding:14px;margin-bottom:14px}.confirmbox p{margin:0 0 12px;font-size:12px;color:var(--ink);line-height:1.55}.confirmbox p strong{font-weight:500}.confirmbox .ca{display:flex;gap:10px}.resultbox{border:var(--border-ink);margin-bottom:14px}.resultbox .rstat{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:var(--border-hair)}.resultbox .rstat .dot{width:8px;height:8px;background:var(--ink);flex:none}.resultbox .rstat .lbl{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.resultbox .rnote{padding:12px 14px;font-size:12px;color:var(--fg2);line-height:1.5}.insights{max-width:1080px;margin:0 auto}.ins-hero{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:var(--sp-6);padding-bottom:var(--sp-4);border-bottom:var(--border-ink)}.ins-hero h1{font-family:var(--font-display);text-transform:uppercase;font-size:44px;line-height:.9;letter-spacing:-.01em;margin:0}.ins-hero .sub{font-size:12px;color:var(--fg2);letter-spacing:.06em;max-width:360px;text-align:right;line-height:1.5}.ins-stats{display:grid;grid-template-columns:repeat(4,1fr);border:var(--border-ink);margin-bottom:var(--sp-7)}.ins-stats .s{padding:20px;border-right:var(--border-hair)}.ins-stats .s:last-child{border-right:none}.ins-stats .s .v{font-family:var(--font-display);font-size:48px;line-height:.85;letter-spacing:-.01em;color:var(--ink)}.ins-stats .s .v .u{font-size:22px;color:var(--fg2)}.ins-stats .s .k{font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2);margin-top:10px}.ins-stats .s .d{font-size:11px;color:var(--fg2);margin-top:4px}.ins-stats .s .d.up:before{content:"▲ ";color:var(--ink)}.ins-cols{display:grid;grid-template-columns:1.3fr 1fr;grid-gap:var(--sp-7);gap:var(--sp-7)}.ins-sec h2{font-family:var(--font-display);text-transform:uppercase;font-size:22px;letter-spacing:0;margin:0 0 4px}.ins-sec .secsub{font-size:11px;color:var(--fg2);letter-spacing:.04em;margin-bottom:var(--sp-4)}.rules{border:var(--border-ink)}.rule{display:flex;align-items:center;gap:var(--sp-4);padding:13px 16px;border-bottom:var(--border-hair)}.rule:last-child{border-bottom:none}.rule .rwhen{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.rule .rwhen .rw-lab,.rule .rwhen .rw-val{display:block}.rule .rwhen .rw-lab{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg2)}.rule .rwhen .rw-val{font-size:13px;color:var(--ink);margin-top:2px}.rule .rarrow{color:var(--fg2);flex:none}.rule .rthen{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.rule .rthen .rt-meta,.rule .rthen .rt-val{display:block}.rule .rthen .rt-val{font-size:13px;color:var(--ink);font-weight:500}.rule .rthen .rt-meta{font-size:11px;color:var(--fg2);margin-top:2px}.rule .rcount{flex:none;text-align:right;display:flex;flex-direction:column;gap:1px}.rule .rcount .rc-l,.rule .rcount .rc-n{display:block}.rule .rcount .rc-n{font-family:var(--font-display);font-size:20px;line-height:1;color:var(--ink)}.rule .rcount .rc-l{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg2)}.rule .rdel{border:none;background:none;cursor:pointer;color:var(--fg2);font-size:14px;flex:none;padding:4px}.rule .rdel:hover{color:var(--ink)}.history{border:var(--border-ink)}.hrow{display:flex;align-items:center;gap:var(--sp-4);padding:13px 16px;border-bottom:var(--border-hair)}.hrow:last-child{border-bottom:none}.hrow .hweek{flex:1 1;display:flex;flex-direction:column;gap:2px}.hrow .hweek .hw-meta,.hrow .hweek .hw-val{display:block}.hrow .hweek .hw-val{font-size:13px;color:var(--ink)}.hrow .hweek .hw-meta{font-size:11px;color:var(--fg2);margin-top:2px}.hrow .hbar{width:90px;flex:none;height:6px;border:1px solid var(--ink);display:flex}.hrow .hbar .fill{background:var(--ink);height:100%}.hrow .hh{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--ink);width:52px}.hrow .hh,.hrow .hstatus{text-align:right;flex:none}.hrow .hstatus{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg2);width:70px}.trend{margin-top:var(--sp-5);border:var(--border-ink);padding:16px}.trend .th{font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2);margin-bottom:14px}.trend .bars{gap:6px;height:90px}.trend .bars,.trend .bars .b{display:flex;align-items:flex-end}.trend .bars .b{flex:1 1;background:var(--fill-soft);border:1px solid var(--line-strong);position:relative}.trend .bars .b .f{width:100%}.trend .bars .b .f,.trend .bars .b.last .f{background:var(--ink)}.trend .xlabels{display:flex;gap:6px;margin-top:8px}.trend .xlabels span{flex:1 1;text-align:center;font-size:9px;letter-spacing:.06em;color:var(--fg2)}.officestrip{padding:10px var(--sp-6);border-top:var(--border-hair);display:flex;align-items:center;justify-content:space-between;flex:none}.officestrip .off{letter-spacing:.18em}.officestrip .mk,.officestrip .off{font-size:10px;text-transform:uppercase;color:var(--fg2);font-weight:500}.officestrip .mk{letter-spacing:.12em}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.btn.primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 86%,#000)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.chip.on,.tab .cnt{background:var(--accent);color:var(--accent-fg)}.chip.on{border-color:var(--accent)}.tspanel .tstotal{background:var(--accent)}.idchip .av,.tspanel .tstotal,.tspanel .tstotal .v{color:var(--accent-fg)}.idchip .av{background:var(--accent)}.evrow.matched .statusrule{background:var(--c-matched);width:4px}.evrow.review .statusrule{background:var(--c-review);width:4px}.seg.matched{background:var(--c-matched)}.seg.review{background:color-mix(in srgb,var(--c-review) 32%,#fff)}.plabel .sw.matched{background:var(--c-matched)}.plabel .sw.review{background:color-mix(in srgb,var(--c-review) 32%,#fff);border-color:var(--c-review)}.ribbon .stat.matched{box-shadow:inset 0 3px 0 var(--c-matched)}.ribbon .stat.matched .v{color:var(--c-matched)}.ribbon .stat.review{box-shadow:inset 0 3px 0 var(--c-review)}.ribbon .stat.review .v{color:var(--c-review)}.evrow.review{background:color-mix(in srgb,var(--c-review) 5%,#fff)}.chip.on.is-matched{background:var(--c-matched);border-color:var(--c-matched)}.chip.on.is-review{background:var(--c-review);border-color:var(--c-review)}.tag.learned{color:var(--m-learned)}.tag.learned .mk{background:var(--m-learned)}.tag.jobno{color:var(--m-jobno)}.tag.jobno .mk{background:var(--m-jobno)}.tag.ai{color:var(--m-ai)}.tag.ai .mk{border-color:var(--m-ai)}.tag.manual{color:var(--m-manual)}.tag.manual .mk{background:var(--m-manual)}.btn.ghost{border-color:transparent;background:transparent;padding:8px 0;text-decoration:underline;text-underline-offset:4px}.btn.ghost:hover:not(:disabled){opacity:.6}.setupwrap{max-width:560px;margin:0 auto;padding:var(--sp-7) 0}.setupwrap .ima-label{display:block}.session{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) 0;margin-bottom:var(--sp-5);border-bottom:var(--border-hair);font-size:13px}.session .who{color:var(--fg2);letter-spacing:.04em}.session .who strong{color:var(--fg1);font-weight:500}.identity{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) 0;margin-bottom:var(--sp-5);border-bottom:var(--border-hair);font-size:13px}.identity .who{color:var(--fg2)}.identity .who strong{color:var(--fg1);font-weight:500}.search{width:100%;font-family:var(--font-mono);font-size:14px;letter-spacing:.04em;padding:12px 14px;border:var(--border-ink);border-radius:var(--radius-0);background:var(--paper);color:var(--ink);margin-bottom:var(--sp-4)}.search::placeholder{color:var(--fg2)}.search:focus{outline:2px solid var(--ink);outline-offset:2px}.userlist{list-style:none;margin:0;padding:0;border:var(--border-hair);max-height:440px;overflow:auto}.userlist li{border-bottom:var(--border-hair)}.userlist li:last-child{border-bottom:none}.useritem{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);padding:12px 16px;background:var(--paper);border:none;border-radius:0;text-align:left;cursor:pointer;transition:background var(--dur) var(--ease-standard)}.useritem:hover:not(:disabled){background:var(--fill-soft)}.useritem:disabled{opacity:.5;cursor:default}.useritem .uname{font-family:var(--font-mono);font-size:14px;letter-spacing:.02em;color:var(--ink)}.useritem .uinit{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2)}.matchcard{border:var(--border-ink);background:var(--paper)}.matchrow{display:flex;gap:var(--sp-4);padding:14px 16px;border-bottom:var(--border-hair);font-size:13px}.matchrow:last-child{border-bottom:none}.matchrow .mk{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2);width:96px;flex:none}.matchrow .mv{color:var(--ink)}.matchrow .mv strong{font-weight:500}.matchactions{display:flex;gap:var(--sp-3);margin-top:var(--sp-5);flex-wrap:wrap}.result{border:var(--border-ink);background:var(--paper);border-radius:var(--radius-0)}.result .statusbar{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:var(--border-hair)}.result .dot{width:9px;height:9px;background:var(--ink);flex:none}.result.err .dot,.result.warn .dot{background:transparent;border:1px solid var(--ink)}.result .lbl{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.result .lbl,.result pre{font-family:var(--font-mono)}.result pre{margin:0;padding:16px;background:var(--ink);color:var(--paper);font-size:12px;font-weight:400;line-height:1.5;letter-spacing:0;overflow:auto;white-space:pre-wrap;word-break:break-word}.diag{margin-top:var(--sp-5)}.diag>summary{cursor:pointer;list-style:none;color:var(--fg2);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.diag>summary::-webkit-details-marker{display:none}.diag>summary:before{content:"+ "}.diag[open]>summary:before{content:"\2013 "}.settings{margin-top:var(--sp-4);border:var(--border-hair)}.setrow{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:12px 16px;border-bottom:var(--border-hair);font-size:13px}.setrow:last-child{border-bottom:none}.reconnect{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) 0}