
:root{
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  --ink:#14213D; --ink-2:#3B4763; --ink-3:#6B7591;
  --paper:#EEF1F5; --sheet:#FFFFFF; --line:#D5DBE5; --line-2:#E6EAF0;
  --brass:#A87F22; --brass-soft:#F3E9CF;
  --ok:#1F7A6D; --ok-soft:#DCEFEA;
  --warn:#B86E12; --warn-soft:#FBEBD3;
  --bad:#B5402F; --bad-soft:#F7DFDA;
  --t0:#6B7591; --t1:#2F6FA8; --t2:#A87F22; --t3:#B5402F;
  --tg:#2AABEE; --tg-bg:#DCE8F2; --tg-me:#E3F7D3; --tg-them:#FFFFFF;
  --rail:#14213D; --rail-ink:#C9D1E3; --rail-active:#FFFFFF;
  --f-ui:"Public Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-disp:"Bricolage Grotesque","Public Sans",system-ui,sans-serif;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --ink:#E7ECF5; --ink-2:#B9C2D6; --ink-3:#8590A9;
    --paper:#0F1626; --sheet:#172036; --line:#2A3550; --line-2:#222C44;
    --brass:#D9B45A; --brass-soft:#3A3220;
    --ok:#4DB8A6; --ok-soft:#173A36; --warn:#E3A04A; --warn-soft:#3D2E17; --bad:#E57A68; --bad-soft:#3F211D;
    --t0:#8590A9; --t1:#6FA8DC; --t2:#D9B45A; --t3:#E57A68;
    --tg-bg:#0E1A2B; --tg-me:#2B5278; --tg-them:#182533;
    --rail:#0A101D; --rail-ink:#9AA6C0;
  }
}
:root[data-theme="dark"]{
  --ink:#E7ECF5; --ink-2:#B9C2D6; --ink-3:#8590A9;
  --paper:#0F1626; --sheet:#172036; --line:#2A3550; --line-2:#222C44;
  --brass:#D9B45A; --brass-soft:#3A3220;
  --ok:#4DB8A6; --ok-soft:#173A36; --warn:#E3A04A; --warn-soft:#3D2E17; --bad:#E57A68; --bad-soft:#3F211D;
  --t0:#8590A9; --t1:#6FA8DC; --t2:#D9B45A; --t3:#E57A68;
  --tg-bg:#0E1A2B; --tg-me:#2B5278; --tg-them:#182533;
  --rail:#0A101D; --rail-ink:#9AA6C0;
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px);height:100%}
body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font:15px/1.55 var(--f-ui);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--brass);outline-offset:2px;border-radius:4px}
h1,h2,h3{font-family:var(--f-disp);margin:0;letter-spacing:-.01em;line-height:1.15}
.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}
/* rail */
.rail{background:var(--rail);color:var(--rail-ink);padding:22px 14px;display:flex;flex-direction:column;gap:20px;position:sticky;top:0;height:100vh;overflow:auto}
.brand{display:flex;gap:10px;align-items:center;padding:0 6px;color:#fff}
.brand svg{flex:none}
.brand b{font-family:var(--f-disp);font-size:18px;font-weight:750;display:block;line-height:1.1}
.brand small{font-size:12px;color:var(--rail-ink)}
.co-card{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#fff}
.co-card .mono{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font:700 12px var(--f-disp);background:#24345A;flex:none}
.co-card span{font-size:13.5px;line-height:1.25}
.co-card em{display:block;font-style:normal;font-size:11.5px;color:var(--rail-ink)}
.co{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;border:1px solid transparent;background:transparent;text-align:left;color:var(--rail-ink);width:100%}
.co:hover{background:rgba(255,255,255,.06)}
.co[aria-pressed="true"]{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.16);color:#fff}
.co .mono{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;font:700 12px var(--f-disp);background:#24345A;color:#fff;flex:none}
.co.empty .mono{background:transparent;border:1px dashed #4A5878;color:#7D8AA8}
.co span{font-size:13.5px;line-height:1.25}
.co em{display:block;font-style:normal;font-size:11.5px;opacity:.75}
nav.tabs{display:flex;flex-direction:column;gap:2px}
.tab{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-radius:8px;border:0;background:transparent;color:var(--rail-ink);text-align:left;font-size:14px}
.tab:hover{color:#fff;background:rgba(255,255,255,.05)}
.tab[aria-current="page"]{color:var(--rail-active);background:rgba(255,255,255,.1);box-shadow:inset 3px 0 0 var(--brass)}
.tab .count{font-size:12px;background:var(--brass);color:#14213D;border-radius:20px;padding:0 7px;font-weight:600}
.rail-foot{margin-top:auto;font-size:12px;padding:0 6px;display:flex;flex-direction:column;gap:8px}
.theme-btn{background:transparent;border:1px solid #33415F;color:var(--rail-ink);border-radius:8px;padding:6px 10px;font-size:12.5px;text-align:left}
/* main */
main{padding:28px clamp(16px,3vw,40px) 60px;min-width:0}
.top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.top h1{font-size:clamp(24px,3vw,32px);font-weight:750}
.top p{margin:4px 0 0;color:var(--ink-3);max-width:70ch}
.sample{font-size:12.5px;color:var(--warn);background:var(--warn-soft);border-radius:8px;padding:6px 10px}
.grid{display:grid;gap:16px}
.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.panel{background:var(--sheet);border:1px solid var(--line);border-radius:14px;padding:18px;min-width:0}
.panel h2{font-size:17px;font-weight:650;margin-bottom:12px}
.panel h2 small{font:400 13px var(--f-ui);color:var(--ink-3);margin-left:6px}
.kpi .v{font:650 28px/1.1 var(--f-disp);margin:2px 0}
.kpi .k{font-size:13px;color:var(--ink-3)}
.kpi .d{font-size:12.5px;color:var(--ink-2)}
.two{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.three{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
/* map */
.map-wrap{position:relative}
#orgmap{width:100%;display:block}
#orgmap .node{cursor:pointer}
#orgmap .node:focus{outline:none}
#orgmap .node:focus-visible circle.ring,#orgmap .node:hover circle.ring{stroke:var(--brass);stroke-width:2.5}
#orgmap text{font-family:var(--f-ui);fill:var(--ink)}
#orgmap .edge{stroke:var(--line);stroke-width:1.5;fill:none}
#orgmap .edge.live{stroke:var(--brass);stroke-dasharray:4 6;animation:flow 1.6s linear infinite}
@keyframes flow{to{stroke-dashoffset:-20}}
@media (prefers-reduced-motion:reduce){#orgmap .edge.live{animation:none}}
.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12.5px;color:var(--ink-3);margin-top:8px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
/* lists */
.feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.feed li{display:grid;grid-template-columns:52px 1fr;gap:10px;padding:9px 0;border-top:1px solid var(--line-2);font-size:13.5px}
.feed li:first-child{border-top:0}
.feed time{color:var(--ink-3);font-size:12.5px;font-variant-numeric:tabular-nums}
.feed b{font-weight:600}
.tier{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;border-radius:6px;padding:1px 7px;white-space:nowrap}
.tier.t0{color:var(--t0);background:var(--line-2)}
.tier.t1{color:var(--t1);background:color-mix(in srgb,var(--t1) 14%,transparent)}
.tier.t2{color:var(--t2);background:var(--brass-soft)}
.tier.t3{color:var(--t3);background:var(--bad-soft)}
.pill{font-size:12px;border-radius:20px;padding:1px 9px;font-weight:500;white-space:nowrap}
.pill.ok{background:var(--ok-soft);color:var(--ok)}
.pill.warn{background:var(--warn-soft);color:var(--warn)}
.pill.bad{background:var(--bad-soft);color:var(--bad)}
.pill.mute{background:var(--line-2);color:var(--ink-3)}
/* agents */
.agent-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.agent-card{text-align:left;background:var(--sheet);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px;width:100%}
.agent-card:hover{border-color:var(--brass)}
.agent-card .row{display:flex;align-items:center;gap:10px}
.av{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font:750 15px var(--f-disp);color:#fff;flex:none}
.agent-card h3{font-size:16px}
.agent-card .role{font-size:13px;color:var(--ink-3)}
.agent-card p{margin:0;font-size:13.5px;color:var(--ink-2)}
.agent-card .meta{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--ink-3);margin-top:auto}
.section-h{font-size:15px;font-weight:650;margin:22px 0 10px;color:var(--ink-2)}
/* drawer */
.scrim{position:fixed;inset:0;background:rgba(10,16,30,.45);opacity:0;pointer-events:none;transition:opacity .2s;z-index:40}
.scrim.on{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;height:100%;width:min(560px,100%);background:var(--sheet);border-left:1px solid var(--line);z-index:41;transform:translateX(100%);transition:transform .25s ease;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.drawer.on{transform:none}
@media (prefers-reduced-motion:reduce){.drawer,.scrim{transition:none}}
.drawer header{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:center}
.drawer header h2{font-size:20px}
.drawer header .x{margin-left:auto;border:1px solid var(--line);background:transparent;border-radius:8px;width:34px;height:34px;font-size:18px}
.drawer .body{overflow:auto;padding:18px 20px 30px}
.drawer h3{font-size:14.5px;margin:18px 0 6px;color:var(--ink-2)}
.drawer ul{margin:0;padding-left:18px}
.drawer li{margin:3px 0;font-size:14px}
.mission{font-size:15px;color:var(--ink);background:var(--paper);border-left:3px solid var(--brass);padding:10px 12px;border-radius:0 8px 8px 0;margin:0}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:12.5px;border:1px solid var(--line);border-radius:20px;padding:2px 10px;background:var(--paper)}
.cmd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:1px 6px}
.ctl-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
/* buttons */
.btn{border:1px solid var(--line);background:var(--sheet);border-radius:9px;padding:7px 13px;font-size:13.5px;font-weight:500}
.btn:hover{border-color:var(--ink-3)}
.btn.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn.ok{background:var(--ok);border-color:var(--ok);color:#fff}
.btn.bad{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 40%,var(--line))}
.btn:disabled{opacity:.5;cursor:not-allowed}
/* approvals */
.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.filters button{border:1px solid var(--line);background:var(--sheet);border-radius:20px;padding:4px 12px;font-size:13px}
.filters button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.appr{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--sheet);margin-bottom:10px}
.appr h3{font-size:15.5px;font-family:var(--f-ui);font-weight:600;letter-spacing:0}
.appr .sub{font-size:13px;color:var(--ink-3);margin-top:2px}
.appr .detail{font-size:13.5px;color:var(--ink-2);margin:8px 0 0;max-width:75ch}
.appr .acts{display:flex;flex-direction:column;gap:6px;align-items:stretch;min-width:120px}
.appr.done{opacity:.72}
.pin{display:flex;gap:6px;margin-top:10px;align-items:center;flex-wrap:wrap}
.pin input{width:110px;border:1px solid var(--line);border-radius:8px;padding:6px 10px;background:var(--paper);letter-spacing:.3em}
.reason{width:100%;margin-top:10px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--paper)}
/* telegram */
.tg-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}
.tg{border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;height:min(680px,75vh);background:var(--tg-bg)}
.tg-head{background:var(--sheet);padding:10px 14px;display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--line)}
.tg-head .ava{width:36px;height:36px;border-radius:50%;background:var(--tg);display:grid;place-items:center;color:#fff;font:700 14px var(--f-disp)}
.tg-head b{display:block;font-size:14.5px}
.tg-head small{color:var(--ink-3);font-size:12px}
.tg-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:8px}
.bub{max-width:min(440px,88%);padding:8px 11px 6px;border-radius:12px;font-size:14px;line-height:1.45;white-space:pre-wrap;box-shadow:0 1px 0 rgba(0,0,0,.06)}
.bub.them{background:var(--tg-them);align-self:flex-start;border-bottom-left-radius:4px}
.bub.me{background:var(--tg-me);align-self:flex-end;border-bottom-right-radius:4px}
.bub .tm{display:block;text-align:right;font-size:11px;color:var(--ink-3);margin-top:2px}
.bub .tag{font-size:11.5px;font-weight:600;color:var(--tg)}
.kb{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:6px;max-width:min(440px,88%)}
.kb button{background:color-mix(in srgb,var(--tg) 18%,var(--tg-them));border:0;border-radius:8px;padding:7px 4px;font-size:13px;font-weight:500;color:var(--ink)}
.kb button:disabled{opacity:.45}
.tg-input{display:flex;gap:8px;padding:10px;background:var(--sheet);border-top:1px solid var(--line)}
.tg-input input{flex:1;border:1px solid var(--line);border-radius:20px;padding:8px 14px;background:var(--paper)}
.tg-input button{border:0;border-radius:20px;background:var(--tg);color:#fff;padding:8px 16px;font-weight:600}
.quick{display:flex;flex-wrap:wrap;gap:6px}
.quick button{border:1px solid var(--line);background:var(--sheet);border-radius:8px;padding:5px 10px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px}
/* pipeline */
.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);gap:12px;overflow-x:auto;padding-bottom:6px}
.col{background:var(--sheet);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px;min-height:180px}
.col h3{font:600 14px var(--f-ui);display:flex;justify-content:space-between}
.col h3 span{color:var(--ink-3);font-weight:400;font-size:12.5px}
.deal{border:1px solid var(--line-2);background:var(--paper);border-radius:10px;padding:10px;font-size:13px}
.deal b{display:block;font-size:13.5px}
.deal .val{font:650 15px var(--f-disp);margin:3px 0}
.deal .nx{color:var(--ink-3);font-size:12.5px}
/* tables */
.tbl-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{text-align:left;font-weight:600;color:var(--ink-3);font-size:12.5px;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:10px;border-bottom:1px solid var(--line-2);vertical-align:top}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
/* apps */
.app-card{display:flex;flex-direction:column;gap:6px}
.app-card .hd{display:flex;justify-content:space-between;align-items:center;gap:8px}
.app-card h3{font-size:15px;font-family:var(--f-ui);font-weight:600;letter-spacing:0}
.app-card p{margin:0;font-size:13.5px;color:var(--ink-2)}
.app-card .who{font-size:12.5px;color:var(--ink-3)}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.steps li{counter-increment:s;display:grid;grid-template-columns:36px 1fr;gap:12px;background:var(--sheet);border:1px solid var(--line);border-radius:14px;padding:16px}
.steps li::before{content:counter(s);width:32px;height:32px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font:700 14px var(--f-disp)}
.steps h3{font-size:15.5px;margin-bottom:4px}
.steps p{margin:0;font-size:14px;color:var(--ink-2);max-width:78ch}
.rules{margin:0;padding-left:18px}
.rules li{margin:6px 0;font-size:14px}
.empty-state{text-align:center;padding:48px 20px;border:1px dashed var(--line);border-radius:14px;background:var(--sheet)}
.empty-state h2{font-size:22px;margin-bottom:8px}
.empty-state p{color:var(--ink-3);max-width:56ch;margin:0 auto 16px}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:10px;font-size:14px;opacity:0;transition:.2s;z-index:60;max-width:90vw}
.toast.on{opacity:1;transform:translateX(-50%)}
.bars{width:100%;display:block}
.agent-grid.perf-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 0;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
.stats div{display:flex;flex-direction:column}
.stats b{font:650 21px/1.1 var(--f-disp)}
.stats span{font-size:12px;color:var(--ink-3)}
.kr{display:flex;flex-direction:column;gap:3px;font-size:12.5px}
.kr-top{display:flex;justify-content:space-between;gap:8px;color:var(--ink-2)}
.kr-top b{font-weight:600;color:var(--ink);white-space:nowrap}
.kr-top small{font-weight:400;color:var(--ink-3)}
.meter{height:6px;background:var(--line-2);border-radius:4px;overflow:hidden}
.meter i{display:block;height:100%;border-radius:4px;background:var(--ink)}
.meter i.ok{background:var(--ok)}.meter i.warn{background:var(--warn)}.meter i.bad{background:var(--bad)}
.krs{display:flex;flex-direction:column;gap:9px}
.win{font-size:13px;color:var(--ink-2);background:var(--paper);border-radius:8px;padding:7px 10px}
.win b{color:var(--ok);font-weight:600}
.wip{display:flex;flex-direction:column;gap:10px}
.wip-row{font-size:13.5px}
.wip-row .kr-top{margin-bottom:4px}
.spark{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;align-items:end;height:92px}
.sp-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;height:100%}
.sp-col i{display:block;width:100%;max-width:34px;border-radius:4px}
.sp-n{font-size:11.5px;font-weight:600}
.sp-d{font-size:11px;color:var(--ink-3)}
.drawer details{margin-top:22px;border-top:1px solid var(--line);padding-top:12px}
.drawer summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--ink-2)}
.funnel{display:flex;flex-direction:column;gap:8px}
.fn-row{display:grid;grid-template-columns:120px 1fr 64px;gap:10px;align-items:center;font-size:13.5px}
.fn-bar{height:26px;border-radius:6px;background:var(--line-2);overflow:hidden}
.fn-bar i{display:block;height:100%;background:var(--ink);border-radius:6px}
.fn-row:last-child .fn-bar i{background:var(--ok)}
.fn-row .n{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.cmt{display:grid;grid-template-columns:112px 1fr auto;gap:12px;padding:12px 0;border-top:1px solid var(--line-2);align-items:start}
.cmt:first-of-type{border-top:0}
.cmt .ch{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.cmt .who{font-size:12.5px;color:var(--ink-3)}
.cmt q{display:block;font-size:14px;margin:3px 0 6px;quotes:none}
.cmt .draft{font-size:13px;color:var(--ink-2);background:var(--paper);border-radius:8px;padding:7px 10px;margin-top:4px}
.cmt .acts{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
@media (max-width:620px){.cmt{grid-template-columns:1fr}.cmt .acts{flex-direction:row;align-items:center}.fn-row{grid-template-columns:96px 1fr 48px}}
.tip{position:absolute;pointer-events:none;background:var(--ink);color:var(--paper);font-size:12.5px;padding:5px 8px;border-radius:6px;opacity:0;transition:opacity .1s;white-space:nowrap}
@media (max-width:960px){
  .app{grid-template-columns:1fr}
  .rail{position:sticky;top:0;height:auto;z-index:20;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;padding-top:calc(10px + env(safe-area-inset-top,0px));margin-top:calc(-1 * env(safe-area-inset-top,0px))}
  .brand small,.rail-foot{display:none}
  .co-card{padding:6px 8px;margin-left:auto}
  .co-card em{display:none}
  .co{width:auto;white-space:nowrap;padding:6px 8px}
  .co em{display:none}
  nav.tabs{flex-direction:row;overflow-x:auto;width:100%}
  .tab{white-space:nowrap;padding:7px 10px}
  .tab[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--brass)}
  .two,.tg-wrap{grid-template-columns:1fr}
}
@media (max-width:620px){
  .appr{grid-template-columns:1fr}
  .appr .acts{flex-direction:row;flex-wrap:wrap}
  .co-card span{display:none}
  .kpi .v{font-size:22px}
}
.office-wrap{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px}
.off-scroll{overflow-x:auto;border-radius:12px}
#officeSvg{width:100%;min-width:680px;height:auto;display:block;border-radius:12px}
.off-bar{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:4px 6px 10px;font-size:13px;color:var(--ink-2)}
#offClock{font:650 18px var(--f-disp);color:var(--ink)}
.off-ctl{margin-left:auto;display:flex;gap:4px}
.btn.mini{padding:3px 9px;font-size:12.5px}
.btn.mini[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
#officeSvg .desk{cursor:pointer}
#officeSvg .desk:focus{outline:none}
#officeSvg .desk:focus-visible .ring-a,#officeSvg .desk:hover .ring-a{stroke:var(--brass);stroke-width:3}
#officeSvg .desk.paused .bob{opacity:.35}
#officeSvg .bob{animation:bob 2.6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes bob{50%{transform:translateY(-3px)}}
#officeSvg .scr{animation:typeline 1.3s steps(5) infinite;transform-box:fill-box;transform-origin:left center}
#officeSvg .desk.paused .scr{animation:none;opacity:.3}
@keyframes typeline{0%{transform:scaleX(.15)}100%{transform:scaleX(1)}}
#officeSvg .desk.ping .ring-a{animation:ping .7s ease-out}
@keyframes ping{0%{stroke:var(--brass);stroke-width:10}100%{stroke-width:0}}
#offPhone.buzz{animation:buzz .5s ease-in-out;transform-box:fill-box;transform-origin:center}
@keyframes buzz{20%{transform:rotate(-6deg)}40%{transform:rotate(6deg)}60%{transform:rotate(-4deg)}80%{transform:rotate(3deg)}}
@media (prefers-reduced-motion:reduce){#officeSvg .bob,#officeSvg .scr,#offPhone.buzz,#officeSvg .desk.ping .ring-a{animation:none}}
.lp-top{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}
.phases{list-style:none;counter-reset:ph;padding:0;margin:16px 0 0;display:flex;flex-direction:column;gap:14px}
.phases>li{counter-increment:ph}
.phases>li>h2::before{content:counter(ph);display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--paper);font-size:13px;margin-right:10px;vertical-align:1px}
.ph-sub{margin:-4px 0 12px;font-size:13.5px;color:var(--ink-3)}
.ph-h{font-size:14.5px;margin:18px 0 8px;color:var(--ink-2)}
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.fld{display:flex;flex-direction:column;gap:4px;font-size:13px}
.fld span{font-weight:600;color:var(--ink-2)}
.fld input,.fld select,.phases td select,.phases td input{border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--paper);min-width:0}
.fld small{color:var(--ink-3);font-size:12px}
.warn-note{font-size:13px;color:var(--warn);background:var(--warn-soft);padding:8px 10px;border-radius:8px}
.checks{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column}
.checks li{border-top:1px solid var(--line-2);padding:9px 0}
.checks li:first-child{border-top:0}
.checks label{display:grid;grid-template-columns:22px 1fr;gap:10px;cursor:pointer;align-items:start}
.checks input{width:18px;height:18px;margin-top:2px;accent-color:var(--ok)}
.checks b{font-weight:600;font-size:14px;display:block}
.checks small{display:block;color:var(--ink-3);font-size:12.5px;margin-top:2px}
.checks li.on b{color:var(--ink-3);text-decoration:line-through}
.checks.auto li{display:grid;grid-template-columns:22px 1fr;gap:10px;font-size:13.5px}
.checks .box{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--line);display:grid;place-items:center;font-size:12px;color:#fff}
.checks.auto li.on .box{background:var(--ok);border-color:var(--ok)}
.cmdrow{display:flex;gap:8px;align-items:center;margin-top:6px;flex-wrap:wrap}
.kit{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.kit-files{display:flex;flex-direction:column;background:var(--paper);padding:6px;gap:2px;max-height:380px;overflow:auto}
.kit-files button{text-align:left;border:0;background:transparent;padding:5px 8px;border-radius:6px;font:12.5px ui-monospace,Menlo,monospace;color:var(--ink-2);word-break:break-all}
.kit-files button[aria-selected="true"]{background:var(--ink);color:var(--paper)}
.kit-view{min-width:0;display:flex;flex-direction:column}
.kit-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line-2);font-size:13px;gap:8px}
.kit-view pre{margin:0;padding:12px;overflow:auto;max-height:340px;font:12px/1.5 ui-monospace,Menlo,monospace;background:var(--sheet);white-space:pre}
.kit-note{font-size:12.5px;color:var(--ink-3)}
.stack{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px}
.stack .box2{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;min-width:120px}
.stack .box2 b{font-size:13.5px}
.stack .box2 span{color:var(--ink-3);font-size:12px}
.stack .arr{color:var(--brass);font-weight:700}
@media (max-width:960px){.office-wrap{grid-template-columns:1fr}.kit{grid-template-columns:1fr}.kit-files{flex-direction:row;flex-wrap:wrap;max-height:none}}
.ofc{background:#0c111d;border:1px solid #1f2a40;border-radius:14px;overflow:hidden;color:#d8deea}
.ofc-bar{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#111827;border-bottom:1px solid #1f2a40}
.ofc-bar .dots{display:flex;gap:6px}.ofc-bar .dots i{width:10px;height:10px;border-radius:50%;background:#e5534b}.ofc-bar .dots i:nth-child(2){background:#e3a33a}.ofc-bar .dots i:nth-child(3){background:#46b85a}
.ofc-title{flex:1;text-align:center;font:600 11.5px ui-monospace,Menlo,monospace;color:#8a96b0;letter-spacing:.06em}
.ofc-pill{font:600 11px ui-monospace,Menlo,monospace;color:#e3b341;border:1px solid #3a3220;border-radius:6px;padding:2px 8px;white-space:nowrap}
.ofc-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:420px}
.ofc-stage{position:relative;background:radial-gradient(ellipse at 50% 40%,#1b2440,#0c111d 70%);display:flex;align-items:center;justify-content:center;padding:10px}
#ofcCanvas{width:100%;max-width:900px;aspect-ratio:372/246;image-rendering:pixelated;image-rendering:crisp-edges;display:block}
.ofc-tags{position:absolute;inset:10px;pointer-events:none}
.ofc-tag{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;border:0;background:transparent;padding:0;display:flex;flex-direction:column;align-items:center;gap:1px;cursor:pointer}
.ofc-tag .nm{font:600 10px var(--f-ui);color:#fff;background:var(--c);padding:1px 6px;border-radius:5px;white-space:nowrap;opacity:.92;box-shadow:0 1px 0 rgba(0,0,0,.3)}
.ofc-tag .emo{font-size:12px;line-height:1;min-height:12px}
.ofc-tag:focus-visible .nm,.ofc-tag:hover .nm{outline:2px solid #e3b341;opacity:1}
.ofc-chat{display:flex;flex-direction:column;border-left:1px solid #1f2a40;background:#111827;min-height:0}
.ofc-ch{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #1f2a40;font-size:13px}
.ofc-ch b{color:#fff;font-size:14px}
.ofc-on{color:#46b85a;font-size:11.5px;margin-right:auto}
.ofc-sw{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#46b85a;cursor:pointer}
.ofc-sw input{position:absolute;opacity:0;width:1px;height:1px}
.ofc-sw span{width:28px;height:16px;border-radius:9px;background:#3a4560;position:relative;transition:background .15s}
.ofc-sw span::after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform .15s}
.ofc-sw input:checked+span{background:#2e8b57}.ofc-sw input:checked+span::after{transform:translateX(12px)}
.ofc-sw input:focus-visible+span{outline:2px solid #e3b341}
.ofc-msgs{list-style:none;margin:0;padding:10px 12px;flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px;max-height:470px}
.ofc-msgs li{display:grid;grid-template-columns:30px 1fr;gap:9px;font-size:13px}
.ofc-msgs li.sys{display:block;align-self:center;font-style:italic;font-size:11.5px;color:#8a96b0;border:1px solid #2a3550;border-radius:8px;padding:2px 10px}
.ofc-av{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;font:700 10px var(--f-disp);color:#fff;image-rendering:pixelated}
.ofc-msgs .who{display:flex;gap:6px;align-items:baseline}.ofc-msgs .who b{color:#ff9b8a;font-size:13px}.ofc-msgs time{font-size:10.5px;color:#6b7591}
.ofc-msgs .tx{color:#d8deea}
.ofc-in{padding:10px;border-top:1px solid #1f2a40}
.ofc-in input{width:100%;background:#0c111d;border:1px solid #2a3550;border-radius:8px;padding:9px 11px;color:#fff;font-size:13.5px}
@media (max-width:960px){.ofc-body{grid-template-columns:1fr}.ofc-chat{border-left:0;border-top:1px solid #1f2a40}.ofc-msgs{max-height:300px;min-height:220px}.ofc-tag .nm{font-size:9px;padding:0 4px}}
/* ---------- phone layout ---------- */
[hidden]{display:none!important}
.bnav,.sheet,.m-title{display:none}
@media (max-width:760px){
  body{font-size:14.5px}
  .rail{padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top,0px));gap:8px;flex-wrap:nowrap}
  .rail nav.tabs{display:none}
  .brand b{font-size:16px}.brand svg{width:28px;height:28px}
  .m-title{display:block;flex:1;font:650 15px var(--f-disp);color:#fff;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .brand div{display:none}
  .co-card{margin-left:0;padding:4px}.co-card .mono{width:30px;height:30px}
  main{padding:16px 14px calc(88px + env(safe-area-inset-bottom,0px))}
  .top{margin-bottom:14px}.top h1{font-size:22px}.top p{font-size:13.5px}
  .sample{font-size:11.5px;padding:4px 8px}
  .grid{gap:10px}
  .kpis{grid-template-columns:1fr 1fr}
  .panel{padding:14px;border-radius:12px}
  .kpi .v{font-size:20px}.kpi .k,.kpi .d{font-size:12px}
  .appr{padding:14px;gap:10px}
  .appr .acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
  .appr .acts .btn{flex:1 1 40%;min-height:44px;font-size:14.5px;order:2}
  .appr .acts>span:last-child{order:1;margin-left:auto}
  .btn{min-height:40px}.btn.mini{min-height:32px}
  .tg{height:calc(100dvh - 250px);min-height:420px}
  .tg-wrap>.grid{display:none}
  .board{grid-auto-columns:78%;scroll-snap-type:x mandatory}.col{scroll-snap-align:start}
  .feed li{grid-template-columns:44px 1fr}
  .toast{bottom:calc(92px + env(safe-area-inset-bottom,0px))}
  .drawer{width:100%;top:auto;bottom:0;height:92dvh;border-radius:18px 18px 0 0;border-left:0;transform:translateY(100%)}
  .drawer.on{transform:none}
  .drawer header{padding:14px 16px}
  .bnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--sheet);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px))}
  .bnav button{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--ink-3);padding:4px 0;min-height:48px;position:relative}
  .bnav svg{width:24px;height:24px}
  .bnav button[aria-current="page"]{color:var(--ink)}
  .bnav button[aria-current="page"] svg{stroke:var(--brass)}
  .bnav .bd{position:absolute;top:0;left:calc(50% + 6px);background:var(--bad);color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:0 5px;min-width:16px}
  .sheet{display:block;position:fixed;left:0;right:0;bottom:0;z-index:42;background:var(--sheet);border-radius:18px 18px 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));transform:translateY(105%);transition:transform .22s ease;box-shadow:0 -10px 30px rgba(0,0,0,.18)}
  .sheet.on{transform:none}
  .sheet .grab{width:40px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 12px}
  .sheet h2{font-size:15px;margin:0 0 10px}
  .sheet .sgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
  .sheet .sgrid button{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:12px 6px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12.5px;min-height:72px}
  .sheet .sgrid button[aria-current="page"]{border-color:var(--brass)}
  .sheet .sgrid svg{width:22px;height:22px}
  .sheet .srow{display:flex;gap:8px;margin-top:12px}.sheet .srow .btn{flex:1}
  .ofc{border-radius:12px;margin:0 -4px}
  .ofc-title{display:none}
  .ofc-stage{padding:4px}
  .fgrid{grid-template-columns:1fr}
  .phases>li>h2{font-size:16px}
}
@media (max-width:760px) and (prefers-reduced-motion:reduce){.sheet{transition:none}}
.sec-modal{position:fixed;inset:0;z-index:50;display:none;align-items:center;justify-content:center;padding:16px}
.sec-modal.on{display:flex}
.sec-card{background:var(--sheet);border:1px solid var(--line);border-radius:16px;padding:22px;width:min(440px,100%);box-shadow:0 20px 50px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:10px}
.sec-card h2{font-size:19px}
.sec-card p{margin:0;font-size:14px;color:var(--ink-2)}
.sec-card .fld input{font-size:15px;padding:9px 11px}
.sec-err{color:var(--bad)!important;min-height:1.2em;font-size:13px!important}
.lock-note{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-left:4px solid var(--ok)}
.lock-note p{margin:0;font-size:14px;color:var(--ink-2);max-width:62ch}
.rcode{display:block;text-align:center;font:700 20px/1.4 ui-monospace,Menlo,monospace;letter-spacing:.06em;background:var(--paper);border:1px dashed var(--brass);border-radius:10px;padding:14px;word-break:break-all;user-select:all}
.rc-ok{display:flex;gap:8px;align-items:center;font-size:14px;margin-top:4px}
.rc-ok input{width:18px;height:18px;accent-color:var(--ok)}
.btn.linkish{border:0;background:transparent;color:var(--ink-3);text-decoration:underline;margin-left:auto}
.prod-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
.prod-bar input[type=search]{flex:1 1 240px;border:1px solid var(--line);border-radius:9px;padding:7px 11px;background:var(--paper);min-width:0}
label.btn{display:inline-flex;align-items:center;cursor:pointer}
.sub2{font-size:12px;color:var(--ink-3);font-weight:400}
.bdot{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}
.prev{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;padding:10px 12px;background:var(--paper);border-radius:10px;font-size:13px}
.prev:empty{display:none}
.prev div{display:flex;gap:8px;align-items:center}
.prev span{color:var(--ink-3)}
.bad-t{color:var(--bad);font-weight:500}
.fld[hidden]{display:none}
fieldset.fld{border:0;padding:0;margin:0;min-width:0}
fieldset.fld>span{font-weight:600;color:var(--ink-2)}
.radio-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.radio-row label{display:flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:6px 10px;font-size:13px;cursor:pointer}
.radio-row label:has(input:checked){border-color:var(--ink);background:var(--paper)}
.radio-row input{accent-color:var(--ink)}
.pl td{padding:7px 10px}
.pl td.pct{color:var(--ink-3);width:84px;font-size:12.5px}
.pl .pl-s td:first-child{padding-left:26px;color:var(--ink-2)}
.pl .pl-memo td{font-style:italic;color:var(--ink-3)!important}
.pl .pl-h td{font-weight:600;border-bottom:0;padding-top:12px}
.pl .pl-t td{font-weight:650;border-top:1px solid var(--line);background:var(--paper)}
.pl .pl-net td{font-size:15.5px}
.mg{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin:1px 0}
.mg span{font-size:11.5px;color:var(--ink-3)}
.fin2{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.halves{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
@media (max-width:960px){.fin2{grid-template-columns:1fr}}
@media (max-width:620px){
 .halves{grid-template-columns:1fr}
 table.rtbl thead{display:none}
 table.rtbl tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;padding:12px 0;border-bottom:1px solid var(--line-2)}
 table.rtbl td{border:0;padding:0;text-align:left!important;white-space:normal!important;min-width:0!important}
 table.rtbl td[data-l]::before{content:attr(data-l);display:block;font-size:11.5px;color:var(--ink-3)}
 table.rtbl td.c-full{grid-column:1/-1}
 table.rtbl td.c-edit{grid-row:1;grid-column:2;justify-self:end}
 table.rtbl td.c-sku{grid-row:1;grid-column:1}
 table.rtbl .mg{justify-content:flex-start}
 .prod-bar .ctl-row{width:100%}
 .pl{font-size:13px}
 .pl td{padding:7px 6px}
 .pl td.pct{width:52px;font-size:11.5px}
 .pl .pl-s td:first-child{padding-left:16px}
}
.kpi-link{text-align:left;font:inherit;color:inherit;cursor:pointer}
.kpi-link:hover{border-color:var(--ink-3)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.demo-intro{margin-bottom:16px;font-size:14px;color:var(--ink-2);border-left:4px solid var(--brass);max-width:none}
.demo-intro b{color:var(--ink)}
#revTip{max-width:240px}
.qline{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:10px;background:var(--paper)}
.qline .fld input,.qline .fld select{background:var(--sheet)}
.qrow{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-top:8px}
.qline .fld,.qrow>*{min-width:0}
.qline select,.qline input{width:100%;min-width:0;max-width:100%}
.qmeta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px;font-size:13px}
.qint{flex-basis:100%;border-top:1px solid var(--line);padding-top:8px}
.dp-tag{font-size:12px;border-radius:20px;padding:1px 9px;background:var(--warn-soft);color:var(--warn)}
.dp-tag.ok{background:var(--ok-soft);color:var(--ok)}
.warn-t{color:var(--warn);font-weight:500}
fieldset.dist{border:1px solid var(--line);border-radius:10px;padding:8px 12px 12px;margin:0 0 10px;min-width:0}
fieldset.dist legend{font-weight:600;font-size:13.5px;padding:0 4px}
.rfq{margin-top:12px;padding:12px;border-radius:10px;background:var(--warn-soft);font-size:13.5px}
.rfq-row{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--warn) 25%,transparent)}
.up{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:12px}
.up-card{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--paper)}
.up-card h3{font-size:15px;margin:0 0 6px}
.up-card p{margin:0;font-size:13.5px;color:var(--ink-2)}
.al-flow{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:0;margin:10px 0 14px}
.al-flow li{counter-increment:s;background:var(--paper);border-radius:10px;padding:8px 10px;font-size:12.5px;color:var(--ink-3)}
.al-flow li b{display:block;color:var(--ink);font-size:13px}
.al-flow li b::before{content:counter(s) ". "}
.al-pick{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:12px}
.al-pick button{display:flex;gap:8px;align-items:center;border:1px solid var(--line);background:var(--sheet);border-radius:10px;padding:6px 10px;text-align:left;flex:none}
.al-pick button[aria-selected="true"]{border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--brass)}
.al-pick small{display:block;font-size:11.5px;color:var(--ink-3);white-space:nowrap}
.al-pick b{font-size:13px;white-space:nowrap}
.al-card{border:1px solid var(--line);border-radius:12px;padding:14px}
.al-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px;flex-wrap:wrap}
.al-head h3{font-size:16px;margin:0 0 4px}
.al-head>div{flex:1 1 220px!important}
.al-head p{margin:0;font-size:13.5px;color:var(--ink-2);max-width:72ch}
.al-stage{border-top:1px solid var(--line-2);padding:10px 0}
.al-stage summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px;list-style:none}
.al-stage summary::-webkit-details-marker{display:none}
.al-stage summary::before{content:"▸";color:var(--ink-3);margin-right:4px}
.al-stage[open] summary::before{content:"▾"}
.al-stage summary b{flex:1}
.al-stage h4{font-size:13px;margin:12px 0 4px;color:var(--ink-2)}
.al-target{font-size:12px;color:var(--brass);font-weight:600;white-space:nowrap}
.al-fix{margin:4px 0;padding-left:20px;font-size:13.5px}
.al-log td{font-size:13px}
.al-mini{font-size:13px;margin:10px 0 0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.role-chip{font-size:12px;line-height:1.35;color:rgba(255,255,255,.75);padding:6px 10px;border:1px solid rgba(255,255,255,.14);border-radius:9px}
.role-chip:empty{display:none}
.role-pill{background:var(--ink)!important;color:var(--paper)!important}
body.ro [data-approve],body.ro [data-reject],body.ro [data-confirm],body.ro [data-rejconfirm],body.ro [data-tgapprove],body.ro [data-tgreject],
body.ro [data-sendreply],body.ro [data-convert],body.ro [data-hide],body.ro [data-pause],body.ro [data-cmd],body.ro [data-reset],
body.ro [data-erp]:not([data-erp=openquote]):not([data-erp=qpdf]):not([data-erp=exportprod]):not([data-erp=exportpnl]):not([data-erp=qrfqcopy]):not([data-erp=csvtpl]),
body.ro .tg-input,body.ro .ofc-in,body.ro #resetBtn{display:none!important}
.fld textarea{border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:var(--paper);font:inherit;resize:vertical;min-width:0}
