/* Kiara OS in the TanTao GOD System style (T51, Joseph 16 Oct 2026).
   Loaded after hud.css on every page and scoped under body.g, so it wins
   over hud.css and apollo.css without touching their class names (no page
   template, form, URL or script changes). Colours: GOD navy tokens
   (docs/colour-system.md) with Kiara's own accent, violet. No inline
   styles (CSP). All motion off under prefers-reduced-motion. */
body.g{
  --bg:#03050d;--bg-2:#060a16;--surface:#0a1120;--surface-2:#0f182c;--surface-3:#15213b;
  --line:#1b2940;--line-2:#131d31;--line-hot:#27385a;
  --ink:#e8eeff;--ink-2:#c3cde6;--ink-3:#8e9bc2;--faint:#5c6890;--link:#b9a2ff;
  --ok:#00e676;--live:#18d8ff;--wait:#ffb020;--bad:#ff1744;--info:#2f7bff;--idle:#8b97ad;
  --acc:#9b6bff;--acc-2:#c4a8ff;--acc-soft:rgba(155,107,255,.14);
  --c1:#9b6bff;--c2:#fff03a;--c3:#2dd4bf;--c4:#ff4fa3;--c5:#a8f03a;--c6:#e0793a;--c7:#f07bff;--c8:#00a6ff;
  margin:0;background:var(--bg);color:var(--ink);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-feature-settings:"tnum" 1,"cv11" 1}
html{background:#03050d}
body.g .px{
  --gold:var(--acc);--goldhi:var(--acc-2);--golddk:var(--line-hot);--text:var(--ink);--muted:var(--ink-3);
  --health:var(--ok);--mana:var(--info);--ember:var(--wait);--danger:var(--bad);--arcane:var(--acc);
  font-family:inherit;color:var(--ink);padding-bottom:0;min-height:100vh;
  background:radial-gradient(1500px 620px at 82% -8%,rgba(155,107,255,.13),transparent 65%),
             radial-gradient(1100px 760px at -5% 105%,rgba(24,216,255,.06),transparent 60%),
             radial-gradient(rgba(255,255,255,.026) 1px,transparent 1px) 0 0/22px 22px,var(--bg)}
body.g a{color:var(--link);text-decoration:none}
body.g a:hover{color:#e2d6ff}
body.g .disp{font-family:inherit;letter-spacing:0}
body.g .goldtext{background:linear-gradient(90deg,#c4b5fd,#a5b4fc 45%,#f0abfc);-webkit-background-clip:text;background-clip:text;color:transparent;filter:none}
body.g .mono{font-family:"JetBrains Mono",ui-monospace,monospace}

/* ---------- shell: top bar + sidebar + main ---------- */
body.g .gpage{display:flex;flex-direction:column}
body.g .gtop{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:18px;min-height:68px;padding:10px 22px;
  border-bottom:1px solid var(--line-2);
  background:linear-gradient(115deg,transparent 57%,rgba(155,107,255,.09) 57.15%,transparent 57.5%),
             linear-gradient(90deg,var(--bg),var(--surface-2) 55%,var(--bg-2))}
body.g .gtop-brand{display:flex;align-items:center;gap:10px;flex:0 0 auto;color:var(--ink)}
/* T52 (Joseph 16 Oct): the K mark (was Jon's 陈), GOD-style ring around a glyph */
body.g .gmark{position:relative;flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:conic-gradient(#c4a8ff,#9b6bff,#18d8ff,#f07bff,#c4a8ff);box-shadow:0 0 18px -2px rgba(155,107,255,.8)}
body.g .gmark::before{content:"";position:absolute;inset:-4px;border-radius:50%;background:inherit;filter:blur(8px);opacity:.45;z-index:-1;animation:gspin 8s linear infinite}
body.g .gmark>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 35% 30%,#2a1d6b,#070a1a 72%);color:#fff;
  font:700 19px/1 "PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei","Source Han Sans SC",sans-serif;
  text-shadow:0 0 10px rgba(196,168,255,.9)}
body.g .gmark-sm{flex-basis:26px;width:26px;height:26px;box-shadow:0 0 12px -2px rgba(155,107,255,.8)}
body.g .gmark-sm>span{width:21px;height:21px;font-size:12px}
body.g .gmark-sm::before{display:none}
body.g .plaque:has(.gmark)::before{display:none}
@keyframes gspin{to{transform:rotate(360deg)}}
body.g .gtop-emblem{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(155,107,255,.55))}
body.g .gtop-word{font-size:21px;font-weight:800;letter-spacing:-.01em}
body.g .gtop-word b{background:linear-gradient(90deg,#c4b5fd,#f0abfc,#c4b5fd);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ghue 8s linear infinite}
body.g .gsearch{display:flex;align-items:center;gap:10px;flex:1 1 360px;max-width:520px;height:42px;padding:0 14px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
body.g .gsearch:focus-within{border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-soft)}
body.g .gsearch svg{width:18px;height:18px;flex:0 0 18px;stroke:var(--faint);fill:none;stroke-width:1.8;stroke-linecap:round}
body.g .gsearch input{flex:1;min-width:0;height:40px;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:14px;box-shadow:none}
body.g .gsearch input:focus{outline:none}
body.g .gsr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
body.g .gstatus{display:flex;flex-wrap:nowrap;gap:6px;margin-left:auto;min-width:0;overflow:hidden}
body.g .gchip{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid;white-space:nowrap}
body.g .gchip-on{color:var(--ok);border-color:rgba(0,230,118,.35);background:rgba(0,230,118,.08)}
body.g .gchip-off{color:var(--ink-3);border-color:var(--line-hot);background:var(--surface-2)}
body.g .gdot{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block}
body.g .gchip-on .gdot{animation:glive 1.8s infinite}
body.g .gtime{font-size:13px;color:var(--ink-2);white-space:nowrap;padding:0 4px}
body.g .guser{display:flex;align-items:center;gap:10px;padding:0;background:none;border:0;box-shadow:none}
body.g .guser::before,body.g .guser::after{display:none}
body.g .avatar{width:38px;height:38px;border-radius:50%;border:0;display:grid;place-items:center;font-weight:800;color:#fff;
  background:linear-gradient(135deg,var(--acc),#5b3fd1);box-shadow:0 0 16px -2px var(--acc)}
body.g .user-name{font-size:14px;font-weight:700;color:var(--ink)}
body.g .user-time{font-size:11.5px;color:var(--faint)}

body.g .gbody{display:flex;flex:1;min-height:calc(100vh - 68px)}
body.g .gside{position:sticky;top:68px;align-self:flex-start;flex:0 0 228px;height:calc(100vh - 68px);overflow-y:auto;
  max-width:none;margin:0;padding:12px 12px 16px;display:flex;flex-direction:column;gap:3px;
  border:0;border-right:1px solid var(--line-2);background:linear-gradient(180deg,var(--bg-2),var(--bg))}
body.g .sh{font-size:10.5px;letter-spacing:.2em;color:var(--faint);font-weight:700;padding:14px 12px 6px}
body.g .si{--c:var(--acc);position:relative;display:flex;align-items:center;gap:12px;height:44px;padding:0 12px;border-radius:11px;
  color:var(--ink-3);font-size:14.5px;font-weight:500;border:1px solid transparent;transition:background .2s,color .2s}
body.g .si:hover{color:var(--ink);background:var(--surface-2)}
body.g .si.on{color:#fff;font-weight:600;background:linear-gradient(90deg,color-mix(in srgb,var(--c) 30%,transparent),color-mix(in srgb,var(--c) 4%,transparent));border-color:color-mix(in srgb,var(--c) 40%,transparent)}
body.g .si.on::before{content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:var(--c);box-shadow:0 0 12px var(--c)}
body.g .si.soon{opacity:.45}
body.g .sico{width:28px;height:28px;flex:0 0 28px;border-radius:8px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--c),color-mix(in srgb,var(--c) 35%,black));box-shadow:0 0 12px -3px var(--c)}
body.g .sico svg{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.g .c-cmd{--c:var(--c1)} body.g .c-rep{--c:var(--live)} body.g .c-cam{--c:#e0c22a}
body.g .c-ppl{--c:var(--c3)} body.g .c-seq{--c:var(--c4)} body.g .c-eml{--c:var(--c8)}
body.g .c-msg{--c:#7fc31f} body.g .c-kno{--c:var(--c7)} body.g .c-agt{--c:var(--c6)} body.g .c-set{--c:var(--idle)}
body.g .gmain{flex:1;min-width:0;display:flex;flex-direction:column}
body.g .nav{border-bottom:0}

/* ---------- page width: full-width bento, no centred column ---------- */
body.g .wrap{max-width:none;width:100%;margin:0;padding:0 24px}
body.g .cols-3,body.g .page-col,body.g .settings{padding-top:22px;gap:18px}
body.g .col{gap:18px}
body.g .footer{margin:28px 0 0;padding:14px 24px 22px;border-top:1px solid var(--line-2);color:var(--faint)}
body.g .foot-note{color:var(--faint)}

/* ---------- cards (hud .frame) ---------- */
body.g .frame,body.g .stat,body.g .tbl-box{border-radius:14px}
body.g .frame{padding:18px 20px;border:1px solid var(--line);
  background:radial-gradient(460px 150px at 0% 0%,rgba(155,107,255,.10),transparent 70%),
             linear-gradient(180deg,var(--surface) 0%,var(--bg-2) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 40px -22px rgba(0,0,0,.95);
  transition:border-color .25s,box-shadow .25s;animation:grise .6s both}
body.g .frame::before{content:"";position:absolute;inset:5px;width:auto;height:auto;border:0;border-radius:0;filter:none;pointer-events:none;opacity:0;transition:opacity .25s;
  background:linear-gradient(var(--acc),var(--acc)) top left/14px 2px no-repeat,linear-gradient(var(--acc),var(--acc)) top left/2px 14px no-repeat,
             linear-gradient(var(--acc),var(--acc)) bottom right/14px 2px no-repeat,linear-gradient(var(--acc),var(--acc)) bottom right/2px 14px no-repeat}
body.g .frame::after{content:"";position:absolute;left:18px;right:18px;top:0;bottom:auto;width:auto;height:1px;border:0;border-radius:0;filter:none;
  background:linear-gradient(90deg,transparent,var(--acc),transparent);opacity:.75}
body.g .frame:hover{border-color:color-mix(in srgb,var(--acc) 45%,var(--line));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 0 34px -12px var(--acc),0 18px 40px -22px rgba(0,0,0,.95)}
body.g .frame:hover::before{opacity:1}
body.g .frame-glow{border-color:color-mix(in srgb,var(--acc) 50%,var(--line));box-shadow:0 0 30px -12px var(--acc),inset 0 1px 0 rgba(255,255,255,.04)}
body.g .warn{animation:gwarn 2.4s ease-in-out infinite;border-color:rgba(255,23,68,.45)}
body.g .warn::after{background:linear-gradient(90deg,transparent,var(--bad),transparent)}
/* card title (hud .plaque) */
body.g .plaque{justify-content:flex-start;gap:10px;margin:0 0 14px;width:auto;padding:0;background:none;border:0;border-radius:0;box-shadow:none;
  font-family:inherit;font-size:16px;font-weight:700;letter-spacing:-.005em;text-transform:none;color:var(--ink)}
body.g .plaque::before{content:"";width:26px;height:26px;flex:0 0 26px;border-radius:8px;
  background:radial-gradient(circle at 50% 50%,#fff 0 2.5px,transparent 3px),linear-gradient(135deg,var(--acc),#4b2fb8);box-shadow:0 0 14px -2px var(--acc)}
body.g .warn .plaque::before{background:radial-gradient(circle at 50% 50%,#fff 0 2.5px,transparent 3px),linear-gradient(135deg,var(--bad),#7a0b20);box-shadow:0 0 14px -2px var(--bad)}

/* ---------- text, lists, problems ---------- */
body.g .quest{border-radius:11px;background:linear-gradient(180deg,var(--surface-3),var(--surface-2));border:1px solid var(--line)}
body.g .quest-title,body.g .switch-name,body.g .name-link{color:var(--ink)!important}
body.g .quest-sub,body.g .empty,body.g .hint,body.g .stat-label,body.g .switch-state,body.g .sub,body.g .snip,body.g .tbl .pct{color:var(--ink-3)}
body.g .seal,body.g .seal-gold{background:linear-gradient(135deg,var(--acc),#4b2fb8);box-shadow:0 0 12px -3px var(--acc);color:#fff}
body.g .problem,body.g .switch-row,body.g .tl-item{border-bottom:1px solid var(--line-2)}
body.g .problem-title{color:#ff8fa3}
body.g .problem-text,body.g .tl-text,body.g .preview-item,body.g .coming-text{color:var(--ink-2)}
body.g .msg summary,body.g .mm-alllink,body.g .contents-list a{color:var(--link)}
body.g .msg-body{background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2)}
body.g .reason-list,body.g .field-error{color:#ff8fa3}
body.g .saved{color:var(--ok)}
body.g .tl-kind,body.g .setting-label,body.g .kv .k,body.g .filter,body.g .map-table caption,body.g .map-table th{font-family:inherit;color:var(--faint)}
body.g .stat-num{font-weight:800;letter-spacing:-.02em}
body.g .stat-grid{border-top:1px solid var(--line-2)}
body.g .mono{color:var(--ink-3)}

/* ---------- bars ---------- */
body.g .bar{height:20px;border-radius:7px;background:var(--surface-3);border:1px solid var(--line);box-shadow:inset 0 1px 3px rgba(0,0,0,.6)}
body.g .fill{border-radius:6px}
body.g .fill::before{display:none}
body.g .f-health{background:linear-gradient(90deg,color-mix(in srgb,var(--ok) 45%,black),var(--ok));box-shadow:0 0 12px -2px var(--ok)}
body.g .f-mana{background:linear-gradient(90deg,color-mix(in srgb,var(--info) 45%,black),var(--info));box-shadow:0 0 12px -2px var(--info)}
body.g .f-gold{background:linear-gradient(90deg,color-mix(in srgb,var(--c2) 40%,black),var(--c2));box-shadow:0 0 12px -2px var(--c2)}
body.g .f-arcane{background:linear-gradient(90deg,color-mix(in srgb,var(--acc) 45%,black),var(--acc));box-shadow:0 0 12px -2px var(--acc)}
body.g .f-ember{background:linear-gradient(90deg,color-mix(in srgb,var(--c4) 45%,black),var(--c4));box-shadow:0 0 12px -2px var(--c4)}
body.g .bar-cap{color:var(--ink-3)}

/* ---------- buttons, chips, inputs ---------- */
body.g .btn{min-height:36px;padding:6px 14px;border-radius:10px;font-family:inherit;font-size:13px;font-weight:700;letter-spacing:0;color:#fff;
  background:linear-gradient(180deg,#8a5cf6,#6a3fe0);border:1px solid rgba(196,168,255,.45);box-shadow:0 0 18px -6px var(--acc),inset 0 1px 0 rgba(255,255,255,.18)}
body.g .btn:hover{filter:brightness(1.12)}
body.g .btn.alt{background:linear-gradient(180deg,var(--surface-3),var(--surface-2));border-color:var(--line-hot);color:var(--ink-2);box-shadow:none}
body.g .btn.ghost{background:transparent;border-color:var(--line-hot);color:var(--ink-3);box-shadow:none}
body.g .chip{border-radius:999px;padding:2px 9px;background:var(--surface-2);border:1px solid var(--line-hot);color:var(--ink-2);font-size:11.5px;letter-spacing:0}
body.g .chip-gold{border-color:rgba(155,107,255,.5);color:var(--acc-2);background:var(--acc-soft)}
body.g .chip-green{border-color:rgba(0,230,118,.4);color:var(--ok);background:rgba(0,230,118,.08)}
body.g .chip-blue{border-color:rgba(47,123,255,.45);color:#8db8ff;background:rgba(47,123,255,.1)}
body.g .chip-red{border-color:rgba(255,23,68,.45);color:#ff8fa3;background:rgba(255,23,68,.08)}
body.g input,body.g select,body.g textarea{font-family:inherit;color:var(--ink);background:var(--surface-3);border:1px solid var(--line);border-radius:9px}
body.g input:focus,body.g select:focus,body.g textarea:focus{outline:2px solid var(--acc);outline-offset:1px}
body.g input::placeholder,body.g textarea::placeholder{color:var(--faint)}
body.g .form-grid{color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:12px;box-shadow:none}
body.g .form-grid .field{color:var(--ink-2)}
body.g .form-grid input,body.g .form-grid select{color:var(--ink);background:var(--surface-3);border:1px solid var(--line)}
body.g .drop-zone{border:2px dashed var(--line-hot);border-radius:12px;background:radial-gradient(ellipse at 50% 30%,var(--acc-soft),transparent 70%)}
body.g .drop-zone label{font-family:inherit;color:var(--ink)}
body.g .undo-bar{border-color:var(--acc)}
body.g .pager .on{border-color:var(--acc);color:#fff}

/* ---------- tables ---------- */
body.g .log-table th,body.g .tbl th{font-family:inherit;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);background:var(--surface-2)}
body.g .log-table td,body.g .tbl td,body.g .map-table td{border-top:0;border-bottom:1px solid var(--line-2)}
body.g .tbl tbody tr:hover td{background:rgba(155,107,255,.06)}
body.g .subtabs{border-bottom:1px solid var(--line)}
body.g .subtab{font-family:inherit;color:var(--ink-3);font-size:13.5px;font-weight:600;letter-spacing:0}
body.g .subtab:hover{color:var(--ink)}
body.g .subtab.on{color:#fff;border-bottom-color:var(--acc);text-shadow:none}
body.g .stat{border:1px solid var(--line);background:linear-gradient(180deg,var(--surface-3),var(--surface-2))}
body.g .tgl{background:var(--surface-3);border-color:var(--line-hot)}
body.g .tgl::after{background:#c3cde6}
body.g .tgl.on{background:linear-gradient(180deg,#00c864,#00924a);border-color:var(--ok);box-shadow:0 0 10px rgba(0,230,118,.35)}

/* ---------- territory map ---------- */
body.g .map-ring{background:conic-gradient(from 0deg,#9b6bff,#18d8ff,#2dd4bf,#f07bff,#9b6bff);box-shadow:0 0 30px -6px var(--acc)}
body.g .map-disc .dot{background:radial-gradient(circle,#fff,#c4a8ff 55%,#6a3fe0);box-shadow:0 0 10px rgba(155,107,255,.9)}
body.g .map-disc .dot::after{border-color:rgba(196,168,255,.9)}
body.g .dotlabel{font-family:inherit;color:#fff;font-size:11px;font-weight:700;text-shadow:0 0 6px #03050d,0 1px 2px #000}
body.g .dotlabel-left{transform:translate(calc(-100% - 12px),-50%)!important}
body.g .dotlabel-right{transform:translate(12px,-50%)!important}
body.g .north{font-family:inherit;color:#fff;background:linear-gradient(135deg,var(--acc),#4b2fb8);border:1px solid rgba(196,168,255,.6);box-shadow:0 0 14px -2px var(--acc)}
body.g .map-shade{box-shadow:inset 0 0 40px rgba(3,5,13,.9)}

/* ---------- Scout chat in navy ---------- */
body.g .mm-button{background:linear-gradient(135deg,var(--acc),#4b2fb8);border:2px solid rgba(196,168,255,.6);box-shadow:0 0 22px -4px var(--acc),0 8px 22px rgba(0,0,0,.7)}
body.g .mm-panel{background:linear-gradient(180deg,var(--surface) 0%,var(--bg-2) 100%);border:1px solid var(--line-hot);border-radius:16px;box-shadow:0 0 40px -14px var(--acc),0 18px 50px rgba(0,0,0,.8)}
body.g .mm-head{border-bottom:1px solid var(--line)}
body.g .mm-title{font-size:16px}
body.g .mm-close{border-color:var(--line-hot);color:var(--ink-3);border-radius:8px}
body.g .mm-msg-user{background:linear-gradient(180deg,#6f47e6,#5a37cc);border:1px solid rgba(196,168,255,.4);color:#fff}
body.g .mm-msg-user.mm-other{background:var(--surface-3);border-color:var(--line-hot);color:var(--ink)}
body.g .mm-msg-bot{background:var(--surface-2);border:1px solid var(--line);color:var(--ink)}
body.g .mm-meta,body.g .mm-log .ask-hint,body.g .ask-log .ask-hint{color:var(--ink-3);border-color:var(--line-hot)}
body.g .mm-icon{border-color:var(--acc)}
body.g .mm-resize{border-color:var(--acc)}
body.g .mm-form textarea{background:var(--surface-3);color:var(--ink);border:1px solid var(--line);border-radius:10px}
body.g .mm-form textarea::placeholder{color:var(--faint)}
body.g .mm-conv-title{color:var(--acc-2)}
body.g .ask-user{background:var(--surface-3);border:1px solid var(--line)}
body.g .ask-bot{background:var(--acc-soft);border:1px solid rgba(155,107,255,.35)}
body.g .vnc-frame{border-color:var(--line-hot);border-radius:12px;background:var(--bg)}

/* ---------- Command: KPI tiles with sparklines ---------- */
body.g .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;padding-top:22px}
body.g .kpi{--acc:var(--c1);position:relative;overflow:hidden;border-radius:14px;padding:16px 18px 10px;border:1px solid var(--line);
  background:radial-gradient(420px 150px at 0% 0%,color-mix(in srgb,var(--acc) 16%,transparent),transparent 70%),linear-gradient(180deg,var(--surface),var(--bg-2));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 40px -22px rgba(0,0,0,.95);animation:grise .6s both;color:var(--ink)}
body.g a.kpi:hover{border-color:color-mix(in srgb,var(--acc) 50%,var(--line));box-shadow:0 0 30px -10px var(--acc);color:var(--ink)}
body.g .kpi::after{content:"";position:absolute;left:18px;right:18px;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--acc),transparent)}
body.g .kpi:nth-child(2){animation-delay:.06s} body.g .kpi:nth-child(3){animation-delay:.12s} body.g .kpi:nth-child(4){animation-delay:.18s}
body.g .k-violet{--acc:var(--c1)} body.g .k-cyan{--acc:var(--live)} body.g .k-teal{--acc:var(--c3)} body.g .k-pink{--acc:var(--c4)}
body.g .kh{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:var(--ink-2)}
body.g .kicon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,var(--acc),color-mix(in srgb,var(--acc) 35%,black));box-shadow:0 0 16px -2px var(--acc)}
body.g .kicon svg{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
body.g .kv{display:flex;flex-direction:row;align-items:baseline;gap:10px;margin:8px 0 0;font-size:inherit}
body.g .kv b{font-size:38px;font-weight:800;letter-spacing:-.03em;color:#fff;text-shadow:0 0 22px color-mix(in srgb,var(--acc) 60%,transparent)}
body.g .ksub{font-size:12.5px;color:var(--ink-3)}
body.g .ksp{display:block;width:100%;height:46px;margin-top:4px;overflow:visible}
body.g .ksp polyline{fill:none;stroke:var(--acc);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:gdraw 2.2s cubic-bezier(.3,.7,.2,1) .2s forwards;filter:drop-shadow(0 0 4px var(--acc))}
body.g .ksp polygon{fill:color-mix(in srgb,var(--acc) 16%,transparent);stroke:none;animation:gfade 1.6s .6s both}
body.g .ksp circle{fill:#fff;stroke:var(--acc);stroke-width:2;animation:gfade 1s 2s both}
body.g .ksp-flat{font-size:11.5px;color:var(--faint);height:46px;display:flex;align-items:flex-end}

@keyframes grise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes gfade{from{opacity:0}to{opacity:1}}
@keyframes gdraw{to{stroke-dashoffset:0}}
@keyframes ghue{to{background-position:200% 0}}
@keyframes glive{0%{box-shadow:0 0 0 0 currentColor}70%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}
@keyframes gwarn{0%,100%{box-shadow:0 0 0 0 rgba(255,23,68,0),inset 0 1px 0 rgba(255,255,255,.04)}50%{box-shadow:0 0 26px -6px rgba(255,23,68,.7),inset 0 1px 0 rgba(255,255,255,.04)}}
@media (prefers-reduced-motion:reduce){body.g *,body.g *::before,body.g *::after{animation:none!important;transition:none!important}body.g .ksp polyline{stroke-dashoffset:0}}

/* ---------- smaller screens ---------- */
@media (max-width:1680px){
  body.g .gchip-txt{display:none}
  body.g .gchip{padding:0 9px}
}
@media (max-width:1100px){
  body.g .gstatus{display:none}
}
@media (max-width:820px){
  body.g .gtop{flex-wrap:wrap;gap:10px;padding:10px 16px;position:static}
  body.g .gsearch{order:5;flex:1 1 100%;max-width:none}
  body.g .gtime{margin-left:auto}
  body.g .gbody{flex-direction:column;min-height:0}
  body.g .gside{position:static;height:auto;flex:none;width:100%;min-width:0;max-width:100vw;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:8px 16px;border-right:0;border-bottom:1px solid var(--line-2);scrollbar-width:none}
  body.g .sh{display:none}
  body.g .si{flex:0 0 auto;height:40px}
  body.g .si.on::before{display:none}
  body.g .wrap{padding:0 16px}
  body.g .footer{padding:14px 16px 22px}
}
@media (max-width:480px){
  body.g .guser-tx,body.g .gtime{display:none}
  body.g .guser{margin-left:auto}
  body.g .gtop-word{font-size:18px}
}
body.g .note-body{white-space:pre-wrap}
