:root{--bg: #05060a;--panel: #11131a;--line: #262a36;--text: #f4f5f8;--muted: #9aa0ad;--accent: #e10600;--ok: #2fbf71;--warn: #f2a33a;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.collector{max-width:480px;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px}header h1{margin:0;font-size:1.25rem;letter-spacing:.02em}header h1 span{color:var(--accent)}.device{margin:4px 0 0;color:var(--muted);font-size:.85rem}.meter{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px 16px;text-align:center}.meter small{display:block;color:var(--muted);font-size:.75rem;margin-top:2px}.level span{font-size:4.5rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}.sub{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.sub span{font-size:1.4rem;font-weight:600;font-variant-numeric:tabular-nums}button{font:inherit;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--text);padding:12px;cursor:pointer}button:disabled{opacity:.4;cursor:default}.toggle{font-size:1.25rem;font-weight:700;padding:18px;background:var(--ok);border-color:var(--ok);color:#04130a}.toggle[data-running=true]{background:var(--accent);border-color:var(--accent);color:#fff}.status p{margin:4px 0;font-size:.9rem;color:var(--muted)}#gps-status[data-ok=true],#upload-status[data-ok=true]{color:var(--ok)}#upload-status[data-ok=false]{color:var(--warn)}.error{color:var(--warn)!important}.settings{display:grid;gap:12px}.settings label{display:grid;gap:4px;font-size:.85rem;color:var(--muted)}.settings input{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;width:100%}.settings input:disabled{opacity:.6}.export{display:grid;grid-template-columns:1fr 1fr;gap:12px}footer p{margin:0;font-size:.75rem;color:var(--muted)}.setup{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;gap:10px}.setup h2{margin:0;font-size:1.05rem}.setup .invite,.setup .muted,.setup small{color:var(--muted);margin:0;font-size:.85rem}.setup .info summary{cursor:pointer;font-weight:600}.setup .info ul{margin:8px 0;padding-left:18px;font-size:.9rem;line-height:1.4}.setup .info a{color:var(--text)}.setup .check{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}.setup .check input{width:22px;height:22px;flex:none;margin:0}.setup fieldset{border:1px solid var(--line);border-radius:10px;padding:10px;margin:0;display:grid;gap:8px;min-width:0}.setup fieldset label{display:grid;gap:4px;font-size:.85rem;color:var(--muted)}.setup select,.setup input[type=text]{font:inherit;font-size:16px;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--text);min-width:0}.setup button.link{background:none;border:none;color:var(--muted);text-decoration:underline;padding:0;justify-self:start;font-size:.85rem}.setup .hint{margin:0;font-size:.9rem;color:var(--warn)}.setup .hint[data-ok=true]{color:var(--ok)}
