:root{--text:#3b3744;--text-h:#08060d;--bg:#fff;--surface:#f4f5f7;--border:#e5e4e7;--accent:#5b3bff;--accent-text:#fff;--danger:#b00020;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font:16px/1.5 system-ui,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#c9ccd3;--text-h:#f3f4f6;--bg:#16171d;--surface:#1f2028;--border:#2e303a;--accent:#a78bfa;--accent-text:#16171d;--danger:#ff8a9b}}body{margin:0}h1{color:var(--text-h);margin:0 0 .5rem}main{max-width:60rem;margin:0 auto;padding:1.5rem 1rem}main.center{text-align:center;place-content:center;gap:.5rem;min-height:80vh;display:grid}.bar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1rem;padding:.5rem 1rem;display:flex}.bar .spacer{flex:1}.bar .email{font-size:.9rem}.who select{font:inherit;padding:.2rem .4rem}button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-text);cursor:pointer;border-radius:.35rem;padding:.4rem .9rem}.bar button{color:var(--accent);background:0 0}[role=alert]{color:var(--danger)}dl{grid-template-columns:max-content 1fr;gap:.25rem 1rem;display:grid}dt{font-weight:600}dd{margin:0}.tabs{border-bottom:1px solid var(--border);gap:1rem;padding:.4rem 1rem;display:flex}.tabs a{color:var(--text);border-bottom:2px solid #0000;padding:.2rem 0;text-decoration:none}.tabs a[aria-current=page]{color:var(--text-h);border-bottom-color:var(--accent);font-weight:600}form.settings,form.filters{gap:.9rem;display:grid}form.settings{max-width:28rem}form.filters{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));align-items:end;margin-bottom:1rem}label{gap:.2rem;font-size:.95rem;display:grid}label small{color:var(--text);opacity:.8}input,select{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:.3rem;padding:.35rem .5rem}table.log{border-collapse:collapse;width:100%;margin-bottom:1rem;font-size:.9rem}table.log th,table.log td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:.4rem .6rem}[role=status]{color:var(--text-h)}form.panel{border:1px solid var(--border);background:var(--surface);border-radius:.5rem;gap:.8rem;max-width:30rem;margin-bottom:1.2rem;padding:1rem;display:grid}nav.subtabs{border-bottom:1px solid var(--border);gap:1rem;margin:0 0 1rem;padding-bottom:.4rem;display:flex}nav.subtabs a[aria-current=page]{font-weight:700}.days{flex-wrap:wrap;gap:.2rem 1rem;display:flex}.monthbar{flex-wrap:wrap;align-items:end;gap:.8rem;margin-bottom:.8rem;display:flex}table.month{border-collapse:separate;border-spacing:.2rem;margin-bottom:.6rem}table.month th{opacity:.8;font-size:.8rem;font-weight:600}button.day{border:1px solid var(--border);background:var(--bg);width:2.6rem;height:2.4rem;color:var(--text-h);cursor:pointer;border-radius:.3rem;padding:0}button.day.runs,.swatch.runs{color:#14391a;background:#c8e6c9}button.day.off,.swatch.off{color:#546e7a;background:#eceff1}button.day.extra,.swatch.extra{box-shadow:inset 0 0 0 2px #2e7d32}button.day.holiday,.swatch.holiday{border-width:2px;border-color:#c62828}button.day.outside{opacity:.45}button.day.selected{outline-offset:1px;outline:3px solid #5b3df5}.legend{flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.swatch{border:1px solid var(--border);border-radius:.2rem;width:1rem;height:1rem;margin-left:.6rem;display:inline-block}form.panel.wide{max-width:44rem}.map{border:1px solid var(--border);border-radius:.4rem;height:22rem;overflow:hidden}fieldset.lookup{border:1px solid var(--border);border-radius:.4rem;gap:.6rem;padding:.6rem .8rem;display:grid}ul.results{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}ul.results button{text-align:left;width:100%}.hint{opacity:.8;margin:0;font-size:.85rem}.pair{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}form.panel h2{margin:0}label.check{align-items:center;gap:.5rem;display:flex}.actions{flex-wrap:wrap;gap:.5rem;display:flex}button.secondary{color:var(--accent);background:0 0}tr.inactive td{opacity:.6}section h2 small{font-weight:400}
