:root{--bg: #1a1612;--panel: #2a241d;--line: #423a30;--ink: #f3eee6;--dim: #b8a98f;--accent: #8a6a4a;--accent2: #c79a6b;--ok: #6fbf73;--bad: #e0654a;--grid: #6a5640}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:radial-gradient(900px 560px at 50% -8%,#241e17,var(--bg));color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex;justify-content:center;-webkit-user-select:none;user-select:none}#app{width:100%;max-width:560px;padding:12px 12px 26px}h1{font-size:20px;letter-spacing:.5px;margin:4px 0 2px}h1 .mark{color:var(--accent2)}.sub{color:var(--dim);font-size:12px;margin-bottom:10px}.bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:8px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{background:var(--panel);color:var(--dim);border:0;padding:6px 12px;font-size:13px;cursor:pointer}.seg button.on{background:var(--accent);color:#fff}button.act{background:var(--accent);color:#fff;border:0;border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer}button.act.ghost{background:var(--panel);color:var(--ink);border:1px solid var(--line)}button.act:disabled{opacity:.5;cursor:default}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin-bottom:8px;font-size:13px}.card .ctitle{color:var(--accent2);font-weight:600}.card .cdetail{color:var(--dim)}#cv{width:100%;display:block;border-radius:10px;background:#221c15;border:1px solid var(--line);touch-action:none}.meters{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 6px}.meter{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:6px 8px}.meter .mlabel{font-size:10px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px}.meter .mval{font-size:16px;font-weight:700}.meter .track{height:5px;background:#1c1812;border-radius:4px;margin-top:4px;overflow:hidden}.meter .fill{height:100%;background:var(--accent2);width:0%;transition:width .15s}.status{font-size:13px;color:var(--dim);margin:6px 0;min-height:18px}.status .ok{color:var(--ok)}.status .bad{color:var(--bad)}.big{font-size:22px;font-weight:800;color:var(--accent2)}.help{font-size:11px;color:var(--dim);line-height:1.5;margin-top:8px}.legend{display:flex;gap:14px;font-size:11px;color:var(--dim);margin:4px 0 2px}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-2px;margin-right:4px}
