/* Shared date controls. No embedded styles, fonts, scripts, or private data. */
[data-admin-period]{margin:0 0 22px;min-width:0}
.admin-period{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding:15px 18px;border:1px solid var(--pp-border,#e4e7ec);border-radius:14px;background:var(--pp-surface,#fff);box-shadow:0 2px 5px #10182803}
.admin-period-controls,.admin-period-dates{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}
.admin-period-field{display:flex;flex-direction:column;gap:6px;margin:0;color:var(--pp-text-2,#3f4756);font:inherit;font-size:12px;font-weight:500;line-height:1.4}
.admin-period-field>span{font-size:12px}
.admin-period-field input,.admin-period-field select{box-sizing:border-box;min-height:38px;width:auto;min-width:140px;padding:8px 11px;border:1px solid var(--pp-border-strong,#d0d5dd);border-radius:8px;background:#fff;color:var(--pp-text,#101828);font:inherit;font-size:13px}
.admin-period-field input:focus-visible,.admin-period-field select:focus-visible,.admin-period-apply:focus-visible{outline:3px solid #c7d2fe;outline-offset:2px}
.admin-period-apply{min-height:38px;margin:0;padding:8px 14px;border:1px solid var(--pp-primary,#2e4fd8);border-radius:8px;background:var(--pp-primary,#2e4fd8);color:#fff;font:inherit;font-size:13px;font-weight:600;line-height:1.4;cursor:pointer;transition:background-color .16s ease}
.admin-period-apply:hover{background:var(--pp-primary-hover,#2440b8)}
.admin-period-summary{font-size:12px;line-height:1.6;color:var(--pp-text-3,#5b6476)}
.admin-period-error{flex-basis:100%;margin:0;color:#b42318;font-size:12px;line-height:1.6}
.admin-period-error:empty{display:none}
.admin-period [hidden]{display:none!important}
.admin-period-scope-note{margin:0 0 14px;color:var(--pp-text-3,#5b6476);font-size:12px;line-height:1.7}
@media(max-width:700px){.admin-period{padding:14px;align-items:stretch}.admin-period-controls{width:100%;gap:12px}.admin-period-field{flex:1;min-width:130px}.admin-period-field input,.admin-period-field select{width:100%;min-width:0}.admin-period-dates{width:100%;gap:10px}.admin-period-apply{align-self:flex-end}.admin-period-summary{width:100%}}
@media(prefers-reduced-motion:reduce){.admin-period-apply{transition:none}}
/* ==== v3a-state 动态运营总览 (scoped to #v3aHud; added 2026-11-01) ==== */
.v3a-classic{display:flex;flex-direction:column;gap:20px}
.v3a-classic[hidden],.v3a-hud[hidden]{display:none!important}
.v3a-back{display:flex;justify-content:flex-end;margin:-6px 0 -8px}
.v3a-back[hidden]{display:none!important}
.v3a-hud{display:flex;flex-direction:column;gap:10px;min-width:0}
.v3a-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:12px;color:var(--pp-text-2,#475467)}
.v3a-bar-title{font-weight:600;color:var(--pp-text,#101828)}
.v3a-bar-note{flex:1;min-width:220px}
.v3a-bar-note b{color:#7a5af8;font-weight:600}
.v3a-fit{position:relative;width:100%;overflow:hidden;border-radius:14px;background:#000;border:1px solid #1b1b1b}
.v3a-stage{position:absolute;left:0;top:0;width:1440px;height:900px;overflow:hidden;transform-origin:0 0;background:#000;font:9px/1.32 "IBM Plex Mono","Noto Sans CJK SC","PingFang SC","Microsoft YaHei",monospace;color:#b5aea0;letter-spacing:.02em;font-variant-numeric:tabular-nums;text-align:left;--o:#FF8C00;--g:#FFB020;--w:#eee;--r:#ff2a3a}
.v3a-stage *{box-sizing:border-box;margin:0;padding:0}
.v3a-stage canvas{max-width:none}
.v3a-stage b{font-weight:500}
.v3a-stage #v3a-nav{position:absolute;left:0;top:0;width:1440px;height:22px;display:flex;align-items:center;gap:18px;padding:0 16px;border-bottom:1px solid #141414;font-size:9px;color:#57524a;z-index:3;background:#000;white-space:nowrap}
.v3a-stage #v3a-nav b{color:#e6dfd0;letter-spacing:.22em;font-weight:500}
.v3a-stage #v3a-nav .on{color:#ffc04a}
.v3a-stage #v3a-nav .sp{flex:1}
.v3a-stage #v3a-nav a,.v3a-stage #v3a-nav button{all:unset;cursor:pointer;color:#8a8378;font:inherit;letter-spacing:inherit}
.v3a-stage #v3a-nav a:hover,.v3a-stage #v3a-nav button:hover{color:#ffc04a}
.v3a-stage #v3a-nav a:focus-visible,.v3a-stage #v3a-nav button:focus-visible{outline:1px solid #ffc04a;outline-offset:2px}
.v3a-stage #v3a-nav em{font-style:normal;color:#e6dfd0;margin-left:3px}
.v3a-stage #v3a-nav em.r{color:#ff4b4b}
.v3a-stage #v3a-nav .ex{color:#a99cff;border:1px solid #3a3470;padding:0 5px}
.v3a-stage #v3a-nav .live{color:#9ecf6a}
.v3a-stage #v3a-nav .live.off{color:#ff4b4b}
.v3a-stage #v3a-net{position:absolute;left:0;top:22px}
.v3a-stage #v3a-lab{position:absolute;left:0;top:22px;width:1440px;height:618px;pointer-events:none;overflow:hidden;z-index:2}
.v3a-stage .lb{position:absolute;white-space:nowrap}
.v3a-stage .lb b{color:#fff;font-weight:500;font-size:9.5px;letter-spacing:.06em;text-shadow:0 0 3px #000,0 0 6px #000;background:rgba(0,0,0,.55);padding:0 3px}
.v3a-stage .lb i{display:inline-block;font-style:normal;color:#9a9284;font-size:8px;background:rgba(0,0,0,.78);padding:0 3px;margin-top:1px}
.v3a-stage .lb.r b{color:#ff7676}.v3a-stage .lb.r i{color:#c25a5a}
.v3a-stage .lb.s i{color:#7d766a;font-size:7.5px}
.v3a-stage .lb.s i.v3a-warn{color:#d05555}
.v3a-stage .lb.lai b{color:#8ccaff}.v3a-stage .lb.lai i{color:#5f97cf}
.v3a-stage .lb u{text-decoration:none;font-weight:400;margin-left:5px;padding:0 3px;border:1px solid;font-size:8px}
.v3a-stage .lb u.n{color:#c9a15a;border-color:#4a3a1c}
.v3a-stage .lb u.a{color:#8fd0ff;border-color:#1f4f80;background:rgba(20,60,110,.45)}
.v3a-stage .lb u.m{color:#ff8a8a;border-color:#6a1d1d;background:rgba(110,20,20,.45)}
.v3a-stage .leg{position:absolute;font-size:8.5px;color:#a39b8d;line-height:1.5}
.v3a-stage .leg s{display:inline-block;width:7px;height:7px;background:var(--o);margin-right:6px;vertical-align:-1px;text-decoration:none}
.v3a-stage .leg s.d{background:#7a4a10}
.v3a-stage .leg .sg{display:inline-block;margin-right:12px}
.v3a-stage .leg .sg s{margin-right:4px}
.v3a-stage .leg .sg.n s{background:#ffb030}
.v3a-stage .leg .sg.a{color:#8fd0ff}.v3a-stage .leg .sg.a s{background:#3d9bff;box-shadow:0 0 6px #3d9bff}
.v3a-stage .leg .sg.m{color:#ff8a8a}.v3a-stage .leg .sg.m s{background:#ff3b3b;box-shadow:0 0 6px #ff3b3b}
.v3a-stage .leg.v3a-ex{left:16px;top:8px;color:#a99cff;font-size:8px;letter-spacing:.06em;background:rgba(0,0,0,.6);padding:1px 6px;border:1px solid #3a3470}
.v3a-stage .leg.v3a-legl{left:16px;top:578px}
.v3a-stage .leg.v3a-legr{right:16px;top:578px;text-align:right}
.v3a-stage .leg.v3a-legr .w{color:#ddd}.v3a-stage .leg.v3a-legr .o{color:#ffa030}
.v3a-stage .leg.v3a-legbox{left:16px;top:560px}
.v3a-stage .leg.v3a-cam{right:16px;top:556px;text-align:right;color:#6f675a;font-size:8px;letter-spacing:.12em}
.v3a-stage .leg.v3a-nogl{left:50%;top:8px;transform:translateX(-50%);color:#ffb020;border:1px solid #4a3a1c;background:rgba(0,0,0,.7);padding:1px 8px}
.v3a-stage .pt{color:#7a6cff;border:1px solid #3a3470;padding:0 3px;font-size:7px;letter-spacing:.08em;margin-left:5px;vertical-align:1px}
.v3a-stage #v3a-strip{position:absolute;left:0;top:640px;width:1440px;height:260px;border-top:1px solid #333;display:grid;grid-template-columns:1.3fr 1fr .95fr 1fr 1.1fr}
.v3a-stage .c{border-right:1px solid #333;padding:6px 10px 4px;overflow:hidden;position:relative}
.v3a-stage .c:last-child{border-right:0}
.v3a-stage .h{color:#8a8378;font-size:8px;letter-spacing:.08em;margin-bottom:5px;display:flex;justify-content:space-between;align-items:center}
.v3a-stage .h span{color:#4b4740}
.v3a-stage .h span.pt{color:#7a6cff}
.v3a-stage .row{display:flex;gap:6px;white-space:nowrap;height:11.4px}
.v3a-stage .row .n{color:#4d4943;width:18px;flex:none}
.v3a-stage .row .t{color:#6f685d;flex:none;width:46px}
.v3a-stage .row .k{color:#c9701a;flex:none;width:26px;overflow:hidden}
.v3a-stage .row .x{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;color:#b0a89a}
.v3a-stage .row .v{color:#ddd;text-align:right;width:42px;flex:none}
.v3a-stage .row.hl{background:rgba(255,140,0,.08)}.v3a-stage .row.hl .k,.v3a-stage .row.hl .x,.v3a-stage .row.hl .v{color:#ffa030}
.v3a-stage .row.rd .k,.v3a-stage .row.rd .x,.v3a-stage .row.rd .v{color:#ff4b4b}
.v3a-stage .row.dm .x,.v3a-stage .row.dm .k{color:#5f5a51}
.v3a-stage .row.ok .k{color:#9ecf6a}
.v3a-stage .row.empty .x{color:#5f5a51}
.v3a-stage #v3a-sc{position:absolute;right:10px;top:20px;border:1px solid #262626}
.v3a-stage #v3a-log{margin-right:70px}
.v3a-stage .bl{display:grid;grid-template-columns:52px 52px 1fr 36px;gap:6px;height:11.6px;align-items:center;white-space:nowrap}
.v3a-stage .bl .a{color:#d8d0c2}.v3a-stage .bl .s{color:#766f63}.v3a-stage .bl .s.r{color:#ff4b4b}.v3a-stage .bl .s.o{color:#ffa030}.v3a-stage .bl .s.b{color:#62b4ff}
.v3a-stage .bl .v{color:#eee;text-align:right}
.v3a-stage .track{height:5px;background:#141414;position:relative}
.v3a-stage .bar{height:5px;width:0;background:linear-gradient(90deg,#a85200,#ffa31a)}
.v3a-stage .bar.r{background:linear-gradient(90deg,#7a0010,#ff3040)}
.v3a-stage .bar.b{background:linear-gradient(90deg,#0a3a8a,#4fb2ff)}
.v3a-stage #v3a-oks{margin-top:6px}
.v3a-stage .ok{height:11px;white-space:nowrap;color:#958d80}
.v3a-stage .ok em{font-style:normal;color:#ffa030;display:inline-block;width:50px}
.v3a-stage .ok em.r{color:#ff4b4b}.v3a-stage .ok em.b{color:#62b4ff}.v3a-stage .ok em.g{color:#9ecf6a}.v3a-stage .ok em.d{color:#5f5a51}
.v3a-stage #v3a-rad{display:block;margin:0 auto}
.v3a-stage .v3a-riskhead{color:#ffa030;margin-top:2px}
.v3a-stage .v3a-riskhead.r{color:#ff6262}
.v3a-stage .kv{display:flex;justify-content:space-between;height:11.2px;white-space:nowrap}
.v3a-stage .kv span{color:#7a7367}.v3a-stage .kv b{font-weight:400;color:#eee}.v3a-stage .kv b.r{color:#ff4b4b}.v3a-stage .kv b.o{color:#ffa030}
.v3a-stage .k1{font-size:26px;color:#fff;font-weight:400;line-height:1;letter-spacing:-.01em}
.v3a-stage .k1.r{color:#ff4b4b}
.v3a-stage .v3a-k1row{display:flex;gap:16px;margin-bottom:8px}
.v3a-stage .huge{font-size:40px;color:#fff;font-weight:300;line-height:1;letter-spacing:-.02em}
.v3a-stage .sm{font-size:7.5px;color:#6a6358;letter-spacing:.05em}
.v3a-stage .v3a-mb4{margin-bottom:4px}.v3a-stage .v3a-mb3{margin-bottom:3px}.v3a-stage .v3a-mt4{margin-top:4px}
.v3a-stage .hb{display:grid;grid-template-columns:54px 1fr 40px;gap:6px;height:11.4px;align-items:center;white-space:nowrap}
.v3a-stage .hb span{color:#7a7367}.v3a-stage .hb b{font-weight:400;color:#ddd;text-align:right}
.v3a-stage .hb .track,.v3a-stage .hb .bar{height:4px}
.v3a-stage #v3a-q{margin-top:5px}
.v3a-stage .v3a-rc-top{display:flex;justify-content:space-between;align-items:flex-end}
.v3a-stage .v3a-rc-side{text-align:right;padding-bottom:3px}
.v3a-stage .v3a-rc-new{color:#CCFF00;font-size:11px}
.v3a-stage #v3a-eq{margin-top:6px;display:block}
.v3a-stage .v3a-rc-foot{display:flex;justify-content:space-between;margin-top:3px}
.v3a-stage .v3a-live{color:#9ecf6a;font-size:8px}
.v3a-stage .v3a-live.off{color:#ff4b4b}
/* ==== end v3a-state ==== */

.v3a-why{font-size:12px;color:#b54708;background:#fffaeb;border:1px solid #fedf89;border-radius:6px;padding:2px 8px;max-width:100%;overflow-wrap:anywhere}
.v3a-why[hidden]{display:none!important}
.v3a-back{gap:10px;align-items:center;flex-wrap:wrap}

/*
 * PeakPix 管理后台 · 全站 HUD 主题（2026-11-01）
 * 所有后台页面共用，追加在 admin-period.css 末尾：服务端只放行白名单里的文件，新增文件要改后端。只改外观和排版，不改接口、权限、账务或交付流程。
 * 符合 CSP：无内联样式、无外部字体，全部使用系统字体。
 * 颜色规则：金色是主色，红色只用于告警，蓝色只用于 AI 接管。
 */

/* ---------- 设计变量：覆盖 layout.css 的同名变量，其余页面样式自动跟随 ---------- */
:root {
  color-scheme: dark;
  --hud-black: #000;
  --hud-panel: #070605;
  --hud-panel-2: #0e0b07;
  --hud-panel-3: #17120b;
  --hud-line: #2a2114;
  --hud-line-strong: #4a3a1c;
  --hud-gold: #ffb020;
  --hud-gold-hi: #ffd27a;
  --hud-gold-dim: #a8843f;
  --hud-text: #efe8da;
  --hud-text-2: #c4bcad;
  --hud-text-3: #958d80;
  --hud-red: #ff4b4b;
  --hud-blue: #62b4ff;
  --hud-tick: linear-gradient(var(--hud-gold-dim), var(--hud-gold-dim));

  --pp-bg: var(--hud-black);
  --pp-surface: var(--hud-panel);
  --pp-surface-2: var(--hud-panel-2);
  --pp-surface-3: var(--hud-panel-3);
  --pp-border: var(--hud-line);
  --pp-border-strong: var(--hud-line-strong);
  --pp-text: var(--hud-text);
  --pp-text-2: var(--hud-text-2);
  --pp-text-3: var(--hud-text-3);
  --pp-muted: #6f685d;
  --pp-primary: var(--hud-gold);
  --pp-primary-hover: var(--hud-gold-hi);
  --pp-primary-ink: var(--hud-gold-hi);
  --pp-primary-soft: rgba(255, 176, 32, .13);
  --pp-primary-line: var(--hud-line-strong);
  --pp-primary-wash: rgba(255, 176, 32, .07);
  --pp-series-2: #ff6a3c;
  --pp-orange: var(--hud-gold);
  --pp-orange-soft: rgba(255, 176, 32, .13);
  --pp-orange-ink: var(--hud-gold-hi);
  --pp-orange-deep: var(--hud-gold-hi);
  --pp-orange-line: var(--hud-line-strong);
  --pp-green: #c9b98f;
  --pp-green-soft: rgba(201, 185, 143, .12);
  --pp-green-ink: #d8cba6;
  --pp-green-line: var(--hud-line-strong);
  --pp-red: var(--hud-red);
  --pp-red-soft: rgba(255, 75, 75, .14);
  --pp-red-ink: #ff8a8a;
  --pp-red-line: #6a1d1d;
  --pp-purple-soft: rgba(98, 180, 255, .12);
  --pp-purple-ink: #9fd0ff;
  --pp-radius-lg: 0;
  --pp-radius: 0;
  --pp-radius-sm: 0;
  --pp-shadow: none;
  --pp-shadow-md: none;
  --pp-shadow-lg: none;
  --pp-font: ui-monospace, "Cascadia Mono", Consolas, "SF Mono", "Microsoft YaHei", "PingFang SC", "Noto Sans SC", monospace;
}

/* ---------- 基础 ---------- */
[hidden] { display: none !important; }
*, *::before, *::after { border-radius: 0 !important; }
html, body { background: var(--hud-black); }
body { color: var(--hud-text); font-family: var(--pp-font); font-variant-numeric: tabular-nums; }
h1, h2, h3 { font-weight: 500; letter-spacing: .02em; }
h2 { font-size: 15px; line-height: 22px; }
a { color: var(--hud-gold-hi); }
::selection { background: rgba(255, 176, 32, .35); color: #fff; }
* { scrollbar-color: var(--hud-line-strong) #000; scrollbar-width: thin; }
:focus-visible { outline: 1px solid var(--hud-gold-hi); outline-offset: 2px; }

input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), select, textarea {
  border: 1px solid var(--hud-line-strong);
  background: #000;
  color: var(--hud-text);
  font-family: var(--pp-font);
}
input::placeholder, textarea::placeholder { color: #6f685d; }
input:focus, select:focus, textarea:focus { border-color: var(--hud-gold); box-shadow: none; }
input[readonly] { background: var(--hud-panel-2); color: var(--hud-text-2); }
select option { background: #0e0b07; color: var(--hud-text); }

.primary, .table-action { border-color: var(--hud-gold); background: var(--hud-gold); color: #000; font-weight: 600; }
.primary:hover:not(:disabled), .table-action:hover:not(:disabled) { border-color: var(--hud-gold-hi); background: var(--hud-gold-hi); color: #000; }
.primary:disabled { border-color: var(--hud-line); background: var(--hud-panel-3); color: #6f685d; }
.secondary, .gift-action { border-color: var(--hud-line-strong); background: transparent; color: var(--hud-text-2); }
.secondary:hover:not(:disabled), .gift-action:hover:not(:disabled) { border-color: var(--hud-gold); background: var(--pp-primary-wash); color: var(--hud-gold-hi); }
.secondary:disabled, .gift-action:disabled { border-color: var(--hud-line); background: transparent; color: #5f5a51; }
.text-button { color: var(--hud-gold); }
.icon-button { color: var(--hud-text-3); }

/* 面板四角的 L 形刻度，用背景绘制，不占用伪元素 */
.surface, .pp-kpi, .rules-card, dialog, .login-card {
  background-color: var(--hud-panel);
  background-image: var(--hud-tick), var(--hud-tick), var(--hud-tick), var(--hud-tick), var(--hud-tick), var(--hud-tick), var(--hud-tick), var(--hud-tick);
  background-repeat: no-repeat;
  background-size: 10px 1px, 1px 10px, 10px 1px, 1px 10px, 10px 1px, 1px 10px, 10px 1px, 1px 10px;
  background-position: left top, left top, right top, right top, left bottom, left bottom, right bottom, right bottom;
}

.status-tag, .task-badge, .feedback-state, .pp-chip { border: 1px solid currentColor; padding: 1px 7px; font-size: 11px; font-weight: 500; }
.nav-count { min-width: 18px; height: 16px; padding: 0 4px; background: var(--hud-red); color: #000; font-size: 10px; font-weight: 600; }
.delta-positive { color: var(--hud-gold-hi); }
.delta-negative { color: var(--hud-red); }

/* ---------- 外壳：左侧栏改为通栏顶部导航 ---------- */
.sidebar, .side { background: #000; border-color: var(--hud-line); }
.sidebar-brand, .brand { color: var(--hud-text); font-size: 12px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; text-decoration: none; white-space: nowrap; }
.sidebar-brand small, .brand small, .sidebar-brand .brand-symbol, .brand-mark { display: none; }
.sidebar-brand > div::after, .brand > span:last-child::after { content: " OPS"; }
.nav-group, .sidebar-guide, .side-note { display: none; }
.main-content { background: #000; }
.topbar { border-color: var(--hud-line); background: #000; }
.breadcrumb { color: var(--hud-text-3); }
.connection-state { min-height: 24px; padding: 0 8px; border: 1px solid var(--hud-line-strong); background: transparent; color: var(--hud-text-3); font-size: 11px; }
.connection-state.connected { border-color: var(--hud-line-strong); background: transparent; color: var(--hud-gold-hi); }
.connection-state.connected::before { background: var(--hud-gold); }

@media (min-width: 721px) {
  .admin-layout, .shell { display: block; min-height: 100vh; }
  .sidebar, .side {
    position: sticky; top: 0; z-index: 40; width: auto; height: 44px; min-height: 0;
    display: flex; flex-direction: row; align-items: center; gap: 18px;
    padding: 0 14px; overflow: visible; border: 0; border-bottom: 1px solid var(--hud-line);
  }
  .sidebar-brand, .brand { flex: none; padding: 0; }
  .sidebar nav, .side-nav { flex: 1; min-width: 0; display: flex; flex-direction: row; align-items: stretch; gap: 0; height: 44px; overflow-x: auto; scrollbar-width: none; }
  .sidebar nav::-webkit-scrollbar, .side-nav::-webkit-scrollbar { display: none; }
  .nav-item, .nav-link {
    flex: none; width: auto; height: 44px; min-height: 44px; padding: 0 10px; gap: 6px;
    border: 0; border-bottom: 2px solid transparent; background: none; color: var(--hud-text-3);
    font-size: 12px; font-weight: 400; white-space: nowrap;
  }
  .nav-item .nav-icon, .nav-link .ico { display: none; }
  .nav-item > :not(.nav-icon):not(.nav-count):not(.nav-text-tag) { flex: none; }
  .nav-item:hover, .nav-link:hover { background: none; color: var(--hud-gold-hi); }
  .nav-item.active, .nav-item[aria-current="page"], .nav-link.active { border-bottom-color: var(--hud-gold); background: none; color: var(--hud-gold-hi); font-weight: 400; }
  .sidebar-bottom { flex: none; display: flex; align-items: center; gap: 6px; margin: 0 236px 0 0; padding: 0; border: 0; background: none; }
  .sidebar-bottom .admin-avatar, .sidebar-bottom small { display: none; }
  .sidebar-bottom strong { max-width: 96px; color: var(--hud-text-3); font-size: 11px; font-weight: 400; }
  .sidebar-bottom .icon-button { width: 30px; min-height: 30px; }
  .main-content { display: block; }
  .topbar { position: fixed; top: 0; right: 0; z-index: 41; height: 44px; min-height: 0; padding: 0 14px; border: 0; background: transparent; }
  .topbar-leading { display: none; }
  .topbar-actions { flex-wrap: nowrap; gap: 8px; font-size: 11px; white-space: nowrap; }
}
@media (min-width: 721px) and (max-width: 1240px) {
  .ui-current-date { display: none; }
  .sidebar-bottom { margin-right: 138px; }
  .sidebar-bottom strong { display: none; }
  .sidebar, .side { gap: 8px; padding: 0 8px; }
  .sidebar-brand, .brand { letter-spacing: .1em; }
  .nav-item, .nav-link { padding: 0 6px; font-size: 11.5px; }
}

/* ---------- 页面上下文条：标题、日期周期、同步 ---------- */
.workspace { max-width: none; padding: 0; gap: 0; }
.hud-context { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 18px; min-height: 40px; padding: 4px 14px; border-bottom: 1px solid var(--hud-line); background: #000; }
.page-heading { flex: 1 1 auto; min-width: 0; flex-wrap: nowrap; align-items: center; gap: 12px; animation: none; }
.page-heading > div:first-child { min-width: 0; flex-direction: row; align-items: baseline; gap: 12px; }
.page-heading h1 { color: var(--hud-gold-hi); font-size: 14px; line-height: 20px; font-weight: 500; white-space: nowrap; }
.page-heading p { overflow: hidden; color: var(--hud-text-3); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.page-tools { flex: none; display: flex; align-items: center; gap: 10px; }
.page-tools .secondary { min-height: 28px; padding: 0 10px; font-size: 12px; }
.pp-sync { border: 0; background: none; padding: 0; color: var(--hud-text-3); font-size: 11px; }
.pp-ring-fill { stroke: var(--hud-gold); }
.pp-ring-track { stroke: var(--hud-panel-3); }
[data-admin-period] { flex: none; margin: 0; }
[data-admin-period] .admin-period { flex-wrap: nowrap; gap: 12px; padding: 0; border: 0; background: none; box-shadow: none; }
[data-admin-period] .admin-period-controls, [data-admin-period] .admin-period-dates { flex-wrap: nowrap; align-items: center; gap: 8px; }
[data-admin-period] .admin-period-field { flex-direction: row; align-items: center; gap: 6px; color: var(--hud-text-3); font-size: 11px; white-space: nowrap; }
[data-admin-period] .admin-period-field > span { font-size: 11px; }
[data-admin-period] .admin-period-field input, [data-admin-period] .admin-period-field select { min-height: 28px; min-width: 112px; padding: 2px 8px; border-color: var(--hud-line-strong); background: #000; color: var(--hud-text); font-size: 12px; }
[data-admin-period] .admin-period-apply { min-height: 28px; padding: 2px 10px; border-color: var(--hud-gold); background: var(--hud-gold); color: #000; font-size: 12px; }
[data-admin-period] .admin-period-apply:hover { background: var(--hud-gold-hi); }
[data-admin-period] .admin-period-summary { color: var(--hud-text-3); font-size: 11px; white-space: nowrap; }
.admin-period-error { color: var(--hud-red); }
.hud-period-note { width: 100%; margin: 0; color: var(--hud-text-3); font-size: 11px; }
body[data-hud-view="overview"] .hud-period-note { display: none; }

.workspace-status, .gift-pending, .local-preview-notice { margin: 8px 14px 0; }
.workspace-status { border-color: var(--hud-line-strong); background: var(--pp-primary-wash); color: var(--hud-gold-hi); font-size: 12px; }
.workspace-footer { max-width: none; padding: 8px 14px; border-top: 1px solid var(--hud-line); color: #6f685d; font-size: 11px; }
.admin-legal-footer, .admin-dashboard .admin-legal-footer { margin-left: 0; padding: 8px 14px; border-top: 1px solid var(--hud-line); background: #000; color: #6f685d; font-size: 11px; }

/* ---------- 数据页 ---------- */
.view-panel:not(#overviewPanel) { margin: 12px 14px; padding: 14px; animation: none; }
.section-heading { align-items: center; gap: 12px; margin-bottom: 10px; }
.section-heading h2 { color: var(--hud-gold-hi); font-size: 14px; }
.section-heading h2::before { content: "// "; color: var(--hud-gold-dim); }
.section-heading p { color: var(--hud-text-3); font-size: 11px; }
.count-label { border: 1px solid var(--hud-line-strong); background: transparent; color: var(--hud-gold-hi); font-size: 11px; padding: 1px 8px; }
.monitor-note { margin: 0 0 8px; border: 0; background: none; padding: 0; color: var(--hud-text-3); font-size: 11px; }
.filter-label { color: var(--hud-text-3); font-size: 11px; }
.filter-label select { min-height: 28px; font-size: 12px; }
.monitor-toolbar { align-items: center; gap: 8px; margin-bottom: 10px; color: var(--hud-text-3); font-size: 11px; }
.monitor-toolbar input { min-height: 30px !important; max-width: 280px; font-size: 12px; }
.monitor-toolbar .secondary { min-height: 30px; font-size: 12px; }
.monitor-pagination { align-items: center; gap: 10px; margin-top: 10px; color: var(--hud-text-3); font-size: 11px; }
.monitor-pagination .secondary { min-height: 28px; padding: 0 10px; font-size: 12px; }

.table-wrap { border: 1px solid var(--hud-line); background: #000; overflow-x: auto; }
.table-wrap table { width: 100%; border-collapse: collapse; font-size: 12px; }
.table-wrap th { position: static; height: 30px; padding: 0 10px; border-bottom: 1px solid var(--hud-line-strong); background: var(--hud-panel-2); color: var(--hud-gold-dim); font-size: 11px; font-weight: 500; letter-spacing: .06em; text-align: left; white-space: nowrap; }
.table-wrap td { padding: 7px 10px; border-bottom: 1px solid #16110a; color: var(--hud-text-2); vertical-align: top; }
.table-wrap td strong { color: var(--hud-text); font-size: 12px; font-weight: 500; }
.table-wrap td small { color: var(--hud-text-3); font-size: 11px; }
.table-wrap tbody tr:hover { background: var(--pp-primary-wash); }
.table-wrap td .secondary, .table-wrap td .table-action, .table-wrap td .gift-action { min-height: 26px; padding: 0 8px; font-size: 11px; }
.user-link { color: var(--hud-gold-hi); font-size: 12px; }

.task-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 8px; }
.task-card { padding: 10px 12px; border: 1px solid var(--hud-line); background: #000; font-size: 12px; animation: none; }
.task-card:hover { border-color: var(--hud-line-strong); }
.task-title { color: var(--hud-text); font-size: 13px; }
.task-stage, .task-fee { color: var(--hud-text-2); font-size: 12px; }
.task-card small { color: var(--hud-text-3); font-size: 11px; }
.task-card .secondary { min-height: 28px; padding: 0 8px; font-size: 11px; }
progress { height: 4px; border: 0; background: var(--hud-panel-3); accent-color: var(--hud-gold); }
progress::-webkit-progress-bar { background: var(--hud-panel-3); }
progress::-webkit-progress-value { background: var(--hud-gold); }

.empty-state { border: 1px dashed var(--hud-line); background: none; color: var(--hud-text-3); font-size: 12px; }
.empty-state strong { color: var(--hud-text-2); font-weight: 500; }
.empty-symbol { color: var(--hud-gold-dim); }

/* ---------- 弹窗 ---------- */
dialog { border: 1px solid var(--hud-line-strong); background-color: #0a0806; color: var(--hud-text); }
dialog::backdrop { background: rgba(0, 0, 0, .78); backdrop-filter: none; }
.dialog-heading { border-color: var(--hud-line); }
.dialog-heading .eyebrow { color: var(--hud-gold-dim); letter-spacing: .14em; }
dialog h2, dialog h3 { color: var(--hud-gold-hi); }
dialog .subtle { color: var(--hud-text-3); }
.confirm-summary dt { color: var(--hud-text-3); }
.confirm-summary dd { color: var(--hud-text); }
.verify-check { border: 1px solid var(--hud-line); background: none; }
.user-balances { border: 1px solid var(--hud-line); background: #000; }
.detail-ledger { border-color: var(--hud-line); }
.gift-equivalent, .membership-gift-rules { background: none; color: var(--hud-text-3); }
.membership-gift-receipt { border: 1px solid var(--hud-line); background: #000; }

/* ---------- 登录页 ---------- */
.login-view { background: #000; }
.login-brand { color: var(--hud-text); font-size: 12px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; }
.login-brand small { color: var(--hud-text-3); }
.login-brand .brand-symbol { display: none; }
.login-intro { border-right: 1px solid var(--hud-line); background: radial-gradient(ellipse 70% 50% at 42% 52%, rgba(255, 160, 30, .2), rgba(120, 60, 0, .06) 55%, transparent 76%), #000; color: var(--hud-text); }
.login-intro::after { display: none; }
.login-intro .eyebrow { color: var(--hud-gold); letter-spacing: .24em; }
.login-intro h1 { color: var(--hud-gold-hi); font-weight: 400; letter-spacing: .02em; }
.login-intro p, .intro-foot { color: var(--hud-text-3); }
.login-feature-chips span { border: 1px solid var(--hud-line-strong); background: transparent; color: var(--hud-text-2); font-size: 12px; }
.login-card { padding: 28px; border: 1px solid var(--hud-line-strong); }
.login-card h2 { color: var(--hud-gold-hi); font-size: 22px; line-height: 30px; font-weight: 500; }
.secure-label { border: 1px solid var(--hud-line-strong); background: transparent; color: var(--hud-gold-hi); }
.login-footer, .login-note { color: #6f685d; }

/* ---------- 运营总览第二屏 ---------- */
#overviewPanel { gap: 0; }
.v3a-classic { gap: 12px; padding: 12px 14px 14px; }
.pp-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.pp-kpi { padding: 12px 14px; border: 1px solid var(--hud-line); animation: none; }
.pp-kpi-head { color: var(--hud-text-3); font-size: 11px; }
.pp-kpi-icon { display: none; }
.pp-kpi-value { color: var(--hud-gold-hi); font-size: 32px; line-height: 38px; font-weight: 400; }
.pp-kpi-note { color: var(--hud-text-3); font-size: 11px; }
.pp-meter { background: var(--hud-panel-3); }
.pp-meter span { background: var(--hud-gold); }
.pp-card { padding: 12px 14px; animation: none; }
.pp-card-head h2, .section-heading h2 { font-size: 14px; }
.pp-card-head h2 { color: var(--hud-gold-hi); }
.pp-card-head h2::before { content: "// "; color: var(--hud-gold-dim); }
.pp-card-head p { color: var(--hud-text-3); font-size: 11px; }
.pp-legend strong { color: var(--hud-gold-hi); font-weight: 500; }
.pp-grid-line { stroke: #1d170d; }
.pp-grid-base { stroke: var(--hud-line-strong); }
.pp-series.is-in { stroke: var(--hud-gold); }
.pp-series.is-out { stroke: #ff6a3c; }
.pp-tip { border: 1px solid var(--hud-line-strong); background: #000; color: var(--hud-text); }
.pp-cols .pp-gridline { background: #1d170d; }
.pp-spark path { stroke: var(--hud-gold); }
.pp-spark.is-orange path { stroke: #ff6a3c; }
.pp-spark i { background: var(--hud-gold-hi); }
.pp-col-bar, .pp-mix-bar { background: var(--hud-gold); }
.pp-col-tip { border: 1px solid var(--hud-line-strong); background: #000; color: var(--hud-gold-hi); }
.pp-chart-empty { color: var(--hud-text-3); font-size: 12px; }
.mini-order { border-color: var(--hud-line); }
.recent-tasks .task-list { display: block; }
.recent-tasks .task-card { border: 0; border-bottom: 1px solid var(--hud-line); padding: 8px 0; }
.rules-card { padding: 12px 14px; border: 1px solid var(--hud-line); }
.rules-heading .section-icon { display: none; }
.rules-card h2 { color: var(--hud-gold-hi); font-size: 14px; }
.rules-card h2::before { content: "// "; color: var(--hud-gold-dim); }
.rules-card p, .rules-heading p { color: var(--hud-text-3); font-size: 11px; }
.exchange-rate, .package-list span { border: 1px solid var(--hud-line); background: #000; }
.exchange-rate strong, .package-list b { color: var(--hud-gold-hi); font-weight: 500; }

/* ---------- 运营总览第一屏 ---------- */
.v3a-hud { gap: 0; }
.v3a-bar { padding: 4px 14px; border-bottom: 1px solid var(--hud-line); color: var(--hud-text-3); }
.v3a-bar:not(:has(.v3a-why:not([hidden]))) { display: none; }
.v3a-why { border: 1px solid var(--hud-line-strong); background: transparent; color: var(--hud-gold-hi); }
.v3a-fit { border: 0; background: #000; }
.v3a-stage { font-family: var(--pp-font); font-size: 10px; }
.v3a-stage #v3a-nav { height: 24px; gap: 20px; border-bottom-color: var(--hud-line); color: var(--hud-text-3); font-size: 10.5px; }
.v3a-stage #v3a-nav .on { color: var(--hud-gold-hi); letter-spacing: .08em; }
.v3a-stage #v3a-nav a, .v3a-stage #v3a-nav button { color: var(--hud-text-2); }
.v3a-stage #v3a-nav .ex { border: 1px solid var(--hud-line-strong); padding: 0 6px; color: var(--hud-gold-hi); }
.v3a-stage #v3a-nav .ex.off { border-color: #6a1d1d; color: #ff8a8a; }
.v3a-stage #v3a-nav .live { color: var(--hud-gold-hi); }
.v3a-stage #v3a-nav, .v3a-stage #v3a-strip { width: 100%; }
.v3a-stage .lb { transform: scale(calc(var(--lb-x, 1) * var(--d, 1)), var(--d, 1)); transform-origin: 0 0; }
.v3a-stage .leg { transform: scaleX(var(--lb-x, 1)); transform-origin: 0 0; }
.v3a-stage .leg.v3a-legr { transform-origin: 100% 0; }
.v3a-stage #v3a-sc { position: static; float: right; margin: 0 0 4px 8px; }
.v3a-stage #v3a-log { margin-right: 0; }
.v3a-stage #v3a-log .row { overflow: hidden; }
.v3a-netbox { position: absolute; left: 0; top: 24px; width: 100%; height: 616px; overflow: hidden; }
.v3a-netbox { cursor: grab; touch-action: pan-y; user-select: none; }
.v3a-netbox:active { cursor: grabbing; }
.v3a-netbox.is-zoomed { touch-action: none; }
.v3a-zoom { position: absolute; top: 34px; right: 16px; z-index: 3; display: flex; align-items: center; border: 1px solid var(--hud-line-strong); background: rgba(0, 0, 0, .7); color: var(--hud-text-2); font-size: 10px; cursor: default; }
.v3a-zoom button { all: unset; box-sizing: border-box; min-width: 26px; height: 24px; padding: 0 6px; color: var(--hud-gold-hi); font: inherit; font-size: 13px; line-height: 24px; text-align: center; cursor: pointer; }
.v3a-zoom button:last-child { border-left: 1px solid var(--hud-line-strong); font-size: 10px; }
.v3a-zoom button:hover:not(:disabled) { background: var(--pp-primary-soft); }
.v3a-zoom button:focus-visible { outline: 1px solid var(--hud-gold-hi); outline-offset: -1px; }
.v3a-zoom button:disabled { color: #5f5a51; cursor: default; }
.v3a-zoom span { min-width: 40px; text-align: center; }
.v3a-netin { position: absolute; left: 0; top: 0; width: 1440px; height: 618px; transform-origin: 0 0; }
.v3a-stage #v3a-net, .v3a-stage #v3a-lab { top: 0; }
.v3a-stage .lb b { font-size: 10.5px; }
.v3a-stage .lb i { color: #b3aa9a; font-size: 9px; }
.v3a-stage .lb.s i { color: var(--hud-gold-hi); font-size: 9px; }
.v3a-stage .lb.off b { color: #c25a5a; }
.v3a-stage .lb.off i { color: #8a5050; }
.v3a-stage .lb.mq b { color: #c9b98f; }
.v3a-stage .lb.mq i { color: var(--hud-text-3); }
.v3a-stage .lb.mq.r b { color: #ff8a8a; }
.v3a-stage .lb.mq.r i { color: #ff6262; }
.v3a-stage .leg { font-size: 9.5px; }
.v3a-stage .leg .sg.o { color: #7a7367; }
.v3a-stage .leg .sg.o s { background: #4b4740; }
.v3a-stage .leg.v3a-ex { top: 8px; border-color: #6a1d1d; color: #ff8a8a; font-size: 10px; }
.v3a-stage #v3a-strip { border-top-color: var(--hud-line-strong); }
.v3a-stage .c { border-right-color: var(--hud-line); }
.v3a-stage .h { color: var(--hud-gold-dim); font-size: 10px; }
.v3a-stage .h span { color: var(--hud-text-3); font-size: 9px; }
.v3a-stage .sm { color: var(--hud-text-3); font-size: 9px; }
.v3a-stage .row, .v3a-stage .kv, .v3a-stage .hb { height: 13px; line-height: 13px; }
.v3a-stage .row .t { width: 52px; }
.v3a-stage .row .k { width: 30px; }
.v3a-stage .row .v { width: 50px; }
.v3a-stage .kv span, .v3a-stage .hb span { color: var(--hud-text-3); }
.v3a-stage .ok { height: 13px; line-height: 13px; color: var(--hud-text-3); }
.v3a-stage .ok em.g { color: var(--hud-gold-hi); }
.v3a-stage .row.ok .k { color: var(--hud-gold-hi); }
.v3a-stage .bl { grid-template-columns: 60px 58px minmax(0, 1fr) 40px; height: 13px; line-height: 13px; }
.v3a-stage .bl .a { color: var(--hud-text); }
.v3a-stage .bl .s { color: #a89f8e; }
.v3a-stage .bl .s.b { color: var(--hud-blue); }
.v3a-stage .bl .s.r { color: var(--hud-red); }
.v3a-stage .bl .x { overflow: hidden; color: var(--hud-text-3); text-overflow: ellipsis; }
.v3a-stage .bl .v { color: var(--hud-text-2); }
.v3a-stage .k1 { color: var(--hud-gold-hi); }
.v3a-stage .huge { color: var(--hud-gold-hi); }
.v3a-stage .v3a-rc-new { color: var(--hud-gold-hi); font-size: 13px; }
.v3a-stage .v3a-live { color: var(--hud-gold-hi); }
.v3a-stage .bar { background: linear-gradient(90deg, #a85200, var(--hud-gold)); }

/* ---------- 人工接管、飞书连接、素材与对话 ---------- */
.manual-page .workspace, .setup-page .workspace { gap: 12px; padding: 12px 14px 24px; }
.manual-heading { flex-wrap: wrap; }
.manual-sidebar-note { display: none; }
.manual-eyebrow { color: var(--hud-gold-dim); }
.manual-case[data-state="pending"] .manual-card-bottom .secondary, .manual-stepper li.done > span, .manual-issue > .manual-issue-toggle { color: #000; }
.manual-issue > .manual-issue-toggle:hover:not(:disabled) { border-color: var(--hud-gold-hi); background: var(--hud-gold-hi); color: #000; }
.manual-issue.is-handled, .manual-completed-panel { background: var(--pp-green-soft); }
/* manual-delivery.css 这里用了 !important，只能同样处理 */
.manual-page .manual-case .manual-delete, .manual-page .manual-actions .manual-delete { border-color: #6a1d1d !important; background: transparent !important; color: #ff8a8a !important; }
.manual-page .manual-case .manual-delete:hover, .manual-page .manual-actions .manual-delete:hover { border-color: var(--hud-red) !important; background: var(--pp-red-soft) !important; }
.observe-page .bar { border-color: var(--hud-line); background: #000; backdrop-filter: none; }
.observe-page .crumb strong { color: var(--hud-gold-hi); }
.observe-page .readonly-pill { border: 1px solid var(--hud-line-strong); background: transparent; color: var(--hud-gold-hi); }
.observe-page #tabs { background: #000; backdrop-filter: none; }
.observe-page [data-admin-period] { flex: 1 1 auto; }

/* ---------- 窄屏 ---------- */
@media (max-width: 1080px) {
  .pp-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-admin-period] .admin-period, [data-admin-period] .admin-period-controls, [data-admin-period] .admin-period-dates { flex-wrap: wrap; }
}
@media (max-width: 720px) {
  .sidebar, .side { background: #000; border-right: 1px solid var(--hud-line-strong); }
  body.ui-nav-open::after { background: rgba(0, 0, 0, .7); }
  .nav-item, .nav-link { min-height: 44px; color: var(--hud-text-2); font-size: 14px; }
  .topbar { min-height: 48px; padding: 0 12px; }
  .ui-menu-button { min-width: 40px; min-height: 40px; color: var(--hud-gold-hi); }
  .hud-context { padding: 8px 12px; }
  .page-heading { flex-basis: 100%; flex-wrap: wrap; }
  .page-heading > div:first-child { flex-direction: column; gap: 2px; }
  .page-heading p { white-space: normal; }
  .page-tools .secondary { min-height: 40px; }
  [data-admin-period], [data-admin-period] .admin-period-controls, [data-admin-period] .admin-period-field { width: 100%; }
  [data-admin-period] .admin-period-field select, [data-admin-period] .admin-period-field input { flex: 1; min-height: 40px; min-width: 0; font-size: 14px; }
  [data-admin-period] .admin-period-summary { white-space: normal; }
  .view-panel:not(#overviewPanel) { margin: 10px 12px; padding: 12px; }
  .monitor-pagination .secondary, .monitor-toolbar .secondary, .filter-label select { min-height: 40px; }
  .monitor-toolbar input { min-height: 40px !important; max-width: none; }
  .task-list { grid-template-columns: minmax(0, 1fr); }
  .task-card .secondary, .table-wrap td .secondary, .table-wrap td .table-action, .table-wrap td .gift-action { min-height: 40px; }
  .table-wrap tr { background: #000; }
  .v3a-classic { padding: 12px; }
  .pp-kpi-value { font-size: 26px; line-height: 32px; }

  .v3a-fit { height: auto !important; overflow: visible; }
  .v3a-stage { position: static; width: auto; height: auto; overflow: visible; transform: none !important; font-size: 12px; }
  .v3a-stage #v3a-nav { position: static; width: auto; height: auto; flex-wrap: wrap; gap: 0 14px; padding: 4px 12px; font-size: 12px; white-space: normal; }
  .v3a-stage #v3a-nav a, .v3a-stage #v3a-nav button { display: inline-flex; align-items: center; min-height: 40px; }
  .v3a-stage #v3a-nav .sp, .v3a-stage #v3a-nav .on { display: none; }
  .v3a-netbox { position: relative; top: 0; width: 100%; height: auto; }
  .v3a-stage .lb { transform: scale(calc(var(--lb-kx, 1) * var(--d, 1)), calc(var(--lb-ky, 1) * var(--d, 1))); transform-origin: 0 0; }
  /* 手机上竖排贴右边，不挡节点标签；全景时不显示复位 */
  .v3a-zoom { top: 6px; right: 4px; flex-direction: column; font-size: 12px; }
  .v3a-zoom span { display: none; }
  .v3a-zoom button { min-width: 40px; height: 40px; line-height: 40px; font-size: 16px; }
  .v3a-zoom button:last-child { border-top: 1px solid var(--hud-line-strong); border-left: 0; font-size: 12px; }
  .v3a-zoom button:disabled { display: none; }
  .v3a-stage .lb { width: auto !important; text-align: left !important; }
  .v3a-stage .lb.flip, .v3a-stage .lb.mq { transform: scale(calc(var(--lb-kx, 1) * var(--d, 1)), calc(var(--lb-ky, 1) * var(--d, 1))) translateX(-100%); }
  .v3a-stage .lb.s, .v3a-stage .leg.v3a-legl, .v3a-stage .leg.v3a-legr, .v3a-stage .lb i { display: none; }
  .v3a-stage .lb.mq i { display: inline-block; }
  .v3a-stage .leg.v3a-legbox { display: none; }
  .v3a-stage .leg.v3a-ex { left: 16px; top: 12px; transform: scale(var(--lb-kx, 1), var(--lb-ky, 1)); transform-origin: 0 0; font-size: 10px; }
  .v3a-stage #v3a-strip { position: static; width: auto; height: auto; display: flex; flex-direction: column; }
  .v3a-stage .c { order: 5; padding: 12px; border-top: 1px solid var(--hud-line); border-right: 0; overflow: visible; }
  .v3a-stage .c.c-task { order: 1; }
  .v3a-stage .c.c-rech { order: 2; }
  .v3a-stage .c.c-risk { order: 3; }
  .v3a-stage .c.c-slot { order: 4; }
  .v3a-stage .h { font-size: 12px; }
  .v3a-stage .h span { font-size: 11px; }
  .v3a-stage .sm { font-size: 11px; }
  .v3a-stage .row, .v3a-stage .kv, .v3a-stage .hb, .v3a-stage .bl, .v3a-stage .ok { height: auto; min-height: 20px; line-height: 20px; }
  .v3a-stage .row .t { width: 60px; }
  .v3a-stage .row .n { display: none; }
  .v3a-stage .row .k { width: 34px; }
  .v3a-stage .row .v { width: 56px; }
  .v3a-stage .bl { grid-template-columns: 74px 72px minmax(0, 1fr) 46px; }
  .v3a-stage .hb { grid-template-columns: 70px 1fr 48px; }
  .v3a-stage #v3a-sc { display: none; }
  .v3a-stage #v3a-log { max-height: 252px; margin-right: 0; overflow-y: auto; }
  .v3a-stage #v3a-eq { width: 100%; height: auto; }
  .v3a-stage .k1 { font-size: 30px; }
  .v3a-stage .v3a-k1row { justify-content: space-between; }
  .v3a-stage .huge { font-size: 36px; }
  .v3a-stage .ok em { width: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
