:root{--bg: #f8fafc;--surface: #ffffff;--text: #0f172a;--muted: #64748b;--border: #e2e8f0;--accent: #2563eb;color-scheme:light}:root[data-theme=dark]{--bg: #0f172a;--surface: #1e293b;--text: #e2e8f0;--muted: #94a3b8;--border: #334155;--accent: #60a5fa;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg: #0f172a;--surface: #1e293b;--text: #e2e8f0;--muted: #94a3b8;--border: #334155;--accent: #60a5fa;color-scheme:dark}}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);overflow-x:clip}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.icon-btn{padding:.4rem .5rem;min-width:38px;min-height:38px;line-height:1;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}input,select,textarea{max-width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem 1.25rem}.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));padding:1rem}.grid>*,.page-row>*{min-width:0}.page-row{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:1rem;align-items:start}@media(max-width:820px){.page-row{grid-template-columns:1fr}}button,a.button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:.5rem .9rem}a.button{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none}button.primary{background:var(--accent);color:#fff;border-color:transparent}button:disabled{opacity:.5;cursor:not-allowed}.switch{flex:none;width:42px;height:24px;border-radius:999px;background:var(--border);position:relative;transition:background .15s ease}.switch[data-on=true]{background:var(--accent)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s ease}.switch[data-on=true]:after{transform:translate(18px)}header.app-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;padding:.75rem 1rem;padding-top:max(.75rem,env(safe-area-inset-top));padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0;z-index:10}header.app-bar nav{flex-wrap:wrap}header.app-bar a{color:var(--accent);text-decoration:none}header.app-bar a.active{text-decoration:underline;font-weight:600}@media(max-width:640px){button,a.button,select,input{min-height:40px}.grid{padding:.6rem;gap:.6rem}.card{padding:.8rem .85rem}header.app-bar>div{flex-wrap:wrap}header.app-bar nav{flex:1 1 100%;gap:.5rem .9rem}}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
