/* NIXUS Course - Rust Mastery - Orange accent theme */
*{margin:0;padding:0;box-sizing:border-box}
body{background:#08090c;color:#e2e8f0;font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;line-height:1.7;min-height:100vh}

/* Top nav */
.topbar{background:#0d0f14;border-bottom:1px solid #1e2330;padding:12px 20px;display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:100}
.topbar a{color:#f97316;text-decoration:none;font-size:14px;font-weight:600}
.topbar .back{display:flex;align-items:center;gap:6px}
.topbar .back:hover{color:#fb923c}
.topbar .sep{color:#2a3040}
.topbar .module{color:#64748b;font-size:13px}
.topbar .lesson-title{color:#e2e8f0;font-size:14px;font-weight:600;margin-left:auto}

/* Hero */
.lesson-hero{background:linear-gradient(135deg,#1a0f00 0%,#0d0f14 50%,#1a0800 100%);border-bottom:1px solid #f97316;color:#fff;padding:60px 20px 50px;text-align:center;position:relative;overflow:hidden}
.lesson-hero::before{content:'';position:absolute;top:-100px;left:50%;transform:translateX(-50%);width:600px;height:300px;background:radial-gradient(ellipse,rgba(249,115,22,0.15) 0%,transparent 70%);pointer-events:none}
.lesson-hero .tag{display:inline-block;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#f97316;border:1px solid rgba(249,115,22,0.4);padding:4px 14px;border-radius:20px;margin-bottom:16px;background:rgba(249,115,22,0.08)}
.lesson-hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(28px,5vw,42px);font-weight:700;margin-bottom:12px;line-height:1.2;color:#fff}
.lesson-hero .meta{font-size:14px;color:#94a3b8;display:flex;justify-content:center;gap:20px;flex-wrap:wrap}
.lesson-hero .meta span{display:flex;align-items:center;gap:6px}

/* Content container */
.content{max-width:800px;margin:0 auto;padding:40px 20px 80px}

/* Section cards */
.section{background:#0d0f14;border-radius:12px;padding:32px;margin-bottom:24px;border:1px solid #1e2330}
.section h2{font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:700;color:#f97316;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #1e2330}
.section h3{font-size:17px;font-weight:600;color:#fb923c;margin:20px 0 10px}
.section p{margin-bottom:14px;color:#94a3b8;font-size:15px}
.section ul,.section ol{margin:12px 0 16px 24px}
.section li{margin-bottom:8px;color:#94a3b8;font-size:15px}
.section li strong{color:#e2e8f0}

/* Code blocks */
.code-block{background:#0a0c10;border-radius:10px;padding:20px;margin:16px 0;overflow-x:auto;border:1px solid #1e2330;border-left:3px solid #f97316}
.code-block pre{margin:0}
.code-block code{font-family:'DM Mono',monospace;font-size:13px;color:#e2e8f0;line-height:1.7}
pre code{font-family:'DM Mono',monospace;font-size:13px;line-height:1.7}
.comment{color:#4a5568}
.keyword{color:#f97316}
.string{color:#86efac}
.number{color:#93c5fd}
.type{color:#c084fc}

/* Highlight.js overrides for dark orange */
.hljs{background:#0a0c10;color:#e2e8f0}
.hljs-keyword,.hljs-built_in{color:#f97316}
.hljs-string{color:#86efac}
.hljs-number{color:#93c5fd}
.hljs-type,.hljs-class{color:#c084fc}
.hljs-comment{color:#4a5568;font-style:italic}
.hljs-function,.hljs-title{color:#60a5fa}
.hljs-variable,.hljs-attr{color:#e2e8f0}
.hljs-meta{color:#f97316}

/* Info boxes */
.info-box{background:#0d1117;border-radius:10px;padding:20px 24px;margin:20px 0;border-left:4px solid #f97316}
.info-box.tip{border-left-color:#22c55e;background:#0a1a0e}
.info-box.warn{border-left-color:#eab308;background:#131100}
.info-box.danger{border-left-color:#ef4444;background:#130a0a}
.info-box .label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#f97316;margin-bottom:6px}
.info-box.tip .label{color:#22c55e}
.info-box.warn .label{color:#eab308}
.info-box.danger .label{color:#ef4444}
.info-box p{margin:0;font-size:14px;color:#94a3b8}

/* Compare grid */
.compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:20px 0}
.compare-card{background:#0a0c10;border-radius:10px;padding:20px;border-left:4px solid #f97316;border:1px solid #1e2330}
.compare-card.green{border-left:4px solid #22c55e}
.compare-card.blue{border-left:4px solid #3b82f6}
.compare-card h4{font-size:15px;font-weight:700;color:#e2e8f0;margin-bottom:8px}
.compare-card p{font-size:13px;color:#64748b;margin:0}

/* Visual table */
.vis-table{width:100%;border-collapse:separate;border-spacing:0;margin:20px 0;border-radius:10px;overflow:hidden;border:1px solid #1e2330}
.vis-table th{background:#f97316;color:#08090c;padding:12px 16px;text-align:left;font-size:13px;font-weight:700}
.vis-table td{padding:10px 16px;font-size:14px;color:#94a3b8;border-bottom:1px solid #1e2330;background:#0d0f14}
.vis-table tr:last-child td{border-bottom:none}
.vis-table tr:nth-child(even) td{background:#0a0c10}
.vis-table .check{color:#22c55e;font-weight:700}
.vis-table .cross{color:#ef4444}

/* Takeaway */
.takeaway{background:linear-gradient(135deg,#1a0800,#1a0f00);border-radius:12px;padding:28px;margin:24px 0;border:1px solid #f97316;border-left:4px solid #f97316}
.takeaway h3{font-family:'Space Grotesk',sans-serif;font-size:20px;margin-bottom:12px;color:#f97316}
.takeaway ul{margin:0 0 0 20px}
.takeaway li{color:#cbd5e1;margin-bottom:6px;font-size:15px}

/* Exercise block */
.exercise{background:#0a1a0e;border-radius:12px;padding:24px;margin:24px 0;border:1px solid #166534}
.exercise h3{color:#22c55e;font-family:'Space Grotesk',sans-serif;font-size:18px;margin-bottom:12px}
.exercise p{color:#86efac;font-size:14px;margin-bottom:10px}
.exercise ol{margin-left:20px;color:#86efac;font-size:14px}
.exercise li{margin-bottom:8px}

/* Bottom nav */
.lesson-nav{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-top:1px solid #1e2330;margin-top:40px}
.lesson-nav a{display:flex;align-items:center;gap:8px;color:#f97316;text-decoration:none;font-weight:600;font-size:14px;padding:10px 20px;border-radius:8px;border:1px solid #2a3040;transition:all 0.2s;background:#0d0f14}
.lesson-nav a:hover{background:#1a0800;border-color:#f97316}
.lesson-nav .next{background:#f97316;color:#08090c;border-color:#f97316}
.lesson-nav .next:hover{background:#ea6c0a}
.lesson-nav .disabled{opacity:0.3;pointer-events:none}

/* Progress badge */
.progress-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(249,115,22,0.12);border:1px solid rgba(249,115,22,0.3);border-radius:20px;padding:4px 12px;font-size:12px;color:#f97316;font-weight:600}

/* Responsive */
@media(max-width:600px){
    .section{padding:20px 16px}
    .compare-grid{grid-template-columns:1fr}
    .lesson-hero{padding:40px 16px 30px}
    .lesson-nav{flex-direction:column;gap:12px}
    .lesson-nav a{width:100%;justify-content:center}
}

@media print{
    .topbar,.lesson-nav{display:none!important}
    body{background:#fff;color:#000}
    .section{box-shadow:none;border:1px solid #ddd}
}
