:root{--bg:#f6f8fb;--surface:#ffffff;--surface-1:#f6f6f6;--surface-2:#f8f8f8;--text:#0f172a;--text-1:#3c3e42;--muted:#475569;--border:#e2e8f0;--primary:#3b82f6;--primary-contrast:#ffffff;--ring:#93c5fd;--accent-primary:#3498db;--text-content:#3a3a3a;--shadow:0 1px 2px rgba(0, 0, 0, 0.1),0 1px 2px rgba(0, 0, 0, 0.06);--btn-hover:#1f2937;--radius:12px;--header-h:60px;--drawer-w:280px;--logo-color:#000000;--hover-bg:rgba(52, 152, 219, 0.02);--card-bg:#ffffff;--code-bg:#f1f5f9;--scrollbar-track:#f5f5f5;--scrollbar-thumb:#c7c7c7;color-scheme:light dark}html[data-theme=dark]{--bg:#000000;--surface:#121212;--surface-1:#0e0e0e;--surface-2:#171717;--text:#e2e8f0;--text-1:#d1d6dd;--muted:#94a3b8;--border:#1f2937;--primary:#60a5fa;--primary-contrast:#0b1220;--ring:#2563eb;--accent-primary:#74b9ff;--logo-color:#cdcdcd;--text-content:#d1d1d1;--hover-bg:rgba(52, 152, 219, 0.1);--card-bg:#1e293b;--code-bg:#334155;--scrollbar-track:#212121;--scrollbar-thumb:#555;color-scheme:dark}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);box-sizing:border-box}@media (min-width:1024px){::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#666}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}}#progress-bar{position:fixed;top:0;left:0;width:0;height:4px;background:#3b82f6;transition:width .2s ease-out;z-index:9999;display:none}input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--bg) inset!important;-webkit-text-fill-color:var(--text)!important}body{font-family:Helvetica,system-ui,Segoe UI,Roboto,Arial,"Segoe UI Emoji",Ubuntu,ui-sans-serif,system-ui,-apple-system;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.clickable,.clickable-card,a,button{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;left:.5rem;top:-42px;padding:.55rem .75rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;z-index:100;transition:top .15s;white-space:nowrap}.skip-link:focus{top:.5rem}header.appbar{position:fixed;top:0;z-index:60;display:flex;align-items:center;gap:12px;width:100%;height:var(--header-h);padding:0 12px;background:var(--surface);backdrop-filter:saturate(150%) blur(8px);border-bottom:1px solid var(--border)}.brand{display:none;align-items:center;gap:10px;font-weight:700;letter-spacing:.2px;container-type:inline-size}.brand>span{display:block;font-size:min(1.5rem, 7vw);font-weight:700}.name-full{box-sizing:border-box;max-width:110px}.name-short{display:none}.logo-icon{width:100%;height:100%;background:inherit;border-radius:14px;display:flex;align-items:center;justify-content:center}.logo-icon svg{width:24px;height:24px}@media (max-width:768px){.name-full{display:none}.name-short{display:block;box-sizing:border-box;max-width:50px}}.spacer{flex:1}.display-none{display:none!important}.app-bar-profile-photo{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:var(--surface);cursor:pointer;box-shadow:0 1px 0 rgba(0,0,0,.02);transition:transform 60ms ease,background .15s ease}.app-bar-profile-photo>img{aspect-ratio:1/1;box-sizing:border-box;padding:2px;width:100%;object-fit:cover;border-radius:50%}.toolbar{width:fit-content;display:flex;align-items:center;overflow-x:auto;overflow-y:hidden;gap:10px;background-color:inherit}#appBarProfileButton{font-weight:700;font-size:1rem;cursor:pointer;overflow:hidden;border-radius:50%;background-color:var(--primary);color:#fff}#appBarLoginBtn{padding:0 .5rem;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--border);background:var(--text);color:var(--bg);font-weight:700;cursor:pointer;box-shadow:0 1px 0 rgba(0,0,0,.02);white-space:nowrap}.icon-btn{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;box-shadow:0 1px 0 rgba(0,0,0,.02);transition:transform 60ms ease,background .15s ease}.icon-btn:hover{transform:translateY(-1px)}.icon-btn:active{transform:translateY(0)}.icon-btn svg{width:20px;height:20px}.menu-btn{display:inline-flex}@media (max-width:1023px){.brand{display:flex}}@media (min-width:1024px){.close-drawer-btn,.menu-btn{display:none}}.drawer-container{position:fixed;top:0;overflow:hidden;width:min(var(--drawer-w),100%);height:100vh;z-index:70;background:var(--surface);border-right:1px solid var(--border);inset:0 auto 0 0;transform:translateX(-100%);transition:transform .2s ease}aside.drawer{width:100%;height:100%}#openPreviousDrawerBtn{display:none}#openPreviousDrawerBtn.active{display:block}body[data-drawer=open] .drawer-container{transform:translateX(0)}@media (min-width:1024px){.drawer-container{transform:translateX(0)}}.drawer-header{position:sticky;top:0;width:100%;height:var(--header-h);margin:0;z-index:150;display:flex;background-color:inherit;align-items:center;justify-content:space-between;gap:6px;padding:0 1rem}.drawer-header-left-btn-and-title{display:flex;gap:6px;container-type:inline-size}.drawer-header-title-container{display:flex;align-items:center;gap:10px;font-weight:700;font-size:min(1.3rem, 6vw);letter-spacing:.2px}.drawer-body{width:100%;height:calc(100% - var(--header-h));padding:min(2%,.6rem) 1rem;overflow-y:auto;background-color:inherit}.drawer .section-title{margin:12px 10px 8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.nav{display:grid;gap:4px;padding:6px}.nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--text-1)}.nav a:hover{background:rgba(0,0,0,.04)}html[data-theme=dark] .nav a:hover{background:rgba(255,255,255,.06)}.nav a.active{background:var(--primary);color:var(--primary-contrast);text-decoration:none}.nav a svg{width:20px;height:20px;opacity:.85}.drawer-footer{margin-top:auto;padding:10px;border-top:1px solid var(--border);color:var(--muted);font-size:12px}.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:65;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}body[data-drawer=open] .backdrop{opacity:1;visibility:visible}@media (min-width:1024px){.backdrop{display:none}}.content-body{position:fixed;top:var(--header-h);width:100%;height:calc(100vh - var(--header-h));overflow:auto}main#main_content{max-width:1920px;padding:0 16px 32px;color:var(--text-content)}@media (min-width:1024px){footer,main#main_content{margin-left:var(--drawer-w)}}.hero{display:grid;gap:16px;padding:24px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow)}.hero h1{margin:0;font-size:clamp(24px, 2.6vw, 42px);line-height:1.15;letter-spacing:-.02em}.hero p{color:var(--muted);margin:0;font-size:clamp(14px, 1.4vw, 18px)}.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.btn{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-decoration:none;font-weight:600;transition:transform 60ms ease,background .15s ease;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--primary);color:var(--primary-contrast);border-color:transparent}.btn svg{width:18px;height:18px}.cards{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,90%),1fr));gap:16px}.card{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:16px;overflow-wrap:anywhere}.card h3{margin:0 0 6px}.card p{margin:0;color:var(--muted)}a.card{display:block}footer{margin-top:48px;padding:24px 0 20px 10px;border-top:1px solid var(--border);color:var(--muted);font-size:14px}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:8px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.breadcrumbs{position:sticky;top:0;z-index:100;width:100%;white-space:nowrap;background:var(--bg);display:flex;gap:8px;align-items:center;color:var(--muted);padding:6px 0;overflow-x:auto;max-height:20vh;border-bottom:1px solid var(--border)}.sep{opacity:.5}.content-section{box-sizing:border-box;padding:4px min(6px,1%);overflow:auto}#alert-container{position:fixed;top:0;left:0;right:0;z-index:9999;display:flex;flex-direction:column}.alert{padding:16px 20px;text-align:center;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transform:translateY(-100%);opacity:0;transition:all .3s cubic-bezier(.4, 0, .2, 1)}.alert.show{transform:translateY(0);opacity:1}.alert.hide{transform:translateY(-100%);opacity:0;margin-top:-60px}.alert-success{background:#48bb78;border-bottom:3px solid #38a169}.alert-error{background:#f56565;border-bottom:3px solid #e53e3e}.alert-warning{background:#ed8936;border-bottom:3px solid #dd6b20}.alert-info{background:#4299e1;border-bottom:3px solid #3182ce}.drawer-page{background-color:inherit;position:absolute;inset:0;transform:translateX(-105%)}.drawer-page.active{transform:translateX(0)}@keyframes inRight{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes inLeft{from{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes outLeft{from{transform:translateX(0);opacity:1}to{transform:translateX(-100%);opacity:0}}@keyframes outRight{from{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}.in-right{animation:inRight .3s cubic-bezier(.25,.46,.45,.94) forwards}.in-left{animation:inLeft .3s cubic-bezier(.25,.46,.45,.94) forwards}.out-left{animation:outLeft .3s cubic-bezier(.25,.46,.45,.94) forwards}.out-right{animation:outRight .3s cubic-bezier(.25,.46,.45,.94) forwards}.drawer-btn{margin-top:24px;padding:14px;border:none;border-radius:14px;font-size:15px;font-weight:600;cursor:pointer;width:100%;background:#111;color:#fff;transition:opacity .15s}.drawer-btn:active{opacity:.7}.drawer-btn.ghost{background:#f3f4f6;color:#111}.badge{display:inline-block;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:700;margin-bottom:16px}.footer-bottom{display:flex;flex-direction:column;align-items:center;padding:0 min(2%,1rem);gap:1rem}.footer-copyright{font-size:.75rem;color:var(--muted)}.footer-bottom-links{display:flex;align-items:center;gap:1rem;font-size:.75rem;color:var(--muted)}.footer-bottom-links a{color:inherit;text-decoration:none;transition:color .3s;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.footer-bottom-links a:hover{color:var(--text-1);text-decoration:underline}@media (min-width:768px){.footer-bottom{flex-direction:row;justify-content:space-between}}.accordion{max-width:100%;box-sizing:border-box}.accordion__list{list-style:none;margin:0;padding:0}.accordion__item{margin-bottom:.5rem;border-radius:12px;border:1px solid var(--border);overflow:hidden;transition:all .3s ease;opacity:0;transform:translateY(20px);animation:accordionFadeInUp .6s ease forwards;animation-delay:calc(var(--i, 0) * .08s)}.accordion__trigger{padding:1rem .5rem;cursor:pointer;display:flex;align-items:center;background:0 0;border:none;width:100%;font-size:1rem;color:var(--text);text-align:left;font-weight:500;position:relative}.accordion__trigger:hover{color:var(--accent-primary);background:var(--hover-bg)}.accordion__trigger::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;opacity:.5;background:var(--accent-primary);transition:transform .3s ease}.accordion__icon{width:24px;height:24px;transition:transform .3s ease;flex-shrink:0;margin-right:.5rem;stroke:currentColor}.accordion__item.active .accordion__icon{transform:rotate(90deg)}.accordion__panel{max-height:0;overflow:hidden;transition:all .4s cubic-bezier(.4, 0, .2, 1);background:var(--bg-tertiary)}.accordion__item.active .accordion__panel{max-height:600px;overflow:auto;-ms-overflow-style:none;scrollbar-width:none}.accordion__item.active .accordion__panel::-webkit-scrollbar{display:none}.accordion__panel-content{padding:0 2rem 1.5rem 2rem;line-height:1.7;color:var(--text-content);font-size:.95rem;transition:color .4s ease}.accordion__panel-content p{margin-bottom:1rem}.accordion__panel-content p:last-child{margin-bottom:0}@keyframes accordionFadeInUp{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.accordion__item{animation:none;opacity:1;transform:none}}.topic-title-breadcrumb{font-weight:700;color:var(--text)}.topic-list{margin:0 0 0 5%;padding:0}.topic-sections-list{margin:0 0 0 10%;padding:0}.content-buttons{display:flex;gap:10px;margin-top:10px;overflow-x:auto}.btn-icon{background:0 0;border:none;cursor:pointer;color:#787878e1;padding:5px 8px;border-radius:4px;transition:background-color .2s}.btn-icon:hover{background-color:#79797928}.content-section{font-family:'Segoe UI',sans-serif;line-height:1.7;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;box-sizing:border-box}.content-section table{border-collapse:collapse;margin:20px 0;font-size:.95em}.content-section table th{background:var(--surface-1);color:var(--text)}.content-section table td,.content-section table th{border:1px solid var(--border);padding:10px 12px;text-align:left;font-size:.85em}.content-section table tr:nth-child(2n){background:var(--surface-2)}.math{background:var(--code-bg);padding:4px 6px;border-radius:4px}.content-item-list{padding-left:min(2em,5%)}.content-item-list li{margin-bottom:20px}.question-item-list{display:flex;flex-wrap:wrap;list-style:none;align-items:center;padding-left:1em}.question-item-list li{max-width:100%;width:auto;margin:0 10px}.mcq-options-list{display:flex;flex-wrap:wrap;list-style:none;align-items:center;padding-left:1em}.mcq-options-list li{max-width:100%;width:auto;margin:0 10px}@media (max-width:450px){.maq-options-list li{font-size:.9em}}.board-year{font-weight:700;opacity:.67;font-size:clamp(1vw, 12px , 14px)}.topic-navigation{display:flex;flex-wrap:wrap;justify-content:space-between;padding:2rem .5rem;gap:min(20px,5%)}.topic-resources{display:flex;gap:16px;flex-wrap:wrap}.topic-resources>a{border:1px solid var(--border);padding:.5rem .7rem;border-radius:8px;background-color:#0285ff;color:#fff}