:root{color-scheme:light dark;--paper: #fbfaf7;--surface: #ffffff;--surface-2: #f3f2ee;--ink: #16181d;--ink-soft: #5a5f66;--ink-faint: #6c7178;--rule: #e3e1da;--pen: #2a4a7f;--mark: #b0332a;--ok: #3b7350;--warn: #a86b1d;--radius: 10px;--tap: 44px;--on-accent: #ffffff}:root[data-theme=dark],:root:not([data-theme=light]){--dark-paper: #14161a}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #14161a;--surface: #1b1e24;--surface-2: #23272e;--ink: #e9e7e1;--ink-soft: #a2a7af;--ink-faint: #8d939c;--rule: #2c313a;--pen: #8fb0e4;--mark: #e58c80;--ok: #7fbf97;--warn: #d8a558;--on-accent: #12151a}}:root[data-theme=dark]{--paper: #14161a;--surface: #1b1e24;--surface-2: #23272e;--ink: #e9e7e1;--ink-soft: #a2a7af;--ink-faint: #8d939c;--rule: #2c313a;--pen: #8fb0e4;--mark: #e58c80;--ok: #7fbf97;--warn: #d8a558;--on-accent: #12151a}:root[data-theme=light]{color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}.app{max-width:900px;margin:0 auto;padding:0 14px 80px}.center{min-height:100dvh;display:grid;place-items:center;padding:20px}.stack{display:flex;flex-direction:column;gap:12px;padding-top:12px}.bar{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--rule);padding:12px 0;display:flex;align-items:center;gap:12px}.bar b{font-size:17px;letter-spacing:-.01em}.bar .link{margin-left:auto}.tabs{display:flex;gap:6px;overflow-x:auto;padding:10px 0;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{border:1px solid var(--rule);background:var(--surface);color:var(--ink-soft);padding:8px 14px;border-radius:999px;white-space:nowrap;cursor:pointer;min-height:var(--tap)}.tabs button.on{background:var(--pen);border-color:var(--pen);color:var(--on-accent);font-weight:600}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:14px}.card h3{margin:0 0 10px;font-size:15px}.card h1{margin:0 0 6px;font-size:20px}.card.auth{width:min(380px,100%);display:flex;flex-direction:column;gap:10px}.card.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.card.row>:first-child{flex:1;min-width:160px}.muted{color:var(--ink-faint)}.small{font-size:12.5px}.error{color:var(--mark);margin:4px 0 0}.notice{background:var(--surface-2);border:1px solid var(--rule);border-left:3px solid var(--warn);border-radius:var(--radius);padding:10px 12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.notice.ok{border-left-color:var(--ok)}input,select,textarea{width:100%;padding:11px 12px;min-height:var(--tap);background:var(--surface);color:var(--ink);border:1px solid var(--rule);border-radius:var(--radius)}label{display:block;font-size:12.5px;color:var(--ink-faint);margin-bottom:8px}label input,label select{margin-top:4px}button{border:1px solid var(--rule);background:var(--surface);color:var(--ink);padding:10px 14px;border-radius:var(--radius);cursor:pointer;min-height:var(--tap)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--pen);border-color:var(--pen);color:var(--on-accent);font-weight:600}button.link{background:none;border:none;color:var(--pen);padding:6px 2px;min-height:auto;text-align:left}button.link.danger{color:var(--mark)}.actions{display:flex;gap:12px;flex-wrap:wrap}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips button{padding:7px 12px;border-radius:999px;color:var(--ink-soft);background:var(--surface-2);min-height:auto}.chips button.on{background:var(--pen);border-color:var(--pen);color:var(--on-accent);font-weight:600}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.slot{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;background:var(--surface-2)}.slot b{font-size:16px}.slot small{color:var(--ink-faint);font-size:11.5px}.slot.taken{opacity:.45}.slot.mine{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--surface))}.slot.blocked{opacity:.5;border-style:dashed}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000073;display:flex;align-items:flex-end;justify-content:center;padding:12px}.sheet .card{width:min(420px,100%);display:flex;flex-direction:column;gap:10px}@media(min-width:600px){.sheet{align-items:center}}.grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.day h4{margin:0 0 6px;font-size:13px;color:var(--ink-faint);font-weight:600}.entry{border:1px solid var(--rule);border-radius:var(--radius);padding:8px 10px;background:var(--surface);margin-bottom:6px;cursor:pointer;text-align:left;width:100%}.entry.free{background:var(--surface-2);color:var(--ink-faint)}.entry.blocked{border-style:dashed;opacity:.6}.entry b{display:block;font-size:14px}.entry small{color:var(--ink-faint)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--rule)}th{color:var(--ink-faint);font-weight:600;font-size:12.5px}.logo{display:inline-flex;align-items:center;gap:9px}.logo svg{display:block;flex:none}.logo-text{font-size:17px;letter-spacing:-.02em;color:var(--ink);font-weight:700}.logo-text span{color:var(--ink-faint);font-weight:400}.card.auth .logo{margin-bottom:2px}:root[data-theme=dark] .logo svg,:root:not([data-theme=light]) .logo svg{border-radius:7px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .logo svg{box-shadow:0 0 0 1px #ffffff24}}:root[data-theme=dark] .logo svg{box-shadow:0 0 0 1px #ffffff24}
