:root { --bg: #f6f7f9; --panel: #fff; --ink: #1d2433; --muted: #5d6880; --line: #d5dbe6; --accent: #b7791f; --good: #1c7c4a; --bad: #9a3030; }
@media (prefers-color-scheme: dark) { :root { --bg: #12151d; --panel: #1b1f2a; --ink: #e6e9f0; --muted: #9aa3b5; --line: #2c3343; --accent: #f0b429; --good: #3fb27f; --bad: #ff8a80; } }
body { margin: 0; background: var(--bg); color: var(--ink); font: 15px/1.55 system-ui, -apple-system, "Segoe UI", sans-serif; }
main { max-width: 640px; margin: 32px auto; padding: 0 16px; }
h1 { font-size: 22px; margin: 0 0 6px; }
h2 { font-size: 16px; margin: 0 0 6px; }
p { margin: 0 0 10px; }
.note { color: var(--muted); font-size: 13.5px; }
.card { background: var(--panel); border: 1px solid var(--line); border-radius: 10px; padding: 16px; margin-bottom: 14px; }
.warn { border-color: var(--accent); }
label { display: block; font-weight: 600; margin-bottom: 6px; }
input, select, button { font: inherit; color: inherit; background: var(--bg); border: 1px solid var(--line); border-radius: 8px; padding: 8px 12px; }
input { width: 100%; box-sizing: border-box; letter-spacing: .04em; }
button { cursor: pointer; margin: 6px 8px 0 0; }
button.primary { background: var(--accent); border-color: var(--accent); color: #111; font-weight: 600; }
button:disabled { opacity: .5; cursor: default; }
.ok { color: var(--good); } .err { color: var(--bad); }
.stats { display: flex; gap: 24px; margin: 8px 0; }
.stats b { display: block; font-size: 22px; color: var(--accent); }
ul { margin: 0 0 10px; padding-left: 20px; }
a { color: var(--accent); }
a.button { display: inline-block; text-decoration: none; color: inherit; background: var(--bg); border: 1px solid var(--line); border-radius: 8px; padding: 8px 12px; margin: 6px 8px 0 0; }
a.button.primary { background: var(--accent); border-color: var(--accent); color: #111; font-weight: 600; }
ol { margin: 0 0 10px; padding-left: 22px; } li { margin-bottom: 4px; }
code { font-size: 13px; background: var(--bg); border: 1px solid var(--line); border-radius: 4px; padding: 0 4px; }
.facts { display: grid; grid-template-columns: max-content 1fr; gap: 4px 16px; margin: 8px 0; } .facts dt { color: var(--muted); } .facts dd { margin: 0; overflow-wrap: anywhere; }
[hidden] { display: none !important; }
.device { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 0; border-top: 1px solid var(--line); } .device button { margin: 0; }
