:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#eef1f5;--text:#1b1f24;--muted:#5b6470;--border:#d5dae1;--accent:#2f6fdf;--accent-soft:#e3ecfc;--accent-text:#fff;--danger:#b42318;--danger-soft:#fdecea;--radius:8px;--tabbar-height:3.75rem;--sidebar-width:15rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121418;--surface:#1c1f25;--surface-2:#262a32;--text:#e8eaee;--muted:#9aa3ae;--border:#343a44;--accent:#6b9cf5;--accent-soft:#1f2d47;--accent-text:#0d1117;--danger:#f97066;--danger-soft:#3a1d1b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#121418;--surface:#1c1f25;--surface-2:#262a32;--text:#e8eaee;--muted:#9aa3ae;--border:#343a44;--accent:#6b9cf5;--accent-soft:#1f2d47;--accent-text:#0d1117;--danger:#f97066;--danger-soft:#3a1d1b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,sans-serif;line-height:1.5}a{color:var(--accent)}input,button{font:inherit}input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);padding:.7rem .8rem;font-size:1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--muted)}.icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.35rem;height:1.35rem}.button-primary,.button-secondary{border-radius:var(--radius);cursor:pointer;padding:.7rem 1rem}.button-primary{background:var(--accent);color:var(--accent-text);border:none}.button-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text)}button:disabled{opacity:.6;cursor:default}.form-error{min-height:1.2em;color:var(--danger);margin:0}.banner-error{border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);margin:1rem 1rem 0;padding:.75rem 1rem}.login-page{place-items:center;min-height:100dvh;padding:1rem;display:grid}.login-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:.5rem;width:100%;max-width:22rem;padding:1.5rem;display:grid}.login-form h1{margin:0 0 .5rem;font-size:1.4rem}.login-form label{color:var(--muted);margin-top:.5rem;font-size:.9rem}.login-form .button-primary{margin-top:.5rem}.sidebar{display:none}.main{min-width:0;padding-bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom))}.content{padding:1rem}.page h1{margin:0 0 .75rem;font-size:1.4rem}.tabbar{z-index:10;height:calc(var(--tabbar-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--border);background:var(--surface);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;inset:auto 0 0}.tab{min-width:0;color:var(--muted);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;padding:.25rem;font-size:.7rem;text-decoration:none;display:flex}.tab span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tab[aria-current=page],.tab.is-active{color:var(--accent)}.more-sheet{width:100%;max-width:100%;padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom));background:var(--surface);color:var(--text);border:none;border-radius:12px 12px 0 0;margin:auto 0 0}.more-sheet::backdrop{background:#0006}.more-sheet hr{border:none;border-top:1px solid var(--border);margin:.5rem 0}.nav-link{border-radius:var(--radius);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;padding:.7rem .75rem;font-size:.95rem;text-decoration:none;display:flex}.nav-link:hover{background:var(--surface-2)}.nav-link[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-user{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;padding:.25rem .75rem;font-size:.85rem;overflow:hidden}@media (width>=900px){.layout{grid-template-columns:var(--sidebar-width) 1fr;min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:.15rem;height:100dvh;padding:1rem .75rem;display:flex;position:sticky;top:0;overflow-y:auto}.brand{margin:0 0 .75rem;padding:0 .75rem;font-size:1.15rem;font-weight:700}.sidebar-footer{border-top:1px solid var(--border);flex-direction:column;gap:.15rem;margin-top:auto;padding-top:.75rem;display:flex}.main{padding-bottom:0}.content{max-width:72rem;padding:1.5rem 2rem}.tabbar,.more-sheet{display:none}}
