:root{font-family:system-ui,sans-serif;color:#182230;background:#f8fafb;color-scheme:light}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button{cursor:pointer;border:1px solid #cbd5df;border-radius:8px;padding:10px 18px;background:#164c75;color:white}input{width:100%;padding:12px;border:1px solid #b8c2cc;border-radius:7px;background:white;color:#182230}label{display:block;margin:18px 0}label input{margin-top:8px}h1{font-size:clamp(22px,3vw,30px);line-height:1.6}h2{font-size:19px}p{line-height:1.8}.wordmark{font-size:25px;font-weight:700}.wordmark span{font-size:12px;letter-spacing:3px;margin-inline-start:8px;color:#64748b}.signin{max-width:440px;margin:8vh auto;padding:32px;background:white;border:1px solid #dce2e8;border-radius:14px}.signin form{margin-bottom:24px}.signin button{width:100%}[role=alert]{padding:12px;border-inline-start:3px solid #ad4235;background:#fff3f0}.workspace{--canvas:#f8fafb;--surface:white;--ink:#182230;min-height:100vh;background:var(--canvas);color:var(--ink);padding:32px max(24px,calc((100vw - 1100px)/2))}.workspace[data-theme=dark]{--canvas:#09090b;--surface:#18181c;--ink:#fafafa;color-scheme:dark}.workspace header{display:flex;justify-content:space-between;align-items:center;gap:20px}.workspace nav{display:flex;gap:18px;flex-wrap:wrap;margin:24px 0}.workspace [aria-current=true]{font-weight:700}.workspace section{padding:24px;border:1px solid #8885;border-radius:12px;background:var(--surface);margin-block:20px}.modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;list-style:none;padding:0}.modules li{padding:14px;border:1px solid #8884;border-radius:8px}@media(prefers-color-scheme:dark){.workspace[data-theme=system]{--canvas:#09090b;--surface:#18181c;--ink:#fafafa;color-scheme:dark}}@media(max-width:600px){.signin{margin:24px 16px;padding:24px}.workspace header{align-items:flex-start;flex-direction:column}.workspace{padding:24px 16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.session-list{list-style:none;padding:0;display:grid;gap:1rem}.session-list li{border-block-end:1px solid currentColor;padding-block-end:1rem;overflow-wrap:anywhere}button:disabled{opacity:.6;cursor:wait}.workspace textarea{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #b8c2cc;border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;resize:vertical;overflow-wrap:anywhere}