:root{
  --bg:#f9f7f4;--bg-card:#ffffff;--text:#1a1a2e;--muted:#6b7280;
  --accent:#e85d26;--accent-h:#d14e1a;--accent-light:#fef3ee;
  --success:#16a34a;--warning:#f59e0b;--danger:#dc2626;--info:#0284c7;
  --border:#e5e1dc;--code-bg:#f3f1ed;--sidebar-bg:#ffffff;
  --shadow:0 4px 24px rgba(0,0,0,0.06);--glow:0 0 24px rgba(232,93,38,0.15);
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.7}
h1,h2,h3,h4,h5{font-family:'Space Grotesk',sans-serif;line-height:1.2}
code,pre,.mono{font-family:'JetBrains Mono',monospace}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--muted)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}

/* Loading Animation */
#loader{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .8s cubic-bezier(.77,0,.18,1),opacity .6s ease}
#loader.hide{transform:translateY(-100%);opacity:0;pointer-events:none}
#loader .logo-text{font-family:'Space Grotesk',sans-serif;font-size:4rem;font-weight:700;color:var(--accent);letter-spacing:12px;opacity:0;transform:scale(.5);animation:logoIn .8s .3s forwards}
#loader .sub-text{font-size:1.1rem;color:var(--muted);letter-spacing:4px;text-transform:uppercase;opacity:0;animation:fadeUp .6s .9s forwards}
#loader .line{width:60px;height:3px;background:var(--accent);border-radius:2px;margin-top:24px;transform:scaleX(0);animation:lineGrow .5s 1.2s forwards}
@keyframes logoIn{to{opacity:1;transform:scale(1)}}
@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}
@keyframes lineGrow{to{transform:scaleX(1)}}

/* Top Bar */
#topbar{position:fixed;top:0;left:0;right:0;z-index:100;height:60px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 20px;gap:16px}
#topbar .brand{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.25rem;color:var(--accent);letter-spacing:2px;white-space:nowrap}
#topbar .brand-sub{font-size:.7rem;color:var(--muted);letter-spacing:1px;display:block;margin-top:-2px}
#search-box{flex:1;max-width:400px;position:relative}
#search-box input{width:100%;padding:8px 12px 8px 36px;border:1px solid var(--border);border-radius:8px;background:var(--bg);font-size:.875rem;transition:.2s}
#search-box input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(232,93,38,.1)}
#search-box i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:.8rem}
#search-results{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;margin-top:4px;max-height:300px;overflow-y:auto;display:none;box-shadow:var(--shadow);z-index:10}
#search-results.active{display:block}
.sr-item{padding:10px 14px;cursor:pointer;font-size:.85rem;border-bottom:1px solid var(--border);transition:.15s}
.sr-item:hover{background:var(--accent-light)}
.sr-item:last-child{border-bottom:none}
.sr-item mark{background:rgba(232,93,38,.2);color:var(--accent);border-radius:2px;padding:0 2px}
#progress-bar-wrap{width:120px;height:6px;background:var(--border);border-radius:3px;overflow:hidden}
#progress-bar-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s;width:0}
#progress-pct{font-size:.75rem;color:var(--muted);white-space:nowrap}
#menu-btn{display:none;background:none;border:none;font-size:1.2rem;color:var(--text);cursor:pointer;padding:4px}

/* Sidebar */
#sidebar{position:fixed;top:60px;left:0;bottom:0;width:290px;background:var(--sidebar-bg);border-right:1px solid var(--border);overflow-y:auto;z-index:90;transition:transform .3s ease;padding:12px 0}
#sidebar.closed{transform:translateX(-100%)}
#sidebar-overlay{display:none;position:fixed;inset:0;z-index:85;background:rgba(0,0,0,.3)}
#sidebar-overlay.active{display:block}
.nav-unit{border-bottom:1px solid var(--border)}
.nav-unit-btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px 16px;background:none;border:none;font-size:.85rem;font-weight:600;color:var(--text);cursor:pointer;text-align:left;transition:.15s}
.nav-unit-btn:hover{background:var(--accent-light)}
.nav-unit-btn .arrow{margin-left:auto;transition:transform .2s;font-size:.7rem;color:var(--muted)}
.nav-unit-btn.open .arrow{transform:rotate(90deg)}
.nav-unit-btn .u-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:var(--accent);color:#fff;font-size:.7rem;font-weight:700;flex-shrink:0}
.nav-topics{display:none;padding:0 0 8px 0}
.nav-topics.open{display:block}
.nav-topic-btn{width:100%;display:flex;align-items:center;gap:8px;padding:7px 16px 7px 48px;background:none;border:none;font-size:.8rem;color:var(--muted);cursor:pointer;text-align:left;transition:.15s}
.nav-topic-btn:hover{color:var(--text);background:rgba(0,0,0,.02)}
.nav-topic-btn.active{color:var(--accent);font-weight:600;background:var(--accent-light)}
.nav-topic-btn .dot{width:5px;height:5px;border-radius:50%;background:var(--border);flex-shrink:0;transition:.2s}
.nav-topic-btn.active .dot{background:var(--accent);box-shadow:0 0 6px var(--accent)}
.nav-topic-btn .done-icon{margin-left:auto;color:var(--success);font-size:.7rem;display:none}
.nav-topic-btn.completed .done-icon{display:block}
.quick-links{padding:12px 16px;border-top:1px solid var(--border)}
.quick-links a{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:.8rem;color:var(--muted);text-decoration:none;transition:.15s}
.quick-links a:hover{color:var(--accent)}

/* Main Content */
#main{margin-left:290px;padding-top:60px;min-height:100vh;transition:margin .3s}
#main.full{margin-left:0}

/* Hero */
.hero{position:relative;padding:80px 40px 60px;overflow:hidden;background:linear-gradient(135deg,#fef3ee 0%,#f9f7f4 40%,#f0fdf4 100%)}
.hero::before{content:'';position:absolute;top:-50%;right:-20%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(232,93,38,.08),transparent 70%);pointer-events:none}
.hero::after{content:'';position:absolute;bottom:-30%;left:-10%;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(22,163,74,.06),transparent 70%);pointer-events:none}
.hero-title{font-size:2.8rem;font-weight:700;color:var(--text);position:relative}
.hero-title span{color:var(--accent)}
.hero-sub{font-size:1.1rem;color:var(--muted);margin-top:8px;max-width:600px;position:relative}
.hero-stats{display:flex;gap:24px;margin-top:32px;flex-wrap:wrap;position:relative}
.hero-stat{text-align:center}
.hero-stat .val{font-family:'Space Grotesk',sans-serif;font-size:2rem;font-weight:700;color:var(--accent)}
.hero-stat .lbl{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-top:2px}
.hero-btns{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap;position:relative}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;border-radius:8px;font-size:.9rem;font-weight:600;border:none;cursor:pointer;transition:.2s;text-decoration:none}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-h);box-shadow:var(--glow);transform:translateY(-1px)}
.btn-secondary{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}
.btn-secondary:hover{background:var(--accent-light)}
.btn-ghost{background:transparent;color:var(--muted);padding:8px 16px}
.btn-ghost:hover{color:var(--text)}
.btn-sm{padding:6px 14px;font-size:.8rem}
.btn-danger{background:var(--danger);color:#fff}

/* Content Area */
.content-area{max-width:900px;margin:0 auto;padding:40px 24px 80px}
.section-reveal{opacity:0;transform:translateY(24px);transition:.5s cubic-bezier(.16,1,.3,1)}
.section-reveal.visible{opacity:1;transform:translateY(0)}

/* Unit Header */
.unit-header{margin-bottom:32px;padding-bottom:20px;border-bottom:2px solid var(--border)}
.unit-number{font-size:.75rem;text-transform:uppercase;letter-spacing:2px;color:var(--accent);font-weight:600}
.unit-title{font-size:1.8rem;font-weight:700;margin-top:4px}
.unit-weight{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:4px 12px;background:var(--accent-light);border-radius:20px;font-size:.8rem;color:var(--accent);font-weight:500}
.weight-bar{width:80px;height:6px;background:var(--border);border-radius:3px;overflow:hidden}
.weight-bar-fill{height:100%;background:var(--accent);border-radius:3px}

/* Topic Section */
.topic-section{margin-bottom:40px}
.topic-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;cursor:pointer}
.topic-header h3{font-size:1.2rem;font-weight:600;flex:1}
.topic-check{width:20px;height:20px;border:2px solid var(--border);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;flex-shrink:0;background:#fff}
.topic-check.checked{background:var(--success);border-color:var(--success);color:#fff}
.topic-content{padding-left:4px}

/* Cards */
.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px;margin-bottom:16px;box-shadow:var(--shadow);transition:.2s}
.card:hover{box-shadow:0 8px 32px rgba(0,0,0,.08)}
.def-box{border-left:4px solid var(--accent);background:var(--accent-light);padding:16px 20px;border-radius:0 12px 12px 0;margin-bottom:16px}
.def-box .label{font-size:.7rem;text-transform:uppercase;letter-spacing:1px;color:var(--accent);font-weight:600;margin-bottom:4px}
.note-box{padding:14px 18px;border-radius:10px;margin-bottom:16px;font-size:.9rem}
.note-info{background:#eff6ff;border-left:4px solid var(--info);color:#1e40af}
.note-warn{background:#fffbeb;border-left:4px solid var(--warning);color:#92400e}
.note-tip{background:#f0fdf4;border-left:4px solid var(--success);color:#166534}
.note-exam{background:#fef3ee;border-left:4px solid var(--accent);color:var(--accent-h)}
.note-box .note-label{font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}

/* Tables */
.cmp-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.875rem}
.cmp-table th{background:var(--accent);color:#fff;padding:10px 14px;text-align:left;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}
.cmp-table td{padding:10px 14px;border-bottom:1px solid var(--border)}
.cmp-table tr:nth-child(even){background:rgba(0,0,0,.015)}
.cmp-table tr:hover td{background:var(--accent-light)}

/* Diagrams */
.diagram-box{background:var(--code-bg);border:1px solid var(--border);border-radius:12px;padding:24px;margin:16px 0;overflow-x:auto;text-align:center}
.diagram-box svg{max-width:100%;height:auto}

/* Code blocks */
.code-block{background:var(--code-bg);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin:16px 0}
.code-header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:rgba(0,0,0,.04);font-size:.75rem;color:var(--muted)}
.code-block pre{padding:16px;overflow-x:auto;font-size:.82rem;line-height:1.6}
.code-block code{color:var(--text)}

/* Tabs */
.tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:16px;overflow-x:auto}
.tab-btn{padding:10px 20px;background:none;border:none;font-size:.85rem;font-weight:500;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:.2s;white-space:nowrap}
.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}
.tab-panel{display:none}
.tab-panel.active{display:block;animation:fadeIn .3s}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* MCQ */
.mcq-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:12px}
.mcq-q{font-weight:600;margin-bottom:12px;font-size:.95rem}
.mcq-q .q-num{color:var(--accent);margin-right:6px}
.mcq-opt{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1.5px solid var(--border);border-radius:8px;margin-bottom:8px;cursor:pointer;transition:.2s;font-size:.9rem}
.mcq-opt:hover{border-color:var(--accent);background:var(--accent-light)}
.mcq-opt.selected{border-color:var(--accent);background:var(--accent-light)}
.mcq-opt.correct{border-color:var(--success);background:#f0fdf4;color:var(--success)}
.mcq-opt.wrong{border-color:var(--danger);background:#fef2f2;color:var(--danger)}
.mcq-opt .radio{width:16px;height:16px;border:2px solid var(--border);border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:.2s}
.mcq-opt.correct .radio{border-color:var(--success);background:var(--success)}
.mcq-opt.correct .radio::after{content:'✓';color:#fff;font-size:10px}
.mcq-opt.wrong .radio{border-color:var(--danger);background:var(--danger)}
.mcq-opt.wrong .radio::after{content:'✗';color:#fff;font-size:10px}
.mcq-explain{padding:12px 16px;background:#f0fdf4;border-radius:8px;margin-top:8px;font-size:.85rem;color:#166534;display:none}
.mcq-explain.show{display:block;animation:fadeIn .3s}

/* Flashcard */
.flashcard-container{display:flex;flex-direction:column;align-items:center;gap:20px;padding:40px 20px}
.flashcard{width:100%;max-width:500px;height:260px;perspective:1000px;cursor:pointer}
.flashcard-inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d}
.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}
.flashcard-front,.flashcard-back{position:absolute;inset:0;backface-visibility:hidden;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;box-shadow:var(--shadow)}
.flashcard-front{background:var(--accent);color:#fff}
.flashcard-back{background:var(--bg-card);border:2px solid var(--accent);color:var(--text);transform:rotateY(180deg)}
.fc-nav{display:flex;gap:12px;align-items:center}
.fc-btn{width:44px;height:44px;border-radius:50%;border:2px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;font-size:1rem;color:var(--text)}
.fc-btn:hover{border-color:var(--accent);color:var(--accent)}
.fc-status{display:flex;gap:8px}
.fc-status-btn{padding:6px 14px;border-radius:20px;border:1.5px solid var(--border);background:#fff;font-size:.8rem;cursor:pointer;transition:.2s}
.fc-status-btn:hover{border-color:var(--accent)}
.fc-status-btn.new-btn.active{background:var(--border);color:var(--text)}
.fc-status-btn.learn-btn.active{background:#fffbeb;color:var(--warning);border-color:var(--warning)}
.fc-status-btn.done-btn.active{background:#f0fdf4;color:var(--success);border-color:var(--success)}

/* Simulation boxes */
.sim-box{background:var(--bg-card);border:2px solid var(--accent);border-radius:16px;padding:24px;margin:16px 0}
.sim-box .sim-title{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:1rem;color:var(--accent);margin-bottom:16px;display:flex;align-items:center;gap:8px}
.sim-controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.sim-controls input,.sim-controls select{padding:8px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:.85rem;background:var(--bg);transition:.2s}
.sim-controls input:focus,.sim-controls select:focus{border-color:var(--accent);outline:none}
.sim-output{background:var(--code-bg);border-radius:10px;padding:16px;min-height:80px;font-size:.85rem}

/* Gantt chart */
.gantt-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.gantt-label{width:70px;font-size:.8rem;font-weight:600;text-align:right;flex-shrink:0}
.gantt-bar{height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;color:#fff;transition:width .4s ease}

/* Pin diagram */
.pin-grid{display:grid;grid-template-columns:40px 1fr 1fr 40px;gap:2px;margin:20px 0}
.pin-cell{display:flex;align-items:center;justify-content:center;font-size:.7rem;padding:4px 2px}
.pin-left{background:#fef3ee;border-radius:0 4px 4px 0;justify-content:flex-end;padding-right:8px;cursor:pointer;transition:.15s}
.pin-right{background:#fef3ee;border-radius:4px 0 0 4px;justify-content:flex-start;padding-left:8px;cursor:pointer;transition:.15s}
.pin-left:hover,.pin-right:hover{background:var(--accent-light)}
.pin-left.active,.pin-right.active{background:var(--accent);color:#fff;font-weight:600}
.pin-center{background:var(--code-bg);font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.85rem;color:var(--accent)}
.pin-num{font-family:'JetBrains Mono',monospace;font-weight:600;font-size:.65rem;color:var(--muted)}
.pin-info{margin-top:12px;padding:14px 18px;background:var(--accent-light);border-radius:10px;font-size:.85rem;min-height:50px;display:none}
.pin-info.show{display:block;animation:fadeIn .3s}
.pin-info .pin-name{font-weight:700;color:var(--accent)}

/* Toast */
#toast-container{position:fixed;bottom:20px;right:20px;z-index:200;display:flex;flex-direction:column;gap:8px}
.toast{padding:12px 20px;border-radius:10px;font-size:.85rem;font-weight:500;color:#fff;animation:slideInR .3s;box-shadow:0 8px 24px rgba(0,0,0,.15);display:flex;align-items:center;gap:8px}
.toast-success{background:var(--success)}
.toast-error{background:var(--danger)}
.toast-info{background:var(--info)}
@keyframes slideInR{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}

/* Modal */
.modal-overlay{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.4);display:none;align-items:center;justify-content:center;padding:20px}
.modal-overlay.active{display:flex}
.modal{background:var(--bg-card);border-radius:16px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;padding:32px;box-shadow:0 20px 60px rgba(0,0,0,.15);animation:scaleIn .25s}
@keyframes scaleIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
.modal h3{font-size:1.2rem;margin-bottom:16px}

/* Accordion */
.accordion-item{border:1px solid var(--border);border-radius:10px;margin-bottom:8px;overflow:hidden;background:var(--bg-card)}
.accordion-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:none;border:none;font-size:.9rem;font-weight:600;color:var(--text);cursor:pointer;transition:.15s}
.accordion-btn:hover{background:rgba(0,0,0,.015)}
.accordion-btn i{transition:transform .2s;color:var(--muted);font-size:.75rem}
.accordion-btn.open i{transform:rotate(180deg)}
.accordion-body{max-height:0;overflow:hidden;transition:max-height .3s ease}
.accordion-body.open{max-height:2000px}
.accordion-body-inner{padding:0 18px 18px}

/* Progress Dashboard */
.dash-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:var(--shadow)}
.dash-card h4{font-size:1rem;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.progress-ring{width:140px;height:140px;margin:0 auto}
.progress-ring circle{transition:stroke-dashoffset .6s ease}
.unit-bar{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.unit-bar-label{width:70px;font-size:.8rem;font-weight:500;flex-shrink:0}
.unit-bar-track{flex:1;height:10px;background:var(--border);border-radius:5px;overflow:hidden}
.unit-bar-fill{height:100%;border-radius:5px;transition:width .4s}
.unit-bar-pct{width:40px;font-size:.75rem;color:var(--muted);text-align:right}

/* Quiz interface */
.quiz-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px}
.quiz-timer{font-family:'Space Grotesk',sans-serif;font-size:1.5rem;font-weight:700;color:var(--accent)}
.q-palette{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}
.q-pal-btn{width:36px;height:36px;border-radius:8px;border:1.5px solid var(--border);background:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:.15s;display:flex;align-items:center;justify-content:center}
.q-pal-btn.answered{background:var(--success);color:#fff;border-color:var(--success)}
.q-pal-btn.flagged{background:var(--warning);color:#fff;border-color:var(--warning)}
.q-pal-btn.current{border-color:var(--accent);box-shadow:0 0 0 3px rgba(232,93,38,.2)}

/* Formula Sheet */
.formula-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:12px}
.formula-card .f-cat{font-size:.7rem;text-transform:uppercase;letter-spacing:1px;color:var(--accent);font-weight:600;margin-bottom:8px}
.formula-card .f-content{font-size:1rem;margin:8px 0}
.formula-card .f-when{font-size:.82rem;color:var(--muted);margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}

/* Breadcrumbs */
.breadcrumbs{padding:10px 24px;font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.breadcrumbs a{color:var(--muted);text-decoration:none;transition:.15s}
.breadcrumbs a:hover{color:var(--accent)}
.breadcrumbs .sep{font-size:.65rem}

/* Responsive */
@media(max-width:1024px){
  #sidebar{transform:translateX(-100%)}
  #sidebar.open{transform:translateX(0)}
  #main{margin-left:0!important}
  #menu-btn{display:block}
}
@media(max-width:640px){
  .hero{padding:60px 20px 40px}
  .hero-title{font-size:1.8rem}
  .hero-stats{gap:16px}
  .hero-stat .val{font-size:1.4rem}
  .content-area{padding:24px 16px 60px}
  .unit-title{font-size:1.4rem}
  .pin-grid{grid-template-columns:30px 1fr 1fr 30px;font-size:.6rem}
  .quiz-header{flex-direction:column;align-items:flex-start}
}

/* Print */
@media print{
  #topbar,#sidebar,#sidebar-overlay,.hero,.flashcard-container,.sim-box,.mcq-card,.btn,.breadcrumbs{display:none!important}
  #main{margin-left:0!important;padding-top:0!important}
  .content-area{padding:0!important;max-width:100%!important}
  .card{box-shadow:none!important;break-inside:avoid}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}