:root{--ink:#eaf1ff;--muted:#9baac4;--base:#07101d;--panel:#0c1728;--panel2:#111f33;--line:#263752;--mint:#5ee6a8;--mint2:#9af7cc;--amber:#ffcb6b;--danger:#ff8f7a;--shadow:0 24px 70px #02071180;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark}*{box-sizing:border-box}html{background:var(--base);scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% -20%,#173b50 0,transparent 34rem),var(--base);color:var(--ink);font-size:16px;line-height:1.65}button,input{font:inherit}a{color:inherit}code,kbd{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}code{color:var(--mint2);font-size:.92em}kbd{background:#17263c;border:1px solid #3c4e69;border-bottom-width:2px;border-radius:5px;padding:.12rem .4rem}.topbar{height:74px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 2rem;background:#07101de8;backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-weight:750;letter-spacing:-.02em}.prompt-mark,.terminal-icon{display:grid;place-items:center;background:var(--mint);color:#06130d;border-radius:8px;font-family:monospace;font-weight:900}.prompt-mark{width:34px;height:34px}.top-actions{display:flex;align-items:center;gap:.8rem}.status-chip{display:flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.84rem}.status-chip>span{width:7px;height:7px;border-radius:99px;background:var(--amber)}.status-chip.safe>span{background:var(--mint);box-shadow:0 0 0 4px #5ee6a815}.button{display:inline-flex;justify-content:center;align-items:center;min-height:42px;padding:.55rem 1rem;border:1px solid var(--line);border-radius:8px;background:none;color:var(--ink);text-decoration:none;cursor:pointer;font-weight:700}.button:hover{border-color:#607492}.button.primary{background:var(--mint);border-color:var(--mint);color:#07110d}.guide-shell{height:calc(100vh - 74px);display:grid;grid-template-columns:minmax(300px,365px) minmax(0,1fr);max-width:1500px;margin:auto}.lesson-nav{border-right:1px solid var(--line);padding:2.1rem 1.5rem 2rem 2rem;overflow-y:auto}.course-label,.eyebrow{color:var(--mint);font-size:.75rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.lesson-nav h1{font-size:1.75rem;line-height:1.1;letter-spacing:-.04em;margin:.6rem 0}.lesson-nav>p{color:var(--muted);font-size:.92rem;margin:0 0 1.5rem}.progress-wrap{padding:1rem;background:#0b1728;border:1px solid var(--line);border-radius:10px;margin-bottom:1rem}.progress-wrap>div:first-child{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted)}.progress-wrap strong{color:var(--ink)}.progress-track{height:5px;background:#23334c;margin-top:.7rem;border-radius:99px;overflow:hidden}.progress-track span{display:block;height:100%;width:0;background:var(--mint);transition:width .3s}.tabs{display:grid;gap:.25rem}.tabs button{display:grid;grid-template-columns:34px 1fr;gap:.55rem;text-align:left;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);padding:.6rem;cursor:pointer}.tabs button:hover{background:#101d2e}.tabs button[aria-selected=true]{background:#142238;border-color:#2c405e;color:var(--ink)}.tabs b{font-family:monospace;font-size:.75rem;color:var(--mint);padding-top:.15rem}.tabs span{font-size:.92rem;font-weight:700;line-height:1.2}.tabs small{display:block;font-weight:450;color:var(--muted);font-size:.75rem;margin-top:.18rem}.lesson-stage{overflow-y:auto;padding:4.5rem clamp(2rem,7vw,7rem) 7rem}.lesson{max-width:860px;margin:0 auto;animation:fade .22s ease}.lesson[hidden]{display:none}.lesson h2{font-size:clamp(2.3rem,5vw,4.8rem);line-height:.96;letter-spacing:-.06em;margin:.9rem 0 1.5rem}.lesson h3{font-size:1.3rem;letter-spacing:-.025em;margin:2.4rem 0 .8rem}.lede{font-size:1.2rem;color:#c4d0e4;max-width:730px}.concept-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;margin:2rem 0}.concept-grid section{background:linear-gradient(145deg,#111f33,#0c1829);border:1px solid var(--line);padding:1.25rem;border-radius:12px}.concept-grid section>span{font:800 .72rem monospace;color:var(--mint);text-transform:uppercase}.concept-grid h3{margin:.3rem 0;font-size:1rem}.concept-grid p{margin:0;color:var(--muted);font-size:.9rem}.steps{list-style:none;padding:0;counter-reset:steps}.steps li{counter-increment:steps;display:grid;grid-template-columns:42px 1fr;gap:.9rem;padding:1rem 0;border-top:1px solid var(--line)}.steps li:before{content:counter(steps,decimal-leading-zero);font:700 .8rem monospace;color:var(--mint);padding-top:.2rem}.steps b,.steps span{grid-column:2}.steps b{line-height:1.2}.steps span{color:var(--muted);margin-top:-.6rem}.callout,.warning{border-left:3px solid var(--mint);background:#102439;padding:1rem 1.2rem;margin:1.7rem 0;border-radius:0 10px 10px 0}.warning{border-color:var(--amber);background:#2b2117}.callout p,.warning p{margin:.25rem 0 0;color:#bdc9dc}.command-list pre{position:relative;background:#050b13;border:1px solid #23334a;border-radius:12px;padding:1.4rem;overflow:auto;color:#dce8fb;line-height:1.75}.command-list code{color:inherit;font-size:.88rem}.copy{position:absolute;top:.7rem;right:.7rem;background:#14243a;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:.3rem .65rem;cursor:pointer;font-size:.75rem}.check-list{padding-left:1.3rem}.check-list li{margin:.65rem 0;padding-left:.3rem}.check-list li::marker{color:var(--mint)}.table-wrap{overflow-x:auto}.table-wrap table{width:100%;border-collapse:collapse;margin:1.5rem 0}.table-wrap th,.table-wrap td{padding:.8rem;text-align:left;border-bottom:1px solid var(--line)}.table-wrap th{font-size:.75rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.lesson-footer{border-top:1px solid var(--line);margin-top:3.5rem;padding-top:1.2rem;display:flex;justify-content:space-between;align-items:center}.lesson-footer label{color:var(--muted);cursor:pointer}.lesson-footer input{accent-color:var(--mint);width:18px;height:18px;vertical-align:-4px;margin-right:.5rem}.next-lesson,.lesson-footer>a{border:0;background:none;color:var(--mint);font-weight:750;cursor:pointer;text-decoration:none}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.auth-context{padding:3rem clamp(2rem,6vw,7rem);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 30% 75%,#174334 0,transparent 28rem),#0a1423}.auth-context h1{font-size:clamp(2.6rem,5vw,5rem);line-height:.98;letter-spacing:-.06em;max-width:800px;margin:.8rem 0 1.5rem}.auth-context p{color:#bcc9dc;font-size:1.1rem;max-width:650px}.security-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:.7rem;max-width:650px}.security-list li{background:#07101d80;border:1px solid #345345;padding:.8rem 1rem;border-radius:8px;color:#cee4da}.security-list li:before{content:'✓';color:var(--mint);font-weight:900;margin-right:.65rem}.login-card{padding:clamp(2rem,8vw,7rem);display:flex;flex-direction:column;justify-content:center;max-width:620px}.back-link{position:absolute;top:2rem;color:var(--muted);text-decoration:none}.terminal-icon{width:54px;height:54px;font-size:1.2rem}.login-card h2{font-size:2.2rem;letter-spacing:-.04em;margin:1.2rem 0 .2rem}.login-card p{color:var(--muted)}.login-card form{display:grid;gap:1rem;margin-top:1.5rem}.login-card label{font-size:.86rem;font-weight:700}.login-card input{display:block;width:100%;margin-top:.35rem;background:#0c1727;border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:.8rem}.login-card input:focus{outline:2px solid var(--mint);outline-offset:2px}.form-error{background:#3c1d1d;border:1px solid #7d3e36;color:#ffd4cc;padding:.8rem;border-radius:8px;margin-top:1rem}.fine-print{font-size:.78rem}.terminal-bar form{margin:0}.terminal-page{padding:2rem;max-width:1400px;margin:auto}.terminal-intro{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.4rem}.terminal-intro h1{font-size:2.3rem;letter-spacing:-.05em;margin:.3rem 0}.terminal-intro p{color:var(--muted);margin:0}.terminal-frame{height:calc(100vh - 230px);min-height:480px;background:#05090f;border:1px solid #35465f;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.terminal-chrome{height:38px;border-bottom:1px solid #25354a;display:flex;align-items:center;gap:7px;padding:0 12px;background:#0e1928}.terminal-chrome span{width:10px;height:10px;border-radius:99px;background:#ff6f61}.terminal-chrome span:nth-child(2){background:#ffc85a}.terminal-chrome span:nth-child(3){background:#55d895}.terminal-chrome b{margin-left:8px;font:500 .72rem monospace;color:#7f90aa}.terminal-frame iframe{border:0;width:100%;height:calc(100% - 38px);background:#000}@keyframes fade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:800px){.topbar{padding:0 1rem}.status-chip{display:none}.guide-shell{display:block;height:auto}.lesson-nav{border-right:0;border-bottom:1px solid var(--line);padding:1.4rem 1rem;overflow:visible}.tabs{display:flex;overflow-x:auto;padding-bottom:.5rem}.tabs button{min-width:165px}.lesson-stage{padding:2.5rem 1.2rem}.lesson h2{font-size:2.7rem}.concept-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-context{min-height:55vh;padding:2rem}.auth-context .brand{margin-bottom:5rem}.login-card{min-height:70vh;padding:5rem 2rem 2rem}.security-list{grid-template-columns:1fr}.terminal-intro{align-items:start;flex-direction:column}.terminal-frame{height:70vh}.lesson-footer{align-items:flex-start;gap:1rem;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
