:root{
  --v:#221133; --v2:#2d1740;
  --pink:#ea2868; --pink2:#ff2f72; --pinkbg:#fbeaf0;
  --gold:#ffd54d;
  --bg:#f7f5fb; --card:#ffffff;
  --ink:#221133; --muted:#8a7f99; --faint:#b7add0;
  --border:#ece6f4; --border2:#dcd2ea;
  --good:#167a53; --goodbg:#e8f6ee;
  --warn:#a05a00; --warnbg:#fff3e0;
  --info:#185fa5; --infobg:#e9f1fb;
  --r:16px; --r2:11px;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
button{font-family:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:6px 24px 70px}

.top{display:flex;align-items:center;gap:20px;padding:13px 24px;background:var(--v)}
.brand{display:flex;align-items:center;gap:11px}
.logo{width:32px;height:32px;border-radius:9px;background:var(--pink);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px}
.logo-img{height:26px;width:auto;display:block}
.brand-divider{width:1px;height:26px;background:rgba(255,255,255,.18)}
.bname{color:#fff;font-weight:600;font-size:16px;letter-spacing:-.01em;line-height:1.1}
.bsub{color:#bcacd6;font-size:11px}
.search{flex:1;max-width:520px;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:9px 16px;color:#cdbfdd;font-size:13px;cursor:text}
.search:hover{background:rgba(255,255,255,.14)}
.search svg{opacity:.8}
.write{display:flex;align-items:center;gap:7px;background:rgba(255,213,77,.15);color:var(--gold);border:1px solid rgba(255,213,77,.3);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:500;white-space:nowrap}

.nav{display:flex;gap:5px;padding:11px 24px 0;background:var(--v)}
.navbtn{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;background:transparent;color:rgba(255,255,255,.66);font-size:14px;font-weight:500;cursor:pointer;border-radius:12px 12px 0 0}
.navbtn:hover{color:#fff;background:rgba(255,255,255,.08)}
.navbtn.on{background:var(--bg);color:var(--pink)}

.eyebrow{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--pink);font-weight:700}
.h{font-size:16px;font-weight:600;color:var(--v);margin:30px 0 13px}
.h .eyebrow{display:block;margin-bottom:3px}

.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(156px,1fr));gap:13px;margin-top:20px}
.metric{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px}
.metric .lab{font-size:12px;color:var(--muted);margin-bottom:6px}
.metric .val{font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1}
.metric .sub{font-size:11.5px;color:var(--muted);margin-top:7px}
.metric .sub b{color:var(--good);font-weight:600}

.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:13px}
.tile{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 17px;cursor:pointer;transition:border-color .15s,transform .12s,box-shadow .15s;text-align:left}
.tile:hover{border-color:var(--pink);transform:translateY(-2px);box-shadow:0 10px 26px rgba(34,17,51,.07)}
.tile .ic{width:36px;height:36px;border-radius:10px;background:var(--pinkbg);color:var(--pink);display:flex;align-items:center;justify-content:center;margin-bottom:11px}
.tile .tt{font-weight:600;font-size:14.5px}
.tile .dd{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.45}

.lanes{display:grid;grid-template-columns:repeat(auto-fit,minmax(146px,1fr));gap:11px}
.lane{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;position:relative;overflow:hidden}
.lane::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--faint)}
.lane.good::before{background:var(--good)}
.lane.warn::before{background:var(--warn)}
.lane .ln{font-size:24px;font-weight:600;line-height:1}
.lane .ld{font-size:12px;color:var(--muted);margin-top:5px}

.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:3px 9px;border-radius:999px;font-weight:600}
.badge.good{background:var(--goodbg);color:var(--good)}
.badge.warn{background:var(--warnbg);color:var(--warn)}
.badge.info{background:var(--infobg);color:var(--info)}
.muted{color:var(--muted)}
.loading{padding:40px;text-align:center;color:var(--muted)}

.subnav{display:flex;align-items:center;gap:4px;margin-top:20px;border-bottom:1px solid var(--border)}
.subbtn{padding:9px 16px;border:none;background:transparent;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.subbtn.on{color:var(--pink);border-bottom-color:var(--pink)}
.subbtn:disabled{opacity:.45;cursor:default}
.subnote{margin-left:auto;font-size:11.5px;color:var(--muted)}
.apintro{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:14px 0 12px;padding:11px 16px;background:var(--card);border:1px solid var(--border);border-left:4px solid var(--pink);border-radius:11px}
.apintro-t{font-size:13px;color:var(--ink);line-height:1.5}
.apintro-scope{font-size:12.5px;color:var(--muted)}

.twocol{display:grid;grid-template-columns:290px minmax(0,1fr);gap:14px;align-items:start}
.clist{display:flex;flex-direction:column;gap:5px;max-height:540px;overflow:auto;padding-right:4px}
.crow{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--border);border-radius:var(--r2);background:var(--card);cursor:pointer;text-align:left;width:100%}
.crow:hover{border-color:var(--border2)}
.crow.on{border-color:var(--pink);background:var(--pinkbg)}
.cflag{font-size:18px;line-height:1}
.cinfo{display:flex;flex-direction:column;flex:1;min-width:0}
.cname{font-size:13.5px;font-weight:600}
.cmeta{font-size:11px;color:var(--muted)}

.dpanel{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px}
.dpanel-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:13px;flex-wrap:wrap}
.dpanel-title{font-size:18px;font-weight:600}
.dlist{display:flex;flex-direction:column;gap:10px;max-height:500px;overflow:auto}
.dcard{border:1px solid var(--border);border-radius:var(--r2);padding:12px 14px}
.dcard:hover{border-color:var(--border2)}
.drow1{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.dname{font-size:14px;font-weight:600;line-height:1.3}
.dmeta{font-size:11.5px;color:var(--muted);margin-top:4px}
.dov{font-size:12.5px;margin-top:7px;line-height:1.5;color:var(--muted)}

.fbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 14px}
.lcsearch{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--border);border-radius:999px;padding:7px 14px;flex:1;min-width:240px;color:var(--muted)}
.lcsearch input{border:none;outline:none;background:transparent;font-size:13.5px;color:var(--ink);flex:1;font-family:inherit}
.lcsel{appearance:none;-webkit-appearance:none;background:var(--card);border:1px solid var(--border);border-radius:999px;padding:7px 30px 7px 13px;font-size:13px;color:var(--ink);cursor:pointer;font-family:inherit;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a7f99' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center}
.lcsel:hover{border-color:var(--border2)}
.fbar .lcsel{max-width:220px}
.seg{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--card)}
.seg button{padding:7px 16px;border:none;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;font-family:inherit}
.seg button.on{background:var(--v);color:#fff}

.lresult{font-size:12px;margin-bottom:10px}
.dlist{max-height:none;overflow:visible}
.dhead{display:flex;align-items:center;gap:10px;cursor:pointer}
.chev{color:var(--muted);font-size:13px}
.dcard.open{border-color:var(--pink)}
.ddetail{margin-top:11px;padding-top:11px;border-top:1px solid var(--border)}
.dsec{font-size:12.5px;line-height:1.5;margin-bottom:6px}
.dsec b{font-weight:600;color:var(--v)}
.evhead{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:11px 0 5px}
.evrow{display:flex;gap:10px;padding:5px 0;border-top:1px solid var(--border);font-size:12px}
.evd{color:var(--muted);white-space:nowrap;min-width:80px}
.evmain{flex:1;min-width:0}
.evid{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--pink)}

.dtable{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.dtable th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;padding:10px 14px;border-bottom:1px solid var(--border)}
.dtable td{padding:11px 14px;font-size:13px;border-top:1px solid var(--border)}
.dtable tbody tr{cursor:pointer}
.dtable tbody tr:hover{background:var(--bg)}

.morebtn{margin-top:14px;width:100%;padding:11px;border:1px dashed var(--border2);border-radius:var(--r2);background:var(--card);color:var(--pink);font-weight:600;font-size:13px;cursor:pointer;font-family:inherit}
.morebtn:hover{background:var(--pinkbg)}

/* ---- Source discovery (Explore split) ---- */
.sdintro{margin:8px 0 14px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r);background:linear-gradient(180deg,#fff,var(--bg));color:var(--muted);font-size:12.5px;line-height:1.55}
.sdmetrics{margin-top:0}
.sdmeta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 12px}
.sdfilters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 10px}
.sdsearch{flex:1 1 320px;min-width:260px}
.sdfield{appearance:none;-webkit-appearance:none;border:1px solid var(--border);background:var(--card);border-radius:999px;padding:7px 13px;font-size:13px;color:var(--ink);font-family:inherit;min-width:180px;flex:1 1 180px}
.sdfield:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 3px rgba(234,40,104,.08)}
.sdfield::placeholder{color:var(--faint)}
.sdquick{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 8px}
.sdquickbtn{border:1px solid var(--border2);background:var(--card);color:var(--ink);border-radius:999px;padding:5px 10px;font-size:11.5px;font-weight:600;cursor:pointer;font-family:inherit}
.sdquickbtn:hover{border-color:var(--pink);background:var(--pinkbg)}
.sdwrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:14px;margin-top:10px;align-items:start}
.sdlist{display:flex;flex-direction:column;gap:8px;max-height:760px;overflow:auto;padding-right:4px}
.sdcard{display:block;width:100%;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--r2);padding:12px 13px;cursor:pointer;font:inherit;color:var(--ink);transition:border-color .12s,background .12s,transform .12s}
.sdcard:hover{border-color:var(--pink);transform:translateY(-1px)}
.sdcard.on{border-color:var(--pink);background:var(--pinkbg)}
.sdcard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sdcard-title{font-size:14px;font-weight:600;line-height:1.35}
.sdcard-meta{font-size:11px;color:var(--muted);margin-top:5px}
.sdcard-snippet{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.5}
.sdcard-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.sddetailpane{position:sticky;top:12px}
.sddetail{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 17px;box-shadow:0 10px 28px rgba(34,17,51,.04)}
.sddetail-empty{padding:20px 16px;border:1px dashed var(--border2);border-radius:var(--r2);background:var(--card);color:var(--muted);font-size:13px;line-height:1.5}
.sddetail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.sddetail-title{font-size:18px;font-weight:700;line-height:1.25;color:var(--v)}
.sddetail-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.sddetail-note{margin-top:2px;padding:10px 12px;border-left:3px solid var(--pink);background:var(--pinkbg);border-radius:10px;color:var(--ink);font-size:12.5px;line-height:1.55}
.sddetail-summary{margin-top:10px;color:var(--muted);font-size:12.5px;line-height:1.55}
.sddetail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:14px}
.sddetail-row{padding:9px 10px;background:var(--bg);border:1px solid var(--border);border-radius:10px;min-width:0}
.sddetail-row span{display:block;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:4px}
.sddetail-row b{font-size:12.5px;line-height:1.45;word-break:break-word;color:var(--v)}
.sddetail-block{margin-top:12px}
.sddetail-block label{display:block;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:5px}
.sddetail-links{display:flex;flex-wrap:wrap;gap:6px}
.sddetail-links a{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:999px;border:1px solid var(--border2);background:var(--card);color:var(--info);text-decoration:none;font-size:11.5px;word-break:break-all}
.sddetail-links a:hover{border-color:var(--pink)}
.sddetail-provenance,.sddetail-guard{font-size:12.5px;color:var(--muted);line-height:1.55}
.sddetail-guard b{color:var(--v)}
.sdroadmap{margin:14px 0 10px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r);background:var(--card)}
.sdroadmap-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sdroadmap-title{font-size:16px;font-weight:700;color:var(--v);line-height:1.3}
.sdroadmap-meta{margin-top:6px;color:var(--muted);font-size:12px}
.sdroadmap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:12px}
.sdroadmap-grid div{padding:9px 10px;background:var(--bg);border:1px solid var(--border);border-radius:10px}
.sdroadmap-grid span{display:block;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:4px}
.sdroadmap-grid b{font-size:12.5px;line-height:1.5;color:var(--v);word-break:break-word}
.sdroadmap-wide{grid-column:1/-1}
.sdroadmap-path{margin-top:8px;font-size:11px;color:var(--muted);word-break:break-all}

/* ---- Review workbench (#review-Modell) ---- */
.lcsel.small{padding:5px 26px 5px 11px;font-size:12px}
.gstats{margin-top:18px;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:14px 18px}
.gstat-main{font-size:14px;color:var(--ink)}
.gstat-main b{color:var(--good);font-weight:700}
.gstat-main .sep{color:var(--faint);margin:0 4px}
.gstat-sub{margin-top:6px;font-size:11.5px;line-height:1.4;color:var(--muted)}
.gstat-sub b{color:var(--ink)}
.gstat-note{margin-top:7px;font-size:12px;line-height:1.5;color:var(--muted);border-top:1px dashed var(--border);padding-top:7px}
.gstat-note b{color:var(--ink)}
.auditgate-wrap{margin-top:16px;border-top:1px dashed var(--border);padding-top:10px}
.auditgate-wrap>summary{cursor:pointer;font-size:12.5px;font-weight:700;color:var(--muted);list-style:none;padding:4px 0}
.auditgate-wrap>summary::-webkit-details-marker{display:none}
.auditgate-wrap>summary::before{content:'▸ ';color:var(--pink)}
.auditgate-wrap[open]>summary::before{content:'▾ '}
.auditgate{margin-top:12px;background:linear-gradient(180deg,var(--card),rgba(255,255,255,.88));border:1px solid var(--border);border-left:3px solid var(--pink);border-radius:var(--r);padding:14px 16px;box-shadow:0 10px 24px rgba(34,17,51,.03)}
.auditgate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.auditgate-title{font-size:15px;font-weight:700;color:var(--v);line-height:1.3}
.auditgate-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.auditgate-line{margin-top:8px;font-size:12px;color:var(--muted);line-height:1.45}
.auditgate-line b{color:var(--ink)}
.auditgate-queue{display:flex;flex-direction:column;gap:8px;margin-top:10px;max-height:520px;overflow:auto;padding-right:2px}
.auditgate-brain{margin-top:10px;padding-top:8px;border-top:1px dashed var(--border)}
.auditgate-brain summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--v)}
.aqueue{width:100%;text-align:left;border:1px solid var(--border);border-radius:12px;background:var(--bg);padding:10px 12px;cursor:pointer;color:var(--ink);font:inherit}
.aqueue:hover{border-color:var(--pink);background:rgba(234,40,104,.04)}
.aqueue.brain{background:rgba(255,196,0,.06)}
.aqueue-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.aqueue-top b{font-size:13px;line-height:1.3;color:var(--v)}
.aqueue-sub{margin-top:4px;font-size:11.5px;line-height:1.45;color:var(--warn)}
.aqueue-meta{margin-top:4px;font-size:11px;line-height:1.45;color:var(--muted)}
.aqueue-desc{margin-top:6px;font-size:12px;line-height:1.45;color:var(--ink)}
.gbar{margin-top:10px;height:8px;border-radius:999px;background:var(--bg);overflow:hidden}
.gbar>span{display:block;height:100%;background:linear-gradient(90deg,var(--pink),var(--pink2));border-radius:999px}

.regiontree{display:flex;flex-direction:column;gap:12px}
.region{background:transparent}
.rhead{display:flex;align-items:center;gap:11px;width:100%;border:none;background:transparent;cursor:pointer;padding:6px 2px;text-align:left;color:var(--ink)}
.caret{color:var(--muted);font-size:12px;width:12px;flex-shrink:0}
.rname{font-size:15px;font-weight:700;color:var(--v)}
.rmeta{font-size:11.5px;color:var(--muted)}
.rbar{flex:1;max-width:200px;height:6px;border-radius:999px;background:var(--border);overflow:hidden;margin-left:auto}
.rbar>span{display:block;height:100%;background:var(--good);border-radius:999px}
.rbody{display:flex;flex-direction:column;gap:6px;margin-top:8px}

.cnode{border:1px solid var(--border);border-radius:var(--r2);background:var(--card);overflow:hidden}
.cnode.expanded{border-color:var(--pink)}
.cnode.locked .crow2{background:var(--goodbg)}
.crow2{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;cursor:pointer;padding:11px 13px;text-align:left;color:var(--ink)}
.crow2:hover{background:var(--bg)}
/* Denis, 02.10.2026: „Ich will, dass der Pfeil in der Dispute Workbench wesentlich
   groesser ist." Der Pfeil ist der Auf-/Zuklapp-Hinweis je Land — bei 12px und in
   Grau war er das kleinste und blasseste Element einer Zeile, die sonst aus Flagge,
   Name und zwei Plaketten besteht. Nur die LAENDER-Zeile ist betroffen; die
   Regionen-Ueberschrift (.rhead .caret) bleibt bei 12px, sonst waere die Hierarchie
   auf dem Kopf. */
.crow2 .caret{font-size:22px;width:20px;line-height:1;color:var(--v);font-weight:700}
.cname2{font-size:14px;font-weight:600;flex-shrink:0}
.cbadges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:3px 9px;border-radius:999px;font-weight:600;background:var(--bg);color:var(--muted)}
.cbar{flex:1;min-width:60px;max-width:160px;height:6px;border-radius:999px;background:var(--border);overflow:hidden;margin-left:auto}
.cbar>span{display:block;height:100%;background:linear-gradient(90deg,var(--pink),var(--pink2));border-radius:999px}

.wbboard{padding:6px 13px 14px;background:var(--bg);border-top:1px solid var(--border)}
.wbboard-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 2px}
.wbcl{background:var(--card);border:1px solid var(--border);border-radius:var(--r2);padding:13px 15px;margin-bottom:10px}
.wbcl.approved{border-left:3px solid var(--good)}
.wbcl-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.did{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--pink);background:var(--pinkbg);padding:2px 7px;border-radius:6px}
.wbcl-name{font-size:14.5px;font-weight:600}
.wbcl-badges{display:flex;align-items:center;gap:6px;margin-left:auto}
.evcount{font-size:11px;color:var(--muted)}
.wbcl-ctx{font-size:12px;color:var(--muted);margin:9px 0 4px;line-height:1.5}
.wbcl-ctx b{color:var(--v);font-weight:600}
.wbcl-events{display:flex;flex-direction:column;gap:1px;margin-top:9px}
.evr{padding:8px 0;border-top:1px solid var(--border)}
.evr-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.evr-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;color:var(--muted)}
.evr-date{font-size:11.5px;color:var(--muted);white-space:nowrap}
.evr-sub{font-size:12.5px;font-weight:600;margin-top:2px}
.evr-body{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5}

/* ---- Two-column coding workbench ---- */
.write.unlocked{background:rgba(22,122,83,.16);color:#7ce0b0;border-color:rgba(22,122,83,.4)}
#lcToast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);background:var(--v);color:#fff;padding:11px 20px;border-radius:999px;font-size:13px;font-weight:500;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:200;box-shadow:0 10px 30px rgba(34,17,51,.25)}
#lcToast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.btn-xs{border:1px solid var(--border2);background:var(--card);color:var(--ink);border-radius:8px;padding:3px 9px;font-size:11.5px;cursor:pointer;font-family:inherit}
.btn-xs:hover{border-color:var(--pink)}
.wb-dissolve{color:#b4462e;border-color:rgba(180,70,46,.35)}
.wb-dissolve:hover{background:rgba(180,70,46,.08);border-color:#b4462e}
.btn-xs.pri{background:var(--pink);color:#fff;border-color:var(--pink)}
.btn-xs.on{background:var(--goodbg);color:var(--good);border-color:transparent}
.btn-sm{border:1px solid var(--border2);background:var(--card);color:var(--ink);border-radius:9px;padding:7px 13px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit}
.btn-sm:hover{border-color:var(--pink)}
.btn-sm.pri{background:var(--pink);color:#fff;border-color:var(--pink)}
.btn-sm.warn{background:var(--warnbg);color:var(--warn);border-color:transparent}

.wb{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:14px;padding:12px 13px 16px;background:var(--bg);border-top:1px solid var(--border)}
.wb-main,.wb-board{min-width:0;overflow-x:hidden}
.wb-stats{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:10px}
.wb-stat{font-size:12px;color:var(--muted)}
.wb-stat b{font-size:16px;color:var(--ink);font-weight:700}
.wb-filters{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-bottom:10px}
.wb-search{flex:1;min-width:160px;border:1px solid var(--border);background:var(--card);border-radius:999px;padding:6px 13px;font-size:12.5px;font-family:inherit;color:var(--ink)}
.wb-f{appearance:none;-webkit-appearance:none;border:1px solid var(--border);background:var(--card);border-radius:999px;padding:6px 11px;font-size:12px;color:var(--ink);font-family:inherit;cursor:pointer}
.wb-vis{font-size:11px;color:var(--muted)}
.wb-pool{display:flex;flex-direction:column;gap:8px;max-height:680px;overflow:auto;padding-right:4px}

.wb-ev{background:var(--card);border:1px solid var(--border);border-radius:var(--r2);padding:10px 12px}
.wb-ev.assigned{opacity:.62}
.wb-ev.dragging{opacity:.4}
.wb-ev-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;cursor:grab}
.wb-ev-top[draggable="true"]:active{cursor:grabbing}
.wb-ev-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--muted);font-weight:600;display:flex;align-items:center;gap:10px}
.wb-ev-date-m{font-size:11px;color:var(--muted);white-space:nowrap}
.wb-ev-sub{font-size:12.5px;color:var(--ink);font-weight:600;font-family:-apple-system,sans-serif;margin-top:2px}
.wb-ev-date{font-size:11px;color:var(--muted);white-space:nowrap;display:flex;align-items:center;gap:6px}
.wb-ev-meta{display:flex;flex-wrap:wrap;gap:4px;margin:5px 0 2px}
.wb-cl-meta-row{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 6px;padding:0 2px}
.wb-meta-tag{font-size:10.5px;padding:2px 7px;border-radius:999px;border:1px solid transparent;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}
.wb-meta-country{background:#e8f4ff;color:#1a5a99;border-color:#b8d9f5}
.wb-meta-plat{background:#fff0f5;color:#c0144c;border-color:#ffb3cc}
.wb-meta-action{background:#f0faf5;color:#176b3a;border-color:#a8dfc0}
.wb-meta-city{background:#faf7f0;color:#7a5c1e;border-color:#e0ceaa;font-size:10px}
.wb-drag{color:var(--faint);font-size:14px}
.wb-ev-body{font-size:12px;color:var(--ink);margin-top:6px;line-height:1.5}
.wb-ev-body .src{color:var(--pink);text-decoration:none;font-weight:600}
.wb-ev-src{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px}
.wb-src-lbl{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.wb-srclink{font-size:11.5px;font-weight:700;color:var(--pink);background:rgba(234,40,104,.09);border:1px solid rgba(234,40,104,.24);border-radius:7px;padding:3px 10px;text-decoration:none;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}
.wb-srclink:hover{background:rgba(234,40,104,.18);text-decoration:underline}
.wb-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.wb-chip{font-size:10.5px;background:var(--bg);color:var(--muted);padding:2px 8px;border-radius:999px;border:1px solid var(--border)}
.wb-chip.in{background:var(--pinkbg);color:var(--pink);border-color:transparent;font-weight:600}
.wb-ev-act{display:flex;gap:7px;align-items:center;margin-top:9px}
.wb-move{flex:1;appearance:none;-webkit-appearance:none;border:1px solid var(--border2);background:var(--card);border-radius:8px;padding:5px 10px;font-size:12px;color:var(--ink);font-family:inherit;cursor:pointer}
.wb-det{display:none;margin-top:9px;padding-top:9px;border-top:1px dashed var(--border2)}
.wb-det.open{display:block}
.wb-dgrid{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px}
.wb-dgrid>div{font-size:11.5px;color:var(--ink)}
.wb-dgrid>div span{display:block;font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}
.wb-dwide{grid-column:1/-1}
.wb-dl{font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;margin:8px 0 3px}
.wb-srcs{display:flex;flex-direction:column;gap:2px}
.wb-srcs a{font-size:11px;color:var(--info);text-decoration:none;word-break:break-all}

.wb-board-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:9px}
.dsort{font-size:11.5px;color:var(--muted);display:flex;align-items:center;gap:5px}
.dsort select{appearance:none;-webkit-appearance:none;border:1px solid var(--border);background:var(--card);border-radius:8px;padding:5px 9px;font-size:12px;font-family:inherit;color:var(--ink);cursor:pointer}
.locknote{font-size:12px;color:var(--good);font-weight:600}
.wb-new{width:100%;margin-bottom:8px}
.newzone{border:1.5px dashed var(--border2);border-radius:var(--r2);padding:11px;text-align:center;font-size:12px;color:var(--muted);margin-bottom:10px}
.wb-cl-list{display:flex;flex-direction:column;gap:10px;max-height:680px;overflow:auto;padding-right:4px}
.wb-cl{background:var(--card);border:1px solid var(--border);border-radius:var(--r2);padding:12px 14px;transition:border-color .12s,background .12s}
.wb-cl.approved{border-left:3px solid var(--good)}
.wb-cl.dragover,.newzone.dragover{border-color:var(--pink);background:var(--pinkbg)}
.wb-cl-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wb-cl-name{font-size:14px;font-weight:600;outline:none;border-radius:5px;padding:1px 4px}
.wb-cl-name:empty::before{content:attr(data-placeholder);color:var(--faint);font-weight:400;font-style:italic}
.wb-cl-name[contenteditable="true"]:hover{background:var(--bg)}
.wb-cl-name[contenteditable="true"]:focus{background:var(--pinkbg)}
.wb-cl-meta{display:flex;align-items:center;gap:6px;margin-left:auto}
.wb-cl-ctx{font-size:12px;color:var(--ink);margin:8px 0 0;line-height:1.5}
.wb-cl-ctx b{color:var(--v);font-weight:600}
.wb-note{margin:9px 0}
.wb-note label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;margin-bottom:4px}
.wb-note textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:12px;font-family:inherit;color:var(--ink);resize:vertical;min-height:38px;background:var(--bg);/* Waechst mit dem Text mit, damit niemand das Feld von Hand aufziehen muss (Denis 24.09.2026). field-sizing koennen neuere Chrome/Edge; fuer alle anderen setzt leeds-cockpit.js die Hoehe. max-height deckelt sehr lange Notizen. */field-sizing:content;max-height:60vh;overflow-y:auto}
.wb-empty{font-size:12px;padding:10px;text-align:center;border:1px dashed var(--border2);border-radius:8px;margin-top:8px}
.wb-mini{display:flex;align-items:flex-start;gap:8px;padding:7px 0;border-top:1px solid var(--border);flex-wrap:wrap}
.wb-mini-tog{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;padding:2px 0 0}
.wb-mini-main{flex:1;min-width:0;font-size:12px}
.wb-mini-main strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--ink)}
/* Denis 21.09.2026: type-of-action chip in the dispute workbench event rows (Leeds palette only) */
.wb-mini-id{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}
.wb-act{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.02em;padding:1px 7px;border-radius:6px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;border:1px solid transparent}
.wb-act.act-demo{color:var(--pink);background:var(--pinkbg);border-color:#f3bdd1}
.wb-act.act-strike{color:var(--warn);background:var(--warnbg);border-color:#f0d9b5}
.wb-act.act-legal{color:var(--info);background:var(--infobg);border-color:#c9dcf3}
.wb-act.act-inst{color:var(--good);background:var(--goodbg);border-color:#bfe3d0}
.wb-act.act-other{color:var(--muted);background:var(--bg);border-color:var(--border2)}
.wb-mini-sum{font-size:12px;color:var(--ink);line-height:1.5;margin-top:3px}
.wb-mini .wb-det{flex-basis:100%}
@media(max-width:900px){.wb{grid-template-columns:1fr}.wb-main,.wb-board{overflow-x:hidden}.sdwrap{grid-template-columns:1fr}.sddetailpane{position:static}.sddetail-grid,.sdroadmap-grid{grid-template-columns:1fr}}

/* timeline · why-grouped · desc · stale */
.tl{display:flex;align-items:center;gap:8px;margin:8px 0 2px;flex-wrap:wrap}
.tlbar{position:relative;height:4px;background:var(--border);border-radius:999px;flex:1;min-width:120px}
.tlbar i{position:absolute;top:50%;width:7px;height:7px;border-radius:50%;background:var(--pink);transform:translate(-50%,-50%)}
.tlspan{font-size:10.5px;color:var(--muted);white-space:nowrap}
.tlgap{font-size:10.5px;color:var(--warn);background:var(--warnbg);padding:1px 7px;border-radius:999px}
.wb-cl-desc{font-size:12px;color:var(--ink);line-height:1.5;margin-top:7px;cursor:pointer}
.wb-cl-desc.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wb-why{font-size:11.5px;color:var(--ink);margin-top:6px;line-height:1.45}
.wb-why b{color:var(--v);font-weight:600}
.wb-cl.stale{border-left:3px solid var(--warn)}

/* ---- Dispute card tab-switcher (Dispute / Outcome) ---- */
.wb-card-tabs{display:flex;border-bottom:1px solid var(--border);margin:8px -14px 0;padding:0 14px;background:var(--bg)}
.wb-card-tab{padding:6px 13px;font-size:11.5px;font-weight:600;color:var(--muted);border:none;background:transparent;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.wb-card-tab.active{color:var(--pink);border-bottom-color:var(--pink)}
.wb-card-panel{display:none;padding-top:10px}
.wb-card-panel.active{display:block}

/* Outcome panel fields */
.wb-oc-field{margin:9px 0}
.wb-oc-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;margin-bottom:4px}
.wb-oc-hint{font-weight:400;text-transform:none;letter-spacing:0;font-style:italic;font-size:10px}
.wb-oc-ta{width:100%;border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:12px;font-family:inherit;color:var(--ink);resize:vertical;min-height:54px;background:var(--bg)}
.wb-oc-ta:focus{outline:none;border-color:var(--pink);background:#fff}

/* URL list */
.wb-oc-url-list{display:flex;flex-direction:column;gap:4px;margin-bottom:5px}
.wb-oc-url-row{display:flex;align-items:center;gap:5px}
.wb-oc-url-link{flex:1;font-size:11.5px;color:var(--pink);text-decoration:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:5px 9px;border:1px solid var(--border);border-radius:7px;background:var(--bg);display:block}
.wb-oc-url-link:hover{text-decoration:underline}
.wb-oc-url-input{flex:1;border:1px solid var(--border);border-radius:7px;padding:5px 9px;font-size:12px;font-family:inherit;color:var(--ink);background:var(--bg)}
.wb-oc-url-input:focus{outline:none;border-color:var(--pink);background:#fff}
.wb-oc-url-del{font-size:12px;color:var(--muted);cursor:pointer;border:none;background:transparent;padding:0 2px;line-height:1;flex-shrink:0}
.wb-oc-url-del:hover{color:var(--pink)}
.wb-oc-scrape-status{font-size:11px;flex-shrink:0;color:var(--muted);min-width:14px;text-align:center}
.wb-oc-deepscrape{font-size:11px;flex-shrink:0;cursor:pointer;border:none;background:transparent;padding:0 2px;line-height:1;color:var(--muted);opacity:.5}
.wb-oc-deepscrape:hover{opacity:1}
.wb-oc-add{font-size:11.5px;font-weight:600;color:var(--pink);background:transparent;border:none;cursor:pointer;padding:0}
.wb-oc-add:hover{text-decoration:underline}

/* Dropzone */
.wb-oc-dropzone{border:2px dashed var(--border2);border-radius:9px;padding:14px 12px;text-align:center;background:var(--bg);cursor:pointer;transition:border-color .12s,background .12s;margin-bottom:7px}
.wb-oc-dropzone.drag{border-color:var(--pink);background:var(--pinkbg)}
.wb-oc-drop-icon{font-size:18px;margin-bottom:2px}
.wb-oc-drop-text{font-size:12px;color:var(--ink)}
.wb-oc-drop-browse{color:var(--pink);font-weight:600;cursor:pointer}
.wb-oc-drop-browse:hover{text-decoration:underline}
.wb-oc-drop-hint{font-size:10.5px;color:var(--muted);margin-top:2px}

/* Uploaded file list */
.wb-oc-file-list{display:flex;flex-direction:column;gap:4px}
.wb-oc-file-row{display:flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid var(--border);border-radius:7px;background:var(--card);font-size:12px}
.wb-oc-file-icon{font-size:13px;flex-shrink:0}
.wb-oc-file-name{flex:1;color:var(--ink);font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}
.wb-oc-file-size{font-size:10.5px;color:var(--muted);flex-shrink:0}
.wb-oc-save-row{display:flex;align-items:center;gap:8px;padding-top:9px;border-top:1px solid var(--border);margin-top:5px}
.wb-oc-save-hint{font-size:11px;color:var(--good)}

/* focus mode */
#lcFocus{position:fixed;inset:0;background:rgba(34,17,51,.55);display:flex;align-items:center;justify-content:center;z-index:300;padding:20px}
.focus-card{background:var(--card);border-radius:var(--r);padding:22px 24px;width:min(640px,94vw);max-height:90vh;overflow:auto;box-shadow:0 24px 70px rgba(34,17,51,.4)}
.focus-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:12px}
.focus-head strong{flex:1;font-size:15px}
.focus-title{font-size:17px;font-weight:600;margin:4px 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.focus-desc{font-size:13px;line-height:1.6;margin:10px 0;color:var(--ink)}
.focus-chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.fchip{display:inline-flex;align-items:center;gap:6px;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:11.5px}
.fchip strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;color:var(--ink)}
.chiprm{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:11px;padding:0}
.focus-add{margin:10px 0}
.focus-add #lcFocusAddPanel{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.focus-add #lcFocusAddFilter{border:1px solid var(--border);border-radius:8px;padding:6px 10px;font-size:12px;font-family:inherit}
#lcFocusAddList{display:flex;flex-wrap:wrap;gap:5px;max-height:160px;overflow:auto}
.focus-add .hidden{display:none}
.focus-actions{display:flex;gap:10px;margin-top:16px}
.focus-actions .btn-sm{flex:1;padding:11px;font-size:14px}
.focus-ev-card{background:var(--bg);border-radius:10px;padding:14px 16px;margin:12px 0;display:grid;gap:6px}
.focus-ev-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700;color:var(--ink);margin-bottom:2px}
.focus-ev-row{display:flex;gap:10px;font-size:12.5px;line-height:1.4}
.focus-ev-label{color:#8c7483;min-width:90px;flex-shrink:0;font-weight:600}
.focus-ev-summary{font-size:12.5px;line-height:1.55;color:var(--ink);margin-top:6px;border-top:1px solid var(--border);padding-top:8px}
.focus-ev-why{margin-top:8px;border-top:1px solid var(--border);padding-top:8px}
.focus-ev-why-label{color:#8c7483;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.focus-ev-why-text{font-size:12.5px;line-height:1.55;color:var(--ink);font-style:italic}
.focus-ev-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.btn-sm.warn{background:#5a2020;color:#ffcdd2;border-color:#7a3030}

/* popover */
#lcPop{position:fixed;background:var(--card);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 24px 70px rgba(34,17,51,.3);width:min(560px,92vw);max-height:78vh;overflow:auto;z-index:320;padding:16px 18px;display:none}
#lcPop.show{display:block}
.pop-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:9px}
.pop-abstract{font-size:12.5px;line-height:1.55;color:var(--ink);background:var(--bg);padding:10px 12px;border-radius:9px;margin-bottom:10px}
.pop-table{width:100%;border-collapse:collapse;font-size:12px;margin-bottom:8px}
.pop-table td{padding:3px 6px;border-bottom:1px solid var(--border);vertical-align:top}
.pop-table td:first-child{color:var(--muted);width:96px;white-space:nowrap}
.pop-sum{font-size:12.5px;line-height:1.55;color:var(--ink)}
.pop-links{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}
.pop-links a{color:var(--info);text-decoration:none}
.pop-artbar{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 8px}
.pop-artview{font-size:12px;line-height:1.6;white-space:pre-wrap;max-height:300px;overflow:auto;background:var(--bg);padding:11px 13px;border-radius:9px}
.wb-ev.ev-approved{border-left:3px solid var(--good);opacity:1}
.wb-chip.se{background:var(--infobg);color:var(--info);border-color:transparent;font-weight:600}

/* ---- Actor-Edge Review workbench ---- */
.p4seg button{padding:6px 12px;font-size:12px}
.p4head{margin-bottom:12px}
.p4head-t{font-size:19px;font-weight:800;color:var(--ink)}
.p4head-s{font-size:13px;color:var(--muted);margin-top:3px;max-width:720px;line-height:1.5}
.p4state{background:var(--card);border:1px solid var(--border);border-radius:13px;padding:16px 20px;margin-bottom:12px}
.p4state-err{border-left:4px solid var(--warn)}
.p4state-h{font-size:15px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:9px}
.p4state-m{font-size:12.5px;color:var(--muted);margin:5px 0 10px;line-height:1.5}
.p4spin{width:14px;height:14px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--pink);display:inline-block;animation:p4spin .8s linear infinite}
@keyframes p4spin{to{transform:rotate(360deg)}}
.p4skel{display:flex;flex-direction:column;gap:8px}
.p4skel-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--card);border:1px solid var(--border);border-radius:11px;padding:14px 16px}
.p4skel-l{display:flex;flex-direction:column;gap:7px}
.p4skel-b{height:11px;border-radius:6px;background:linear-gradient(90deg,#e9e4f0 25%,#f4f0f8 50%,#e9e4f0 75%);background-size:400% 100%;animation:p4shim 1.3s ease infinite;display:inline-block}
.p4skel-b.w60{width:220px}.p4skel-b.w40{width:130px}.p4skel-b.w20{width:64px}
@keyframes p4shim{0%{background-position:100% 0}100%{background-position:-100% 0}}
.actorwrap{display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px;align-items:start}
.acmaster{position:sticky;top:8px}
.aclist{display:flex;flex-direction:column;gap:5px;max-height:78vh;overflow:auto;padding-right:4px}
.acrow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 8px;padding:9px 11px;border:1px solid var(--border);border-radius:var(--r2);background:var(--card);cursor:pointer;text-align:left;width:100%}
.acrow:hover{border-color:var(--border2)}
.acrow.on{border-color:var(--pink);background:var(--pinkbg)}
.acrow-main{grid-column:1 / -1;min-width:0;display:flex;flex-direction:column}
.acname{font-size:13px;font-weight:600;overflow:hidden;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:normal;overflow-wrap:anywhere}
.acrow .actype,.acrow .badge{white-space:nowrap;line-height:1.15}
.acmeta{font-size:10.5px;color:var(--muted)}
.actype{font-size:10px;padding:2px 8px;border-radius:999px;font-weight:600;white-space:nowrap}
.tp-mainstream{background:#e9f1fb;color:#185fa5}
.tp-grassroots{background:#e8f6ee;color:#167a53}
.tp-collective{background:#fbeaf0;color:#b3245a}
.tp-lawfirm{background:#fff3e0;color:#a05a00}
.tp-party{background:#efeafc;color:#5b3aa6}
.tp-other{background:var(--bg);color:var(--muted)}

/* ---- Country view (actors by country_iso) ---- */
.btn-sm.cv-on{background:var(--goodbg);color:var(--good);border-color:transparent}
.cv-hdr{font-size:12px;margin:14px 0 10px;padding:0 2px}
.cv-grid{display:flex;flex-direction:column;gap:10px}
.cv-block{background:var(--card);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.cv-bh{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--border);flex-wrap:wrap}
.cv-iso{font-size:13px;font-weight:700;color:var(--ink);min-width:40px}
.cv-btotal{font-size:12px;white-space:nowrap}
.cv-bstage{font-size:11.5px}
.cv-blist{display:flex;flex-direction:column}
.cv-ar{display:grid;grid-template-columns:minmax(0,1fr) 90px 50px 130px;align-items:center;gap:6px;padding:5px 14px;border-top:1px solid var(--border);font-size:12.5px}
.cv-ar:first-child{border-top:none}
.cv-an{font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cv-at{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cv-ae{font-size:11px;text-align:right;white-space:nowrap}
.cv-stg{font-size:10.5px;font-weight:600;text-align:right;white-space:nowrap}
.cv-stg-approved{color:var(--good)}
.cv-stg-ready{color:var(--warn)}
.cv-stg-brain{color:#8b5cf6}
.cv-stg-hidden{color:var(--faint)}
@media(max-width:700px){.cv-ar{grid-template-columns:minmax(0,1fr) 50px}.cv-at,.cv-ae{display:none}}

.acard{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:18px 20px}
.acard.locked{border-left:3px solid var(--good)}
.acard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.avariants{font-size:11.5px;color:var(--warn);background:var(--warnbg);border-radius:8px;padding:6px 10px;margin-bottom:8px;line-height:1.5}
.acrow-chip{background:var(--border);border-radius:5px;padding:1px 6px;font-size:10.5px;margin-left:4px;font-family:monospace}
.acard-name{font-size:18px;font-weight:600;line-height:1.25}
.acard-sub{font-size:11.5px;color:var(--muted);margin-top:3px}
.atags{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.abadges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.abadge{font-size:10.5px;padding:2px 9px;border-radius:999px;font-weight:600}
.abadge.good{background:var(--goodbg);color:var(--good)}
.abadge.warn{background:var(--warnbg);color:var(--warn)}
.averify{margin-top:10px;font-size:12px;color:var(--warn);background:var(--warnbg);border-radius:9px;padding:8px 11px;line-height:1.45}
.asec{margin-top:14px}
.asec>label{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;margin-bottom:5px}
.asec-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.atext{width:100%;border:1px solid var(--border);border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;color:var(--ink);resize:vertical;min-height:80px;background:var(--bg);line-height:1.5}
.atext.small{min-height:44px}
.anarrative{font-size:13px;line-height:1.62;color:var(--ink);background:var(--bg);border:1px solid var(--border);border-radius:9px;padding:12px 13px;white-space:pre-wrap;overflow-wrap:anywhere}
.anarrative .nref{font-weight:700;color:var(--info);text-decoration:none}
.anarrative .nurl{color:var(--info);font-weight:600;text-decoration:none}
.anarrative .nref:hover,.anarrative .nurl:hover{text-decoration:underline}
.acard-section{margin-top:10px}
.acard-section-h,.asec-sub-h,.aqueue-candidate-h{font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:6px}
.bmgchain{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.bmg-arrow{color:var(--muted);font-weight:700}
.bmg-src{color:var(--info);font-size:12px;font-weight:700;text-decoration:none}
.bmg-src:hover{text-decoration:underline}
.owchain-link{display:inline-flex;flex-direction:column;align-items:flex-start;padding:3px 8px;line-height:1.3}
.owchain-meta{font-size:10px;color:var(--muted);font-weight:400;white-space:nowrap}
.owchain-status{background:var(--info-bg,rgba(100,160,255,.12));color:var(--info);font-size:10.5px;border-radius:5px;padding:2px 7px}
.corp-brand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:8px}
.corp-brand-card{border:1px solid var(--border);border-radius:10px;background:var(--bg);padding:11px 12px;min-width:0}
.corp-brand-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.corp-brand-title,.corp-row-title,.corp-detail-title{display:flex;align-items:center;gap:8px;min-width:0}
.corp-row-main{min-width:0}
.corp-logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:26px;height:26px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--muted);font-size:10px;font-weight:800;line-height:1;overflow:hidden}
.corp-logo img{width:100%;height:100%;object-fit:contain;padding:3px;box-sizing:border-box}
.corp-logo.sm{width:22px;height:22px;border-radius:7px;font-size:9px}
.corp-logo.md{width:30px;height:30px;border-radius:8px}
.corp-logo.lg{width:44px;height:44px;border-radius:11px;font-size:13px}
.corp-logo.proxy{border-style:dashed}
.corp-logo.unresolved{border-color:var(--warn);background:var(--warnbg)}
.corp-logo.missing{background:var(--pinkbg);color:var(--v)}
.corp-brand-open{border:none;background:transparent;color:var(--v);font:inherit;font-size:13px;font-weight:700;line-height:1.3;text-align:left;padding:0;cursor:pointer;min-width:0;overflow-wrap:anywhere}
.corp-brand-open:hover{color:var(--pink);text-decoration:underline}
.corp-chainline{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.corp-brand-profile{margin-top:8px;color:var(--ink);font-size:12px;line-height:1.55;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}
.corp-mini-meta{margin-top:7px;color:var(--muted);font-size:11px;line-height:1.45}
.corp-diagram-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:14px;align-items:start}
.corp-diagram{display:flex;flex-direction:column;gap:14px;max-height:78vh;overflow:auto;padding-right:4px}
.corp-tree{border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg,#fff,var(--bg));padding:12px}
.corp-mother-layer{display:flex;flex-direction:column;gap:10px;margin-top:10px;padding-left:20px;border-left:2px solid var(--border)}
.corp-mother-branch{position:relative}
.corp-mother-branch::before{content:"";position:absolute;left:-20px;top:19px;width:16px;border-top:2px solid var(--border)}
.corp-brand-layer{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px;padding-left:18px}
.corp-node{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:8px 10px;text-align:left;font:inherit;color:var(--ink);cursor:pointer;min-width:0;box-shadow:0 3px 10px rgba(34,17,51,.03)}
.corp-node:hover{border-color:var(--pink)}
.corp-node.on{border-color:var(--pink);background:var(--pinkbg)}
.corp-node span{display:block;font-size:12.5px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.corp-node b{display:block;margin-top:3px;font-size:10.5px;color:var(--muted);font-weight:600;line-height:1.25}
.corp-node-grand{width:100%;background:#f8f4fb}
.corp-node-grand span{font-size:13.5px;color:var(--v)}
.corp-node-mother{min-width:min(360px,100%)}
.corp-node-direct{background:#fffaf3;border-style:dashed}
.corp-node-brand{border-radius:999px;padding:6px 10px;max-width:250px;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:7px;align-items:center}
.corp-node-brand span{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.corp-node-brand b{font-size:9.5px;grid-column:2}
.muted-node{cursor:default;border-style:dashed}
.corp-diagram-empty{border:1px dashed var(--border2);border-radius:13px;background:var(--bg);padding:16px;color:var(--muted);font-size:13px}
.acard-candidate,.aqueue-candidate{margin-top:10px;background:rgba(51,153,255,.05);border:1px solid rgba(51,153,255,.18);border-radius:10px;padding:10px 11px}
.acand-meta,.aqueue-candidate-top,.aqueue-candidate-meta{font-size:11px;color:var(--muted);line-height:1.45}
.acand-text,.aqueue-candidate-text{margin-top:4px;font-size:12px;line-height:1.5;color:var(--ink)}
.acard-candidate a,.aqueue-candidate a{color:var(--info);text-decoration:none;font-weight:700}
.acard-candidate a:hover,.aqueue-candidate a:hover{text-decoration:underline}
.aquality{margin-top:10px;font-size:12px;color:var(--warn);background:var(--warnbg);border-radius:9px;padding:8px 11px;line-height:1.45}
.aquality.audit{color:var(--pink);background:rgba(234,40,104,.08)}
.agenmeta{font-size:10.5px;color:var(--muted);margin-top:5px}
.astub{font-size:11.5px;color:var(--warn);background:var(--warnbg);border-radius:8px;padding:6px 10px;margin-top:6px}
.aevid-box{font-size:12px;color:var(--ink);background:var(--bg);border-radius:9px;padding:8px 11px;line-height:1.5}
.aflags{display:flex;flex-wrap:wrap;gap:5px}
.aflag{font-size:10.5px;padding:2px 9px;border-radius:999px;font-weight:600}
.aflag.bad{background:#fdeaea;color:#b3261e}
.aflag.warn{background:var(--warnbg);color:var(--warn)}
.aflag.good{background:var(--goodbg);color:var(--good)}
.abrief{font-size:12px;line-height:1.55;color:var(--ink)}
.abrief details,.asrcs details{margin-top:6px}
.abrief summary,.asrcs summary{cursor:pointer;color:var(--pink);font-size:11.5px;font-weight:600}
.asec-sub{margin-top:10px}
.asec-sub:first-of-type{margin-top:0}
.asec-sub .asrcs{margin-top:6px}
.asrcs{display:flex;flex-direction:column;gap:6px;font-size:12px}
.asrcs a{color:var(--info);text-decoration:none}
.asrc-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:start;border:1px solid var(--border);border-radius:8px;background:var(--bg);padding:7px 9px}
.asrc-ref{font-family:ui-monospace,Menlo,monospace;font-size:11px;font-weight:700;color:var(--pink)}
.asrc-title{min-width:0;overflow-wrap:anywhere;color:var(--ink)}
.asrc-links{display:flex;gap:7px;white-space:nowrap;font-weight:700}
.asrc-status{font-size:10.5px;color:var(--muted);white-space:nowrap}
.asrc-text{grid-column:1/-1;font-size:11.5px;line-height:1.45;color:var(--muted);margin-top:1px}
.aquel{white-space:pre-wrap;font-size:11px;background:var(--bg);padding:9px;border-radius:8px;max-height:240px;overflow:auto;margin-top:6px}
.aedges{display:flex;flex-direction:column;gap:8px}
.aedge{border:1px solid var(--border);border-radius:var(--r2);padding:10px 12px;background:var(--bg)}
.aedge-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.eid-chip{font-family:ui-monospace,Menlo,monospace;font-size:10.5px;color:var(--pink);background:var(--pinkbg);border:none;padding:2px 8px;border-radius:6px;cursor:pointer}
.esurf{font-size:12.5px;font-weight:600;flex:1;min-width:0}
.aedge-meta{font-size:11.5px;color:var(--muted);margin-top:4px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.etype{font-weight:600;color:var(--v)}
.erole{background:var(--infobg);color:var(--info);padding:1px 7px;border-radius:999px;font-size:10px;font-weight:600}
.aedge-evid{font-size:11.5px;color:var(--muted);font-style:italic;margin-top:5px}
.aedge-act{display:flex;gap:6px;margin-top:8px}
.acard-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}
@media(max-width:920px){.actorwrap{grid-template-columns:1fr}.acmaster{position:static}.asec-row{grid-template-columns:1fr}}
@media(max-width:640px){
  .wrap{padding:6px 16px 70px}
  .top{flex-wrap:wrap;align-items:center;gap:12px 12px;padding:12px 16px}
  .brand{flex:1 1 auto;min-width:0}
  .bname{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .bsub{display:none}
  .write{order:2;flex:0 0 auto;margin-left:auto;padding:6px 12px;font-size:12px}
  .search{order:3;flex:1 1 100%;max-width:none;border-radius:14px}
  .nav{gap:2px;padding:8px 10px 0;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .nav::-webkit-scrollbar{display:none}
  .navbtn{flex:0 0 auto;padding:9px 14px;font-size:13.5px;white-space:nowrap}
  .fbar .seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;border-radius:14px}
  .fbar .seg button{min-width:0;padding:8px 9px;line-height:1.2}
  .fbar .lcsel{flex:1 1 calc(50% - 6px);max-width:none;min-width:0}
  .acrow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 8px}
  .acrow-main{grid-column:1 / -1}
  .acname{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .acrow .actype,.acrow .badge{white-space:normal;line-height:1.15;text-align:center}
}

/* ---- Explore ---- */
.exsearch{display:flex;align-items:center;gap:11px;background:var(--card);border:1px solid var(--border);border-radius:999px;padding:12px 20px;margin:16px 0 20px;color:var(--muted);box-shadow:0 2px 12px rgba(34,17,51,.05)}
.exsearch input{border:none;outline:none;background:transparent;font-size:15px;color:var(--ink);flex:1;font-family:inherit}
a.tile,button.tile{display:block;text-decoration:none;color:inherit;font-family:inherit;text-align:left;width:100%}
.tile.exlink .tt,.tile.exgo .tt{color:var(--v)}
.exsec{margin-bottom:18px}
.exsec-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;margin-bottom:8px}
.exrow{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:1px solid var(--border);background:var(--card);border-radius:var(--r2);padding:10px 13px;cursor:pointer;margin-bottom:5px;font-family:inherit}
.exrow:hover{border-color:var(--pink)}
.exrow-main{flex:1;min-width:0;font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.exempty{padding:10px 2px;font-size:12.5px}

/* ---- Operate (redesign) ---- */
.op-ns{background:linear-gradient(120deg,var(--v),var(--v2));color:#fff;border-radius:var(--r);padding:18px 22px;margin-top:18px}
.op-ns-eyebrow{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);font-weight:700}
.op-ns-big{font-size:17px;font-weight:600;margin-top:5px}
.op-ns-big b{font-size:22px}
.op-ns-big .muted{color:#bcacd6;font-weight:400;font-size:13px}
.op-ns-bar{height:7px;border-radius:999px;background:rgba(255,255,255,.14);margin-top:12px;overflow:hidden}
.op-ns-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--pink),var(--gold));border-radius:999px}
.op-h{font-size:13px;font-weight:700;color:var(--v);margin:24px 0 12px;text-transform:uppercase;letter-spacing:.04em}
.op-pipe{display:flex;align-items:stretch;gap:6px;overflow-x:auto;padding-bottom:4px}
.op-stage{flex:1;min-width:118px;background:var(--card);border:1px solid var(--border);border-radius:var(--r2);padding:12px 13px;text-align:center}
.op-stage.good{border-color:var(--good);background:var(--goodbg)}
.op-stage.brain{background:var(--v);color:#fff;border-color:var(--v)}
.op-stage-ph{font-size:10px;font-weight:700;color:var(--pink);letter-spacing:.05em}
.op-stage.brain .op-stage-ph{color:var(--gold)}
.op-stage-n{font-size:22px;font-weight:700;letter-spacing:-.02em;margin-top:3px}
.op-stage-l{font-size:12px;font-weight:600;margin-top:2px}
.op-stage-s{font-size:10.5px;color:var(--muted);margin-top:3px}
.op-stage.brain .op-stage-s{color:#bcacd6}
.op-arrow{display:flex;align-items:center;color:var(--faint);font-size:18px;flex:0 0 auto}
.op-tracks{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.op-track{background:var(--card);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.op-track-h{padding:12px 16px;font-size:13px;font-weight:600;color:var(--v);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:9px}
.op-tag{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}
.op-tag.a{background:var(--infobg);color:var(--info)}
.op-tag.b{background:var(--pinkbg);color:var(--pink)}
.op-tag.hh{background:var(--goodbg);color:var(--good)}
.op-tag.tt{background:var(--bg);color:var(--muted)}
.op-track-body{padding:14px 16px}
.op-statline{display:flex;gap:18px;margin-bottom:12px}
.op-statline>div{display:flex;flex-direction:column}
.op-statline b{font-size:19px;font-weight:700}
.op-statline span{font-size:11px;color:var(--muted)}
.op-agents{display:flex;flex-direction:column;gap:7px}
.op-agent{display:flex;align-items:center;gap:9px}
.op-dot{width:8px;height:8px;border-radius:50%;background:var(--faint);flex:0 0 auto}
.op-dot.on{background:var(--good);box-shadow:0 0 0 3px var(--goodbg)}
.op-agent-n{font-size:13px;font-weight:600;min-width:96px}
.op-agent-r{font-size:11.5px;color:var(--muted)}
.op-note{font-size:11px;color:var(--muted);margin-top:11px;font-style:italic}
.op-q{margin-bottom:13px}
.op-q-top{display:flex;justify-content:space-between;align-items:baseline}
.op-q-l{font-size:13px;font-weight:600}
.op-q-n{font-size:12px;color:var(--muted)}
.op-q-n b{color:var(--good);font-size:14px}
.op-q-bar{height:6px;border-radius:999px;background:var(--bg);overflow:hidden;margin-top:5px}
.op-q-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--pink),var(--pink2));border-radius:999px}
.op-q-x{font-size:11px;color:var(--muted);margin-top:4px}
.warn-t{color:var(--warn);font-weight:600}
.op-cta{display:inline-block;margin-top:4px;color:var(--pink);font-weight:600;font-size:13px;text-decoration:none}
.op-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
@media(max-width:820px){.op-tracks{grid-template-columns:1fr}.op-pipe{flex-direction:column}.op-arrow{transform:rotate(90deg);justify-content:center}}
.op-detail{grid-template-columns:1.5fr 1fr}
.op-sample{font-size:10px;color:var(--warn);background:var(--warnbg);padding:1px 7px;border-radius:999px;font-weight:600;margin-left:6px;text-transform:none;letter-spacing:0}
.op-cron-wrap{max-height:360px;overflow:auto;padding:0!important}
.op-cron{width:100%;border-collapse:collapse;font-size:12px}
.op-cron th{position:sticky;top:0;background:var(--card);text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:9px 14px;border-bottom:1px solid var(--border)}
.op-cron td{padding:8px 14px;border-top:1px solid var(--border)}
.op-cron-name{font-weight:600}
.op-cron .mono{font-family:ui-monospace,Menlo,monospace;font-size:11px;color:var(--muted)}
.op-cron-off{opacity:.5}
.op-tok{margin-bottom:13px}
.op-tok-top{display:flex;align-items:baseline;gap:8px}
.op-tok-a{font-size:13px;font-weight:600;min-width:88px}
.op-tok-m{font-family:ui-monospace,Menlo,monospace;font-size:10.5px;color:var(--info);background:var(--infobg);padding:1px 7px;border-radius:6px}
.op-tok-n{margin-left:auto;font-size:11.5px;color:var(--muted)}
.op-tok-bar{height:6px;border-radius:999px;background:var(--bg);overflow:hidden;margin-top:5px}
.op-tok-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--good),var(--pink));border-radius:999px}
.op-tok-bar>span.warn{background:linear-gradient(90deg,var(--warn),var(--pink2))}
@media(max-width:820px){.op-detail{grid-template-columns:1fr}}
.op-cron-cat{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;padding:12px 16px 5px;background:var(--bg)}
.op-cronrow{display:flex;align-items:center;gap:11px;padding:9px 16px;border-top:1px solid var(--border)}
.op-cron-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
.op-cron-dot.ok{background:var(--good)}
.op-cron-dot.bad{background:#b3261e}
.op-cron-dot.off{background:var(--faint)}
.op-cronrow-main{flex:1;min-width:0}
.op-cronrow-name{font-size:13px;font-weight:600}
.op-cronrow-p{font-size:11px;color:var(--muted);line-height:1.35}
.op-cronrow-sched{font-size:11px;color:var(--ink);background:var(--bg);padding:2px 9px;border-radius:999px;white-space:nowrap}
.op-cronrow-agent{font-size:11.5px;color:var(--muted);min-width:74px;text-align:right}
.op-cronrow-time{font-size:10.5px;color:var(--faint);min-width:72px;text-align:right;white-space:nowrap}
.op-stage-d{font-size:9.5px;color:var(--muted);margin-top:6px;line-height:1.32}
.op-stage.brain .op-stage-d{color:#bcacd6}
.op-stage{cursor:help}
.op-ns-desc{font-size:12px;color:#cdbfdd;margin-top:10px;line-height:1.5;max-width:780px}
.op-h-sub{font-size:11px;font-weight:400;color:var(--muted);text-transform:none;letter-spacing:0;margin-left:8px}
.op-tdesc{font-size:11.5px;color:var(--muted);margin-bottom:11px;line-height:1.4}
.op-deflist{display:flex;flex-direction:column;gap:10px}
.op-def{display:flex;align-items:flex-start;gap:10px}
.op-def-v{flex:0 0 auto;min-width:34px;text-align:center}
.op-def-t{font-size:12px;line-height:1.45;color:var(--muted)}
.op-def-t b{color:var(--ink);font-weight:600}
.op-statline>div{cursor:help}
.op-subh{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin:15px 0 9px}
.op-subh:first-child{margin-top:0}
.op-quota{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid var(--border);font-size:12px}
.op-quota-p{font-weight:600}
.op-quota-l{color:var(--muted);text-align:right}

/* ---- Explore · Country profile ---- */
.exback{float:right;font-size:12px;border:1px solid var(--border2);background:var(--card);color:var(--pink);border-radius:999px;padding:4px 12px;cursor:pointer;font-family:inherit;font-weight:600}
.cprofile{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.cprof-head{display:flex;align-items:center;gap:14px;background:linear-gradient(120deg,var(--v),var(--v2));color:#fff;border-radius:var(--r);padding:18px 22px}
.cflag.big{font-size:38px;line-height:1}
.cprof-name{font-size:22px;font-weight:700}
.cprof-sub{font-size:13px;color:#cdbfdd;margin-top:3px}
.cprof-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px}
.cprof-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin-bottom:9px}
.cprof-narr{font-size:13.5px;line-height:1.65;color:var(--ink)}
.cprof-narr b{color:var(--v)}
.cprof-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.cprof-oc{display:flex;align-items:center;gap:9px;padding:5px 0;font-size:12.5px}
.cprof-oc-l{flex:1;min-width:0}
.cprof-chips{display:flex;flex-wrap:wrap;gap:6px}
.cprof-chips .wb-chip b{color:var(--pink)}
.ocdot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;background:var(--faint)}
.ocdot.win{background:var(--good)}
.ocdot.partial{background:#3b82c4}
.ocdot.lost{background:#b3261e}
.ocdot.ongoing{background:var(--gold)}
.ocdot.unk{background:var(--faint)}
.cprof-list{display:flex;flex-direction:column;max-height:420px;overflow:auto}
.cprof-disp{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--border);font-size:12.5px}
.cprof-disp-n{flex:1;min-width:0;font-weight:600}
.cprof-ev{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--border);font-size:12px}
.cprof-ev-m{flex:1;min-width:0;color:var(--muted)}
@media(max-width:820px){.cprof-cols{grid-template-columns:1fr}}

/* ---- Phase-6 Context approval ---- */
.p6filt{margin:0 0 12px}
.p6filt button{font-size:11.5px;padding:5px 11px}
.p6row{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;border:1px solid var(--border);background:var(--card);border-radius:var(--r2);padding:9px 12px;cursor:pointer;margin-bottom:5px;font-family:inherit}
.p6row:hover{border-color:var(--pink)}
.p6row.on{border-color:var(--pink);background:rgba(234,40,104,.06)}
.p6dot{width:8px;height:8px;border-radius:50%;margin-top:5px;flex:0 0 auto;background:var(--faint)}
.p6dot.ok{background:var(--good)}
.p6dot.no{background:#b3261e}
.p6dot.rev{background:var(--gold)}
.p6dot.pend{background:var(--faint)}
.p6row-main{min-width:0;display:flex;flex-direction:column;gap:2px;flex:1}
.p6row-name{font-size:13px;font-weight:600;color:var(--ink)}
.p6row-sub{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:230px}
.p6text{font-size:13.5px;line-height:1.62;color:var(--ink);white-space:pre-wrap;max-height:360px;overflow:auto;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:12px 14px}
.p6ref{color:var(--pink);font-weight:700;text-decoration:none}
.p6ref:hover{text-decoration:underline}
.p6editbtn{margin-left:8px;font-size:11px;font-weight:700;color:var(--pink);background:rgba(234,40,104,.09);border:1px solid rgba(234,40,104,.25);border-radius:7px;padding:2px 9px;cursor:pointer;font-family:inherit}
.p6editbtn:hover{background:rgba(234,40,104,.16)}
.p6edit{width:100%;min-height:220px;font-size:13.5px;line-height:1.62;color:var(--ink);background:#fff;border:1.5px solid var(--pink);border-radius:10px;padding:12px 14px;font-family:inherit;resize:vertical}
.p6edit:focus{outline:none;box-shadow:0 0 0 3px rgba(234,40,104,.12)}
.p6edit-actions{display:flex;align-items:center;gap:10px;margin-top:9px;flex-wrap:wrap}
.ocedit{min-height:110px}
.p6meta{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 6px}
.p6stpill{font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;padding:2px 8px;border-radius:999px;margin-left:6px}
.p6stpill.approved{background:rgba(46,160,67,.16);color:var(--good)}
.p6stpill.pending{background:var(--faint);color:var(--muted)}
.p6stpill.rejected{background:rgba(179,38,30,.14);color:#b3261e}
.p6stpill.revise{background:rgba(255,213,77,.22);color:#8a6d00}

/* ---- Class approval (Actors) ---- */
.classwrap{display:flex;flex-direction:column;gap:12px;margin-top:6px}
.classhead{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:14px 18px}
.classtitle{font-size:15px;font-weight:700;color:var(--v);margin-bottom:4px}
.classgroup{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:14px 18px}
.classgroup-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.classgroup-n{font-weight:600;font-size:13px}
.classgroup-h .btn-sm.pri{margin-left:auto}
.classsample{margin-top:9px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.classchip{font-size:11.5px;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:3px 9px}

/* ---- Brain trust-mode switch (Operate) ---- */
.op-mode{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:14px 18px;margin-bottom:14px}
.op-mode-h{font-size:13px;font-weight:600;margin-bottom:10px}
.op-modebtns{display:flex;gap:10px;flex-wrap:wrap}
.op-modebtn{display:flex;align-items:flex-start;gap:9px;flex:1;min-width:240px;text-align:left;border:1.5px solid var(--border);background:var(--bg);border-radius:12px;padding:11px 14px;cursor:pointer;font-family:inherit;font-size:13px;color:var(--ink)}
.op-modebtn:hover{border-color:var(--pink)}
.op-modebtn.on{border-color:var(--good);background:rgba(46,160,67,.07)}
.op-modedot{width:13px;height:13px;border-radius:50%;border:2px solid var(--faint);margin-top:2px;flex:0 0 auto}
.op-modebtn.on .op-modedot{border-color:var(--good);background:var(--good)}
.op-modedesc{display:block;font-size:11.5px;color:var(--muted);margin-top:2px;font-weight:400}

/* ---- Method area ---- */
.mwrap{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.mtabs{display:inline-flex;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--card)}
.mtabs button{padding:8px 18px;border:none;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;font-family:inherit}
.mtabs button.on{background:var(--v);color:#fff}
.mdoc{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:20px 26px;font-size:14px;line-height:1.65;color:var(--ink);max-height:62vh;overflow:auto}
.mdoc h1{font-size:20px;margin:6px 0 10px}.mdoc h2{font-size:16px;margin:18px 0 8px;color:var(--v)}.mdoc h3{font-size:14px;margin:14px 0 6px}
.mdoc p{margin:8px 0}.mdoc ul{margin:8px 0;padding-left:22px}.mdoc li{margin:3px 0}
.mdoc code{background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:1px 5px;font-size:12.5px}
.mdoc a{color:var(--pink)}.mdoc hr{border:none;border-top:1px solid var(--border);margin:14px 0}
.mdoc blockquote{border-left:3px solid var(--gold);margin:10px 0;padding:2px 0 2px 14px;color:var(--muted)}
.mcompose{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px}
.mcompose-h{font-size:13px;font-weight:700;margin-bottom:9px}
.mcompose textarea{width:100%;box-sizing:border-box;min-height:90px;border:1px solid var(--border);border-radius:10px;padding:11px 13px;font-family:inherit;font-size:13.5px;line-height:1.5;resize:vertical;background:var(--bg);color:var(--ink)}
.mcompose-row{display:flex;gap:10px;align-items:center;margin-top:9px;flex-wrap:wrap}
.mcompose-row input{flex:1;min-width:160px;border:1px solid var(--border);border-radius:8px;padding:8px 11px;font-family:inherit;font-size:12.5px;background:var(--bg);color:var(--ink)}

/* ---- Outcomes approval ---- */
.ocwrap{display:flex;flex-direction:column;gap:14px;margin-top:4px}
.occountry{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:14px 18px}
.occountry-h{font-size:14px;font-weight:700;color:var(--v);margin-bottom:8px}
.ochint{border-top:1px solid var(--border);padding:11px 0}
.ochint:first-of-type{border-top:none;padding-top:2px}
.ochint-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:5px}
.ocdim{font-size:12px;font-weight:700;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:2px 10px}
.ocst{font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;padding:2px 8px;border-radius:999px;margin-left:auto}
.ocst.pending{background:var(--faint);color:var(--muted)}
.ocst.approved{background:rgba(46,160,67,.16);color:var(--good)}
.ocst.rejected{background:rgba(179,38,30,.14);color:#b3261e}
.ochint-desc{font-size:13.5px;line-height:1.55;color:var(--ink)}
.ochint-src{display:flex;gap:12px;flex-wrap:wrap;margin-top:5px;font-size:12px}
.ochint-src a{color:var(--pink)}
.ochint-act{display:flex;gap:8px;margin-top:9px;flex-wrap:wrap}

/* ---- Outcomes region/country drill-down (cards + bigger carets) ---- */
.ocsrc{margin-top:-4px}
.ocregions{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.ocregion{background:var(--card);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.ocrhead{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:none;background:none;padding:15px 18px;cursor:pointer;font-family:inherit}
.ocrhead:hover{background:rgba(234,40,104,.03)}
.ocrname{font-size:15px;font-weight:700;color:var(--ink)}
.ocrmeta{font-size:12.5px;color:var(--muted);margin-left:auto}
.ocrbody{padding:0 14px 14px;display:flex;flex-direction:column;gap:8px}
.occaret{font-size:13px;color:var(--pink);flex:0 0 auto;width:15px;text-align:center;font-weight:700}
.occaret.big{font-size:17px}
.occountry{border:1px solid var(--border);border-radius:11px;background:var(--bg);overflow:hidden;margin:0;padding:0}
.occountry-h{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:none;background:none;padding:11px 14px;cursor:pointer;font-family:inherit;margin:0}
.occountry-h:hover{background:rgba(234,40,104,.05)}
.occountry.open>.occountry-h{border-bottom:1px solid var(--border)}
.occn{font-size:13.5px;font-weight:600;color:var(--ink)}
.ocmeta{font-size:11.5px;color:var(--muted);margin-left:auto}
.occbody{padding:6px 14px 12px}

/* ---- Live agents + activity feed (Operate) ---- */
.op-dot.idle{background:var(--faint)}
.op-agentsl{display:flex;flex-direction:column;margin:6px 0}
.op-agentl{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-top:1px solid var(--border)}
.op-agentl:first-child{border-top:none;padding-top:2px}
.op-agentl .op-dot{margin-top:5px;flex:0 0 auto}
.op-agentl-main{min-width:0;flex:1}
.op-agentl-top{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.op-agentl-role{font-size:11.5px;color:var(--muted)}
.op-agentl-model{font-size:10.5px;color:var(--v);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:1px 7px;margin-left:auto}
.op-agentl-act{font-size:12px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.op-agentl-act.live{color:var(--good);font-weight:600}
.op-feed{margin-top:12px;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:11px 14px}

/* ---- Governance area (Phase-6 read-only surfaces) ---- */
.gov-nav{flex-wrap:wrap}
.gov-head{margin:14px 0 10px}
.gov-eyebrow{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--pink);font-weight:800}
.gov-title{font-size:22px;font-weight:800;color:var(--ink);margin-top:2px}
.gov-desc{font-size:13px;color:var(--muted);margin-top:4px;max-width:820px;line-height:1.45}
.gov-stat{font-size:14px;color:var(--ink);margin:6px 0 12px}
.gov-stat b{color:var(--v)}
.gov-list{display:flex;flex-direction:column;gap:8px}
.gov-item{background:var(--card);border:1px solid var(--border);border-radius:11px;padding:11px 15px}
.gov-item-h{display:flex;align-items:flex-start;gap:10px}
.gov-item-t{font-size:13.5px;font-weight:700;color:var(--ink);flex:1;line-height:1.4}
.gov-st{flex:0 0 auto;font-size:10.5px;font-weight:800;padding:2px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;background:rgba(122,111,136,.14);color:var(--muted)}
.gov-st.st-open,.gov-st.st-pending,.gov-st.st-parked{background:rgba(201,138,0,.16);color:var(--warn,#c98a00)}
.gov-st.st-prepared,.gov-st.st-ready,.gov-st.st-complete{background:rgba(46,160,67,.15);color:var(--good)}
.gov-st.st-blocked,.gov-st.st-missing{background:rgba(221,51,51,.13);color:#d23}
.gov-item-m{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px}
.gov-m{font-size:12px;color:var(--ink)}
.gov-m i{color:var(--muted);font-style:normal;font-weight:700;margin-right:4px;font-size:10.5px;text-transform:uppercase;letter-spacing:.03em}
.gov-src{font-size:12px;font-weight:700;color:var(--pink);text-decoration:none}
.gov-src:hover{text-decoration:underline}

/* ---- Home / landing ---- */
.hhero{background:linear-gradient(120deg,var(--v,#221133),#3a1f5c);border-radius:18px;padding:26px 30px;color:#fff;margin-bottom:16px;display:flex;align-items:center;gap:26px}
.hhero-l{flex:1}
.hhero-k{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#c9b8e0;font-weight:800}
.hhero-big{font-size:29px;font-weight:800;margin:5px 0 3px;line-height:1.15}
.hhero-sub{font-size:14px;color:#d8ccec}
.hqchips{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.hqchip{background:rgba(255,255,255,.09);border:none;border-radius:12px;padding:10px 16px;text-align:center;min-width:92px;cursor:pointer;color:#fff;font-family:inherit;transition:background .12s}
.hqchip:hover{background:rgba(255,255,255,.17)}
.hqchip b{font-size:20px;display:block}.hqchip span{font-size:11px;color:#c9b8e0}
.hhero-cta{background:var(--pink);border:none;color:#fff;padding:14px 26px;border-radius:12px;font-weight:800;font-size:15px;white-space:nowrap;cursor:pointer;font-family:inherit}
.hhero-cta:hover{filter:brightness(1.07)}
.hhealth{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}
.hc{flex:1;min-width:200px;background:var(--card);border:1px solid var(--border);border-radius:13px;padding:13px 16px;display:flex;align-items:center;gap:11px}
.hdot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}
.hdot.g{background:var(--good,#2ea043);box-shadow:0 0 0 3px rgba(46,160,67,.16)}
.hdot.w{background:var(--warn,#c98a00);box-shadow:0 0 0 3px rgba(201,138,0,.16)}
.hc-t{font-size:13px;font-weight:700;color:var(--ink)}.hc-s{font-size:11.5px;color:var(--muted)}
.hprog{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:17px 22px;margin-bottom:18px}
.hprog-t{font-size:14px;font-weight:800;color:var(--ink)}
.htag{display:inline-block;font-size:11px;font-weight:700;padding:2px 9px;border-radius:99px;background:rgba(234,40,104,.1);color:var(--pink);margin-left:6px}
.hprog-bar{height:9px;background:var(--bg);border-radius:99px;margin-top:10px;overflow:hidden}
.hprog-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--pink),#ff6b9d);border-radius:99px}
.hprog-s{font-size:12.5px;color:var(--muted);margin-top:8px}
.heyebrow{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--pink);font-weight:800;margin:6px 0 9px}
.hdet{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:13px;padding:15px 20px;margin-bottom:9px;cursor:pointer;font-family:inherit}
.hdet:hover{border-color:var(--pink)}
.hcx{color:var(--muted);font-size:15px;font-weight:800}
.hdet-t{font-size:14px;font-weight:700;color:var(--ink);flex:1}
.hdet-m{font-size:12.5px;color:var(--muted)}
.hdet-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-left:6px;vertical-align:middle}
.hdet-dot.g{background:#2ea043}
.hdet-dot.w{background:#d29922}
.hlive-slim{padding:14px 26px;margin-bottom:14px}
.hlive-slim .hlive-top{margin-bottom:11px}
.hhero-hero{box-shadow:0 8px 30px rgba(58,31,92,.32);border:1px solid rgba(233,30,99,.30)}
/* animated live pipeline */
.hlive{background:linear-gradient(120deg,#160b26,#2a1544);border-radius:18px;padding:20px 26px;margin-bottom:16px;overflow:hidden;position:relative}
.hlive-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;flex-wrap:wrap;gap:8px}
.hlive-k{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#c9b8e0;font-weight:800}
.hlive-agent{font-size:12px;color:#b9a9cf;display:flex;align-items:center;gap:7px}
.hpulse{width:9px;height:9px;border-radius:50%;background:#2ea043;animation:hpulse 1.6s infinite}
.hpulse.idle{background:#8a7f98;animation:none}
@keyframes hpulse{0%{box-shadow:0 0 0 0 rgba(46,160,67,.55)}70%{box-shadow:0 0 0 9px rgba(46,160,67,0)}100%{box-shadow:0 0 0 0 rgba(46,160,67,0)}}
.hpipe{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.hpn{flex:0 0 auto;text-align:center;color:#fff;min-width:72px}
.hpn-note{color:#9a8fb0;font-size:11px;font-style:italic;align-self:center}
.hpn-ic{font-size:22px}
.hpn-v{font-size:19px;font-weight:800;margin-top:2px}
.hpn-l{font-size:10.5px;color:#b9a9cf;text-transform:uppercase;letter-spacing:.04em;margin-top:1px}
.hpn-ready .hpn-v{color:#ffd54d}
.hpn-brain .hpn-ic{font-size:30px;animation:hglow 2.4s ease-in-out infinite}
@keyframes hglow{0%,100%{filter:drop-shadow(0 0 8px rgba(234,40,104,.5))}50%{filter:drop-shadow(0 0 18px rgba(234,40,104,.95))}}
.hpflow{flex:1;height:3px;position:relative;background:rgba(255,255,255,.09);border-radius:99px;margin:0 4px;overflow:hidden;min-width:24px}
.hpflow i{position:absolute;top:0;left:0;height:100%;width:36%;border-radius:99px;background:linear-gradient(90deg,transparent,#ea2868,transparent);animation:hflow 1.8s linear infinite}
@keyframes hflow{0%{transform:translateX(-120%)}100%{transform:translateX(320%)}}

/* ---- Agents pixel war room ---- */
.pxs{display:inline-block;line-height:0}
.pxr{display:flex}
.pxs i{display:block}
.pxroom{background:linear-gradient(180deg,#1a1030,#241541 62%,#33204f);border-radius:18px;padding:20px 24px 6px;margin-bottom:16px;position:relative;overflow:hidden}
.pxroom-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}
.pxroom-k{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#c9b8e0;font-weight:800}
.pxroom-s{font-size:12px;color:#b9a9cf;display:flex;align-items:center;gap:7px}
.pxroom-intro{font-size:12.5px;line-height:1.55;color:#c4b6da;margin:-4px 0 14px;max-width:820px}
.pxroom-intro b{color:#fff}
.pxlive{width:9px;height:9px;border-radius:50%;background:#2ea043;animation:hpulse 1.6s infinite}
.pxfloor{display:flex;justify-content:space-around;align-items:flex-end;gap:8px;padding-bottom:16px;border-bottom:6px solid rgba(0,0,0,.28)}
.pxstation{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;min-width:118px;position:relative}
.pxchar{image-rendering:pixelated;filter:drop-shadow(0 3px 4px rgba(0,0,0,.45))}
.pxchar.working{animation:pxbob .55s steps(2) infinite}
.pxchar.walking{animation:pxwalk 2.4s ease-in-out infinite}
.pxchar.resting{animation:pxbreathe 3.4s ease-in-out infinite}
@keyframes pxbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes pxwalk{0%,100%{transform:translateX(-9px)}50%{transform:translateX(9px)}}
@keyframes pxbreathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-1.5px)}}
.pxtype{position:absolute;top:-4px;left:50%;transform:translateX(-50%);font-size:11px;font-weight:700;color:#8affb0;white-space:nowrap;z-index:2;animation:pxblink 1s steps(2) infinite}
@keyframes pxblink{50%{opacity:.25}}
.pxchar.recent{animation:pxbob 1.5s steps(2) infinite}
.pxtype.recent{color:#9fc0ff}
.pxdesk{margin-top:-3px}
.pxchar.working + .pxdesk{filter:drop-shadow(0 0 9px rgba(138,255,208,.65))}
.pxchar.recent + .pxdesk{filter:drop-shadow(0 0 6px rgba(111,143,176,.5))}
.pxname{font-size:13px;font-weight:800;margin-top:9px}
.pxrole{font-size:10px;color:#9a8fb0;text-transform:uppercase;letter-spacing:.03em;margin-top:1px}
.pxtask{font-size:11px;color:#c9b8e0;margin-top:5px;max-width:150px;line-height:1.3;min-height:26px}
.pxtask.on{color:#8affb0;font-weight:600}
.pxtask.rec{color:#9fc0ff;font-weight:600}
.pxstation{cursor:pointer;border-radius:12px;padding:4px 2px;transition:background .12s}
.pxstation:hover{background:rgba(255,255,255,.05)}
.pxmore{font-size:10px;font-weight:700;color:var(--pink);margin-top:4px;opacity:0;transition:opacity .12s}
.pxstation:hover .pxmore{opacity:1}
/* agent detail modal */
.agent-modal-wrap{position:fixed;inset:0;background:rgba(22,11,38,.6);backdrop-filter:blur(3px);z-index:200;display:none;align-items:center;justify-content:center;padding:20px}
.agent-modal-wrap.show{display:flex}
.agent-modal{background:var(--card);border-radius:18px;max-width:460px;width:100%;padding:22px 24px;position:relative;box-shadow:0 24px 60px -12px rgba(22,11,38,.5);border-top:4px solid var(--band)}
.agent-modal-x{position:absolute;top:14px;right:14px;border:none;background:var(--bg);width:30px;height:30px;border-radius:8px;cursor:pointer;color:var(--muted);font-size:14px}
.agent-modal-x:hover{background:#ece7f3}
.agent-modal-head{display:flex;gap:15px;align-items:center;margin-bottom:18px}
.agent-modal-av{border-radius:12px;padding:6px;image-rendering:pixelated;flex:0 0 auto}
.agent-modal-name{font-size:19px;font-weight:800;color:var(--ink)}
.agent-modal-role{font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-top:1px}
.agent-modal-status{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:var(--ink);margin-top:7px}
.agent-modal-sec{margin-top:16px}
.agent-modal-k{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--pink);font-weight:800;margin-bottom:9px}
.agent-sig{background:var(--bg);border:1px solid var(--border);border-radius:11px;padding:11px 14px;margin-bottom:8px}
.agent-sig.run{border-color:var(--good);box-shadow:0 0 0 2px rgba(46,160,67,.1)}
.agent-sig-w{font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.4}
.agent-sig-m{font-size:11.5px;color:var(--muted);margin-top:3px}
.agent-modal-empty{font-size:13px;color:var(--muted);background:var(--bg);border-radius:11px;padding:14px;line-height:1.5}
.agent-resp{display:flex;flex-wrap:wrap;gap:6px}
.agent-resp-chip{font-size:11.5px;background:var(--bg);border:1px solid var(--border);border-radius:99px;padding:4px 11px;color:var(--ink)}
.agent-modal-foot{font-size:11px;color:var(--muted);margin-top:16px;border-top:1px solid var(--border);padding-top:11px}
/* inline live feed — per-agent, appears under each turtle */
.pxfeed-toggle{display:block;width:100%;margin-top:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#e8def6;font-family:inherit;font-size:12.5px;font-weight:700;padding:9px 14px;border-radius:10px;cursor:pointer;text-align:left}
.pxfeed-toggle:hover{background:rgba(255,255,255,.11)}
.pxfloor.feedopen{align-items:flex-start}
.pxafeed{width:100%;margin-top:11px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:7px;text-align:left}
.pxaf-row{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:9px;padding:7px 9px}
.pxaf-row.run{border-color:rgba(138,255,208,.4);background:rgba(138,255,208,.06)}
.pxaf-w{font-size:12px;color:#e8def6;line-height:1.35}
.pxaf-w.muted{color:#9a8fb0}
.pxaf-row.run .pxaf-w{color:#8affb0}
.pxaf-m{font-size:10.5px;color:#9a8fb0;margin-top:2px}
.pxpanels{display:flex;gap:14px;flex-wrap:wrap}
.pxpanel{flex:1;min-width:280px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px 20px}
.pxpanel-k{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--pink);font-weight:800;margin-bottom:12px}
.pxcron{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--ink);padding:4px 0}
.pxcdot{width:7px;height:7px;border-radius:50%;background:var(--good);flex:0 0 auto;animation:hpulse 1.6s infinite}
.pxcron .pxcat{margin-left:auto;font-size:10.5px;color:var(--muted)}
.pxbar{margin-bottom:13px}
.pxbar-t{display:flex;justify-content:space-between;font-size:12.5px;color:var(--ink);margin-bottom:5px}
.pxbar-t b{color:var(--v)}
.pxbar-bg{height:8px;background:var(--bg);border-radius:9px;overflow:hidden}
.pxbar-bg span{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--pink),#ff7db0);animation:grow 1.4s ease-out}
@keyframes grow{from{width:0}}

/* ---- Operate: Control Room ---- */
.cr-head{margin-bottom:6px}
.cr-eyebrow{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--pink);font-weight:800}
.cr-title{font-size:25px;font-weight:800;color:var(--ink);margin:3px 0 3px}
.cr-sub{font-size:13.5px;color:var(--muted);max-width:900px;line-height:1.5}
.cr-gate{margin-top:2px}
.cr-gate-compact{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--card);border:1px solid var(--border);border-left:4px solid var(--pink);border-radius:13px;padding:14px 20px;margin-bottom:16px}
.cr-gate-big{font-size:16px;color:var(--ink)}
.cr-gate-big b{font-size:20px}
.cr-gate-x{font-size:12.5px;color:var(--muted);margin-top:2px}
.cr-gate-cta{background:var(--pink);color:#fff;padding:10px 18px;border-radius:10px;font-weight:800;font-size:13.5px;white-space:nowrap;text-decoration:none}
.cr-gate-cta:hover{filter:brightness(1.07)}
.cr-row{display:flex;gap:14px;flex-wrap:wrap}
.cr-card{flex:1;min-width:300px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px 19px}
.cr-card-k{font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);font-weight:800;margin-bottom:11px;display:flex;justify-content:space-between;gap:8px}
.cr-live{color:var(--good);white-space:nowrap}
.cr-idle{color:var(--muted);white-space:nowrap;font-weight:700}
.cr-line{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:6px 0;border-bottom:1px solid var(--border)}
.cr-line:last-child{border:none}
.cr-line b{font-weight:700;color:var(--ink)}
.cr-line span{color:var(--muted);text-align:right}
.cr-line span.on{color:var(--good);font-weight:700}
.cr-link{color:var(--pink);font-weight:700;text-decoration:none}
.cr-link:hover{text-decoration:underline}
.cr-pbar{height:9px;background:var(--bg);border-radius:99px;overflow:hidden;margin-top:8px}
.cr-pbar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--pink),#ff7db0)}
.cr-pipe{display:flex;align-items:center;gap:3px;flex-wrap:wrap;margin-top:2px}
.cr-tiles{gap:20px}
.cr-pn{text-align:center;flex:1;min-width:60px}
.cr-pn b{font-size:15px;font-weight:800;color:var(--ink);display:block}
.cr-pn span{font-size:9.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}
.cr-pn-brain b{color:var(--pink)}
.cr-parr{color:var(--muted);font-size:12px;flex:0 0 auto}
.cr-pipe-foot{font-size:12px;color:var(--muted);margin-top:10px}
.cr-pipe-foot b{color:var(--ink)}
.cr-det{background:var(--card);border:1px solid var(--border);border-radius:12px;margin-bottom:8px;overflow:hidden}
.cr-det>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px}
.cr-det>summary::-webkit-details-marker{display:none}
.cr-det-tw{display:flex;align-items:center;gap:11px}
.cr-cx{color:var(--muted);font-weight:800;transition:transform .15s}
.cr-det[open] .cr-cx{transform:rotate(90deg)}
.cr-det-t{font-size:13.5px;font-weight:700;color:var(--ink)}
.cr-det-m{font-size:12px;color:var(--muted);text-align:right}
.cr-det:hover{border-color:var(--pink)}
.cr-det-body{padding:2px 16px 16px}
.op-feed-h{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin-bottom:7px}
.op-feed-row{display:flex;gap:9px;font-size:12px;padding:3px 0;align-items:baseline}
.op-feed-t{color:var(--muted);font-variant-numeric:tabular-nums;flex:0 0 auto}
.op-feed-a{font-weight:600;color:var(--v);flex:0 0 auto;min-width:84px}
.op-feed-m{color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.op-roadmap{margin-top:18px;padding:18px 18px 16px;border:1px solid var(--border);border-radius:var(--r);background:linear-gradient(180deg,#fff,var(--bg));box-shadow:0 10px 28px rgba(34,17,51,.05)}
.op-roadmap-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.op-roadmap-eyebrow{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--pink);font-weight:700}
.op-roadmap-title{font-size:24px;font-weight:700;color:var(--v);line-height:1.05;margin-top:4px}
.op-roadmap-desc{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.55;max-width:920px}
.op-roadmap-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;justify-content:flex-end}
.op-watchdog{margin-top:14px;padding:15px 16px 14px;background:linear-gradient(180deg,#fff,rgba(24,95,165,.04));border-color:rgba(24,95,165,.18);box-shadow:0 8px 22px rgba(24,95,165,.04)}
.op-watchdog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-watchdog-desc{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.55;max-width:920px}
.op-watchdog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.op-watchdog-grid>div{padding:9px 10px;background:var(--bg);border:1px solid var(--border);border-radius:10px}
.op-watchdog-grid span,.op-watchdog-block span,.op-watchdog-sot span{display:block;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:4px}
.op-watchdog-grid b{font-size:12.5px;line-height:1.45;word-break:break-word;color:var(--v)}
.op-watchdog-summary{margin-top:12px;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--bg)}
.op-watchdog-summary.good{background:rgba(22,122,83,.05);border-color:rgba(22,122,83,.14)}
.op-watchdog-summary.warn{background:rgba(160,90,0,.05);border-color:rgba(160,90,0,.14)}
.op-watchdog-summary.info{background:rgba(24,95,165,.05);border-color:rgba(24,95,165,.14)}
.op-watchdog-summary-k{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700}
.op-watchdog-summary-v{font-size:12.5px;line-height:1.5;color:var(--ink);margin-top:4px;word-break:break-word}
.op-watchdog-summary-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:7px;font-size:11.5px;color:var(--muted)}
.op-watchdog-packs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.op-watchdog-pack-col{min-width:0}
.op-watchdog-pack-h{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:6px}
.op-watchdog-pack-list{display:flex;flex-direction:column;gap:8px}
.op-watchdog-pack{padding:10px 11px;border:1px solid var(--border);border-radius:12px;background:var(--card)}
.op-watchdog-pack.active{background:rgba(160,90,0,.05);border-color:rgba(160,90,0,.14)}
.op-watchdog-pack.complete{background:rgba(22,122,83,.05);border-color:rgba(22,122,83,.14)}
.op-watchdog-pack-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.op-watchdog-pack-head b{font-size:12.5px;line-height:1.45;word-break:break-word;color:var(--v)}
.op-watchdog-pack-meta{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.45}
.op-watchdog-pack-path{margin-top:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;color:var(--muted);word-break:break-word}
.op-watchdog-pack-empty,.op-watchdog-pack-more{padding:9px 10px;border:1px dashed var(--border2);border-radius:10px;background:var(--bg);font-size:12px;line-height:1.45;color:var(--muted)}
.op-watchdog-block{margin-top:12px;padding:10px 11px;border-radius:12px;background:rgba(234,40,104,.05);border:1px solid rgba(234,40,104,.14)}
.op-watchdog-block div,.op-watchdog-sot div{font-size:12.5px;line-height:1.5;color:var(--ink);word-break:break-word}
.op-watchdog-sot{margin-top:10px}
.op-watchdog-path{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--muted);word-break:break-word}
.op-attention{margin-top:14px;padding:14px 16px 15px;border:1px solid var(--border);border-radius:var(--r);background:linear-gradient(180deg,#fff,rgba(160,90,0,.03));box-shadow:0 8px 22px rgba(160,90,0,.04)}
.op-attention.good{border-color:rgba(22,122,83,.18);background:linear-gradient(180deg,#fff,rgba(22,122,83,.03));box-shadow:0 8px 22px rgba(22,122,83,.04)}
.op-attention.warn{border-color:rgba(160,90,0,.18);background:linear-gradient(180deg,#fff,rgba(160,90,0,.03));box-shadow:0 8px 22px rgba(160,90,0,.04)}
.op-attention.info{border-color:rgba(24,95,165,.18);background:linear-gradient(180deg,#fff,rgba(24,95,165,.03));box-shadow:0 8px 22px rgba(24,95,165,.04)}
.op-attention-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-attention-eyebrow{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--warn);font-weight:700}
.op-attention-title{font-size:18px;font-weight:700;color:var(--v);margin-top:4px}
.op-attention-desc{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.55;max-width:920px}
.op-attention-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;justify-content:flex-end}
.op-attention-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:12px}
.op-attention-meta>div{padding:9px 10px;background:var(--bg);border:1px solid var(--border);border-radius:10px}
.op-attention-meta span,.op-attention-alert span,.op-attention-foot span{display:block;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:4px}
.op-attention-meta b{font-size:12.5px;line-height:1.45;word-break:break-word;color:var(--v)}
.op-attention-alert{margin-top:12px;padding:10px 11px;border-radius:12px;background:rgba(24,95,165,.05);border:1px solid rgba(24,95,165,.14)}
.op-attention-alert.warn{background:rgba(160,90,0,.05);border-color:rgba(160,90,0,.14)}
.op-attention-alert.good{background:rgba(22,122,83,.05);border-color:rgba(22,122,83,.14)}
.op-attention-alert div{font-size:12.5px;line-height:1.5;color:var(--ink);word-break:break-word}
.op-attention-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.op-attention-item{padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:0 4px 12px rgba(34,17,51,.03)}
.op-attention-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-attention-item-title{font-size:13px;font-weight:700;color:var(--v);line-height:1.35}
.op-attention-item-meta{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.45}
.op-attention-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.op-attention-chip{font-size:10.5px;background:var(--bg);color:var(--muted);padding:2px 8px;border-radius:999px;border:1px solid var(--border)}
.op-attention-chip.warn{background:var(--warnbg);color:var(--warn);border-color:transparent}
.op-attention-chip.info{background:var(--infobg);color:var(--info);border-color:transparent}
.op-attention-note{font-size:11.5px;color:var(--muted);line-height:1.45;margin-top:7px}
.op-attention-empty{margin-top:12px;padding:12px 13px;border:1px dashed var(--border2);border-radius:12px;background:var(--bg);color:var(--muted);font-size:12.5px;line-height:1.5}
.op-attention-empty b{color:var(--v)}
.op-attention-foot{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:10px;font-size:11px;color:var(--muted)}
.op-attention-foot a{color:var(--pink);text-decoration:none;font-weight:700}
.op-roadmap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.op-lane{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:15px 16px 14px;box-shadow:0 8px 20px rgba(34,17,51,.03)}
.op-lane::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--faint)}
.op-lane.good::before{background:var(--good)}
.op-lane.warn::before{background:var(--warn)}
.op-lane.info::before{background:var(--info)}
.op-lane.blocked::before{background:#b3261e}
.op-lane-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-lane-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:700}
.op-lane-title{font-size:16px;font-weight:700;color:var(--v);margin-top:3px;line-height:1.2}
.op-traffic{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.op-traffic i{width:8px;height:8px;border-radius:50%;flex:0 0 auto;background:var(--faint)}
.op-traffic.good{background:var(--goodbg);color:var(--good)}
.op-traffic.good i{background:var(--good)}
.op-traffic.warn{background:var(--warnbg);color:var(--warn)}
.op-traffic.warn i{background:var(--warn)}
.op-traffic.info{background:var(--infobg);color:var(--info)}
.op-traffic.info i{background:var(--info)}
.op-traffic.blocked{background:#fdeaea;color:#b3261e}
.op-traffic.blocked i{background:#b3261e}
.op-lane-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:12px}
.op-lane-meta>div{padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-radius:10px}
.op-lane-meta span,.op-lane-state span,.op-lane-block span,.op-lane-sot span,.op-protected-block span,.op-protected-sot span{display:block;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:4px}
.op-lane-meta b{font-size:12.5px;line-height:1.45;word-break:break-word}
.op-lane-state{margin-top:12px;padding:10px 11px;border-radius:12px;background:rgba(24,95,165,.06);border:1px solid rgba(24,95,165,.16)}
.op-lane-state b{display:block;font-size:12.5px;line-height:1.5;word-break:break-word;color:var(--ink)}
.op-lane-block{margin-top:10px}
.op-lane-block div,.op-lane-sot div,.op-protected-block div,.op-protected-sot div{font-size:12.5px;line-height:1.5;color:var(--ink);word-break:break-word}
.op-lane-link{color:var(--pink);text-decoration:none;font-weight:700}
.op-lane-link:hover{text-decoration:underline}
.op-lane-path{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--muted);word-break:break-word}
.op-protected{margin-top:14px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r);background:linear-gradient(180deg,rgba(22,122,83,.05),rgba(22,122,83,.015))}
.op-protected-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:13px;font-weight:700;color:var(--v)}
.op-protected-h .muted{font-size:11.5px;font-weight:400;color:var(--muted);line-height:1.4;text-align:right}
.op-protected-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.op-protected-card{background:var(--card);border:1px solid rgba(22,122,83,.18);border-radius:14px;padding:13px 14px;box-shadow:0 8px 18px rgba(22,122,83,.04)}
.op-protected-card.good{border-color:rgba(22,122,83,.2)}
.op-protected-card.warn{border-color:rgba(160,90,0,.22)}
.op-protected-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-protected-name{font-size:14px;font-weight:700;color:var(--v)}
.op-protected-kicker{margin-top:6px}
.op-protected-state{font-size:12.5px;color:var(--muted);line-height:1.5;margin-top:8px;word-break:break-word}
.op-protected-mini{color:var(--good);font-size:11px;font-weight:600}
.op-protected-block{margin-top:10px}
.op-protected-block div{font-size:12.25px;line-height:1.5;color:var(--ink);word-break:break-word}
.op-protected-sot{margin-top:10px}
.op-protected-sot .op-lane-link,.op-protected-sot .op-lane-path{font-size:11px}
.op-posture{margin-top:14px;padding:14px 16px 15px;border:1px solid var(--border);border-radius:var(--r);background:linear-gradient(180deg,#fff,rgba(24,95,165,.03));box-shadow:0 8px 22px rgba(24,95,165,.04)}
.op-posture.good{border-color:rgba(22,122,83,.18);background:linear-gradient(180deg,#fff,rgba(22,122,83,.03));box-shadow:0 8px 22px rgba(22,122,83,.04)}
.op-posture.warn{border-color:rgba(160,90,0,.18);background:linear-gradient(180deg,#fff,rgba(160,90,0,.03));box-shadow:0 8px 22px rgba(160,90,0,.04)}
.op-posture.info{border-color:rgba(24,95,165,.18);background:linear-gradient(180deg,#fff,rgba(24,95,165,.03));box-shadow:0 8px 22px rgba(24,95,165,.04)}
.op-posture-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-posture-eyebrow{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--warn);font-weight:700}
.op-posture-title{font-size:18px;font-weight:700;color:var(--v);margin-top:4px}
.op-posture-desc{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.55;max-width:920px}
.op-posture-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;justify-content:flex-end}
.op-posture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.op-posture-card{display:flex;flex-direction:column;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:0 4px 12px rgba(34,17,51,.03)}
.op-posture-card.good{border-color:rgba(22,122,83,.18);background:rgba(22,122,83,.03)}
.op-posture-card.warn{border-color:rgba(160,90,0,.18);background:rgba(160,90,0,.03)}
.op-posture-card.info{border-color:rgba(24,95,165,.18);background:rgba(24,95,165,.03)}
.op-posture-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-posture-card-kicker{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700}
.op-posture-card-title{font-size:14px;font-weight:700;color:var(--v);line-height:1.35;margin-top:3px}
.op-posture-card-sub{font-size:11.5px;color:var(--muted);margin-top:3px;line-height:1.45}
.op-posture-lines{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.op-posture-line{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:12px;line-height:1.45}
.op-posture-line b{color:var(--v);font-weight:600;min-width:0}
.op-posture-line span{color:var(--muted);min-width:0;text-align:right;word-break:break-word}
.op-posture-foot{margin-top:10px;font-size:11px;color:var(--muted);line-height:1.45;word-break:break-word}
.op-posture-empty{padding:9px 10px;border:1px dashed var(--border2);border-radius:10px;background:var(--bg);font-size:12px;line-height:1.45;color:var(--muted)}
.op-posture-source{margin-top:8px;font-size:10.5px;color:var(--muted);line-height:1.45;word-break:break-word}
.op-posture-source a{font-weight:700}
.op-auto-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.op-auto-row{padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:0 4px 12px rgba(34,17,51,.03)}
.op-auto-row.good{border-color:rgba(22,122,83,.18);background:rgba(22,122,83,.03)}
.op-auto-row.warn{border-color:rgba(160,90,0,.18);background:rgba(160,90,0,.03)}
.op-auto-row.info{border-color:rgba(24,95,165,.18);background:rgba(24,95,165,.03)}
.op-auto-row-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.op-auto-row-name{font-size:14px;font-weight:700;color:var(--v);line-height:1.3;word-break:break-word}
.op-auto-row-sub{font-size:11.5px;color:var(--muted);margin-top:4px;line-height:1.45;word-break:break-word}
.op-auto-row-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.op-auto-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:10px}
.op-auto-grid>div{padding:8px 9px;border:1px solid var(--border);border-radius:10px;background:var(--bg);min-width:0}
.op-auto-grid span{display:block;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:4px}
.op-auto-grid b{display:block;font-size:12.5px;line-height:1.45;color:var(--v);word-break:break-word}
.op-auto-wide{grid-column:1/-1}
.op-auto-audit{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border2);font-size:11.5px;color:var(--muted);line-height:1.55;word-break:break-word}
.op-auto-empty{padding:10px 11px;border:1px dashed var(--border2);border-radius:10px;background:var(--card);font-size:12px;color:var(--muted);line-height:1.5}
@media(max-width:1180px){.op-roadmap-grid,.op-protected-grid,.op-attention-items{grid-template-columns:repeat(2,minmax(0,1fr))}.op-watchdog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op-watchdog-packs{grid-template-columns:1fr}}
@media(max-width:960px){.op-lane-meta,.op-attention-meta{grid-template-columns:1fr}}
@media(max-width:760px){.op-roadmap-grid,.op-protected-grid,.op-watchdog-grid,.op-attention-items,.op-posture-grid,.op-auto-grid{grid-template-columns:1fr}.op-roadmap-head,.op-protected-h,.op-watchdog-top,.op-attention-top,.op-posture-head,.op-auto-row-head{flex-direction:column}.op-roadmap-chips,.op-attention-badges,.op-posture-badges,.op-auto-row-badges{justify-content:flex-start}.op-protected-h .muted{text-align:left}}

/* ── r9 Sidebar overhaul (Phase 1) ─────────────────────────────────────── */
.appbody{display:grid;grid-template-columns:214px minmax(0,1fr);align-items:stretch;min-height:calc(100vh - 58px)}
.side{background:var(--v2);padding:12px 9px 16px;display:flex;flex-direction:column;gap:3px;position:sticky;top:0;align-self:start;height:calc(100vh - 58px);overflow-y:auto}
.side-grp{margin-top:14px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#a99cd0;font-weight:700;padding:0 10px 3px}
.side-grp:first-child{margin-top:2px}
.side .navbtn{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border:none;background:transparent;color:#e7e0f7;font-size:13.5px;font-weight:500;cursor:pointer;border-radius:9px;text-align:left}
.side .navbtn:hover{background:rgba(255,255,255,.09);color:#fff}
.side .navbtn.on{background:#fff;color:var(--v);font-weight:700}
.side .navbtn.sys{opacity:.74;font-size:13px}
.side .navbtn .nic{width:18px;text-align:center;font-size:15px;flex:0 0 auto}
.side .nbadge{margin-left:auto;background:var(--pink);color:#fff;border-radius:20px;font-size:11px;font-weight:700;padding:1px 8px;min-width:20px;text-align:center}
.side .nbadge:empty{display:none}
.side-foot{margin-top:auto;padding:10px 10px 0;font-size:10.5px;color:#a99cd0;display:flex;align-items:center;gap:7px}
.side-dot{width:8px;height:8px;border-radius:50%;background:var(--good,#129a6b);flex:0 0 auto}
.appbody .wrap{max-width:none;margin:0;padding:16px 26px 70px;width:100%}
.topcta{margin-left:auto;display:flex;align-items:center;gap:8px;background:var(--pink);color:#fff;border-radius:999px;padding:7px 15px;font-size:12.5px;font-weight:600;text-decoration:none;white-space:nowrap}
.topcta b{background:rgba(255,255,255,.25);border-radius:20px;padding:1px 8px}
.topcta:hover{filter:brightness(1.06)}
@media(max-width:820px){
  .appbody{grid-template-columns:1fr;overflow-x:hidden}
  .side{position:static;height:auto;flex-direction:row;flex-wrap:wrap;gap:4px;min-width:0}
  .side-grp,.side-foot{display:none}
  .side .navbtn{width:auto}
  .appbody .wrap{padding:12px 14px 70px;min-width:0;overflow-x:hidden}
}
/* r10: Home pinned at top of sidebar */
.side .navbtn.navhome{margin-bottom:6px;font-weight:600;color:#fff;background:rgba(255,255,255,.06)}
.side .navbtn.navhome.on{background:#fff;color:var(--v)}
.side .navbtn.navhome:hover:not(.on){background:rgba(255,255,255,.13)}
/* r13 Brands tab */
.p4grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}
.p4list{display:flex;flex-direction:column;gap:8px;max-height:78vh;overflow-y:auto;padding-right:2px}
.fchip{border:1px solid var(--border2);background:var(--card);border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:600;cursor:pointer;color:var(--ink)}
.fchip.on{background:var(--v);color:#fff;border-color:var(--v)}
.wbfilters{display:flex;gap:8px;align-items:center;margin:10px 0 12px;flex-wrap:wrap}
.abtns{margin-top:14px;display:flex;gap:8px;align-items:center}
.asec{background:#faf8fe;border:1px solid var(--border);border-radius:10px;padding:11px 13px;font-size:13.5px;line-height:1.55}
.bmgchain{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.bmg-arrow{color:var(--muted);font-weight:700}
.bmg-src{font-size:11.5px;color:var(--info);text-decoration:none;margin-left:6px}
.bmg-ctx{margin:3px 0;font-size:12.5px}
@media(max-width:820px){.p4grid{grid-template-columns:1fr}}
@media(max-width:980px){.corp-diagram-layout{grid-template-columns:1fr}.corp-diagram{max-height:none}.corp-mother-layer{padding-left:14px}.corp-mother-branch::before{left:-14px;width:10px}.corp-node-mother{min-width:0;width:100%}}
/* r14 actor fast review */
.fastbar{display:flex;align-items:center;gap:14px;background:var(--v);color:#fff;border-radius:12px;padding:10px 16px;margin:10px 0 14px;position:sticky;top:8px;z-index:5}
.fast-prog{font-size:14px}
.fast-keys{font-size:12px;opacity:.85;flex:1}
.fast-keys kbd{background:rgba(255,255,255,.18);border-radius:4px;padding:1px 6px;font-family:inherit;font-weight:700}
.fastwrap{max-width:980px;margin:0 auto}

/* r15 ingest staging */
.ingrid{display:grid;grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:16px;align-items:start}
.ingdrop{min-height:300px;border:2px dashed var(--border2);border-radius:12px;background:var(--card);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;gap:12px;transition:border-color .15s,background .15s,transform .15s}
.ingdrop.drag{border-color:var(--pink);background:#fff7fb;transform:translateY(-1px)}
.ingdrop-ic{font-size:34px}
.ingdrop-title{font-size:18px;font-weight:800;color:var(--v)}
.ingdrop-sub{font-size:13px;line-height:1.5;color:var(--muted);max-width:340px}
.ingurl{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;width:min(100%,360px);margin-top:4px}
.ingurl input{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font:inherit;font-size:12.5px;background:#fff}
.ingpanel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;box-shadow:0 4px 14px rgba(34,17,51,.04)}
.ingpanel-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.ingmeta{display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px;padding:8px 0;border-top:1px solid var(--border);font-size:12px}
.ingmeta span{color:var(--muted);font-weight:700}
.ingmeta b{color:var(--v);font-weight:600;word-break:break-word}
.ingjobs{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.ingjob{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--bg)}
.ingjob-main{min-width:0;display:flex;flex-direction:column;gap:3px}
.ingjob-main b{font-size:13.5px;color:var(--v);word-break:break-word}
.ingjob-main span,.ingjob-main small{font-size:11.5px;color:var(--muted);word-break:break-word}
.ingjob-side{display:flex;align-items:flex-end;flex-direction:column;gap:5px;flex:0 0 190px;text-align:right}
.ingjob-side .btn-sm{margin-top:4px}
.ingjob-side small{font-size:11px;color:var(--muted);word-break:break-word}
.ingreview{margin-top:16px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;box-shadow:0 4px 14px rgba(34,17,51,.04)}
.ingreview .mdoc{max-height:520px;overflow:auto}
.ingresult-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ingresult-grid pre{max-height:360px;overflow:auto;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px;white-space:pre-wrap;font-size:11.5px}
.ingempty{padding:18px;border:1px dashed var(--border2);border-radius:10px;color:var(--muted);font-size:13px;background:var(--bg)}
.ing-sec-link{font-size:11.5px;color:var(--muted);text-decoration:underline;cursor:pointer;opacity:.75}
.ing-sec-link:hover{opacity:1}
.ing-status-hint{font-size:11.5px;color:var(--muted);font-style:italic}
.ing-primary-group{display:flex;flex-direction:column;gap:5px;align-items:flex-end}
@media(max-width:900px){.ingrid{grid-template-columns:1fr}.ingjob{flex-direction:column}.ingjob-side{align-items:flex-start;text-align:left;flex:auto}.ingresult-grid{grid-template-columns:1fr}.ing-primary-group{align-items:flex-start}}

/* Approvability inline badge in actor cards */
.approv-inline{display:inline-block;font-size:11px;padding:2px 7px;border-radius:10px;margin-left:6px;white-space:nowrap;vertical-align:middle;border:1px solid transparent}
.approv-inline-provable_ready{background:rgba(56,189,103,.15);color:#23a05a;border-color:rgba(56,189,103,.35)}
.approv-inline-provable_missing_edge{background:rgba(255,180,0,.15);color:#a07800;border-color:rgba(255,180,0,.35)}
.approv-inline-thin_or_uncertain{background:rgba(200,150,0,.12);color:#8a6500;border-color:rgba(200,150,0,.3)}
.approv-inline-alias_or_duplicate{background:rgba(120,100,200,.12);color:#5a48a0;border-color:rgba(120,100,200,.3)}
.approv-inline-not_actor_or_wrong_subject{background:rgba(220,60,60,.1);color:#b03030;border-color:rgba(220,60,60,.25)}

/* Approvability tab */
.approv-wrap{display:flex;flex-direction:column;gap:10px}
.approv-hd h3{margin:0 0 4px;font-size:16px}
.approv-seg{flex-wrap:wrap;gap:6px}
.approv-card{margin-bottom:6px}
.approv-card.sel{border-color:var(--pink);background:rgba(234,40,104,.06)}
.approv-repair{margin-top:4px;font-size:11px;color:var(--info)}
.approv-detail{padding:12px;background:var(--card);border:1px solid var(--border);border-radius:12px}
.approv-d-name{font-size:15px;font-weight:700;color:var(--v);margin-bottom:6px}
.approv-d-meta{font-size:12px;margin-bottom:8px}
.approv-gate-note{background:rgba(255,196,0,.12);border:1px solid rgba(255,196,0,.4);border-radius:8px;padding:10px;font-size:12px;margin:10px 0}
.p4pager{display:flex;align-items:center;gap:4px;padding:6px 0}

/* ---- Mobile fixes (≤640px) ---- */
@media(max-width:640px){
  /* Agent war room: horizontal scroll so 5 stations don't overflow the page */
  .pxroom{overflow:hidden}
  .pxfloor{overflow-x:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start;scrollbar-width:none;padding-bottom:14px}
  .pxfloor::-webkit-scrollbar{display:none}
  .pxstation{flex:0 0 auto;min-width:100px}
  /* Panels below war room: stack vertically */
  .pxpanels{flex-direction:column}
  .pxpanel{min-width:0;width:100%}
  /* Cron rows: keep label visible, don't overflow */
  .pxcron{min-width:0}
  .pxcron .pxcdot{flex-shrink:0}
  .pxcron .pxcat{flex-shrink:0;white-space:nowrap}
  /* Home page cr-row cards: stack vertically */
  .cr-row{flex-direction:column}
  .cr-card{min-width:0;width:100%}
  /* Review queue hero: stack CTA below text */
  .hhero{flex-direction:column;align-items:flex-start;gap:14px;padding:18px 20px}
  .hhero-big{font-size:22px}
  .hhero-cta{align-self:flex-start}
  /* Two-column grids without mobile breakpoints */
  .twocol{grid-template-columns:1fr}
  /* Tables: scroll instead of body overflow */
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}
  /* cr-gate: stack vertically */
  .cr-gate-compact{flex-direction:column;align-items:flex-start;gap:10px}
}

/* ═══ WAR ROOM ═══ */
.wr-head{padding:24px 28px 12px;border-bottom:1px solid rgba(255,255,255,.08);background:var(--v2)}
.wr-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#9ca3af);margin-bottom:4px}
.wr-title{font-size:22px;font-weight:700;color:#fff;margin-bottom:4px}
.wr-meta{font-size:12px;color:var(--muted,#9ca3af)}
.wr-refresh{background:transparent;border:1px solid rgba(255,255,255,.2);color:#9ca3af;font-size:11px;border-radius:4px;padding:2px 8px;cursor:pointer}
.wr-refresh:hover{color:#fff;border-color:rgba(255,255,255,.4)}
.wr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;min-height:calc(100vh - 140px);background:var(--v)}
.wr-col{border-right:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;min-height:0;background:var(--v)}
.wr-col:last-child{border-right:none}
.wr-col-h{padding:12px 16px 8px;font-size:12px;font-weight:700;color:#fff;letter-spacing:.02em;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:center;gap:6px}
.wr-live{color:#4ade80;font-size:11px;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.wr-col-body{flex:1;overflow-y:auto;padding:8px 0}
.wr-src{display:block;font-size:10px;color:#6b7280;padding:8px 16px;border-top:1px solid rgba(255,255,255,.05)}
.wr-item{display:flex;align-items:flex-start;gap:8px;padding:8px 16px;border-radius:4px;cursor:default}
.wr-item:hover{background:rgba(255,255,255,.04)}
.wr-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-top:5px;flex-shrink:0}
.wr-dot.on{background:#4ade80}
.wr-dot.idle{background:#6b7280}
.wr-dot.off{background:#f87171}
.wr-dot.done{background:#818cf8}
.wr-item-body{flex:1;min-width:0}
.wr-item-t{font-size:13px;font-weight:600;color:#e5e7eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wr-item-s{font-size:11px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wr-muted{font-weight:400;color:#6b7280}
.wr-section-h{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7280;padding:12px 16px 4px}
.wr-empty{font-size:12px;color:#6b7280;padding:8px 16px;font-style:italic}
.wr-warn{font-size:11px;color:#fbbf24;padding:4px 16px}
.wr-gate{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:4px}
.wr-gate.active{background:rgba(234,40,104,.08)}
.wr-gate-ic{font-size:18px;flex-shrink:0}
.wr-gate-body{flex:1;min-width:0}
.wr-gate-t{font-size:12px;font-weight:600;color:#e5e7eb}
.wr-gate-n{font-size:12px;color:#9ca3af}
.wr-gate.active .wr-gate-n{color:#ea2868;font-weight:700}
.wr-gate-cta{font-size:13px;color:#7dd3fc;text-decoration:none;flex-shrink:0}
.wr-gate-cta:hover{color:#fff}
.wr-loading{padding:40px;text-align:center}
@media(max-width:900px){.wr-grid{grid-template-columns:1fr 1fr}.wr-col{border-right:none;border-bottom:1px solid rgba(255,255,255,.07)}}
@media(max-width:500px){.wr-grid{grid-template-columns:1fr}}

/* ═══ CANDIDATES ═══ */
.cand-page{background:var(--v);min-height:100vh;color:#e5e7eb}
.cand-page .subnav{background:var(--v2);border-bottom:1px solid rgba(255,255,255,.08);margin-top:0;padding:0 16px}
.cand-page .subbtn{color:#9ca3af}
.cand-page .subbtn.on{color:#ea2868;border-bottom-color:#ea2868}
.cand-page .subnote{color:#6b7280;font-size:11px;margin-left:auto}
.cand-head{padding:16px 24px 8px;border-bottom:1px solid rgba(255,255,255,.08);background:var(--v2)}
.cand-eyebrow{font-size:11px;color:#9ca3af;margin-bottom:8px}
.cand-search input{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#fff;font-size:13px;padding:7px 12px;width:280px;outline:none}
.cand-search input:focus{border-color:rgba(255,255,255,.35)}
.cand-layout{display:flex;height:calc(100vh - 200px);background:var(--v)}
.cand-list{width:48%;border-right:1px solid rgba(255,255,255,.07);overflow-y:auto;background:var(--v)}
.cand-detail{flex:1;overflow-y:auto;padding:0}
.cand-col-header{display:flex;align-items:center;gap:8px;padding:8px 18px;border-bottom:1px solid rgba(255,255,255,.12);position:sticky;top:0;background:#1a0d2e;z-index:1}
.cand-row{padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.07);cursor:pointer}
.cand-row:hover,.cand-row.on{background:rgba(255,255,255,.08)}
.cand-row-main{display:flex;align-items:center;gap:8px;min-width:0}
.cand-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:#6b7280}
.cand-dot.st-approved{background:#4ade80}
.cand-dot.st-rejected{background:#f87171}
.cand-dot.st-pending,.cand-dot.st-,.cand-dot.st-new{background:#fbbf24}
.cand-date{font-size:11px;color:#9ca3af;flex-shrink:0;width:72px}
.cand-loc{font-size:11px;font-weight:600;color:#e5e7eb;flex-shrink:0;width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cand-plat{font-size:11px;color:#818cf8;flex-shrink:0;width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cand-sum{font-size:11px;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.cand-detail-empty{padding:40px;font-size:14px;color:#9ca3af;text-align:center}
.cd-head{padding:20px 20px 12px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:12px}
.cd-date{font-size:13px;font-weight:700;color:#9ca3af}
.cd-loc{font-size:16px;font-weight:700;color:#fff;flex:1}
.cd-st{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid;text-transform:uppercase}
.cd-st.st-pending,.cd-st.st-,.cd-st.st-new{color:#fbbf24;border-color:#fbbf24}
.cd-st.st-approved{color:#4ade80;border-color:#4ade80}
.cd-st.st-rejected{color:#f87171;border-color:#f87171}
.cd-row{padding:8px 20px;font-size:13px;color:#d1d5db;display:flex;gap:10px;border-bottom:1px solid rgba(255,255,255,.04)}
.cd-row b{color:#9ca3af;font-size:12px;min-width:80px;flex-shrink:0}
.cd-urls{display:flex;flex-direction:column;gap:4px}
.cd-urls a{color:#7dd3fc;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}
.cd-urls a:hover{text-decoration:underline}
.cd-actions{padding:16px 20px;display:flex;gap:10px}
.cd-btn{padding:8px 18px;border-radius:6px;font-size:13px;font-weight:700;cursor:pointer;border:none}
.cd-btn.approve{background:#22c55e;color:#fff}
.cd-btn.approve:hover{background:#16a34a}
.cd-btn.reject{background:#ef4444;color:#fff}
.cd-btn.reject:hover{background:#dc2626}
.cd-btn.later{background:rgba(255,255,255,.1);color:#d1d5db;border:1px solid rgba(255,255,255,.2)}
.cd-btn.later:hover{background:rgba(255,255,255,.18)}

/* ── Event Outcomes Klapp-Sektion ── */
.wb-ev-outcomes { margin-top: 8px; border-top: 1px solid var(--border); }
.wb-ev-outcomes-toggle { cursor: pointer; font-size: 12px; font-weight: 600; color: var(--muted); padding: 6px 0 4px; list-style: none; display: flex; align-items: center; gap: 5px; }
.wb-ev-outcomes-toggle::-webkit-details-marker { display: none; }
.wb-ev-outcomes[open] .wb-ev-outcomes-toggle { color: var(--pink); }
.wb-ev-outcomes-body { padding: 8px 0 4px; display: flex; flex-direction: column; gap: 10px; }
.wb-outcome-block { }
.wb-outcome-label { font-size: 10.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); display: flex; align-items: center; gap: 6px; margin-bottom: 4px; }
.wb-outcome-tag { font-size: 11px; font-weight: 600; text-transform: none; letter-spacing: 0; padding: 1px 7px; border-radius: 999px; }
.wb-outcome-tag.tag-found { background: #f0fdf4; color: #16a34a; border: 1px solid #bbf7d0; }
.wb-outcome-tag.tag-not { background: #f3f4f6; color: #6b7280; border: 1px solid #e5e7eb; }
.wb-outcome-tag.tag-none { background: #fffbeb; color: #d97706; border: 1px solid #fde68a; }
.wb-outcome-summary { font-size: 12.5px; line-height: 1.5; color: var(--ink); margin-bottom: 5px; }
.wb-outcome-links { display: flex; flex-direction: column; gap: 3px; }
.wb-outcome-link { display: inline-flex; align-items: center; gap: 4px; font-size: 11.5px; color: #2563eb; text-decoration: none; padding: 3px 8px; border: 1px solid var(--border2); border-radius: 999px; background: var(--card); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wb-outcome-link:hover { border-color: #2563eb; }
.wb-outcome-div { border: none; border-top: 1px solid var(--border); }
.wb-fullscreen-btn { background: none; border: 1px solid var(--border2); border-radius: 6px; padding: 3px 8px; font-size: 14px; cursor: pointer; color: var(--muted); margin-left: auto; }
.wb-fullscreen-btn:hover { border-color: var(--pink); color: var(--pink); }
.wb-body.wb-fs { position: fixed; inset: 0; z-index: 9000; background: var(--bg); overflow: hidden; padding: 16px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.wb-body.wb-fs .wb-main { overflow-y: auto; height: 100%; }
.wb-body.wb-fs .wb-board { overflow-y: auto; height: 100%; }
.wb-body.wb-fs .wb-pool { max-height: none; }

/* ── ORC — Events from Outcome Research ── */
.orc-wrap { padding: 16px; }
.orc-head h3 { margin: 0 0 4px; font-size: 16px; }
.orc-count { font-size: 12px; font-weight: 400; color: var(--muted); margin-left: 8px; }
.orc-table { width: 100%; border-collapse: collapse; font-size: 12.5px; margin: 12px 0; }
.orc-table th { text-align: left; padding: 5px 8px; border-bottom: 2px solid var(--border); font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); }
.orc-table td { padding: 6px 8px; border-bottom: 1px solid var(--border); vertical-align: top; }
.orc-row.orc-st-dismissed td { opacity: .5; }
.orc-row.orc-st-coded td { opacity: .7; }
.orc-desc { max-width: 320px; white-space: normal; }
.orc-src { color: var(--link, #2563eb); text-decoration: none; font-size: 11px; }
.orc-src:hover { text-decoration: underline; }
.orc-dis { color: var(--link, #2563eb); text-decoration: none; font-size: 11.5px; font-weight: 600; }
.orc-dis:hover { text-decoration: underline; }
.orc-badge { display: inline-block; font-size: 10.5px; padding: 2px 8px; border-radius: 999px; font-weight: 600; }
.orc-cand { background: #eff6ff; color: #2563eb; border: 1px solid #bfdbfe; }
.orc-dim { background: #f3f4f6; color: #6b7280; border: 1px solid #e5e7eb; }
.orc-coded { background: #f0fdf4; color: #16a34a; border: 1px solid #bbf7d0; }
.orc-form { margin-top: 24px; padding: 16px; border: 1px solid var(--border2); border-radius: 8px; background: var(--card); }
.orc-form-h { font-weight: 700; font-size: 13px; margin-bottom: 10px; }
.orc-form-row { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.orc-form-row label { display: flex; flex-direction: column; gap: 3px; font-size: 11px; color: var(--muted); flex: 1; min-width: 140px; }
.orc-inp { font-size: 12.5px; padding: 4px 8px; border: 1px solid var(--border2); border-radius: 5px; background: var(--bg); color: var(--ink); width: 100%; box-sizing: border-box; }
.orc-inp:focus { outline: none; border-color: var(--pink, #e879a0); }

/* ── C6: Cluster-Proposals-Tab (2026-09-04) ──────────────────────────── */
.cp-meta-bar{padding:10px 16px;background:var(--card);border:1px solid var(--border);border-radius:8px;margin-bottom:16px;font-size:12.5px;color:var(--muted)}
.cp-country-section{margin-bottom:24px}
.cp-country-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0 10px;border-bottom:1px solid var(--border);margin-bottom:12px;font-size:13.5px}
.cp-noclusters-section .cp-country-head{color:var(--muted)}
.cp-cards{display:flex;flex-direction:column;gap:12px}
.cp-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;transition:border-color .12s}
.cp-card.cp-card-grenz{border-left:3px solid var(--warn,#f59e0b)}
.cp-card-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.cp-id{font-size:11px;font-weight:700;color:var(--muted);white-space:nowrap;font-family:monospace}
.cp-name{font-size:13px;font-weight:600;flex:1;min-width:0}
.cp-badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.cp-konf{font-size:11px;padding:2px 8px;border-radius:999px;font-weight:600}
.cp-konf-high{background:#d1fae5;color:#065f46}.cp-konf-med{background:#fef9c3;color:#78350f}.cp-konf-low{background:#fee2e2;color:#991b1b}
.cp-grenz{background:var(--warnbg,#fef3c7);color:var(--warn,#b45309);border-radius:6px;padding:5px 10px;font-size:12px;font-weight:600;margin-bottom:8px}
.cp-begruendung{font-size:12px;line-height:1.55;margin-bottom:10px;color:var(--ink);background:var(--bg2,rgba(255,255,255,.03));border-radius:6px;padding:8px 10px;border:1px solid var(--border)}
.cp-dims{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-bottom:10px}
.cp-dim{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:7px 10px;display:flex;flex-direction:column;gap:2px}
.cp-dim-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.cp-score{font-size:11px;font-weight:700;padding:2px 6px;border-radius:4px;display:inline-block;margin:2px 0}
.cp-score-strong{background:#d1fae5;color:#065f46}.cp-score-mod{background:#fef9c3;color:#78350f}.cp-score-weak{background:#fee2e2;color:#991b1b}.cp-score-absent{background:#f3f4f6;color:#6b7280}
.cp-dim-ev{font-size:11.5px;color:var(--ink);font-style:italic;white-space:pre-wrap;max-height:48px;overflow:hidden}
.cp-dim-sot{font-size:10px;color:var(--muted)}
.cp-evlist{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}
.cp-ev-id{font-size:10.5px;font-family:monospace;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:2px 6px;color:var(--muted)}
.cp-card-actions{display:flex;gap:8px}
.cp-card-actions .btn-xs:disabled{opacity:.45;cursor:not-allowed}
.cp-noclusters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px}
.cp-noch-nicht{background:var(--card);border:1px solid var(--border);border-radius:6px;padding:8px 12px;display:flex;align-items:center;gap:8px;font-size:12px}
.cp-noch-name{font-weight:600;flex:1}
.cp-err{background:#fee2e2;color:#991b1b;border-radius:8px;padding:16px;margin:16px 0}

/* Veraltete Ansichtsdatei sichtbar machen (Splinter, 04.09.): Leeds-Rot, damit es im
   Fliesstext der Meta-Zeile auffaellt, ohne eine eigene Warnbox zu brauchen. */
.cp-meta-bar .cp-alt { color: #ff1660; font-weight: 700; }

/* P29: Werkbank-Karte — Proposal-Metadaten (konfidenz, grenzfall, vs_old, dimensionen) */
.wb-cl-pmeta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;padding:6px 0 4px}
.wb-vsold{font-size:11.5px;color:var(--muted);margin:0 0 6px;line-height:1.45;border-left:2px solid var(--border);padding-left:8px}
.wb-vsold b{color:var(--ink)}
.wb-grund{font-size:11px;font-style:italic}
.wb-dim-det{margin:4px 0 8px;font-size:12px}
.wb-dim-det summary{cursor:pointer;user-select:none;padding:2px 0}
.wb-dim-tab{width:100%;border-collapse:collapse;margin-top:4px;font-size:11.5px}
.wb-dim-tab td{padding:3px 6px;border-bottom:1px solid var(--border);vertical-align:top}
.wb-dim-k{font-weight:600;white-space:nowrap;color:var(--ink);font-family:monospace;font-size:11px}


/* Stiller Speicher-Fehlschlag (21.09.2026): dauerhafter Hinweisstreifen im Disputes-Bereich.
   Farben ausschliesslich aus der vorhandenen Palette (--warn/--warnbg, --v, --pink). */
#lcSaveBlocked{position:fixed;left:0;right:0;top:0;z-index:9000;background:var(--warnbg);border-bottom:3px solid var(--warn);box-shadow:0 2px 10px rgba(34,17,51,.14)}
#lcSaveBlocked .lcsb-in{max-width:1200px;margin:0 auto;padding:11px 24px;display:flex;align-items:flex-start;gap:11px}
#lcSaveBlocked .lcsb-dot{flex:0 0 auto;width:11px;height:11px;margin-top:4px;border-radius:50%;background:var(--warn);box-shadow:0 0 0 4px rgba(160,90,0,.16)}
#lcSaveBlocked .lcsb-tx{font-size:13.5px;line-height:1.5;color:var(--warn)}
#lcSaveBlocked .lcsb-tx b{display:block;font-family:'Roboto Slab',Georgia,serif;font-size:15px;font-weight:700;color:var(--v);margin-bottom:2px}
#lcSaveBlocked .lcsb-meta{display:block;margin-top:4px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
body:has(#lcSaveBlocked) .top{margin-top:74px}

/* ── Anmeldestatus + Speicherstand (21.09.2026, Denis) ───────────────────────────────
   Balken und Anzeige haengen an <body> und ueberleben jedes Neuzeichnen.
   Farben ausschliesslich aus der vorhandenen Palette. */
#lcSignedOut{position:fixed;left:0;right:0;top:0;z-index:9400;background:#fdecef;border-bottom:3px solid var(--pink);box-shadow:0 2px 12px rgba(34,17,51,.18)}
#lcSignedOut .lcso-in{max-width:1200px;margin:0 auto;padding:11px 24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#lcSignedOut .lcso-dot{flex:0 0 auto;width:11px;height:11px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 4px rgba(234,40,104,.16)}
#lcSignedOut .lcso-tx{flex:1 1 260px;min-width:0;font-size:13.5px;line-height:1.5;color:#b3123b}
#lcSignedOut .lcso-tx b{display:block;font-family:'Roboto Slab',Georgia,serif;font-size:15px;font-weight:700;color:var(--v);margin-bottom:2px}
#lcSignedOut .lcso-btn{flex:0 0 auto;border:0;border-radius:999px;background:var(--pink);color:#fff;font:inherit;font-size:13px;font-weight:700;padding:8px 18px;cursor:pointer}
#lcSignedOut .lcso-btn:hover{filter:brightness(1.06)}
body:has(#lcSignedOut) .top{margin-top:74px}
body:has(#lcSignedOut) #lcSaveBlocked{top:74px}
body:has(#lcSignedOut):has(#lcSaveBlocked) .top{margin-top:148px}

#lcSaveState{position:fixed;right:18px;bottom:18px;z-index:9300;display:flex;align-items:center;gap:10px;max-width:calc(100vw - 36px);
  background:var(--card);border:1px solid var(--border2);border-radius:999px;padding:7px 8px 7px 15px;box-shadow:0 10px 30px rgba(34,17,51,.16)}
#lcSaveState .lcss-tx{font-size:12.5px;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#lcSaveState .lcss-btn{flex:0 0 auto;border:0;border-radius:999px;background:var(--pink);color:#fff;font:inherit;font-size:12px;font-weight:700;padding:6px 14px;cursor:pointer}
#lcSaveState .lcss-btn:disabled{background:var(--bg);color:var(--faint);cursor:default}
#lcSaveState.lcss-ok .lcss-tx{color:var(--good)}
#lcSaveState.lcss-open .lcss-tx{color:var(--warn)}
#lcSaveState.lcss-busy .lcss-tx{color:var(--info)}
#lcSaveState.lcss-bad{border-color:var(--pink);background:#fdecef}
#lcSaveState.lcss-bad .lcss-tx{color:#b3123b;white-space:normal}
@media (max-width:640px){
  #lcSaveState{left:12px;right:12px;bottom:12px;border-radius:14px;padding:9px 10px 9px 14px}
  #lcSaveState .lcss-tx{white-space:normal}
  #lcSignedOut .lcso-in{padding:10px 14px}
  body:has(#lcSignedOut) .top{margin-top:96px}
}

/* ── Disputes sub-tabs (2026-10-08, Splinter auf Denis' Anweisung) ──────────
   Workbench und die Belegpruefung liegen nebeneinander statt auf zwei Servern.
   Denis, 08.10.: die erste Fassung war "stilistisch unterschiedlich" — eckige
   dunkle Karteireiter in einer runden, hellen UI. Jetzt dieselben Bausteine wie
   der Rest: --card, --border, --r2, Pink als Akzent, keine schwarzen Kanten. */
.dsubtabs{display:flex;align-items:center;gap:7px;margin:14px 0 14px;flex-wrap:wrap}
.dsubtab{border:1px solid var(--border);background:var(--card);font:inherit;font-weight:600;
  font-size:13.5px;color:var(--muted);padding:8px 16px;cursor:pointer;border-radius:999px;
  transition:color .12s,border-color .12s,background .12s}
.dsubtab:hover{color:var(--ink);border-color:var(--border2)}
.dsubtab.on{color:var(--pink);border-color:var(--pink);background:var(--pinkbg)}
.dsubcnt{margin-left:8px;background:var(--border);color:var(--muted);border-radius:20px;
  padding:1px 8px;font-size:11px;font-weight:700}
.dsubtab.on .dsubcnt{background:var(--pink);color:#fff}
.dsubnote{margin-left:auto;font-size:12px;color:var(--faint)}
.cmpframe{width:100%;height:calc(100vh - 190px);min-height:520px;border:1px solid var(--border);
  border-radius:var(--r);background:var(--card);display:block}
