@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_786c1081-module__J60SBq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_786c1081-module__J60SBq__variable{--font-sans:"Inter", "Inter Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1e219c03c996efbd-s.00ewlnc1znsu7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0bnyh_2yo1emg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0glcd8n2pdab0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_b202e7d9-module__YSVETG__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_b202e7d9-module__YSVETG__variable{--font-display:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.3bz3aq452sydg.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.2sb9jzhmrh7ny.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.343obqi851wr5.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.40kcwrf1wub16.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.200l3jur7oygh.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.269kn9uafm0ti.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_8dec50e9-module__V6cRDq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_8dec50e9-module__V6cRDq__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/dcc06fc59088004f-s.2h-zgd4kn5-yf.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/14a4f422adc8017e-s.14w0l550ci3yl.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/294dd5272e5dc576-s.35rs2ho86mq85.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/c0f3072741f3158c-s.2g9n9md5msvg2.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/32ed8f926ffc9cc2-s.26v2fg3gytbt5.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/b6a9aad84d41ea38-s.167l7r8dhiyx3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/30bdb5bb2b173ee1-s.p.0kfjr62lqeiro.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata Fallback;src:local(Times New Roman);ascent-override:99.62%;descent-override:26.07%;line-gap-override:0.0%;size-adjust:118.15%}.literata_ef0905d2-module__bLVaOG__className{font-family:Literata,Literata Fallback;font-style:normal}.literata_ef0905d2-module__bLVaOG__variable{--font-reading:"Literata", "Literata Fallback"}
:root{--ink:#18202a;--ink-soft:#596370;--paper:#f5f6f7;--surface:#fff;--line:#ccd2d8;--line-dark:#9ba4ae;--cedar:#0f5b4b;--cedar-bright:#157761;--accent-ink:var(--cedar);--accent-fill:var(--cedar);--accent-fill-hover:var(--cedar-bright);--on-accent:#fff;--amber:#f1bd5c;--pilot:#c34d38;--shadow:0 24px 60px #1e273017}*{box-sizing:border-box}html{background:var(--paper);min-height:100%}body{min-height:100vh;color:var(--ink);background:linear-gradient(90deg, #202a3409 1px, transparent 1px) 0 0 / 48px 48px, var(--paper);font-family:var(--font-sans), Arial, sans-serif;-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}.landing-shell,.dashboard-shell{flex-direction:column;min-height:100vh;display:flex}.site-header,.dashboard-header{border-bottom:1px solid var(--line);background:#f5f6f7f0;justify-content:space-between;align-items:center;min-height:80px;padding:0 clamp(24px,6vw,92px);display:flex}.wordmark{letter-spacing:.08em;align-items:center;gap:11px;font-weight:800;display:inline-flex}.wordmark i{color:var(--accent-ink);font-family:var(--font-display), serif;font-size:1.45rem;font-weight:500}.pilot-badge{border:1px solid var(--pilot);color:var(--pilot);font:700 .68rem/1 var(--font-mono), monospace;letter-spacing:.18em;padding:8px 10px}.hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);align-items:center;gap:clamp(44px,8vw,110px);width:min(1240px,100% - 48px);margin:auto;padding:80px 0;display:grid}.eyebrow,.panel-kicker,.section-kicker{color:var(--accent-ink);font:700 .72rem/1.2 var(--font-mono), monospace;letter-spacing:.16em;margin:0 0 18px}.hero-copy h1{max-width:760px;font:650 clamp(3.2rem, 6.3vw, 6.6rem)/.96 var(--font-display), Georgia, serif;letter-spacing:-.052em;margin:0}.hero-deck{max-width:670px;color:var(--ink-soft);font:450 clamp(1.05rem, 1.5vw, 1.3rem)/1.65 var(--font-reading), Georgia, serif;margin:34px 0 0}.primary-action{min-width:290px;color:var(--on-accent);background:var(--accent-fill);border:1px solid var(--accent-fill);justify-content:space-between;align-items:center;gap:44px;margin-top:34px;padding:17px 19px;font-weight:700;transition:background .16s,transform .16s;display:inline-flex}.primary-action:hover{background:var(--accent-fill-hover);transform:translateY(-1px)}.primary-action-disabled{color:#6b6e70;cursor:not-allowed;background:#e7e8e5;border-color:#c9cbc7}.primary-action-disabled:hover{background:#e7e8e5;transform:none}.primary-action:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--amber);outline-offset:3px}.access-note{max-width:590px;color:var(--ink-soft);font-size:.82rem;line-height:1.6}.status-callout{border-left:3px solid var(--pilot);color:#7c3327;background:#fff5f1;max-width:660px;padding:14px 16px}.success-callout{border-left:3px solid var(--accent-ink);background:var(--accent-tint,#edf8f4);color:var(--accent-ink);margin:24px 0 0;padding:14px 16px}.credential-form{gap:10px;display:grid}.landing-credentials{max-width:480px;margin-top:30px}.credential-form label{color:var(--ink-soft);font:700 .7rem/1.2 var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase}.credential-form input{border:1px solid var(--line-dark);background:var(--surface);width:100%;min-height:50px;color:var(--ink);border-radius:0;padding:12px 14px}.credential-form input:focus{outline:3px solid var(--amber);outline-offset:2px;border-color:var(--ink)}.credential-form .primary-action{cursor:pointer;width:100%;margin-top:8px}.admin-sign-in{color:var(--ink-soft);text-underline-offset:4px;margin-top:18px;font-size:.82rem;font-weight:650;text-decoration:underline;display:inline-block}.form-help{color:var(--ink-soft);margin:2px 0 0;font-size:.78rem;line-height:1.5}.pilot-panel{border:1px solid var(--line-dark);background:var(--surface);box-shadow:var(--shadow);padding:34px}.pilot-panel ol{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.pilot-panel li{border-bottom:1px solid var(--line);grid-template-columns:46px 1fr;gap:14px;padding:18px 0;display:grid}.pilot-panel li>span{color:var(--line-dark);font:500 .7rem/1.5 var(--font-mono), monospace}.pilot-panel li div{font:650 1.08rem/1.25 var(--font-display), serif}.pilot-panel li small{color:var(--ink-soft);font:600 .68rem/1.3 var(--font-mono), monospace;letter-spacing:.06em;margin-top:5px;display:block}.panel-footnote{color:var(--ink-soft);margin:24px 0 0;font-size:.76rem;line-height:1.55}.landing-footer{border-top:1px solid var(--line);color:var(--ink-soft);font:600 .64rem/1.2 var(--font-mono), monospace;letter-spacing:.12em;justify-content:space-between;gap:20px;padding:19px clamp(24px,6vw,92px);display:flex}.denied-card{border:1px solid var(--line-dark);width:min(720px,100% - 40px);box-shadow:var(--shadow);background:#fff;margin:auto;padding:clamp(32px,6vw,68px)}.denied-card h1{font:650 clamp(2.5rem, 5vw, 4.6rem)/1 var(--font-display), serif;letter-spacing:-.045em;margin:0}.denied-card p{color:var(--ink-soft);font:450 1.05rem/1.7 var(--font-reading), serif}.account-card{border:1px solid var(--line-dark);width:min(680px,100% - 40px);box-shadow:var(--shadow);background:#fff;margin:auto;padding:clamp(32px,6vw,68px)}.account-card h1{font:650 clamp(2.5rem, 5vw, 4.6rem)/1 var(--font-display), serif;letter-spacing:-.045em;margin:0}.account-card>p{color:var(--ink-soft);font:450 1.05rem/1.7 var(--font-reading), serif}.account-card .credential-form{margin-top:28px}.dashboard-header{z-index:20;position:sticky;top:0}.dashboard-header-actions{align-items:center;gap:18px;display:flex}.text-button{cursor:pointer;color:var(--ink-soft);background:0 0;border:0;font-weight:650}.text-link{color:var(--ink-soft);font-weight:650}.operator-badge{color:var(--ink);font:700 .66rem/1 var(--font-mono), monospace;letter-spacing:.13em}.dashboard-main{width:min(1220px,100% - 48px);margin:0 auto;padding:64px 0 100px}.dashboard-intro{border-bottom:1px solid var(--line-dark);justify-content:space-between;align-items:end;gap:40px;padding-bottom:36px;display:flex}.dashboard-intro h1{font:650 clamp(2.8rem, 5vw, 5.2rem)/1 var(--font-display), serif;letter-spacing:-.045em;margin:0}.dashboard-intro p:last-child{max-width:480px;color:var(--ink-soft);line-height:1.6}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:34px;display:grid}.course-card{border:1px solid var(--course-line);background:var(--course-tint);grid-template-columns:96px 1fr;min-height:230px;transition:border .16s,transform .16s;display:grid}.course-card-link:hover{border-color:var(--course-primary);transform:translateY(-2px)}.course-index{background:var(--course-primary);color:var(--course-on);font:600 .74rem/1 var(--font-mono), monospace;align-items:end;padding:18px;display:flex}.course-body{flex-direction:column;padding:28px;display:flex}.course-meta{color:var(--ink-soft);font:650 .66rem/1.2 var(--font-mono), monospace;letter-spacing:.08em;justify-content:space-between;display:flex}.course-meta span:first-child{color:var(--course-text)}.course-body h2{font:620 2.05rem/1.05 var(--font-display), serif;letter-spacing:-.025em;margin:22px 0 6px}.course-code{color:var(--ink-soft);margin:0}.progress-row{margin-top:auto}.progress-row div{background:#e4e7ea;height:3px;margin:14px 0 9px}.progress-row div span{background:var(--course-primary);height:100%;display:block}.progress-row p{color:var(--ink-soft);justify-content:space-between;margin:0;font-size:.75rem;display:flex}.course-status-row{border-top:1px solid var(--course-line);color:var(--ink-soft);justify-content:space-between;gap:18px;margin-top:auto;padding-top:16px;font-size:.75rem;display:flex}.course-status-row strong{color:var(--pilot);font-weight:700}.empty-state{border:1px dashed var(--line-dark);background:#ffffffb3;margin-top:34px;padding:38px}.empty-state h2{font:620 1.8rem/1.2 var(--font-display), serif;margin:0 0 10px}.empty-state p{color:var(--ink-soft);margin:0;line-height:1.6}.registry-table-wrap{border:1px solid var(--line-dark);background:#fff;margin-top:34px;overflow-x:auto}.registry-table{border-collapse:collapse;text-align:left;width:100%;min-width:840px}.registry-table th{color:var(--ink-soft);border-bottom:1px solid var(--line-dark);font:700 .66rem/1.2 var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;background:#eef0f2;padding:14px 18px}.registry-table td{border-bottom:1px solid var(--line);padding:17px 18px;font-size:.86rem}.registry-table tbody tr:last-child td{border-bottom:0}.registry-table td small{color:var(--ink-soft);margin-top:4px;display:block}.gate-status{border:1px solid var(--line-dark);font:700 .64rem/1 var(--font-mono), monospace;text-transform:uppercase;padding:5px 7px;display:inline-block}.gate-blocked{color:var(--pilot);border-color:var(--pilot)}.gate-approved{color:var(--accent-ink);border-color:var(--accent-ink)}.audit-section{margin-top:54px}.audit-section>p:last-child{color:var(--ink-soft)}.audit-section ol{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.audit-section li{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr auto;gap:16px;padding:13px 0;font-size:.78rem;display:grid}.audit-section code{color:var(--ink-soft)}.player-shell{background:#0e0e10;height:100vh;overflow:hidden}.player-portal-bar{color:#e8e8ea;background:#17171a;border-bottom:1px solid #2a2a2e;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;height:44px;padding:0 16px;font-size:.78rem;display:grid}.player-portal-bar>:last-child{justify-self:end}.back-link{color:#b9b9bf;font-weight:650}.player-frame{background:#f4f5f6;border:0;width:100%;height:calc(100vh - 44px);display:block}@media (max-width:860px){.hero-grid{grid-template-columns:1fr;padding:54px 0}.hero-copy h1{font-size:clamp(3rem,13vw,5.4rem)}.pilot-panel{max-width:620px}.landing-footer{flex-wrap:wrap}.dashboard-intro{display:block}.course-grid{grid-template-columns:1fr}}@media (max-width:520px){.site-header,.dashboard-header{min-height:68px;padding:0 18px}.hero-grid,.dashboard-main{width:min(100% - 32px,1220px)}.landing-footer{padding-inline:18px}.course-card{grid-template-columns:64px 1fr}.course-body{padding:22px}.course-status-row{flex-direction:column;align-items:flex-start;gap:6px}.dashboard-header-actions{gap:10px}.dashboard-header .text-link{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.stat-row{border:1px solid var(--line-dark);background:var(--line-dark);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;margin-top:34px;display:grid}.stat-row>div{background:#fff;padding:18px 20px}.stat-row strong{font:650 2rem/1 var(--font-display), serif;letter-spacing:-.02em;display:block}.stat-row span{color:var(--ink-soft);margin-top:8px;font-size:.8rem;display:block}.sort-link{color:inherit;text-decoration:none}.sort-link.sort-active{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.student-link{color:var(--ink);text-decoration:none}.student-link:hover strong{text-underline-offset:3px;text-decoration:underline}
