@font-face{font-family:xVf;src:url(assets/fonts/xvf.woff2) format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:GeistMono;src:url(assets/fonts/geistmono.woff2) format("woff2");font-weight:100 900;font-display:swap}
/* tokens from x.ai/bot (light :root and .dark) */
:root{--bg:#fff;--page:#fff;--card:#f8f7f5;--card2:#f1f0ed;--fg:#0a0a0a;--fg2:#0a0a0a;--mut:#7e8288;--line:#d8dce5;--line2:#e9e8e4;--hover:rgba(10,10,10,.05);--accent:#ff6a08;--pri-bg:#0a0a0a;--pri-fg:#fff;--sec-bg:#efefef;--ok:#2cb663;--work:#3C82F6;--shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.05);--ov:rgba(255,255,255,.6);--track:#e7e6e2}
.dark{--bg:#0a0a0a;--page:#0a0a0a;--card:#1b1b1b;--card2:#202020;--fg:#edecec;--fg2:#edecec;--mut:#7e8288;--line:#1f2228;--line2:#2b2b2b;--hover:rgba(255,255,255,.06);--pri-bg:#fff;--pri-fg:#0a0a0a;--sec-bg:#202020;--shadow:none;--ov:rgba(10,10,10,.6);--track:#2b2b2b}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;background:var(--page);color:var(--fg);font-family:xVf,"xVf Fallback",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden;font-size:13.5px;transition:background .4s,color .4s}
.mono,.stat span,.kpi span,.hint,.pill-s,.sec h4,.fld label{font-family:GeistMono,ui-monospace,monospace}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,textarea,select{font:inherit;color:var(--fg)}
.glass{background:var(--card);border:1px solid transparent}
.top{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line2)}
.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:500;letter-spacing:-.01em}
.logo{width:26px;height:26px;color:var(--fg)}.logo .eyes path{fill:var(--bg)}
.pill-s{font-size:10.5px;color:var(--mut);background:var(--card);padding:4px 10px;border-radius:99px;text-transform:uppercase;letter-spacing:.04em}
.tools{display:flex;gap:6px;align-items:center}
.tg,.btn{height:36px;padding:0 15px;border-radius:99px;background:var(--sec-bg);display:flex;align-items:center;gap:8px;font-weight:450;font-size:13.5px;transition:background .2s,color .2s}
.tg:hover,.btn:hover{background:color-mix(in srgb,var(--fg) 10%,var(--bg))}
.tg .dot{width:24px;height:14px;border-radius:99px;background:color-mix(in srgb,var(--fg) 18%,transparent);position:relative;transition:.25s}.tg .dot:after{content:"";position:absolute;left:2px;top:2px;width:10px;height:10px;border-radius:50%;background:var(--bg);transition:.25s}
.tg.on .dot{background:var(--fg)}.tg.on .dot:after{left:12px}
.btn.pri{background:var(--pri-bg);color:var(--pri-fg)}.btn.pri:hover{opacity:.85}
.me{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:12px;background:var(--card);border:1px solid var(--line2);margin-left:6px}
.layout{display:flex;height:calc(100% - 64px)}
main{flex:1;position:relative;overflow:hidden}
.view{position:absolute;inset:0;overflow-y:auto;padding:30px 32px 60px;transition:opacity .45s,transform .45s cubic-bezier(.2,.8,.2,1)}
.view.hidden{opacity:0;transform:scale(.98);pointer-events:none}
.view::-webkit-scrollbar,.panel::-webkit-scrollbar{width:6px}.view::-webkit-scrollbar-thumb,.panel::-webkit-scrollbar-thumb{background:var(--line2);border-radius:9px}
.h1{font-size:30px;font-weight:450;letter-spacing:-.025em}.sub{color:var(--mut);margin-top:6px;font-size:14px}
.headrow{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:26px}
.kpis{display:flex;gap:8px}.kpi{padding:10px 16px;border-radius:16px}.kpi b{display:block;font-size:20px;font-weight:450;letter-spacing:-.02em}.kpi span{color:var(--mut);font-size:10.5px;text-transform:uppercase}
.org{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 18px;align-items:start}
.net{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;overflow:visible}
.net path{fill:none;stroke-width:1.75;stroke-linecap:round;pointer-events:stroke;cursor:help;stroke-dasharray:5 7;animation:dash 1.2s linear infinite;opacity:0;transition:opacity .5s}
.net.on path{opacity:.85}.net path:hover{stroke-width:3.5}
.net circle{opacity:0;transition:.5s;fill:var(--fg)}.net.on circle{opacity:1}
@keyframes dash{to{stroke-dashoffset:-24}}
.col{position:relative;z-index:2}
.tile{border-radius:24px;padding:18px;position:relative;transition:transform .3s,box-shadow .3s,border-color .3s}
.tile:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--line2)}
.tile.busy{border-color:color-mix(in srgb,var(--work) 40%,transparent)}
.thead{display:flex;justify-content:space-between;align-items:center;cursor:pointer;margin-bottom:14px;gap:8px}
.tname{font-weight:500;font-size:16px;letter-spacing:-.015em;display:flex;align-items:center;gap:8px}.tname .arrow{opacity:0;transition:.25s;color:var(--mut)}.thead:hover .arrow{opacity:1;transform:translateX(3px)}
.tname>span:first-child{box-shadow:none!important}
.tstat{display:flex;align-items:center;gap:6px}
.boss{display:flex;align-items:center;gap:12px;padding:10px 10px 10px 8px;border-radius:18px;background:var(--bg);border:1px solid var(--line2)}
.av{display:grid;place-items:center;flex:none;position:relative}
.av svg.head{width:100%;height:100%;overflow:visible}.av svg.flip{transform:scaleX(-1)}
.av .eyes path{fill:#fff;transform-box:fill-box;transform-origin:center;animation:blink 6s infinite;animation-delay:var(--bl)}
@keyframes blink{0%,94%,100%{transform:scaleY(1)}96.5%{transform:scaleY(.1)}}
.av.l{width:46px;height:46px}.av.m{width:36px;height:36px}.av.xl{width:150px;height:150px;filter:drop-shadow(0 24px 40px color-mix(in srgb,var(--c) 35%,transparent))}
.av.xl .eyes path{animation:look 3.5s ease-in-out infinite}
@keyframes look{0%,100%{transform:translate(0,0)}30%{transform:translate(-6%,4%)}60%{transform:translate(6%,-2%)}}
.who{flex:1 1 0;min-width:0}.who b{display:block;font-size:14px;font-weight:500}.who span{color:var(--mut);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.who span.crown,.crown{display:inline;font-family:GeistMono,monospace;font-size:9.5px;padding:2px 6px;border-radius:99px;background:var(--card2);color:var(--mut);margin-left:6px;font-weight:500;vertical-align:1px;letter-spacing:.04em}
.ib{width:30px;height:30px;border-radius:99px;display:grid;place-items:center;color:var(--mut);transition:.2s;flex:none}
.ib:hover{background:var(--hover);color:var(--fg)}
.ib svg{width:16px;height:16px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}
.stat{padding:8px 9px;border-radius:12px;background:var(--bg)}.stat b{display:block;font-size:13.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat span{font-size:9.5px;color:var(--mut);text-transform:uppercase}
.usage{max-height:0;overflow:hidden;opacity:0;transition:all .45s cubic-bezier(.2,.8,.2,1)}
body.u .usage{max-height:40px;opacity:1;margin-top:10px}
.ubar{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--mut);font-family:GeistMono,monospace}.ubar i{flex:1;height:4px;border-radius:9px;background:var(--track);overflow:hidden;display:block}.ubar i em{display:block;height:100%;border-radius:9px;background:var(--fg);width:0;transition:width 1s .15s cubic-bezier(.2,.8,.2,1)}
body.u .ubar i em{width:var(--w)}.ubar b{color:var(--fg);min-width:32px;text-align:right;font-weight:500}
.ubar.hot i em{background:var(--accent)}.ubar.hot b{color:var(--accent)}
.tfoot{display:flex;justify-content:center;margin-top:12px}
.toggle{font-size:12px;color:var(--mut);padding:5px 12px;border-radius:99px;background:var(--bg);display:flex;align-items:center;gap:6px;transition:.2s}.toggle:hover{color:var(--fg)}
.toggle svg{width:12px;transition:transform .35s}.open .toggle svg{transform:rotate(180deg)}
.tree{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.2,.8,.2,1)}
.open .tree{grid-template-rows:1fr}.tree>div{overflow:hidden}
.branch{position:relative;padding:12px 0 2px 26px}
.branch:before{content:"";position:absolute;left:12px;top:0;bottom:32px;width:1.5px;background:var(--line);border-radius:2px}
.bot{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 8px 8px 10px;border-radius:18px;margin-bottom:8px;opacity:0;transform:translateY(-8px);transition:.4s cubic-bezier(.2,.8,.2,1)}
.open .bot{opacity:1;transform:none}
.bot:before{content:"";position:absolute;left:-14px;top:30px;width:14px;height:1.5px;background:var(--line)}
.bot:hover{border-color:var(--line2)}
.bot .usage{flex-basis:100%}.bot .who b{font-size:13px}
.st{position:relative;width:30px;height:30px;display:grid;place-items:center;flex:none}
.ring{position:absolute;inset:3px;border-radius:50%;border:2px solid color-mix(in srgb,var(--work) 18%,transparent);border-top-color:var(--work);animation:spin .9s linear infinite}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--work);animation:pl 1.4s infinite}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pl{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--work) 60%,transparent)}70%,100%{box-shadow:0 0 0 9px transparent}}
.newmsg{width:30px;height:30px;border-radius:99px;display:grid;place-items:center;background:var(--fg);color:var(--bg);animation:pop .5s cubic-bezier(.3,1.6,.5,1);position:relative}
.newmsg svg{width:15px;height:15px}.newmsg:after{content:"";position:absolute;top:-2px;right:-2px;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--card)}
@keyframes pop{from{transform:scale(0)}}
.chip-w{font-size:11px;font-weight:500;padding:3px 9px;border-radius:99px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.chip-w.work{background:color-mix(in srgb,var(--work) 12%,transparent);color:var(--work)}.chip-w.new{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);cursor:pointer}.chip-w.idle{background:var(--bg);color:var(--mut)}
.chip-w .mini{width:9px;height:9px;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--work) 30%,transparent);border-top-color:var(--work);animation:spin .8s linear infinite}
/* panel */
.panel{width:380px;flex:none;border-left:1px solid var(--line2);background:var(--bg);overflow-y:auto;padding:22px 18px;display:flex;flex-direction:column;gap:16px}
.ph{display:flex;justify-content:space-between;align-items:center}.ph h3{font-size:15px;font-weight:500;display:flex;gap:8px;align-items:center;letter-spacing:-.01em}
.badge{min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--accent);color:#fff;font-size:11px;font-weight:600;display:inline-grid;place-items:center;font-family:GeistMono,monospace}
.badge.bump{animation:pop .4s}
.dec{border-radius:20px;padding:14px;background:var(--card);transition:all .45s cubic-bezier(.4,0,.2,1);overflow:hidden;max-height:300px}
.dec.gone{opacity:0;transform:translateX(60px) scale(.95);max-height:0;padding-top:0;padding-bottom:0;margin-top:-10px}
.dec .top2{display:flex;gap:10px;align-items:center;margin-bottom:8px}.dec .top2 .who span{font-size:11px}
.dec p{font-size:13.5px;line-height:1.45}
.acts{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}
.acts button{flex:1;padding:8px 12px;border-radius:99px;background:var(--bg);border:1px solid var(--line2);font-weight:500;font-size:12.5px;transition:.2s;white-space:nowrap}
.acts button:hover{background:var(--hover)}.acts .y{background:var(--pri-bg);color:var(--pri-fg);border-color:var(--pri-bg)}.acts .y:hover{opacity:.85;background:var(--pri-bg)}
.acts.multi button{flex:1 1 40%;text-align:left}
.decs{display:flex;flex-direction:column;gap:10px}
.empty{color:var(--mut);text-align:center;padding:18px;border:1px dashed var(--line);border-radius:16px;font-size:12.5px}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{padding:5px 11px;border-radius:99px;border:1px solid var(--line);font-size:12px;color:var(--mut);transition:.2s}.chip:hover{color:var(--fg)}.chip.on{background:color-mix(in srgb,var(--tc,var(--fg)) 10%,var(--bg));color:var(--tc,var(--fg));border-color:color-mix(in srgb,var(--tc,var(--fg)) 25%,transparent);font-weight:500}
.feed{display:flex;flex-direction:column;gap:2px}
.nt{display:flex;gap:10px;padding:10px;border-radius:16px;cursor:pointer;transition:.2s;animation:slin .5s cubic-bezier(.2,.8,.2,1)}
.nt:hover{background:var(--card)}.nt .who b{font-size:13px;display:flex;justify-content:space-between}.nt .who b em{font-style:normal;font-weight:400;color:var(--mut);font-size:11px;font-family:GeistMono,monospace}
.nt .who span{white-space:normal;line-height:1.4;margin-top:2px}
.nt .tg2{font-size:10.5px;color:var(--mut);margin-top:4px;display:flex;gap:6px;align-items:center;font-family:GeistMono,monospace}.nt .tg2 i{width:6px;height:6px;border-radius:50%;display:inline-block}
.nt.unread .who b:after{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);margin:4px 0 0 6px;order:2}
@keyframes slin{from{opacity:0;transform:translateY(-10px)}}
/* overlay */
.overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:var(--ov);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);transition:opacity .35s}
.overlay.hidden{opacity:0;pointer-events:none}
.cmp{width:580px;display:flex;flex-direction:column;align-items:center;gap:14px;transition:transform .5s cubic-bezier(.2,.9,.25,1.2),opacity .35s}
.overlay.hidden .cmp{transform:scale(.6) translateY(40px);opacity:0}
.cmp.send{transform:scale(.3) translateY(-200px)!important;opacity:0;transition:transform .5s cubic-bezier(.6,0,.4,1),opacity .4s}
.cmp h2{font-size:36px;font-weight:450;letter-spacing:-.03em;margin-top:6px}.cmp .role{color:var(--mut);margin-top:-8px}
.inp{width:100%;display:flex;gap:8px;padding:7px 7px 7px 10px;border-radius:99px;margin-top:10px;background:var(--bg);border:1px solid var(--line);box-shadow:0 20px 50px rgba(0,0,0,.12)}
.inp input{flex:1;background:transparent;border:0;outline:0;font-size:15.5px;padding:8px 10px}
.inp button{width:42px;height:42px;border-radius:50%;background:var(--pri-bg);display:grid;place-items:center}.inp button svg{stroke:var(--pri-fg)}
.hint{color:var(--mut);font-size:11px}.hint kbd{padding:1px 6px;border-radius:5px;border:1px solid var(--line);font-family:inherit}
.msg{width:100%;padding:16px 18px;border-radius:22px 22px 22px 6px;line-height:1.55;font-size:15px;background:var(--card);animation:slin .5s}
.msg .meta{font-size:11px;color:var(--mut);margin-bottom:6px;font-family:GeistMono,monospace}
.close{position:absolute;top:22px;right:26px;width:40px;height:40px;border-radius:50%;background:var(--sec-bg);font-size:16px;color:var(--mut)}.close:hover{color:var(--fg)}
.mod{width:460px;border-radius:28px;padding:26px;background:var(--bg)!important;border:1px solid var(--line2)!important;box-shadow:0 30px 80px rgba(0,0,0,.18);transition:.4s cubic-bezier(.2,.9,.25,1.2)}.overlay.hidden .mod{transform:scale(.9);opacity:0}
.mod h3{font-size:20px;font-weight:450;letter-spacing:-.02em;margin-bottom:18px}.fld{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.fld label{font-size:10.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em}
.fld input,.fld select,.fld textarea{background:var(--card);border:1px solid transparent;border-radius:14px;padding:11px 14px;outline:0}.fld input:focus{border-color:var(--line)}
.emos{display:flex;gap:8px;flex-wrap:wrap}.emos button{width:40px;height:40px;border-radius:50%;padding:4px;border:2px solid transparent;transition:.2s}.emos button.on{border-color:var(--fg)}.emos svg{width:100%;height:100%}.emos .eyes path{fill:#fff}
.row{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}
/* team view */
.back{display:inline-flex;align-items:center;gap:6px;color:var(--mut);margin-bottom:14px;padding:6px 12px;border-radius:99px;background:var(--card)}.back:hover{color:var(--fg)}
.thero{display:flex;align-items:center;gap:16px}
.thero .av{width:64px;height:64px}
.tgrid{display:grid;grid-template-columns:1fr 330px;gap:18px}
.sec{border-radius:24px;padding:18px;margin-bottom:18px}.sec h4{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--mut);font-weight:500;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}
.cards{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.card{border-radius:20px;padding:14px;position:relative;z-index:2;transition:.3s;animation:slin .5s backwards;background:var(--bg)!important;border:1px solid var(--line2)!important}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.card .crow{display:flex;justify-content:space-between;align-items:flex-start}
.card .who{margin-top:10px}.card .last{font-size:12px;color:var(--mut);margin-top:8px;line-height:1.4;height:34px;overflow:hidden}
.card .cfoot{display:flex;justify-content:space-between;align-items:center;margin-top:10px}
.pin,.rm{padding:10px;border-radius:16px;background:var(--bg);margin-bottom:8px;display:flex;gap:10px;cursor:pointer;transition:.2s}.pin:hover,.rm:hover{background:var(--hover)}
.pin .who span,.rm .who span{white-space:normal;line-height:1.4}
.doc{display:flex;align-items:center;gap:10px;padding:8px;border-radius:14px;cursor:pointer}.doc:hover{background:var(--bg)}.doc .ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:9.5px;font-weight:600;font-family:GeistMono,monospace}
.rule{display:flex;gap:8px;align-items:flex-start;padding:10px 10px;border-radius:14px;background:var(--bg);margin-bottom:6px;animation:slin .4s}
.rule .n{color:var(--mut);font-family:GeistMono,monospace;font-size:11px;margin-top:2px}.rule div[contenteditable]{flex:1;outline:0;line-height:1.45;border-radius:6px;padding:0 4px}.rule div[contenteditable]:focus{background:var(--card2)}
.addr{display:flex;gap:6px;margin-top:8px}.addr input{flex:1;background:var(--bg);border:1px solid var(--line2);border-radius:99px;padding:8px 14px;outline:0}
.tip{position:fixed;z-index:80;padding:6px 11px;border-radius:99px;background:var(--pri-bg);color:var(--pri-fg);font-size:12px;font-weight:500;pointer-events:none;opacity:0;transition:opacity .15s;transform:translate(-50%,-130%);white-space:nowrap}
#toasts{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:90;display:flex;flex-direction:column;gap:8px;align-items:center}
.toast{padding:10px 18px;border-radius:99px;background:var(--pri-bg);color:var(--pri-fg);animation:slin .4s;font-weight:500}
/* panel separation */
.panel{background:#efede9}.dark .panel{background:#050505;border-left-color:#1f2228}
.panel .dec{background:#fff}.dark .panel .dec{background:#161616}
.panel .acts button{background:var(--card)}.dark .panel .acts button{background:#0a0a0a}
.panel .acts .y{background:var(--pri-bg)}
.panel .nt:hover{background:rgba(255,255,255,.7)}.dark .panel .nt:hover{background:#161616}
.panel .chip{background:transparent}
/* usage header */
.uhead{display:none;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;border-radius:24px;padding:16px 20px;margin:-8px 0 22px;animation:slin .4s}
body.u .uhead{display:grid}
.ulbl,.ucap,.uleg,.ulegend{font-family:GeistMono,monospace;font-size:10.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.04em}
.ulegend{text-transform:none;line-height:1.6;text-align:right}
.ubig{display:flex;align-items:baseline;gap:8px;margin-top:4px}.ubig b{font-size:34px;font-weight:450;letter-spacing:-.03em}.ubig span{color:var(--mut)}
.utrack i{display:block;height:10px;border-radius:99px;background:var(--track);overflow:hidden;position:relative}
.utrack i:after{content:"";position:absolute;left:90%;top:0;bottom:0;width:1.5px;background:var(--accent);opacity:.6}
.utrack em{display:block;height:100%;width:var(--w);background:var(--fg);border-radius:99px;transition:width .8s}
.uleg{display:flex;justify-content:space-between;margin-top:6px}.uwarnlbl{visibility:hidden;color:var(--accent)}
body.uwarn .uwarnlbl{visibility:visible}body.uwarn .utrack em,body.uwarn .ukpi b{background:var(--accent);color:var(--accent)}body.uwarn .utrack em{color:inherit}
.ucap{margin-top:4px;text-align:right}
.ubar em{transition:width .8s!important}
.card .cfoot .hint{white-space:nowrap}
.dark .panel .acts .y{background:var(--pri-bg);color:var(--pri-fg)}
/* unread badge */
.ubdg{position:absolute;top:-5px;right:-7px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:#0a0a0a;color:#fff;font:600 11px/19px GeistMono,monospace;text-align:center;border:2px solid var(--card);z-index:4;cursor:pointer;transition:transform .25s,opacity .25s}
.dark .ubdg{background:#fff;color:#0a0a0a}
.ubdg.hide{transform:scale(0);opacity:0;pointer-events:none}
.ubdg.popin{animation:pop .45s cubic-bezier(.3,1.6,.5,1)}
.av.l .ubdg{top:-4px;right:-6px;min-width:21px;height:21px;line-height:21px;font-size:12px}
.boss .ubdg,.card .ubdg,.panel .ubdg{border-color:var(--bg)}
.panel .dec .ubdg{border-color:#fff}.dark .panel .ubdg{border-color:#161616}
.tub{top:10px;right:10px;height:22px;min-width:22px;line-height:18px;font-size:12px;border-color:var(--card)}
.tile .tub{position:absolute}
.col.open .tub{transform:scale(0);opacity:0;pointer-events:none}
.tile .thead{padding-right:0}
.col:has(.tub:not(.hide)):not(.open) .thead .tstat{margin-right:22px}
.av[data-avb]{cursor:default}
/* compact weekly usage in top bar */
.wu{display:flex;align-items:center;gap:8px;margin-left:6px;font-family:GeistMono,monospace;font-size:10.5px;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.wu b{color:var(--fg);font-weight:600;font-size:12px}
.wu i{display:block;width:72px;height:3px;border-radius:9px;background:var(--track);overflow:hidden}
.wu em{display:block;height:100%;width:var(--w);background:var(--fg);transition:width .8s}
body.uwarn .wu em{background:var(--accent)}body.uwarn .wu b{color:var(--accent)}
.badge{background:#0a0a0a;color:#fff}.dark .badge{background:#fff;color:#0a0a0a}
/* badge fix: perfect circle, centered digits */
.ubdg,.av.l .ubdg,.tub{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;height:20px;min-width:20px;padding:0 5px;border-radius:999px;font-family:GeistMono,ui-monospace,monospace;font-size:11px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;transform:none;top:-6px;right:-8px}
.av.l .ubdg{top:-5px;right:-7px}
.tub{top:10px;right:10px}
.ubdg.hide{transform:scale(0)}
.ubdg,.av.l .ubdg,.tub{padding:0 4px}
/* weekly meter v2 */
.brand{flex:1;min-width:0}
.wu{flex:1;min-width:0;margin:0 24px 0 14px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .35s,transform .35s,visibility 0s .35s}
body.u .wu{opacity:1;visibility:visible;transform:none;transition:opacity .35s,transform .35s,visibility 0s}
.wu b{font-family:xVf,"xVf Fallback",Arial,sans-serif;font-size:21px;font-weight:500;letter-spacing:-.02em;line-height:1;text-transform:none}
.wu i{flex:1;width:auto;min-width:60px;height:4px;transform-origin:left;transform:scaleX(0);transition:transform .6s .1s cubic-bezier(.2,.8,.2,1)}
body.u .wu i{transform:scaleX(1)}
/* weekly meter tile */
.wu{background:var(--card);border-radius:99px;height:40px;padding:0 18px;gap:10px}
/* primary bot */
.prim{grid-column:1/-1;justify-self:center;width:420px;margin-bottom:18px;position:relative;z-index:2}
.primcard{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 12px 12px 14px;border-radius:24px;border-color:var(--line2)}
.primcard .who b{font-size:16px}
.orgl{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible}
.orgl path{fill:none;stroke:var(--line);stroke-width:1.5;stroke-linecap:round}
.orgl circle{fill:var(--line)}
.dark .av[data-avb="orion"] svg.head>path{fill:#edecec}.dark .av[data-avb="orion"] .eyes path{fill:#0a0a0a}
.view{padding-top:24px}
/* primary row with dark tiles */
.primrow{grid-column:1/-1;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:start;margin-bottom:18px;position:relative;z-index:2}
.primrow .prim{margin:0;width:400px}
.side{display:flex;gap:10px}.side.l{justify-content:flex-end}.side.r{justify-content:flex-start}
.dtile{width:122px;height:100%;min-height:86px;border-radius:24px;background:#0a0a0a;color:#edecec;padding:12px 14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;transition:transform .2s,opacity .2s}
.dtile:hover{transform:translateY(-2px);opacity:.9}
.dtile .dk{font-size:13px;font-weight:500}.dtile b{font-size:24px;font-weight:450;letter-spacing:-.02em;line-height:1;margin-top:8px}.dtile span:last-child{font-family:GeistMono,monospace;font-size:10px;text-transform:uppercase;color:#9a9ea6}
.dark .dtile{background:#1b1b1b;border:1px solid #2b2b2b}
.mod.wide{width:560px;max-height:80vh;display:flex;flex-direction:column}.mod.xl{width:720px}
.mod h3 .hint{font-size:11px;margin-left:8px;font-weight:400}
.mlist{overflow-y:auto;margin:0 -4px;padding:0 4px}
.mod .rule{background:var(--card)}
.wfrow{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--card);margin-bottom:6px;transition:opacity .2s}
.wfrow.off{opacity:.5}.btn.sm{height:28px;padding:0 12px;font-size:12px}
.wfrow .tg{height:28px;padding:0 8px}
.tgridc{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;overflow-y:auto}
.tool{background:var(--card);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:10px}
.tool .tl{width:38px;height:38px;border-radius:11px;color:#fff;display:grid;place-items:center;font-weight:600;font-size:13px}
.tool .ok{color:var(--ok)!important}
.tteams{display:flex;flex-wrap:wrap;gap:4px}.tteams span{font-size:10.5px;padding:2px 8px;border-radius:99px;background:var(--bg);color:var(--mut)}
.net.hashl path{opacity:.15}.net.hashl path.hl{opacity:1;stroke-width:3.5}
.primrow .prim{grid-column:auto;justify-self:center}
.primrow{align-items:stretch}.primrow .prim{display:flex}.primrow .primcard{flex:1}
.dtile{width:136px;min-height:0;padding:11px 14px;white-space:nowrap}.dtile b{margin-top:4px;font-size:22px}
/* bot view */
[data-bot] .av,[data-bot] .who b,.card[data-bot]{cursor:pointer}
.bvgrid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:18px;align-items:start}
.bhero{display:flex;align-items:center;gap:22px;margin-bottom:18px}.bhero .av.xl{width:104px;height:104px}
.bmeta{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.bstats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.bstats .stat{background:var(--card);padding:12px 14px;border-radius:16px}.bstats .stat b{font-size:20px;font-weight:450}
.act{display:flex;gap:10px;align-items:baseline;padding:7px 0;border-bottom:1px solid var(--line2)}.act:last-child{border:0}.act i{width:6px;height:6px;border-radius:50%;background:var(--fg);flex:none;transform:translateY(-2px)}.act span{flex:1;line-height:1.45}.act em{font-style:normal;color:var(--mut);font-family:GeistMono,monospace;font-size:11px}
.bcols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bcols .sec{margin-bottom:18px}
.btools{display:flex;flex-wrap:wrap;gap:8px}.btool{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:99px;background:var(--bg);font-size:12.5px}.btool i{width:24px;height:24px;border-radius:8px;color:#fff;display:grid;place-items:center;font-style:normal;font-size:10px;font-weight:600}
.chat{position:sticky;top:0;height:calc(100vh - 64px - 90px);min-height:480px;border-radius:24px;display:flex;flex-direction:column;overflow:hidden;background:var(--card)}
.chead{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line2)}
.cmsgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}
.bub{display:flex;gap:8px;align-items:flex-end;max-width:88%;animation:slin .35s}.bub .av.m{width:26px;height:26px}
.bub.mine{align-self:flex-end;flex-direction:row-reverse}.btxt{padding:10px 14px;border-radius:18px 18px 18px 6px;background:var(--bg);line-height:1.5;font-size:13.5px}
.bub.mine .btxt{background:var(--pri-bg);color:var(--pri-fg);border-radius:18px 18px 6px 18px}
.bts{font-family:GeistMono,monospace;font-size:10px;color:var(--mut);margin:4px 6px 0}.bub.mine .bts{text-align:right}
.typing{display:flex;gap:4px;padding:14px 16px}.typing span{width:6px;height:6px;border-radius:50%;background:var(--mut);animation:tdot 1s infinite}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}
@keyframes tdot{0%,60%,100%{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}
.cinp{display:flex;gap:8px;padding:10px;margin:10px;border-radius:99px;background:var(--bg);border:1px solid var(--line2)}.cinp input{flex:1;border:0;outline:0;background:transparent;padding:6px 10px;font-size:14px}.cinp button{width:36px;height:36px;border-radius:50%;background:var(--pri-bg);display:grid;place-items:center}.cinp button svg{stroke:var(--pri-fg)}
.cmsgs{scroll-behavior:auto}.bub{width:fit-content;max-width:86%}.bub>div{min-width:0}.btxt{width:fit-content;max-width:100%}.bub.mine>div{display:flex;flex-direction:column;align-items:flex-end}
.bub{flex-shrink:0}
.bub{width:auto}.bub.bb{align-self:flex-start}.btxt{width:auto}.bub>div{flex:0 1 auto}
.bub .av{flex:none}
/* top-bar tiles */
.ttiles{display:flex;gap:6px;margin-left:6px;flex:none}
.ttile{height:36px;padding:0 14px 0 12px;border-radius:12px;background:#0a0a0a;color:#edecec;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;transition:opacity .2s,transform .2s;white-space:nowrap}
.ttile svg{width:16px;height:16px;opacity:.9}.ttile:hover{opacity:.85}
.dark .ttile{background:#1b1b1b;border:1px solid #2b2b2b}
.wu{margin-left:12px}
.primrow{grid-template-columns:1fr}
/* full-width inbox */
.panel{transition:width .55s cubic-bezier(.2,.8,.2,1)}
main{min-width:0;transition:flex-basis .55s}
body.pfull .panel{width:100%}
body.pfull main{flex:0 0 0;overflow:hidden}
.pexp{width:26px;height:26px;border-radius:99px;display:inline-grid;place-items:center;background:var(--bg);margin-right:2px;transition:transform .4s,background .2s}.pexp svg{width:14px;height:14px}.pexp:hover{background:var(--hover)}
body.pfull .pexp{transform:rotate(180deg)}
.fwrap{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;max-width:1240px;width:100%;margin:0 auto;padding:6px 10px;animation:slin .5s}
.fleft,.fright{display:flex;flex-direction:column;gap:16px;min-width:0}
.fnav{display:flex;align-items:center;gap:10px}.fprog{width:120px;height:4px;border-radius:9px;background:var(--track);overflow:hidden}.fprog i{display:block;height:100%;background:var(--fg);transition:width .4s}
.btn[disabled]{opacity:.35;pointer-events:none}
.fcard.dec{padding:28px;border-radius:28px;background:#fff;max-height:none;animation:slin .45s}.dark .fcard.dec{background:#161616}
.fhead{display:flex;align-items:center;gap:20px}.fhead .av.xl{width:84px;height:84px}.fname{font-size:24px;font-weight:450;letter-spacing:-.02em}
.fq{font-size:24px;line-height:1.35;letter-spacing:-.02em;margin:22px 0 14px;font-weight:450}
.fctx{background:var(--card);border-radius:18px;padding:14px 16px;line-height:1.5}.fctx p{margin-top:4px}.fctx .mut{color:var(--mut);font-size:12px}
.acts.big{margin-top:18px}.acts.big button{padding:13px 18px;font-size:14px}
.fempty{text-align:center;padding:60px 20px;background:#fff;border-radius:28px;animation:slin .5s}.dark .fempty{background:#161616}.fempty svg{width:90px;height:90px;margin-bottom:14px}.fempty .eyes path{fill:#fff}.fempty h2{font-size:30px;font-weight:450;letter-spacing:-.02em}.fempty p{color:var(--mut);margin-top:8px}
.fqueue{display:flex;flex-direction:column;gap:6px}
.fq-i{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:14px;text-align:left;background:transparent;color:var(--mut)}.fq-i span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fq-i:hover{background:rgba(255,255,255,.6)}.fq-i.on{background:#fff;color:var(--fg)}.dark .fq-i.on{background:#161616}
.fq-i .av.m{width:26px;height:26px}
.ntw{border-radius:16px;padding-bottom:6px}.ntw:hover{background:rgba(255,255,255,.6)}.dark .ntw:hover{background:#161616}.ntw .nt:hover{background:transparent}
.nrep{display:flex;gap:6px;margin:0 10px 4px 56px;padding:4px 4px 4px 12px;border-radius:99px;background:#fff;border:1px solid var(--line2)}.dark .nrep{background:#0a0a0a}
.nrep input{flex:1;border:0;outline:0;background:transparent;font-size:12.5px}.nrep button{width:26px;height:26px;border-radius:50%;background:var(--pri-bg);display:grid;place-items:center}.nrep button svg{width:13px;stroke:var(--pri-fg)}
body.pfull .panel{padding:22px 28px}
.fwrap{animation:none;height:calc(100vh - 64px - 44px)}
body.pfull.pfin .fwrap{animation:slin .5s}
.fleft{overflow-y:auto;padding-bottom:20px}.fright{overflow-y:auto;padding-bottom:20px}
body.pfull .panel{overflow:hidden}
.tool{cursor:pointer}.tool.sel{outline:2px solid var(--fg,#0a0a0a)}
.tdef{background:#0a0a0a!important;color:#fff!important}.dark .tdef{background:#fff!important;color:#0a0a0a!important}
.tdet{display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px;border-radius:16px;background:rgba(127,127,127,.1);animation:slin .3s}
.tdet .who{flex:1;display:flex;flex-direction:column}.tdet .who span{font-size:12px;opacity:.6}
.pedge{position:fixed;top:78px;right:calc(380px - 15px);width:30px;height:30px;border-radius:50%;z-index:60;display:grid;place-items:center;font-size:17px;line-height:1;padding-bottom:2px;background:var(--bg);color:var(--fg);border:1px solid var(--line2);box-shadow:0 2px 8px rgba(0,0,0,.12);cursor:pointer;transition:right .55s cubic-bezier(.2,.8,.2,1),transform .2s}
.pedge:hover{transform:scale(1.08)}
body.pfull .pedge{right:calc(100% - 44px)}
.dark .pedge{background:#161616;box-shadow:0 2px 10px rgba(0,0,0,.6)}
/* only animate newly inserted items */
.nt,.ntw .nt,.dec,.fcard.dec,.fempty,.fwrap{animation:none}
.isnew,.isnew>.nt{animation:slin .5s cubic-bezier(.2,.8,.2,1)}
body.pfull.pfin .fwrap{animation:slin .5s}
.tdet .tl{width:38px;height:38px;border-radius:11px;color:#fff;display:grid;place-items:center;font-weight:600;font-size:13px;flex:none}
.tool.sel{outline:none;box-shadow:inset 0 0 0 2px var(--fg)}
.tool .tl,.tdet .tl{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;flex:none}
.tl svg{width:22px;height:22px;fill:#fff}
.btool i{display:inline-grid;place-items:center}.btool i svg{width:60%;height:60%;fill:#fff}
.tgridc{padding:3px;scroll-padding-bottom:20px;padding-bottom:16px}
.pedge{z-index:45}
.bvgrid{grid-template-columns:minmax(0,63fr) minmax(0,37fr)}
.bdash .bstats{grid-template-columns:1fr 1fr}
.bdash .bcols{grid-template-columns:1fr;gap:0}
.bdash .bhero .av.xl{width:84px;height:84px}
.bvgrid .chat{height:calc(100vh - 64px - 90px)}
.ocol{display:flex;flex-direction:column;gap:24px;min-width:0}
.orgl{display:none}.branch:before,.branch>*:before{display:none!important}
.branch{padding-left:0}
.lnk{display:flex;align-items:center;gap:10px;padding:10px;border-radius:16px;background:var(--bg);margin-bottom:8px;color:inherit;text-decoration:none;transition:.2s}
.lnk:hover{background:var(--hover)}.lnk .who{flex:1;min-width:0;display:flex;flex-direction:column}.lnk .who span{font-family:GeistMono,monospace;font-size:11px;color:var(--mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lnk em{font-style:normal;color:var(--mut)}
.lic{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:none}.lic svg{width:15px;height:15px;fill:#fff}.lic.gen{background:var(--card);color:var(--mut);font-style:normal}
.addl{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.addl input{flex:1 1 40%;min-width:0;padding:8px 12px;border-radius:99px;border:1px solid var(--line2);background:var(--bg);color:var(--fg);font:inherit;font-size:12.5px}.addl .btn{flex:1 1 100%}
.rmod .chips{margin:4px 0 12px}
.rlist{max-height:46vh;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:2px}
.rrow{display:grid;grid-template-columns:180px minmax(0,1fr) 130px auto;gap:14px;align-items:center;padding:10px 14px;border-radius:16px;background:var(--card);transition:opacity .2s}
.rrow.off{opacity:.5}
.rsch{font-family:GeistMono,monospace;font-size:11px;color:var(--mut)}
.rti{display:flex;flex-direction:column;gap:3px;min-width:0}.rti b{font-weight:500;font-size:14px}.rti span{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--mut)}.rti .av.m{width:20px;height:20px}
.rnext{display:flex;flex-direction:column;font-size:12.5px}.rnext .hint{font-size:9.5px}
.rrow .tg{padding:6px}
.raddf{display:grid;grid-template-columns:1.3fr 1.3fr 1fr auto;gap:8px;margin-top:14px}
.raddf input,.raddf select{padding:9px 14px;border-radius:99px;border:1px solid var(--line2);background:var(--bg);color:var(--fg);font:inherit;font-size:13px;min-width:0}
.rule.paused{opacity:.45}
.ttile{padding:0 12px 0 10px}
.seg{display:inline-flex;gap:4px;padding:4px;border-radius:99px;background:var(--card);margin:2px 0 14px}
.seg button{padding:7px 16px;border-radius:99px;font-size:13px;display:flex;align-items:center;gap:7px;color:var(--mut);transition:.2s}
.seg button.on{background:var(--fg);color:var(--bg)}
.segc{font-family:GeistMono,monospace;font-size:10.5px;min-width:18px;height:18px;border-radius:99px;display:grid;place-items:center;background:rgba(127,127,127,.18);padding:0 5px}
.seg button.on .segc{background:rgba(127,127,127,.35)}
.rgrp{margin-bottom:12px}.rgh{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;margin:4px 0 6px}.rgh .hint{margin-left:auto}.rgh .av.m{width:22px;height:22px}
.tdot2{width:10px;height:10px;border-radius:3px}
.nrf select{padding:9px 12px;border-radius:99px;border:1px solid var(--line2);background:var(--bg);color:var(--fg);font:inherit;font-size:13px;flex:none;max-width:170px}
.rlvl{font-family:GeistMono,monospace;font-size:9.5px;color:var(--mut);text-transform:uppercase;margin-left:4px}
.empty.sm{padding:8px;font-size:12px}
.wfwrap{border-radius:14px;background:var(--card);margin-bottom:6px}
.wfwrap .wfrow{margin:0;background:none}
.eyeb{width:30px;height:30px;border-radius:99px;display:grid;place-items:center;color:var(--mut);background:var(--bg);transition:.2s;flex:none}.eyeb:hover{color:var(--fg)}.eyeb svg{width:15px;height:15px}
.trb{height:28px;padding:0 12px;border-radius:99px;font-size:12px;background:var(--bg);white-space:nowrap;transition:.2s;flex:none}
.trb.on{background:var(--fg);color:var(--bg)}
.trl{padding:0 12px 12px;display:flex;flex-direction:column;gap:6px;animation:slin .3s}
.tr{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:var(--bg)}
.tr .who{flex:1;min-width:0;display:flex;flex-direction:column}.tr .who b{font-weight:500;font-size:13px}.tr .who span{font-family:GeistMono,monospace;font-size:10.5px;color:var(--mut)}
.tri{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:none}.tri svg{width:14px;height:14px;fill:#fff}.tri.gen{background:var(--card);color:var(--fg)}.tri.gen svg{fill:none}
.tradd{display:flex;gap:6px}.tradd select,.tradd input{padding:6px 10px;border-radius:99px;border:1px solid var(--line2);background:var(--bg);color:var(--fg);font:inherit;font-size:12px;min-width:0}.tradd input,.tradd .trr{flex:1}.tradd .hidden{display:none}
.ttiles{transition:opacity .3s,visibility 0s}
body.subv .ttiles{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility 0s .3s}
.rbtn{height:32px;font-size:12.5px;display:inline-flex;flex:none}.rbtn svg{width:15px;height:15px}.rbtn .segc{background:rgba(255,255,255,.18);color:#edecec}
.bdash .rbtn{margin:8px 0 2px}
.rule.inh{opacity:.75}
.seeall{margin-left:auto;font-family:inherit;font-size:11px;text-transform:none;letter-spacing:0;padding:3px 10px;border-radius:99px;background:var(--bg);color:var(--fg)}
.sec h4:has(.seeall){display:flex;align-items:center}
.doc{position:relative}.doc .who{flex:1;min-width:0}
.pinb{width:28px;height:28px;border-radius:99px;display:grid;place-items:center;color:var(--mut);flex:none;transition:.2s;opacity:.6}.pinb svg{width:15px;height:15px}
.pinb:hover{opacity:1;background:var(--hover)}.pinb.on{opacity:1;color:var(--fg)}.pinb.on svg{fill:currentColor}
.dlist .doc{background:var(--card);border-radius:14px;padding:8px 10px;margin-bottom:6px;display:flex;align-items:center;gap:10px}
/* ===== monochrome: color only for teams ===== */
:root{--work:#0a0a0a;--accent:#0a0a0a;--ok:#7e8288}
.dark{--work:#edecec;--accent:#edecec;--ok:#7e8288}
.badge{color:var(--bg)}
.tool .ok{color:var(--mut)!important}
.lic,.tri{background:var(--fg)!important}.lic svg,.tri svg{fill:var(--bg)!important}.tri.gen{background:var(--card)!important;color:var(--fg)}.tri.gen svg{fill:none!important}
.btool i{background:var(--fg)!important}
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes shim{to{--ang:360deg}}
@keyframes breathe{0%,100%{box-shadow:0 0 0 1px rgba(0,0,0,.05),0 6px 26px rgba(0,0,0,.05)}50%{box-shadow:0 0 0 1px rgba(0,0,0,.08),0 10px 34px rgba(0,0,0,.10)}}
@keyframes breatheD{0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.05),0 0 22px rgba(255,255,255,.04)}50%{box-shadow:0 0 0 1px rgba(255,255,255,.09),0 0 34px rgba(255,255,255,.10)}}
.tile.busy,.wk{border-color:transparent!important;animation:breathe 3.2s ease-in-out infinite}
.dark .tile.busy,.dark .wk{animation:breatheD 3.2s ease-in-out infinite}
.tile.busy::after,.wk::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;pointer-events:none;z-index:3;
 background:conic-gradient(from var(--ang),transparent 0deg,transparent 200deg,rgba(0,0,0,.10) 250deg,rgba(0,0,0,.55) 300deg,rgba(255,255,255,.9) 318deg,rgba(0,0,0,.35) 330deg,transparent 360deg);
 -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:shim 3.6s linear infinite}
.dark .tile.busy::after,.dark .wk::after{background:conic-gradient(from var(--ang),transparent 0deg,transparent 200deg,rgba(255,255,255,.08) 250deg,rgba(255,255,255,.45) 300deg,#fff 318deg,rgba(255,255,255,.3) 330deg,transparent 360deg)}
.bot.wk,.primcard.wk{position:relative}
/* spinner: monochrome rotating highlight arc */
.ring{border:0!important;background:conic-gradient(from 0deg,transparent 0 55%,color-mix(in srgb,var(--fg) 25%,transparent) 75%,var(--fg) 100%);-webkit-mask:radial-gradient(circle,transparent 58%,#000 60%);mask:radial-gradient(circle,transparent 58%,#000 60%);animation:spin 1.1s linear infinite}
.pulse{background:var(--fg);animation:none;opacity:.8}
.chip-w.work{background:linear-gradient(100deg,var(--card2) 30%,color-mix(in srgb,var(--fg) 14%,var(--card2)) 50%,var(--card2) 70%);background-size:250% 100%;color:var(--fg);animation:sheen 2.6s linear infinite}
@keyframes sheen{from{background-position:150% 0}to{background-position:-100% 0}}
.chip-w .mini{border:0!important;background:conic-gradient(transparent 0 55%,var(--fg));-webkit-mask:radial-gradient(circle,transparent 52%,#000 56%);mask:radial-gradient(circle,transparent 52%,#000 56%)}
.chip-w.new{background:var(--card2);color:var(--fg)}
.ubar.hot i em,body.uwarn .utrack em,body.uwarn .wu em{background:var(--fg)}
.ticon{flex:none;display:block;overflow:visible}
.tname .ticon{margin-right:-2px}
.tile .tname .ticon{--ring:var(--card)}
.addcard{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:100%;border:1.5px dashed var(--line)!important;background:transparent!important;color:var(--mut);font-size:13px;cursor:pointer;transition:.2s;animation:none}
.addcard:hover{color:var(--fg);border-color:var(--fg)!important}
.addcard .plus{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--card);font-size:18px}
.thu{display:flex;align-items:center;gap:12px;margin-top:8px;max-height:0;opacity:0;overflow:hidden;transform:translateY(-4px);transition:opacity .35s,transform .35s,max-height .35s}
body.u .thu{max-height:40px;opacity:1;transform:none}
.thtrack{width:260px;height:8px;border-radius:99px;background:var(--track);overflow:hidden}
.thtrack em{display:block;height:100%;width:var(--w,0%);background:var(--tc);border-radius:99px;transition:width .6s}
.thu b{font-size:21px;font-weight:450;letter-spacing:-.02em}
.thu .hint{font-size:10px}
#tgUsage,#tgNet,#btnExpand{transition:opacity .3s,visibility 0s}
body.subv #tgUsage,body.subv #tgNet,body.subv #btnExpand,body.subv .wu{opacity:0!important;visibility:hidden!important;pointer-events:none;transition:opacity .3s,visibility 0s .3s!important}
body.pfull .ttiles,body.pfull #tgUsage,body.pfull #tgNet,body.pfull #btnExpand,body.pfull .wu{opacity:0!important;visibility:hidden!important;pointer-events:none;transition:opacity .3s,visibility 0s .3s!important}
.ttag{font-family:GeistMono,monospace;font-size:10.5px;padding:3px 8px;border-radius:99px;font-weight:500;letter-spacing:.06em;background:color-mix(in srgb,var(--tc) 14%,transparent);color:color-mix(in srgb,var(--tc) 78%,#000);align-self:center}
.dark .ttag{background:color-mix(in srgb,var(--tc) 22%,transparent);color:color-mix(in srgb,var(--tc) 70%,#fff)}
.headrow{align-items:flex-end;gap:24px}
.hright{display:flex;flex-direction:column;align-items:flex-end;gap:10px;margin-left:auto}
.hboss{width:340px;display:grid!important;grid-template-columns:auto 1fr;grid-template-areas:"crow crow" "who who" "last last" "foot foot";padding:12px 14px!important;animation:none}
.hboss .crow{grid-area:crow}.hboss .who{grid-area:who}.hboss .last{grid-area:last;-webkit-line-clamp:1!important;line-clamp:1}.hboss .cfoot{grid-area:foot}
.tvtop{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.tvtop .back{margin-bottom:0}
.hboss{width:400px;display:flex!important;align-items:center;gap:12px;padding:12px 14px!important;grid-template-areas:none}
.hbm{flex:1;min-width:0}.hbm .who span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.hbm .last{margin:4px 0 0;font-size:12px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;-webkit-line-clamp:unset}
.hba{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}
.hbm .who span.crown{display:inline;white-space:nowrap;width:auto}
.hboss .who{margin-top:0}.hboss .who b{display:flex;align-items:center;gap:0}
.hboss{min-height:0;height:auto}

.nt{position:relative}.panel .nt{padding-right:34px}
.nt .who b em{margin-left:8px}
.ndis{position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;border:1px solid rgba(10,10,10,.14);background:rgba(255,255,255,.55);color:#6b6f76;display:grid;place-items:center;padding:0;cursor:pointer;opacity:.55;transition:opacity .18s,background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}
.nt:hover .ndis,.ntw:hover .ndis{opacity:1}
.ndis:hover{color:#0a0a0a;background:#fff;border-color:rgba(10,10,10,.3);box-shadow:0 0 0 3px rgba(255,255,255,.9),0 0 14px rgba(255,255,255,.95);transform:scale(1.06)}
.ndis:active{transform:scale(.94)}
.dark .ndis{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.16);color:#9a9ea6}
.dark .ndis:hover{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.4);box-shadow:0 0 12px rgba(255,255,255,.25)}
.dismissing{overflow:hidden;opacity:0;transform:scale(.97);padding-top:0!important;padding-bottom:0!important;margin-top:0!important;margin-bottom:0!important;transition:height .32s cubic-bezier(.4,0,.2,1),opacity .22s,transform .32s,padding .32s,margin .32s;pointer-events:none;animation:none!important}
.chip .cc{font-style:normal;font-family:GeistMono,monospace;font-size:10px;opacity:.6;margin-left:5px}
.card.bosscard{position:relative;overflow:visible}
.bcrown{position:absolute;top:-9px;left:-9px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#0a0a0a;color:#fff;box-shadow:0 0 0 3px var(--bg),0 2px 8px rgba(0,0,0,.18);z-index:3;pointer-events:none}
.dark .bcrown{background:#fff;color:#0a0a0a}
/* auto-grow message fields */
textarea.ag{flex:1;min-width:0;resize:none;border:0;outline:0;background:transparent;color:inherit;font:inherit;display:block;overflow-y:hidden;transition:height .16s ease;scrollbar-width:thin}
.inp,.cinp,.nrep{align-items:flex-end;transition:border-radius .2s}
.inp button,.cinp button,.nrep button{flex:0 0 auto}
.inp{border-radius:29px}.inp textarea.ag{font-size:15.5px;line-height:22px;padding:10px 10px;height:42px}
.cinp{border-radius:29px}.cinp textarea.ag{font-size:14px;line-height:20px;padding:8px 10px;height:36px}
.nrep{border-radius:18px}.nrep textarea.ag{font-size:12.5px;line-height:18px;padding:4px 0;height:26px}
.inp.ml{border-radius:24px}.cinp.ml{border-radius:22px}.nrep.ml{border-radius:14px}
/* team notes */
.tnotes{flex:1;min-width:180px;margin-right:348px;transition:box-shadow .2s,border-color .2s,margin .3s;height:75px;align-self:center;border-radius:20px;padding:10px 14px;display:flex;flex-direction:column;gap:4px;cursor:text}
.tnotes:focus-within{border-color:var(--line2);box-shadow:0 0 0 3px rgba(255,255,255,.7),0 0 16px rgba(255,255,255,.8)}
.dark .tnotes:focus-within{box-shadow:0 0 14px rgba(255,255,255,.12)}
.tnl{font-family:GeistMono,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.tnotes textarea{flex:1;width:100%;resize:none;border:0;outline:0;background:transparent;color:inherit;font:inherit;font-size:12.5px;line-height:17px;padding:0;overflow-y:auto;scrollbar-width:thin}
.tnotes textarea::placeholder{color:var(--mut)}
body:not(.u) #teamView .thu{width:0;min-width:100%}
/* ================= mobile & tablet (≤900px) ================= */
.mbell,.mscrim,.mpclose,.btabs{display:none}
@media (max-width:900px){
 html,body{height:100%;height:100dvh}
 body{display:flex;flex-direction:column;overflow:hidden}
 .top{height:auto;flex:none;flex-wrap:wrap;padding:8px 12px 0;gap:0;position:relative;z-index:40}
 .brand{flex:1;min-width:0;height:44px}
 .brand .wu{display:none}
 body.u .brand .wu{display:flex;position:static;order:9;flex-basis:100%;margin:0 0 8px;height:36px}
 .top .tools{flex:none;gap:6px}
 .mbell{display:grid;place-items:center;position:relative;width:40px;height:40px;border-radius:50%;background:var(--sec-bg);color:var(--fg)}
 .mbell .mbn{position:absolute;top:-2px;right:-3px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--fg);color:var(--bg);font:600 10.5px/18px GeistMono,monospace;text-align:center;box-shadow:0 0 0 2px var(--bg)}
 .mbell .mbn.hide{display:none}
 .me{width:40px;height:40px;margin-left:0}
 .mbar{flex-basis:100%;display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;padding:8px 0 10px;margin:0 -12px;padding-left:12px;padding-right:12px;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
 .mbar::-webkit-scrollbar{display:none}
 .mbar .ttiles{display:flex;gap:6px;margin:0;flex:none}
 .mbar .ttile,.mbar .tg{height:40px;flex:none;white-space:nowrap;scroll-snap-align:start}
 body.subv .mbar .ttiles,body.pfull .mbar .ttiles{display:none}
 body.subv .mbar #tgUsage,body.subv .mbar #tgNet,body.subv .mbar #btnExpand{display:none}
 .layout{flex:1;min-height:0;height:auto}
 main{width:100%}
 .view{padding:16px 14px 90px;-webkit-overflow-scrolling:touch}
 .h1{font-size:24px}
 /* notification center -> slide-in sheet */
 .panel{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);z-index:80;transform:translateX(102%);transition:transform .38s cubic-bezier(.2,.8,.2,1)!important;box-shadow:-20px 0 60px rgba(0,0,0,.18);padding:58px 14px 40px;border-left:0;overscroll-behavior:contain}
 body.mnotif .panel{transform:none}
 .mscrim{display:block;position:fixed;inset:0;z-index:79;background:rgba(10,10,10,.28);opacity:0;pointer-events:none;transition:opacity .3s}
 body.mnotif .mscrim{opacity:1;pointer-events:auto}
 .mpclose{display:grid;place-items:center;position:fixed;top:10px;right:12px;z-index:81;width:40px;height:40px;border-radius:50%;background:var(--bg);border:1px solid var(--line2);font-size:15px;opacity:0;pointer-events:none;transform:translateX(30px);transition:opacity .25s,transform .35s}
 body.mnotif .mpclose{opacity:1;pointer-events:auto;transform:none}
 .pedge,[data-pexp]{display:none!important}
 .panel .ph{flex-wrap:wrap;gap:6px}
 .panel .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -14px;padding:2px 14px}.panel .chips::-webkit-scrollbar{display:none}
 .chip{min-height:40px;flex:none;white-space:nowrap}
 .acts button{min-height:40px}
 .ib{width:40px;height:40px}
 /* home */
 .net,.orgl,#orgLines{display:none!important}
 .org{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .ocol{display:contents}
 .primrow{grid-template-columns:minmax(0,1fr)!important;margin-bottom:4px}
 /* team view */
 .tvtop{flex-wrap:wrap;gap:8px}
 .tvtop .tools{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none}.tvtop .tools::-webkit-scrollbar{display:none}
 .tvtop .tools>*{flex:none;height:40px}
 .headrow{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px}
 .tnotes{margin-right:0!important;width:100%;flex:none;height:88px;align-self:stretch}
 body.u #teamView .thu{width:auto;min-width:0}
 .thtrack{width:min(260px,40vw)}
 .tgrid{grid-template-columns:minmax(0,1fr)}
 .cards{grid-template-columns:repeat(3,minmax(0,1fr))}
 .back{min-height:40px}
 /* bot view tabs */
 .btabs{display:flex;gap:4px;padding:4px;border-radius:99px;background:var(--card);margin:0 0 12px;position:sticky;top:-16px;z-index:5}
 .btabs button{flex:1;height:40px;border-radius:99px;font-weight:500;color:var(--mut);transition:background .2s,color .2s}
 .btabs button.on{background:var(--bg);color:var(--fg);box-shadow:0 1px 2px rgba(0,0,0,.08),0 0 0 1px var(--line2)}
 .bvgrid{grid-template-columns:minmax(0,1fr)!important}
 .bvgrid.bt-chat .bdash,.bvgrid.bt-dash .chat{display:none}
 .bvgrid .chat{position:relative;height:calc(var(--vvh,100dvh) - 268px)!important;min-height:340px}
 .cinp button{width:40px;height:40px}.cinp{border-radius:31px}
 /* overlays */
 .overlay{height:var(--vvh,100dvh);bottom:auto;padding:16px;overflow-y:auto;align-content:center}
 .cmp{width:100%;max-width:580px}
 .cmp .av.xl{width:72px;height:72px}
 .overlay>*{max-width:100%}
 .mod,.modal-card{max-width:calc(100vw - 32px)}
 .nrep{margin-left:12px}.nrep button{width:36px;height:36px}.nrep{border-radius:23px;padding:2px 2px 2px 12px}.nrep textarea.ag{padding:9px 0;height:36px}
}
@media (max-width:600px){
 .org{grid-template-columns:minmax(0,1fr)}
 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .brand b{font-size:15px}
 .h1{font-size:22px}
 .thero svg,.thero .ticon{max-width:48px;max-height:48px}
 .bstats{grid-template-columns:1fr 1fr!important}
}
@media (hover:none){
 .ndis{opacity:1}
 .ndis:after{content:"";position:absolute;inset:-9px}
 .tile:hover{transform:none}
}
@media (max-width:900px){
 .mbar{margin:0;padding:8px 0 10px}
 .panel{box-shadow:none}
 body.mnotif .panel{box-shadow:-20px 0 60px rgba(0,0,0,.18)}
 .primrow,.prim,.primcard{min-width:0;max-width:100%}
 .primcard .who{min-width:0;flex:1}
 .primcard .who span{white-space:normal}
}
@media (max-width:900px){
 .primrow{order:-1}
 .ocol:nth-child(4) .col:nth-child(1){order:1}.ocol:nth-child(5) .col:nth-child(1){order:2}.ocol:nth-child(6) .col:nth-child(1){order:3}
 .ocol:nth-child(4) .col:nth-child(2){order:4}.ocol:nth-child(5) .col:nth-child(2){order:5}.ocol:nth-child(6) .col:nth-child(2){order:6}
}
@media (max-width:900px){
 .ib{min-width:42px;min-height:42px}
 .thead{min-height:42px}
 .toggle{min-height:42px;padding-left:16px;padding-right:16px}
}
@media (max-width:900px){
 .panel .chips{display:flex;flex:none;height:auto;max-height:none;min-height:44px;align-items:center;gap:6px}
 .chip{display:inline-flex;align-items:center}
}

.homebtn{display:flex;align-items:center;gap:10px;padding:4px 10px 4px 4px;margin-left:-4px;border-radius:99px;font-size:16px;font-weight:500;letter-spacing:-.01em;cursor:pointer;transition:background .2s,box-shadow .2s;flex:none}
.homebtn:hover{background:var(--hover)}
.homebtn:focus-visible{outline:0;box-shadow:0 0 0 2px var(--bg),0 0 0 4px color-mix(in srgb,var(--fg) 35%,transparent)}
@media (max-width:900px){.homebtn{min-height:40px}}

.unoff{position:fixed;left:14px;bottom:12px;z-index:30;pointer-events:none;font-family:GeistMono,monospace;font-size:10px;letter-spacing:.02em;color:var(--mut);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--line2);padding:4px 10px;border-radius:99px;opacity:.85;white-space:nowrap}
@media (max-width:900px){.unoff{left:50%;transform:translateX(-50%);bottom:calc(6px + env(safe-area-inset-bottom));font-size:9px;padding:3px 9px;max-width:calc(100vw - 20px);overflow:hidden;text-overflow:ellipsis}}
