:root{--night:#02060b;--navy:#06111d;--panel:#071421;--gold:#d6a14b;--gold2:#f0c56f;--cream:#f5ead8;--soft:#cfc3ad;--line:rgba(214,161,75,.34);--green:#84c59a}
*{box-sizing:border-box}html{background:var(--night);color-scheme:dark}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -10%,rgba(42,78,111,.3),transparent 36%),linear-gradient(180deg,#03101d,#02060b 58%);color:var(--cream);font-family:Arial,Helvetica,sans-serif}button,input,textarea,select{font:inherit}a{color:inherit}[hidden]{display:none!important}
.site-head{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px clamp(14px,3vw,34px);border-bottom:1px solid var(--line);background:rgba(2,6,11,.94);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--gold);border-radius:50%;color:var(--gold2);font:900 .72rem/1 Georgia,serif;letter-spacing:.08em;box-shadow:inset 0 0 0 5px rgba(214,161,75,.08)}.brand strong{display:block;color:var(--gold2);font-family:Georgia,"Times New Roman",serif}.brand small{display:block;color:var(--soft);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.nav a,.nav button{min-height:40px;padding:9px 13px;border:1px solid rgba(214,161,75,.28);border-radius:999px;background:#071421;color:var(--cream);text-decoration:none;font-weight:800;cursor:pointer}.nav a:hover,.nav button:hover,.nav a:focus-visible,.nav button:focus-visible{border-color:var(--gold2);outline:none}
.hero{padding:clamp(42px,8vw,88px) 18px 26px;text-align:center}.eyebrow{margin:0;color:var(--gold2);font-size:.74rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.hero h1{margin:12px auto 10px;max-width:1000px;color:var(--gold2);font:700 clamp(2.4rem,7vw,5.5rem)/.96 Georgia,"Times New Roman",serif}.hero p{max-width:760px;margin:0 auto;color:#e9dfcf;font:600 clamp(1rem,2vw,1.28rem)/1.55 Georgia,"Times New Roman",serif}
.campus-shell{width:min(1220px,calc(100% - 24px));margin:0 auto 70px}.card{border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(9,28,43,.92),rgba(4,15,25,.96));box-shadow:0 24px 66px rgba(0,0,0,.36)}.gate{padding:clamp(24px,5vw,46px);text-align:center}.gate h2,.section-head h2,.panel h2{margin:.25rem 0 .5rem;color:var(--gold2);font:700 clamp(1.55rem,4vw,2.5rem)/1.05 Georgia,"Times New Roman",serif}.gate p{max-width:720px;margin:10px auto;color:#ddd2c2;line-height:1.6}.actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:20px}.btn{min-height:46px;padding:11px 17px;border:1px solid var(--gold2);border-radius:999px;background:#071421;color:var(--gold2);font-weight:900;text-decoration:none;cursor:pointer}.btn.primary{color:#101010;background:linear-gradient(180deg,#f3d994,#cf9630)}.btn.ghost{border-color:rgba(255,255,255,.18);color:var(--cream)}.btn:disabled{opacity:.5;cursor:not-allowed}.status{margin:14px 0 0;color:var(--soft);font-size:.88rem}
.campus{display:grid;gap:18px}.identity{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:16px;padding:20px}.identity h2{margin:0;color:var(--gold2);font:700 clamp(1.5rem,3vw,2.3rem)/1.05 Georgia,serif}.identity p{margin:8px 0 0;color:var(--soft)}.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.badge{padding:7px 10px;border:1px solid rgba(214,161,75,.28);border-radius:999px;background:rgba(214,161,75,.08);color:var(--gold2);font-size:.74rem;font-weight:900;letter-spacing:.05em}.progress-card{padding:15px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(0,0,0,.18)}.progress-row{display:flex;justify-content:space-between;gap:10px;margin-bottom:9px;font-size:.83rem;font-weight:900}.progress-track{height:12px;overflow:hidden;border-radius:999px;background:#02080d;border:1px solid rgba(255,255,255,.08)}.progress-fill{height:100%;width:0;background:linear-gradient(90deg,#b17a29,#f0c56f);transition:width .3s ease}
.section{padding:clamp(20px,4vw,34px)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.section-head p{margin:0;color:var(--soft);max-width:650px;line-height:1.5}.grid,.library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.course{display:flex;flex-direction:column;min-height:255px;padding:19px;border:1px solid rgba(214,161,75,.22);border-radius:16px;background:rgba(2,9,15,.62)}.course.is-current{border-color:var(--gold2);box-shadow:inset 0 0 0 1px rgba(240,197,111,.16)}.course.is-complete{border-color:rgba(132,197,154,.5)}.course-code{color:var(--gold2);font-size:.73rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.course h3{margin:9px 0;color:var(--cream);font:700 1.35rem/1.12 Georgia,serif}.course p{margin:0;color:var(--soft);font-size:.86rem;line-height:1.5}.course-foot{margin-top:auto;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:10px}.course-state{font-size:.75rem;font-weight:900;color:var(--soft)}.course.is-complete .course-state{color:var(--green)}
.book{padding:18px;border:1px solid rgba(214,161,75,.2);border-radius:16px;background:linear-gradient(145deg,rgba(29,21,10,.55),rgba(4,13,21,.86))}.book .book-type{color:var(--gold2);font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.book h3{min-height:54px;margin:8px 0;color:var(--cream);font:700 1.13rem/1.25 Georgia,serif}.book p{color:var(--soft);font-size:.82rem}.two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.panel{padding:20px}.grey-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.grey-head select,.assessment-select{min-height:42px;border:1px solid var(--line);border-radius:10px;background:#020a12;color:var(--cream);padding:8px 10px}.chat-log{height:340px;overflow:auto;padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#02080d}.msg{max-width:88%;margin:0 0 10px;padding:10px 12px;border-radius:14px;line-height:1.5;white-space:pre-wrap}.msg.user{margin-left:auto;background:#132a3c}.msg.grey{background:rgba(214,161,75,.1);border:1px solid rgba(214,161,75,.22)}.msg strong{display:block;margin-bottom:4px;color:var(--gold2);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}.chat-form textarea,.assessment-box textarea{width:100%;min-height:74px;resize:vertical;border:1px solid var(--line);border-radius:12px;background:#020a12;color:var(--cream);padding:11px}.assessment-box{padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#02080d}.assessment-box h3{margin:0 0 8px;color:var(--gold2);font-family:Georgia,serif}.assessment-meta{color:var(--soft);font-size:.78rem}.assessment-result{padding:12px;border:1px solid rgba(132,197,154,.35);border-radius:12px;background:rgba(132,197,154,.08)}
.reader{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:14px;background:rgba(0,0,0,.78);backdrop-filter:blur(10px)}.reader-card{width:min(900px,100%);max-height:92vh;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:20px;background:#06111d;box-shadow:0 30px 90px rgba(0,0,0,.65)}.reader-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line)}.reader-head h2{margin:0;color:var(--gold2);font:700 1.25rem/1.2 Georgia,serif}.reader-head button{border:0;background:transparent;color:var(--cream);font-size:1.5rem;cursor:pointer}.reader-body{overflow:auto;padding:22px;white-space:pre-wrap;font:500 1rem/1.72 Georgia,"Times New Roman",serif;color:#eee3d2}.reader-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;border-top:1px solid var(--line)}.reader-foot span{color:var(--soft);font-size:.82rem}.small-note{color:var(--soft);font-size:.77rem;line-height:1.45}.footer{padding:28px 18px;text-align:center;color:#81786c;font-size:.75rem}
@media(max-width:900px){.grid,.library{grid-template-columns:1fr 1fr}.two-col,.identity{grid-template-columns:1fr}}@media(max-width:620px){.site-head{align-items:flex-start}.nav{gap:6px}.nav a,.nav button{font-size:.72rem;padding:8px 10px}.brand small{display:none}.grid,.library{grid-template-columns:1fr}.campus-shell{width:min(100% - 14px,1220px)}.hero{padding-top:32px}.section,.panel,.identity{padding:16px}.section-head{align-items:flex-start;flex-direction:column}.chat-form{grid-template-columns:1fr}.chat-form .btn{width:100%}.reader-body{padding:17px}.course{min-height:220px}}

.frontier{padding:32px}.frontier h2{color:var(--gold2);font-family:Georgia,serif}.frontier-stage textarea{width:100%;min-height:150px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#020a12;color:var(--cream)}
