:root{
  --or:#ff7a00; --or-d:#d96700; --ink:#0e0f11; --pnl:#17191d; --pnl2:#1f2228;
  --line:#2c2f36; --tx:#eceef0; --mut:#9aa0aa; --hot:#ffb066;
  --toph:56px;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--ink);color:var(--tx);font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;line-height:1.5}
a{color:var(--or);text-decoration:none}
b{color:#fff}

/* topbar */
.topbar{position:sticky;top:0;z-index:50;height:var(--toph);display:flex;align-items:center;gap:12px;
  padding:0 12px;padding-top:env(safe-area-inset-top);background:linear-gradient(180deg,#1b1d21,#121316);
  border-bottom:2px solid var(--or);box-shadow:0 2px 14px rgba(0,0,0,.5)}
.burger{display:none;background:none;border:0;color:#fff;font-size:1.5rem;cursor:pointer;padding:4px 8px}
.brand{display:flex;align-items:center;gap:8px;font-weight:800;letter-spacing:.04em;white-space:nowrap;color:#fff}
.brand__mark{font-size:1.3rem}
.brand__txt b{color:var(--or)}
.search{position:relative;margin-left:auto;flex:1 1 auto;max-width:520px}
.search input{width:100%;padding:.55em .9em;border-radius:10px;border:1px solid var(--line);
  background:var(--pnl2);color:var(--tx);font:inherit}
.search input:focus-visible{outline:2px solid var(--or);border-color:var(--or)}
.live{position:absolute;top:110%;left:0;right:0;background:var(--pnl);border:1px solid var(--line);
  border-radius:10px;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.6);max-height:70vh;overflow-y:auto}
.live a{display:block;padding:.55em .8em;border-bottom:1px solid var(--line);color:var(--tx)}
.live a:hover{background:var(--pnl2)}
.live a b{color:var(--or)}
.live small{color:var(--mut)}

/* layout */
.layout{display:flex;min-height:calc(100dvh - var(--toph))}
.side{width:262px;flex:0 0 auto;background:var(--pnl);border-right:1px solid var(--line);
  padding:12px 8px;overflow-y:auto}
.side__h{margin:14px 8px 6px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--mut)}
.side__a{display:block;padding:.5em .7em;border-radius:8px;color:var(--tx);font-size:.92rem}
.side__a:hover{background:var(--pnl2)}
.side__a--hot{color:var(--hot);font-weight:700}
.content{flex:1 1 auto;min-width:0;padding:20px clamp(14px,3vw,34px) 40px}

/* hero */
.hero{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);margin-bottom:24px}
.hero__img{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.5)}
.hero__txt{position:relative;padding:38px 26px;max-width:640px}
.hero__txt h1{margin:0 0 .3em;font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.1}
.hero__txt h1 span{color:var(--or)}
.hero__txt p{color:#dfe2e6;margin:0 0 18px}
.hero__cta{display:flex;gap:10px;flex-wrap:wrap}

/* headings */
.h1{font-size:1.6rem;margin:.2em 0 .4em}
.h2{font-size:1.2rem;margin:1.4em 0 .5em;border-left:4px solid var(--or);padding-left:10px}
.lead{color:var(--mut);max-width:70ch}

/* buttons */
.btn{display:inline-block;padding:.55em 1em;border-radius:10px;border:1px solid var(--line);
  background:var(--pnl2);color:var(--tx);font-weight:600;cursor:pointer}
.btn:hover{background:#2a2e35}
.btn--primary{background:var(--or);border-color:var(--or-d);color:#1a1200}
.btn--primary:hover{background:var(--or-d)}

/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.card{display:flex;flex-direction:column;gap:3px;padding:16px;border-radius:14px;background:var(--pnl);
  border:1px solid var(--line)}
.card:hover{border-color:var(--or);transform:translateY(-2px);transition:.15s}
.card__i{font-size:1.6rem}
.card b{color:#fff}
.card span:last-child{color:var(--mut);font-size:.86rem}

/* spec grid */
.specgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.spec{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:12px;background:var(--pnl);
  border:1px solid var(--line)}
.spec:hover{border-color:var(--or)}
.spec b{color:var(--or)}
.spec__v{font-size:.92rem}
.spec__x{color:var(--mut);font-size:.84rem}

/* rows */
.grp{margin:18px 0}
.grp__h{font-size:1.1rem;margin:0 0 2px}
.grp__o{color:var(--mut);margin:.1em 0 .6em;font-size:.9rem}
.rows{display:flex;flex-direction:column;gap:6px}
.row{display:flex;align-items:baseline;gap:12px;padding:.7em .9em;border-radius:10px;background:var(--pnl);
  border:1px solid var(--line);color:var(--tx)}
.row:hover{border-color:var(--or)}
.row--dead{opacity:.6;pointer-events:none}
.row__l{font-weight:600;flex:0 0 auto}
.row__s{color:var(--mut);font-size:.86rem;flex:1 1 auto;min-width:0}
.row__n{color:var(--or);margin-left:auto;white-space:nowrap;font-size:.85rem}
.row--res{flex-direction:column;align-items:stretch;gap:2px}
.row--res .row__n{margin-left:0}

/* tables */
.filter{width:100%;max-width:420px;margin:8px 0 14px;padding:.55em .8em;border-radius:10px;
  border:1px solid var(--line);background:var(--pnl2);color:var(--tx);font:inherit}
.tbl{width:100%;border-collapse:collapse;font-size:.92rem}
.tbl th,.tbl td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{color:var(--mut);position:sticky;top:var(--toph);background:var(--ink)}
.tbl .nowrap{white-space:nowrap}
.tbl .muted{color:var(--mut);font-size:.85rem}

/* misc */
.pill{display:inline-block;margin:4px 8px 4px 0;padding:.4em .8em;border-radius:999px;background:var(--pnl);
  border:1px solid var(--line)}
.ul{padding-left:1.2em}.ul li{margin:.2em 0}
.crumb{color:var(--mut);font-size:.85rem;margin-bottom:6px}
.pagenote{color:var(--mut);font-size:.8rem;margin:0 0 12px}
.pages{display:flex;flex-direction:column;gap:16px;align-items:center;margin:8px 0 6px}
.pageimg{display:block;width:100%;max-width:900px;background:#fff;border:1px solid var(--line);
  border-radius:10px;overflow:hidden;box-shadow:0 6px 22px rgba(0,0,0,.45)}
.pageimg img{width:100%;display:block}
.pageimg:hover{border-color:var(--or)}
.rawtext{margin-top:18px}
.rawtext summary{cursor:pointer;color:var(--or);font-size:.9rem;padding:.4em 0}
.manual{white-space:pre-wrap;word-break:break-word;background:var(--pnl);border:1px solid var(--line);
  border-radius:12px;padding:16px;font-size:.82rem;line-height:1.45;overflow-x:auto;font-family:ui-monospace,Menlo,Consolas,monospace}
.pager{display:flex;justify-content:space-between;margin-top:16px;gap:10px}
.more{margin-top:18px}
.empty{color:var(--mut)}
.foot{margin-top:36px;padding-top:14px;border-top:1px solid var(--line);color:var(--mut);font-size:.8rem}

/* wiring */
.wgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.wfig{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.wfig img{width:100%;display:block}
.wfig figcaption{color:#111;background:#f0f0f0;padding:8px 10px;font-size:.85rem;font-weight:600}

/* recalls */
.recall{background:var(--pnl);border:1px solid var(--line);border-left:4px solid var(--or);border-radius:12px;
  padding:14px 16px;margin:12px 0}
.recall header{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:var(--mut);font-size:.82rem;margin-bottom:4px}
.recall__id{background:var(--or);color:#1a1200;font-weight:700;padding:.1em .5em;border-radius:6px}
.recall h3{margin:.1em 0 .4em}
.recall p{margin:.3em 0;font-size:.92rem}

.scrim{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:40}

@media (max-width:860px){
  .burger{display:block}
  .side{position:fixed;top:var(--toph);bottom:0;left:0;z-index:45;transform:translateX(-100%);transition:transform .2s}
  .side.open{transform:none}
  .brand__txt{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
