:root{--bg-app: #07111d;--bg-sidebar: #09131f;--bg-surface: #0d1825;--bg-surface-raised: #111e2c;--bg-hover: #142334;--border-subtle: #1b2a3a;--text-primary: #f4f6f8;--text-secondary: #a8b0ba;--text-muted: #6f7b88;--accent-kota: #12436c;--accent-kota-soft: #2c6698;--negative: #d1a08e;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text-primary);background:var(--bg-app);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--text-primary);background:var(--bg-app)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}button:focus-visible,input:focus-visible{outline:2px solid var(--accent-kota-soft);outline-offset:2px}.eyebrow,.section-kicker{margin:0;color:var(--text-secondary);font-size:.72rem;font-weight:750;letter-spacing:.17em}.brand-wordmark{color:var(--text-primary)}.login-layout{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr);background:var(--bg-app)}.login-brand-panel{min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(2rem,5vw,5rem);border-right:1px solid var(--border-subtle);background:#021a32}.brand-lockup{display:flex;align-items:center}.brand-product{margin:.3rem 0 0;color:var(--text-primary);font-size:1.1rem;font-weight:700;letter-spacing:.08em}.brand-message{max-width:760px;padding:4rem 0}.brand-message h1{margin:1rem 0 1.5rem;max-width:15ch;color:var(--text-primary);font-size:clamp(2.8rem,5.2vw,5.4rem);font-weight:650;line-height:.98;letter-spacing:-.05em}.brand-message>p:last-child{max-width:58ch;margin:0;color:var(--text-secondary);font-size:1rem;line-height:1.7}.brand-footer{margin:0;color:var(--text-muted);font-size:.82rem;letter-spacing:.04em}.login-form-panel{min-height:100vh;display:grid;place-items:center;padding:clamp(2rem,5vw,5rem);background:var(--bg-app)}.login-card{width:min(420px,100%)}.login-card h2{margin:.8rem 0 0;color:var(--text-primary);font-size:clamp(2rem,4vw,3rem);font-weight:650;line-height:1.05;letter-spacing:-.04em}.supporting-copy{max-width:62ch;margin:1rem 0 0;color:var(--text-secondary);line-height:1.65}.login-form{display:grid;gap:1.1rem;margin-top:2rem}.login-form label{display:grid;gap:.5rem}.login-form label>span{color:var(--text-secondary);font-size:.82rem;font-weight:650}.login-form input{width:100%;min-height:3.15rem;border:1px solid var(--border-subtle);border-radius:8px;padding:.75rem .9rem;color:var(--text-primary);background:var(--bg-surface);outline:none;transition:border-color .14s ease,background .14s ease}.login-form input:hover:not(:disabled){background:var(--bg-surface-raised)}.login-form input:focus{border-color:var(--accent-kota-soft);background:var(--bg-surface-raised)}.form-message,.workspace-message{color:var(--negative);font-size:.84rem;line-height:1.5}.form-message{min-height:1.4rem}.primary-button,.secondary-button{min-height:3rem;border-radius:8px;padding:.72rem 1rem;font-weight:700;transition:background .14s ease,border-color .14s ease}.primary-button{border:1px solid var(--accent-kota);color:var(--text-primary);background:var(--accent-kota)}.primary-button:hover:not(:disabled){border-color:var(--accent-kota-soft);background:var(--accent-kota-soft)}.secondary-button{border:1px solid var(--border-subtle);color:var(--text-primary);background:var(--bg-surface)}.secondary-button:hover:not(:disabled){background:var(--bg-hover)}.security-note{margin:1.25rem 0 0;color:var(--text-muted);font-size:.76rem;line-height:1.55}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:2rem;background:var(--bg-app)}.status-card{width:min(520px,100%);padding:2rem;text-align:center}.status-card h1{margin:.75rem 0 0;color:var(--text-primary);font-size:clamp(2rem,5vw,3.2rem);font-weight:650;letter-spacing:-.04em}.status-card .supporting-copy{margin-inline:auto}.status-card .primary-button{margin-top:1.5rem}.workspace-shell{min-height:100vh;padding:clamp(1.5rem,4vw,4rem);color:var(--text-primary);background:var(--bg-app)}.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-subtle)}.workspace-subtitle{margin:.3rem 0 0;color:var(--text-muted);font-size:.86rem}.workspace-message{margin:1rem 0 0;padding:.8rem 0;border-bottom:1px solid var(--border-subtle)}.workspace-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:clamp(2rem,6vw,6rem);align-items:end;padding:clamp(3rem,8vw,6rem) 0}.workspace-hero h1{margin:.9rem 0 0;max-width:14ch;color:var(--text-primary);font-size:clamp(2.8rem,6vw,5.5rem);font-weight:650;line-height:.96;letter-spacing:-.055em}.session-card{margin:0;padding:1.4rem;border:1px solid var(--border-subtle);border-radius:12px;background:var(--bg-surface)}.session-card div+div{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.session-card dt{color:var(--text-muted);font-size:.72rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.session-card dd{margin:.35rem 0 0;overflow-wrap:anywhere;color:var(--text-primary);font-weight:600}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.module-card{min-height:170px;padding:1.4rem;border:1px solid var(--border-subtle);border-radius:12px;background:var(--bg-surface)}.module-card:first-child{border-color:var(--accent-kota)}.module-index{color:var(--text-muted);font-size:.72rem;font-weight:750;letter-spacing:.14em}.module-card h2{margin:2.2rem 0 0;color:var(--text-primary);font-size:1.45rem;font-weight:650}.module-card p{margin:.4rem 0 0;color:var(--text-secondary)}@media(max-width:900px){.login-layout{grid-template-columns:1fr}.login-brand-panel{min-height:auto;padding-bottom:3rem;border-right:0;border-bottom:1px solid var(--border-subtle)}.brand-message{padding:3.5rem 0 2rem}.brand-message h1{font-size:clamp(2.5rem,11vw,4.8rem)}.login-form-panel{min-height:auto;padding-block:4rem}.workspace-hero,.module-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
