:root,:root[data-theme=dark]{--canvas:#171918;--surface:#1e211f;--surface-raised:#252925;--text:#d9dcd7;--text-muted:#959b94;--border:#3f453f;--accent:#829584;--focus:#adc0af;--success:#86a18b;--warning:#c2a170;--danger:#c78275;--on-accent:#111311;--sidebar:#111311;--sidebar-text:#d9dcd7;--sidebar-muted:#959b94;--shadow:#00000047;--paper:var(--canvas);--surface-panel:var(--surface);--stone:var(--surface-raised);--sand:var(--text-muted);--ink:var(--text);--deep:var(--sidebar);--charcoal:var(--sidebar);--wood:var(--accent);--olive:var(--success);--rust:var(--danger);--line:var(--border);--muted:var(--text-muted);color:var(--text);background:var(--canvas);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,Segoe UI,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:400}:root[data-theme=light]{--canvas:#ecebe6;--surface:#e3e2dc;--surface-raised:#f3f2ed;--text:#242724;--text-muted:#656b65;--border:#c3c6bf;--accent:#4f6654;--focus:#365f40;--success:#55735c;--warning:#80663f;--danger:#8c5148;--on-accent:#f2f3ee;--sidebar:#202320;--sidebar-text:#e6e7e2;--sidebar-muted:#aeb3ac;--shadow:#1c201d26;--sand:#d4d6cf;--deep:var(--sidebar);--charcoal:var(--sidebar)}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:20rem;min-height:100vh;color:var(--text);background:var(--canvas);margin:0;font-weight:400}button,input,select,textarea{font:inherit}a{color:inherit}h1,h2,h3,h4{letter-spacing:-.025em;text-wrap:balance;font-family:inherit;font-weight:400}h1{letter-spacing:-.045em;font-weight:300}strong,b{font-weight:500}p,li{text-wrap:pretty}strong,time,.metric{font-variant-numeric:tabular-nums}.skip-link{z-index:20;color:var(--text);background:var(--surface-raised);padding:.75rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:none}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.app-shell{background:var(--canvas);grid-template-columns:minmax(15rem,17rem) minmax(0,1fr);min-height:100vh;display:grid}.app-shell__sidebar{height:100vh;color:var(--sidebar-text);background:var(--sidebar);border-right:1px solid var(--border);flex-direction:column;gap:1.25rem;padding:1.5rem 1.1rem;display:flex;position:sticky;top:0}.app-shell__brand{width:fit-content;color:var(--sidebar-text);align-items:center;gap:.8rem;text-decoration:none;display:flex}.app-shell__brand img{object-fit:cover;outline:1px solid var(--border);outline-offset:-1px;border-radius:50%;width:2.8rem;height:2.8rem}.app-shell__brand span{display:grid}.app-shell__brand strong{letter-spacing:-.025em;font-size:1.05rem;font-weight:500}.app-shell__brand small{color:var(--sidebar-muted);letter-spacing:.1em;margin-top:.2rem;font-size:.58rem;font-weight:400}.app-shell__credential{color:var(--sidebar-muted);letter-spacing:.06em;margin:-.7rem 0 .15rem 3.6rem;font-size:.56rem;font-weight:400}.app-shell__context{border:1px solid var(--border);border-radius:.2rem;grid-template-columns:1fr 1fr;padding:.2rem;display:grid}.app-shell__context button{min-height:40px;color:var(--sidebar-muted);cursor:pointer;background:0 0;border:0;font-weight:400}.app-shell__context button[aria-pressed=true]{color:var(--on-accent);background:var(--accent);font-weight:500}.app-shell__navigation{gap:.1rem;display:grid;overflow-y:auto}.app-shell__nav-link{min-height:44px;color:var(--sidebar-muted);border-left:1px solid #0000;padding:.75rem .85rem;font-size:.9rem;font-weight:400;text-decoration:none;transition:color .14s,background-color .14s,border-color .14s}.app-shell__nav-link:hover{color:var(--sidebar-text);background:color-mix(in srgb, var(--accent) 12%, transparent)}.app-shell__nav-link:active{transform:scale(.995)}.app-shell__nav-link--active{color:var(--sidebar-text);border-left-color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent);font-weight:500}.app-shell__tools{z-index:10;position:fixed;top:1rem;right:1rem}.theme-toggle{border:1px solid var(--border);width:44px;height:44px;color:var(--text-muted);background:var(--surface);box-shadow:0 .25rem .9rem var(--shadow);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-weight:400;display:grid}.theme-toggle:hover{color:var(--text);background:color-mix(in srgb, var(--accent) 12%, transparent)}.theme-toggle__icon{font-size:1.05rem;line-height:1}.app-shell__content{min-width:0;color:var(--text);background:var(--canvas);padding:clamp(1.25rem,3.5vw,3.8rem)}@media (prefers-reduced-motion:no-preference){html,body,.app-shell,.app-shell__sidebar,.app-shell__content{transition:color .14s,background-color .14s,border-color .14s}}@media (width<=768px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-shell__sidebar{gap:.8rem;height:auto;padding:1rem;position:static}.app-shell__brand img{width:2.5rem;height:2.5rem}.app-shell__credential{margin:-.5rem 0 0 3.3rem}.app-shell__navigation{gap:.2rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.app-shell__nav-link{border-bottom:1px solid #0000;border-left:0;border-right:0;flex:none}.app-shell__nav-link--active{border-bottom-color:var(--accent)}.app-shell__content{padding:1.25rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.auth-page{background:var(--sidebar);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-page__panel{width:min(100%,29rem);color:var(--text);background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 1.5rem 4rem var(--shadow);padding:clamp(2rem,8vw,4rem)}.auth-page__eyebrow{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 1.5rem;font-size:.75rem;font-weight:500}.auth-page h1{letter-spacing:-.05em;margin:0;font-size:clamp(2.25rem,8vw,3.75rem);font-weight:300}.auth-page__description{max-width:26rem;color:var(--text-muted);margin:1.25rem 0 2rem;line-height:1.6}.auth-page__notice,.auth-page__error{border-left:2px solid var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent);margin:0 0 1rem;padding:.8rem 1rem;line-height:1.4}.auth-page__google-button{width:100%;min-height:3rem;color:var(--on-accent);border:1px solid var(--accent);background:var(--accent);cursor:pointer;font:inherit;padding:.75rem 1rem;font-weight:500}.auth-page__google-button:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 84%, var(--text))}.auth-page__google-button:disabled{cursor:progress;opacity:.7}.auth-page--loading{color:var(--text-muted)}
