/* OnePlatform AI — application shell + auth screens.
   One restrained accent (gold) spent on active state + focus; everything else
   quiet navy/neutral. Monospace for keys, IDs and counts (an engineering tool). */

:root{
  --navy-900:#071a36;   /* sidebar */
  --navy-800:#0a2348;
  --navy-700:#0d2b55;   /* brand */
  --navy-500:#1d4e89;
  --navy-300:#5b7fb0;
  --gold:#c8911a;       /* the one accent */
  --gold-soft:#f0d9a8;
  --bg:#eef2f7;
  --surface:#ffffff;
  --surface-2:#f7f9fc;
  --ink:#16233b;
  --muted:#5d6b7e;
  --faint:#8896a8;
  --line:#dde4ee;
  --good:#157a52;
  --good-bg:#e6f4ec;
  --warn:#b5532a;
  --warn-bg:#fbe9e1;
  --radius:10px;
  --sidebar-w:250px;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:var(--sans);font-size:14.5px;line-height:1.55;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--navy-500);text-decoration:none}
a:hover{text-decoration:underline}
code,.mono{font-family:var(--mono)}
h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.01em;color:var(--ink)}
h1{font-size:1.4rem}
h2{font-size:1.05rem}
h3{font-size:.85rem}
.muted{color:var(--muted)}
.faint{color:var(--faint)}
.eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}

/* ---------- buttons / forms / tables (shared) ---------- */
button,.btn{font:inherit;cursor:pointer;border:1px solid transparent;border-radius:8px;padding:.5rem .95rem;background:var(--navy-700);color:#fff;font-weight:550;transition:background .12s,border-color .12s}
button:hover,.btn:hover{background:var(--navy-500)}
button.ghost,.btn.ghost{background:transparent;color:var(--navy-500);border-color:var(--line)}
button.ghost:hover{background:var(--surface-2);text-decoration:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.form{display:flex;flex-direction:column;gap:.75rem;max-width:400px}
.form.inline{flex-direction:row;flex-wrap:wrap;align-items:center;max-width:none;gap:.55rem}
label{display:flex;flex-direction:column;gap:.3rem;font-size:.78rem;font-weight:600;color:var(--muted)}
input,select{font:inherit;padding:.55rem .65rem;border:1px solid #c7d2e1;border-radius:8px;background:#fff;color:var(--ink);width:100%}
input::placeholder{color:var(--faint)}
.err{color:var(--warn);font-size:.82rem;min-height:1rem;margin:0}
table.grid{width:100%;border-collapse:collapse}
.grid th,.grid td{text-align:left;padding:.6rem .7rem;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:middle}
.grid th{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.grid tbody tr:hover{background:var(--surface-2)}
.badge{display:inline-block;padding:.12rem .5rem;border-radius:999px;font-size:.72rem;font-weight:650;background:var(--surface-2);border:1px solid var(--line);color:var(--muted)}
.badge.good{background:var(--good-bg);color:var(--good);border-color:transparent}
.badge.gold{background:#fbf1dc;color:#8a6310;border-color:transparent}
.row{display:flex;gap:1rem;align-items:flex-start}
.row.between{justify-content:space-between;align-items:center}

/* ---------- auth screens ---------- */
.auth{min-height:100vh;display:grid;place-items:center;padding:2rem 1rem;
  background:radial-gradient(1200px 600px at 50% -10%,rgba(42,92,165,.28) 0,transparent 60%),
             linear-gradient(160deg,var(--navy-900),var(--navy-700) 60%,#0a3a6e)}
.auth-card{width:100%;max-width:404px;background:var(--surface);border-radius:14px;padding:2rem 1.9rem;box-shadow:0 20px 60px rgba(4,16,40,.4)}
.auth-brand{display:flex;align-items:center;gap:.55rem;justify-content:center;margin-bottom:1.4rem;color:#fff}
.auth .wordmark{color:#fff}
.auth-card .wordmark{color:var(--navy-700)}
.wordmark{font-weight:750;letter-spacing:-.02em;font-size:1.15rem}
.wordmark .dot{color:var(--gold)}
.auth-card h1{font-size:1.35rem;margin-bottom:.25rem}
.auth-card .form{max-width:none}
.auth-card button[type=submit]{width:100%;margin-top:.2rem}
.auth-foot{margin-top:1.1rem;font-size:.85rem;color:var(--muted);text-align:center}

/* ---------- app shell ---------- */
.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}
.sidebar{background:var(--navy-900);color:#c8d6ea;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;border-right:1px solid #04122a}
.sidebar .brand{display:flex;align-items:center;gap:.55rem;padding:1.05rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.07)}
.sidebar .brand .mark{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--gold),#e6b84d);display:grid;place-items:center;color:#3a2a06;font-weight:800;font-size:.85rem}
.sidebar .brand .wordmark{color:#fff;font-size:1.02rem}
.nav{flex:1;overflow-y:auto;padding:.9rem .7rem}
.nav-group{margin-bottom:1.15rem}
.nav-group .eyebrow{padding:0 .65rem .4rem;color:#6f86a8}
.nav-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .65rem;border-radius:8px;color:#bccbe1;font-size:.9rem;font-weight:500;position:relative;margin:1px 0}
.nav-item .ico{width:18px;text-align:center;opacity:.85;font-size:.95rem}
.nav-item:hover{background:rgba(255,255,255,.06);color:#fff;text-decoration:none}
.nav-item.active{background:rgba(29,78,137,.4);color:#fff}
.nav-item.active::before{content:"";position:absolute;left:-.7rem;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--gold)}
.nav-item.is-disabled{color:#64769180;cursor:default;pointer-events:none}
.nav-item .soon{margin-left:auto;font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid #2a3f5f;border-radius:5px;padding:.05rem .3rem;color:#7e93b3}
.tenant{margin:.5rem .8rem 1rem;padding:.7rem .8rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:9px}
.tenant .t-name{color:#fff;font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tenant .t-meta{font-size:.72rem;color:#8aa0c0;margin-top:.1rem}

/* main column */
.main{min-width:0;display:flex;flex-direction:column}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.topbar .page-title{font-size:1.05rem;font-weight:650}
.topbar-right{display:flex;align-items:center;gap:1rem}
.org-chip{display:flex;align-items:center;gap:.45rem;font-size:.82rem;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);padding:.3rem .65rem;border-radius:999px}
.org-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--good)}
.user{display:flex;align-items:center;gap:.55rem;position:relative}
.avatar{width:32px;height:32px;border-radius:50%;background:var(--navy-700);color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:650}
.user-menu{position:absolute;right:0;top:42px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 40px rgba(8,24,52,.18);min-width:180px;padding:.4rem;display:none}
.user-menu.open{display:block}
.user-menu a,.user-menu button{display:block;width:100%;text-align:left;padding:.5rem .6rem;border-radius:7px;background:none;color:var(--ink);font-weight:500;font-size:.88rem;border:0}
.user-menu a:hover,.user-menu button:hover{background:var(--surface-2);text-decoration:none}
.menu-sep{height:1px;background:var(--line);margin:.35rem .2rem}
.hamburger{display:none;background:none;border:1px solid var(--line);color:var(--ink);padding:.35rem .55rem}

/* content */
.content{padding:1.6rem 1.5rem;max-width:1060px;width:100%}
.page-head{margin-bottom:1.2rem}
.page-head p{margin:.25rem 0 0;color:var(--muted)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.35rem;margin-bottom:1.15rem}
.card h2{margin-bottom:.2rem}
.card .sub{color:var(--muted);font-size:.86rem;margin:0 0 1rem}

/* stat cards */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin-bottom:1.15rem}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.05rem 1.15rem;position:relative;overflow:hidden}
.stat::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);opacity:.0;transition:opacity .15s}
.stat:hover::after{opacity:.7}
.stat .label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.stat .value{font-family:var(--mono);font-size:1.9rem;font-weight:600;margin-top:.3rem;color:var(--navy-700)}
.stat .hint{font-size:.78rem;color:var(--muted);margin-top:.15rem}

/* activity feed */
.feed{list-style:none;margin:0;padding:0}
.feed li{display:flex;gap:.7rem;padding:.6rem 0;border-bottom:1px solid var(--line);font-size:.88rem}
.feed li:last-child{border-bottom:0}
.feed .when{font-family:var(--mono);font-size:.74rem;color:var(--faint);white-space:nowrap;min-width:118px}
.feed .what code{font-size:.82rem;color:var(--navy-700)}

/* empty states */
.empty{text-align:center;padding:2.4rem 1rem;color:var(--muted)}
.empty .big{font-size:1.05rem;color:var(--ink);font-weight:600;margin-bottom:.3rem}
.placeholder-ico{font-size:1.8rem;opacity:.5;margin-bottom:.5rem}

/* responsive */
@media (max-width:860px){
  .app{grid-template-columns:1fr}
  .sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-w);transform:translateX(-100%);transition:transform .2s;z-index:60}
  .app.nav-open .sidebar{transform:translateX(0);box-shadow:0 0 0 100vmax rgba(4,12,28,.45)}
  .hamburger{display:inline-flex}
  .content{padding:1.1rem}
  .org-chip{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ===================== Agile workspace (Slice 3) ===================== */
.subtabs{display:flex;gap:.2rem;border-bottom:1px solid var(--line);margin:-.3rem 0 1.3rem}
.subtab{padding:.55rem .9rem;color:var(--muted);font-weight:550;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:.92rem}
.subtab:hover{color:var(--ink);text-decoration:none}
.subtab.active{color:var(--navy-700);border-bottom-color:var(--gold)}
.proj-key{font-family:var(--mono);font-size:.72rem;color:var(--navy-500);background:#eef3fb;border:1px solid #d7e3f4;padding:.1rem .45rem;border-radius:5px}

/* board */
.board{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;align-items:start}
.col{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:.55rem;min-height:140px}
.col-h{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--faint);font-weight:700;padding:.15rem .3rem .55rem}
.col-h .n{font-family:var(--mono);background:#fff;border:1px solid var(--line);border-radius:20px;padding:0 .4rem;color:var(--muted)}
.col.drop{outline:2px dashed var(--gold);outline-offset:-3px;background:#fbf6ea}
.icard{display:block;background:#fff;border:1px solid var(--line);border-radius:8px;padding:.55rem .6rem;margin-bottom:.5rem;box-shadow:0 1px 2px rgba(16,32,60,.05);cursor:grab}
.icard:hover{border-color:#bccadf;text-decoration:none}
.icard:active{cursor:grabbing}
.icard .t{display:block;color:var(--ink);font-size:.875rem;line-height:1.35;margin-bottom:.45rem}
.icard .r{display:flex;align-items:center;justify-content:space-between}
.icard .k{font-family:var(--mono);font-size:.72rem;color:var(--navy-500)}
.icard .right{display:flex;align-items:center;gap:.35rem}
.ptype{font-size:.62rem;padding:.06rem .36rem;border-radius:5px;border:1px solid var(--line);text-transform:capitalize;font-weight:600}
.ptype.bug{color:#b5532a;border-color:#f0c9b8;background:#fbe9e1}
.ptype.story{color:#2b7a4b;border-color:#bfe2cd;background:#e6f4ec}
.ptype.task{color:#2f5d99;border-color:#c2d6ef;background:#eaf1fb}
.prio{font-size:.66rem;font-weight:700;letter-spacing:.03em}
.prio.low{color:#6b7a8d}.prio.medium{color:#2f5d99}.prio.high{color:#b5532a}.prio.urgent{color:#b00020}
.av{width:22px;height:22px;border-radius:50%;background:var(--navy-700);color:#fff;display:inline-grid;place-items:center;font-size:.62rem;font-weight:700;flex:none}
.av.none{background:#cdd6e3;color:#5d6b7e}

/* backlog + sprints */
.sprint-block{border:1px solid var(--line);border-radius:10px;margin-bottom:1rem;overflow:hidden}
.sprint-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .9rem;background:var(--surface-2);border-bottom:1px solid var(--line);flex-wrap:wrap}
.sprint-head .meta{font-size:.8rem;color:var(--muted)}
.ilist{list-style:none;margin:0;padding:0}
.ilist li{display:flex;align-items:center;gap:.6rem;padding:.55rem .9rem;border-bottom:1px solid var(--line)}
.ilist li:last-child{border-bottom:0}
.ilist .k{font-family:var(--mono);font-size:.74rem;color:var(--navy-500);min-width:64px}
.ilist .ttl{flex:1;font-size:.9rem;color:var(--ink)}
.ilist .ttl a{color:var(--ink)}
.statetag{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:.12rem .5rem;border-radius:20px}
.statetag.future{background:#eef3fb;color:#2f5d99}
.statetag.active{background:#e6f4ec;color:#157a52}
.statetag.completed{background:#eef1f4;color:#5d6b7e}
.s-dropdown{font-size:.8rem;padding:.3rem .4rem;width:auto}

/* issue detail */
.issue-grid{display:grid;grid-template-columns:1fr 250px;gap:1.3rem;align-items:start}
.issue-main .desc{white-space:pre-wrap;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:.8rem .9rem;min-height:60px}
.aside-row{display:flex;flex-direction:column;gap:.3rem;padding:.6rem 0;border-bottom:1px solid var(--line)}
.aside-row:last-child{border-bottom:0}
.aside-row .lbl{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--faint);font-weight:700}
.comment{display:flex;gap:.6rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.comment:last-child{border-bottom:0}
.comment .body{font-size:.9rem;white-space:pre-wrap}
.comment .who{font-size:.78rem;color:var(--muted);margin-bottom:.15rem}
.comment .who b{color:var(--ink)}
@media(max-width:860px){.board{grid-template-columns:1fr 1fr}.issue-grid{grid-template-columns:1fr}}

/* ===================== Service Desk / ITSM (Slice 4) ===================== */
.toolbar{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}
.toolbar .grow{flex:1}
.tkt-table{width:100%;border-collapse:collapse}
.tkt-table th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);font-weight:700;padding:.5rem .6rem;border-bottom:1px solid var(--line)}
.tkt-table td{padding:.6rem;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:middle}
.tkt-table tr:hover td{background:var(--surface-2)}
.tkt-key{font-family:var(--mono);font-size:.78rem;color:var(--navy-500)}
.rtype{font-size:.62rem;padding:.06rem .4rem;border-radius:5px;border:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.rtype.incident{color:#b00020;border-color:#f1c4ce;background:#fbe6ea}
.rtype.service_request{color:#2f5d99;border-color:#c2d6ef;background:#eaf1fb}
.sbadge{font-size:.66rem;text-transform:capitalize;font-weight:700;padding:.12rem .5rem;border-radius:20px;white-space:nowrap}
.sbadge.new{background:#eef3fb;color:#2f5d99}
.sbadge.in_progress{background:#e7f0fc;color:#1d63c4}
.sbadge.on_hold{background:#fbf0dd;color:#9a6b12}
.sbadge.resolved{background:#e6f4ec;color:#157a52}
.sbadge.closed{background:#eef1f4;color:#5d6b7e}
.pchip{font-size:.7rem;font-weight:700;text-transform:capitalize}
.pchip.low{color:#6b7a8d}.pchip.medium{color:#2f5d99}.pchip.high{color:#b5532a}.pchip.critical{color:#b00020}
.sla{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:700;white-space:nowrap}
.sla::before{content:"";width:8px;height:8px;border-radius:50%;display:inline-block}
.sla.ok{color:#157a52}.sla.ok::before{background:#1aa463}
.sla.due_soon{color:#9a6b12}.sla.due_soon::before{background:#d79a1f}
.sla.breached{color:#b00020}.sla.breached::before{background:#d11a37}
.sla.met{color:#5d6b7e}.sla.met::before{background:#9aa7b6}
.sla.none{color:#9aa7b6}.sla.none::before{background:#cdd6e3}
.sla-banner{display:flex;align-items:center;gap:.5rem;padding:.5rem .7rem;border-radius:8px;font-size:.82rem;font-weight:600;margin-bottom:.8rem}
.sla-banner.breached{background:#fbe6ea;color:#b00020;border:1px solid #f1c4ce}
.sla-banner.due_soon{background:#fbf0dd;color:#9a6b12;border:1px solid #f0dcae}
/* internal work notes stand out from public replies */
.comment.note{background:#fbf6ea;border:1px solid #f0e3bf;border-radius:8px;padding:.6rem .7rem;margin:.4rem 0}
.note-tag{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:#9a6b12;background:#f6e6bf;border-radius:4px;padding:.05rem .35rem;margin-left:.4rem}
.q-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .9rem;border:1px solid var(--line);border-radius:9px;margin-bottom:.6rem}
.q-card .meta{font-size:.8rem;color:var(--muted)}
.q-count{font-family:var(--mono);font-size:.8rem;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:.1rem .55rem;color:var(--ink)}
@media(max-width:860px){.tkt-table .hide-sm{display:none}}

/* ===================== Cross-cutting: search + my work (Slice 5) ===================== */
.topsearch{flex:1;max-width:420px;margin:0 1rem}
.topsearch input{width:100%;font:inherit;font-size:.9rem;padding:.45rem .7rem;border:1px solid #c7d2e1;border-radius:8px;background:var(--surface-2)}
.topsearch input:focus{outline:none;border-color:var(--gold);background:#fff}
.res-group{margin-bottom:1.4rem}
.res-group h2{display:flex;align-items:center;gap:.5rem;font-size:.95rem;margin-bottom:.5rem}
.res-group .count{font-family:var(--mono);font-size:.72rem;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:.05rem .5rem}
.res-list{list-style:none;margin:0;padding:0}
.res-list li{display:flex;align-items:center;gap:.7rem;padding:.6rem .2rem;border-bottom:1px solid var(--line)}
.res-list li:last-child{border-bottom:0}
.res-list a.k{font-family:var(--mono);font-size:.76rem;color:var(--navy-500);min-width:70px}
.res-list .ttl{flex:1;color:var(--ink)}
.res-list .ttl a{color:var(--ink)}
@media(max-width:720px){.topsearch{display:none}}

/* AI thread summary (Slice 5b) */
.ai-summary{margin-top:.8rem}
.ai-note{font-size:.72rem;color:var(--muted);margin-bottom:.4rem}
.ai-body{white-space:pre-wrap;background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:8px;padding:.7rem .8rem;font-size:.9rem;line-height:1.5}

/* ===================== Assets / CMDB (Slice 6) ===================== */
.atype{font-size:.62rem;padding:.06rem .4rem;border-radius:5px;border:1px solid var(--line);text-transform:capitalize;font-weight:600}
.atype.hardware{color:#2f5d99;border-color:#c2d6ef;background:#eaf1fb}
.atype.software{color:#2b7a4b;border-color:#bfe2cd;background:#e6f4ec}
.atype.service{color:#7a5b1e;border-color:#e7d3a6;background:#fbf2dd}
.atype.network{color:#5a3a8a;border-color:#d6c7ee;background:#f1ebfb}
.atype.other{color:#5d6b7e;border-color:#d2dbe5;background:#eef1f4}
.astatus{font-size:.66rem;text-transform:capitalize;font-weight:700;padding:.12rem .5rem;border-radius:20px;white-space:nowrap}
.astatus.in_stock{background:#eef3fb;color:#2f5d99}
.astatus.in_use{background:#e6f4ec;color:#157a52}
.astatus.in_repair{background:#fbf0dd;color:#9a6b12}
.astatus.retired{background:#eef1f4;color:#5d6b7e}
.kv{display:grid;grid-template-columns:140px 1fr;gap:.5rem .9rem;font-size:.9rem}
.kv dt{color:var(--faint);font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;align-self:center}
.kv dd{margin:0;color:var(--ink)}
.ci-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.2rem}
.ci-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:.18rem .3rem .18rem .6rem}
.ci-chip .x{cursor:pointer;border:none;background:#dde5ef;color:#5d6b7e;border-radius:50%;width:18px;height:18px;line-height:1;font-size:.8rem}
.ci-chip .x:hover{background:#c9d4e2}
.ci-chip a{font-family:var(--mono);font-size:.74rem;color:var(--navy-500)}

/* ===================== Knowledge base (Slice 7) ===================== */
.kbstatus{font-size:.66rem;text-transform:capitalize;font-weight:700;padding:.12rem .5rem;border-radius:20px;white-space:nowrap}
.kbstatus.draft{background:#fbf0dd;color:#9a6b12}
.kbstatus.published{background:#e6f4ec;color:#157a52}
.kbstatus.archived{background:#eef1f4;color:#5d6b7e}
.kb-item{padding:.8rem 0;border-bottom:1px solid var(--line)}
.kb-item:last-child{border-bottom:none}
.kb-item .row1{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.kb-item .row1 a.ttl{font-weight:600;color:var(--ink);font-size:1rem}
.kb-item .kbkey{font-family:var(--mono);font-size:.74rem;color:var(--navy-500)}
.kb-item .cat{font-size:.7rem;color:var(--faint);background:var(--surface-2);border:1px solid var(--line);border-radius:5px;padding:.05rem .4rem}
.kb-item .ex{color:var(--muted);font-size:.86rem;margin-top:.25rem}
.article-body{white-space:pre-wrap;line-height:1.65;font-size:.96rem;color:var(--ink);max-width:62ch}
.article-meta{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;color:var(--faint);font-size:.78rem;margin-top:.3rem}

/* ===================== MSP console (Slice 8) ===================== */
.orgswitch{display:flex;align-items:center;gap:.4rem;margin-right:.6rem}
.orgswitch .osr-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--faint)}
.orgswitch select{padding:.34rem .5rem;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:.82rem;max-width:200px}
.msp-table .num{text-align:right;font-variant-numeric:tabular-nums;width:9ch}
.msp-table tfoot td{border-top:2px solid var(--line);font-weight:700}
.msp-table .org-name{font-weight:600;color:var(--ink)}
.enter-btn{padding:.28rem .7rem;font-size:.8rem}
