:root{--brand: #881337;--brand-hover: #700d2b;--brand-soft: #fdf2f4;--brand-border: #fecdd3;--accent-gold: #b45309;--accent-gold-soft: #fef3c7;--accent-green: #047857;--accent-green-soft: #d1fae5;--ink: #1f1418;--text-body: #3d2f35;--text-muted: #6e5e65;--surface: #ffffff;--surface-subtle: #fbf8f9;--bg: #f7f3f5;--border: #e7dde2;--paper-border: #22181c;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--card-shadow: 0 1px 3px rgba(31, 20, 24, .05), 0 4px 12px rgba(31, 20, 24, .03);--card-hover-shadow: 0 6px 18px rgba(136, 19, 55, .12);--font-display: "Outfit", sans-serif;--font-body: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-serif: "Times New Roman", Times, Georgia, serif}body.dark-mode,html.dark-mode,html[data-theme=dark],body[data-theme=dark]{--brand: #fb7185;--brand-hover: #fda4af;--brand-soft: rgba(251, 113, 133, .16);--brand-border: rgba(251, 113, 133, .45);--accent-gold: #fbbf24;--accent-gold-soft: rgba(251, 191, 36, .18);--accent-green: #34d399;--accent-green-soft: rgba(52, 211, 153, .18);--ink: #ffffff;--text-body: #f5edf2;--text-muted: #c8b8c2;--surface: #1c1619;--surface-subtle: #241c21;--surface-elevated: #2d232a;--bg: #120e11;--border: #3d3036;--paper-border: #e7dde2;--card-shadow: 0 2px 8px rgba(0, 0, 0, .45);--card-hover-shadow: 0 8px 24px rgba(0, 0, 0, .7)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text-body);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.5}a{text-decoration:none;color:inherit}main.paper-container section,main.paper-container .section-block{padding:0!important;margin:0!important;width:100%!important}.paper-container{max-width:1020px;margin:0 auto;padding:1rem clamp(.75rem,2vw,1.5rem) 4rem}.paper-breadcrumbs,.single-breadcrumbs,.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-muted);margin-bottom:.85rem}.paper-breadcrumbs a,.single-breadcrumbs a,.breadcrumb a{color:var(--brand);font-weight:700;display:inline-flex;align-items:center;gap:.25rem}.paper-breadcrumbs a:hover,.single-breadcrumbs a:hover,.breadcrumb a:hover{text-decoration:underline}.paper-breadcrumbs .sep,.single-breadcrumbs .sep,.breadcrumb .sep{font-size:.65rem;opacity:.6}.paper-breadcrumbs .current,.single-breadcrumbs .current,.breadcrumb .current{font-weight:700;color:var(--ink);background:var(--brand-soft);border:1px solid var(--brand-border);padding:.15rem .6rem;border-radius:9999px}.paper-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem 1.15rem;margin-bottom:1.25rem;box-shadow:var(--card-shadow)}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tool-btn,.filter-sec-btn,.back-btn,.paper-nav-btn{font-size:.78rem;font-weight:700;font-family:inherit;padding:.38rem .8rem;border-radius:6px;border:1px solid var(--border);background:var(--surface-subtle);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all .15s ease;line-height:1.2}.tool-btn:hover,.filter-sec-btn:hover,.back-btn:hover,.paper-nav-btn:hover{background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.tool-btn.active,.filter-sec-btn.active{background:var(--brand);color:#fff;border-color:var(--brand)}.mapping-accordion{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:1.5rem;box-shadow:var(--card-shadow);overflow:hidden}.mapping-accordion summary{padding:.85rem 1.25rem;font-weight:800;font-size:.92rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;background:var(--surface-subtle);color:var(--ink)}.mapping-accordion summary::-webkit-details-marker{display:none}.mapping-accordion summary .chevron,.mapping-accordion summary i.chevron{transition:transform .2s ease}.mapping-accordion[open] summary .chevron,.mapping-accordion[open] summary i.chevron{transform:rotate(180deg)}.mapping-content{padding:1.1rem 1.25rem;font-size:.84rem}.mapping-table{width:100%;border-collapse:collapse;margin-top:.5rem}.mapping-table th,.mapping-table td{padding:.55rem .8rem;border:1px solid var(--border);text-align:left}.mapping-table th{background:var(--surface-subtle);font-weight:800;color:var(--ink)}.tag-q{font-family:monospace;font-weight:700;color:var(--brand);background:var(--brand-soft);padding:.1rem .4rem;border-radius:4px;display:inline-block}.exam-paper-sheet{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:clamp(1.2rem,3vw,2.2rem);box-shadow:var(--card-shadow)}.paper-header-block,.paper-hero,.paper-header-box{border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:1.25rem 1.5rem;margin-bottom:1.5rem;text-align:center;background:var(--surface-subtle)}.paper-header-box{background:var(--surface);border-top:5px solid var(--brand);border-radius:var(--radius-md);box-shadow:var(--card-shadow)}.paper-code-row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;font-weight:800;font-family:monospace;color:var(--text-muted);margin-bottom:.5rem;text-transform:uppercase}.paper-title{font-family:var(--font-display);font-size:clamp(1.6rem,2.2vw,2.1rem);font-weight:900;letter-spacing:.04em;color:var(--ink);margin:0 0 .4rem;text-transform:uppercase;line-height:1.2}.paper-submeta{font-weight:700;font-size:.95rem;color:var(--text-body);margin-bottom:.25rem}.paper-time{font-style:italic;font-size:.86rem;color:var(--text-muted);margin-bottom:1rem}.paper-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--brand);background:var(--brand-soft);border:1px solid var(--brand-border);padding:.2rem .65rem;border-radius:9999px;margin-bottom:.5rem}.paper-instructions-box{border-top:1px solid var(--border);padding-top:.85rem;text-align:left;font-size:.82rem;line-height:1.55;color:var(--text-body)}.paper-instructions-box ol{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.25rem}.instructions-bar{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:1.25rem;font-size:.82rem;color:var(--text-body);display:flex;align-items:flex-start;gap:.65rem}.instructions-bar i{color:var(--brand);font-size:1rem;margin-top:.15rem}.paper-meta-pills,.meta-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.65rem}.paper-pill-tag,.meta-pill,.p-pill{background:var(--surface-subtle);border:1px solid var(--border);border-radius:9999px;padding:.2rem .65rem;font-size:.76rem;font-weight:750;color:var(--text-body);display:inline-flex;align-items:center;gap:.35rem}.paper-pill-tag b,.meta-pill b{color:var(--brand)}.p-pill-brand{background:var(--brand-soft);color:var(--brand);border:1px solid var(--brand-border)}.p-pill-gold{background:var(--accent-gold-soft);color:var(--accent-gold);border:1px solid var(--accent-gold)}.p-pill-green{background:var(--accent-green-soft);color:var(--accent-green);border:1px solid var(--accent-green)}.jump-strip,.paper-nav-jump,.toc-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:.85rem 1.15rem;margin-bottom:1.25rem;box-shadow:var(--card-shadow)}.jump-strip{display:flex;flex-wrap:wrap;gap:.4rem;position:sticky;top:.5rem;z-index:20;background:var(--surface)}.jump-btn,.toc-link{background:var(--surface-subtle);border:1px solid var(--border);border-radius:8px;padding:.35rem .75rem;font-size:.76rem;font-weight:700;color:var(--text-body);transition:all .15s ease;display:inline-flex;align-items:center;gap:.3rem}.jump-btn:hover,.jump-btn.active,.toc-link:hover{background:var(--brand);color:#fff;border-color:var(--brand)}.paper-nav-jump .nav-title,.toc-title{font-family:var(--font-display);font-size:.88rem;font-weight:850;color:var(--ink);margin-bottom:.55rem;display:flex;align-items:center;gap:.45rem}.paper-nav-jump .nav-title i,.toc-title i{color:var(--brand)}.toc-grid{display:flex;flex-wrap:wrap;gap:.45rem}.paper-section-banner,.sec-banner,.section-banner{background:var(--surface-subtle);border:1.5px solid var(--border);border-left:5px solid var(--brand);border-radius:var(--radius-sm);padding:.85rem 1.25rem;margin:2rem 0 1.25rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;box-shadow:var(--card-shadow)}.banner-left h2,.sec-banner h2,.section-banner h2{font-family:var(--font-display);font-size:1.2rem;font-weight:850;margin:0 0 .15rem;color:var(--ink)}.banner-left p,.sec-banner p{font-size:.82rem;font-style:italic;margin:0;color:var(--text-muted)}.banner-badge,.sec-badge{font-size:.74rem;font-weight:800;text-transform:uppercase;padding:.25rem .65rem;border-radius:9999px;background:var(--brand-soft);color:var(--brand);border:1px solid var(--brand-border)}.paper-section-wrapper{margin-bottom:2rem}.question-block{margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:1px dashed var(--border)}.question-block:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.q-main-title,.question-block-header{font-family:var(--font-display);font-size:1.15rem;font-weight:850;color:var(--ink);margin:0 0 .85rem;display:flex;justify-content:space-between;align-items:center}.q-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.15rem 1.35rem;margin-bottom:1.25rem;box-shadow:var(--card-shadow)}.q-card-head,.q-card-header,.q-head-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem;padding-bottom:.45rem;border-bottom:1px solid var(--border)}.q-title-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.q-title,.q-num-tag,.q-num-badge{font-family:var(--font-display);font-weight:850;font-size:1.05rem;color:var(--ink)}.q-marks-pill,.q-total-marks{font-size:.78rem;font-family:var(--font-body);font-weight:800;color:var(--accent-gold);background:var(--accent-gold-soft);border:1px solid var(--accent-gold);padding:.15rem .55rem;border-radius:6px}.q-ch-badge{font-size:.72rem;font-weight:750;color:var(--brand);background:var(--brand-soft);border:1px solid var(--brand-border);padding:.15rem .5rem;border-radius:4px;display:inline-flex;align-items:center;gap:.25rem}.q-ch-badge:hover{background:var(--brand);color:#fff}.sub-q-item,.subpart-item{margin-bottom:1.25rem;background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.95rem 1.15rem}.sub-q-head,.subpart-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.45rem}.subpart-item{min-width:0;box-sizing:border-box}.sub-q-num,.subpart-num{font-weight:850;font-size:.92rem;color:var(--brand);flex-shrink:0}@media(max-width:640px){.subpart-header{flex-wrap:wrap}.subpart-num{min-width:0;flex:1 1 100%;flex-shrink:1;overflow-wrap:anywhere}.subpart-header .q-ch-badge{max-width:100%;white-space:normal}}.sub-q-chapter-chip{font-size:.68rem;font-weight:800;text-transform:uppercase;padding:.12rem .45rem;border-radius:4px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.sub-q-text,.q-body{font-size:.9rem;color:var(--ink);line-height:1.6;margin-bottom:.65rem}.mcq-options-grid,.mcq-grid,.q-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.45rem;margin:.65rem 0 .85rem}.mcq-option,.mcq-item,.opt-chip{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.4rem .75rem;font-size:.84rem;font-weight:600;color:var(--text-body);display:flex;align-items:center;gap:.4rem;transition:all .15s ease}.mcq-option b,.mcq-item b{color:var(--brand)}.mcq-option.correct,.mcq-item.correct,.opt-chip.correct{background:var(--accent-green-soft)!important;border-color:var(--accent-green)!important;color:var(--accent-green)!important;font-weight:700!important}.diagram-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.85rem;margin:.75rem 0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-x:auto}.diagram-caption{font-size:.74rem;font-weight:700;color:var(--text-muted);margin-top:.5rem;text-align:center}.diagram-wrap svg{max-width:100%;height:auto}details.sol-details,details.solution-drawer{margin-top:.75rem;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);overflow:hidden;transition:all .2s ease}details.sol-details summary.sol-summary,details.solution-drawer summary{cursor:pointer;font-size:.82rem;font-weight:800;color:var(--brand);display:flex;align-items:center;gap:.45rem;user-select:none;padding:.55rem .95rem;background:var(--brand-soft);border-bottom:1px solid transparent;transition:all .15s ease;list-style:none}details.sol-details summary.sol-summary::-webkit-details-marker,details.solution-drawer summary::-webkit-details-marker{display:none}details.sol-details summary.sol-summary:hover,details.solution-drawer summary:hover{background:var(--brand);color:#fff}details.sol-details[open]>summary.sol-summary,details.solution-drawer[open]>summary{border-bottom-color:var(--border)}.sol-content,.solution-body{padding:.95rem 1.15rem;font-size:.88rem;line-height:1.6;color:var(--text-body);background:var(--surface)}.sol-step-pill,.step-pill{font-size:.7rem;font-weight:800;background:var(--accent-green-soft);color:var(--accent-green);border:1px solid var(--accent-green);padding:.12rem .45rem;border-radius:4px;margin-right:.35rem;display:inline-block}.mark-tag{font-size:.72rem;font-weight:800;color:var(--accent-gold);background:var(--accent-gold-soft);border:1px solid var(--accent-gold);padding:.1rem .4rem;border-radius:4px;display:inline-block;margin-left:.35rem}.sub-q-item:target,.subpart-item:target,.q-card:target,.question-block:target{outline:2px solid var(--brand);box-shadow:0 0 0 4px var(--brand-soft);scroll-margin-top:90px}.bottom-cta-row{display:flex;justify-content:center;gap:.75rem;margin-top:2.5rem;flex-wrap:wrap}.cta-btn{font-size:.84rem;font-weight:750;padding:.55rem 1.25rem;border-radius:var(--radius-sm);background:var(--brand);color:#fff;border:1px solid var(--brand);display:inline-flex;align-items:center;gap:.45rem;transition:all .15s ease}.cta-btn:hover{background:var(--brand-hover);transform:translateY(-1px)}
