@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color-scheme:light;--bg:#edf1eb;--surface:#f9fbf7;--surface-2:#e5ece3;--text:#14211d;--muted:#607169;--border:#c8d5cc;--accent:#247c62;--accent-strong:#165b48;--accent-soft:#cbeedc;--code:#10201b;--code-text:#e3f4ea;--danger:#a44343;--danger-soft:#fde5e2;--warn:#815600;--shadow:0 18px 42px rgba(20,33,29,.08)}:root[data-theme=dark]{color-scheme:dark;--bg:#091411;--surface:#10201b;--surface-2:#172c25;--text:#edf4ee;--muted:#a5b7ac;--border:#294239;--accent:#99e7bd;--accent-strong:#b5f4d1;--accent-soft:#1a493a;--code:#07100d;--code-text:#ecfff4;--danger:#ff9e98;--danger-soft:#4e2725;--warn:#f4cf78;--shadow:0 18px 42px rgba(0,0,0,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:Manrope,ui-sans-serif,system-ui,sans-serif;line-height:1.55}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.study-shell{min-height:100vh;padding:0 24px 96px;background:radial-gradient(circle at 75% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 30%)}.study-header{height:82px;max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);gap:24px}.brand{border:0;background:transparent;color:var(--text);font-size:1.1rem;display:flex;gap:7px;padding:8px 0;align-items:center}.brand b{color:var(--accent);font-size:1.45rem;letter-spacing:-.08em}.brand span{font-weight:800}.desktop-nav{display:flex;height:100%;gap:32px}.desktop-nav button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-weight:600;padding:0 2px}.desktop-nav button:hover,.desktop-nav button.is-active{color:var(--accent-strong);border-color:var(--accent)}.theme-toggle{border:1px solid var(--border)!important;border-radius:8px!important;background:var(--surface)!important;color:var(--text)!important;padding:8px 10px!important}.study-page{width:min(100%,1240px);margin:0 auto;padding:54px 0}.home-page{display:grid;gap:42px}.study-hero{display:grid;grid-template-columns:1.25fr .8fr;gap:42px;align-items:end;min-height:350px;border-bottom:1px solid var(--border);padding:24px 0 52px}.study-hero h1,.page-intro h1{max-width:770px;margin:0;font-size:clamp(2.7rem,6.4vw,5.4rem);line-height:.97;letter-spacing:-.065em}.study-hero p,.page-intro p{max-width:600px;margin:22px 0;color:var(--muted);font-size:1.08rem}.button-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.button{border:1px solid var(--border);min-height:46px;padding:10px 17px;border-radius:7px;font-weight:800;background:var(--surface);color:var(--text)}.button--primary{background:var(--accent);border-color:var(--accent);color:#04120d}.button--primary:hover{background:var(--accent-strong)}.button--quiet:hover{border-color:var(--accent);color:var(--accent-strong)}.study-progress,.practice-preview,.chapter-list-panel,.action-strip,.review-banner,.question-filters,.simulation-controls,.simulation-result,.content-block,.study-question,.challenge-layout{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.study-progress{padding:26px;border-radius:11px}.study-progress h2,.practice-preview h2,.section-title h2,.review-banner h2,.content-stack>h2,.challenge-layout h2{font-size:1.1rem;margin:0 0 8px;letter-spacing:-.03em}.study-progress p,.practice-preview p{color:var(--muted);margin:8px 0 22px}.progress-track{height:9px;border-radius:999px;background:var(--surface-2);overflow:hidden}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.study-progress small{display:block;margin-top:10px;color:var(--muted)}.flow-dashboard{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.flow-dashboard article{display:grid;gap:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:17px}.flow-dashboard article>span{color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.flow-dashboard strong{font-size:1.65rem;line-height:1;color:var(--accent-strong)}.flow-dashboard small{color:var(--muted)}.home-grid{display:grid;grid-template-columns:1.25fr .8fr;gap:26px}.chapter-list-panel,.practice-preview{border-radius:11px;padding:22px}.section-title{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}.section-title span,.page-intro>span,.question-meta,.result-count{font-size:.78rem;color:var(--muted);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.chapter-card{width:100%;display:flex;align-items:center;gap:18px;border:1px solid var(--border);background:transparent;color:var(--text);text-align:left;border-radius:9px;padding:11px 14px;margin-top:9px;transition:.18s ease}.chapter-card:hover{border-color:var(--accent);transform:translate(3px);background:color-mix(in srgb,var(--accent-soft) 30%,transparent)}.chapter-card__number{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--border);border-radius:7px;color:var(--accent);font-size:1.22rem;font-weight:800}.chapter-card__content{display:grid;gap:4px;flex:1}.chapter-card__content small{color:var(--muted);font-size:.76rem}.chapter-card__progress{display:grid;gap:4px;margin-top:3px}.chapter-card__progress i{display:block;height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.chapter-card__progress b{display:block;height:100%;border-radius:inherit;background:var(--accent)}.chapter-card__progress small{font-size:.7rem}.chapter-card__count{color:var(--muted);font-size:.76rem}.chapter-card__arrow{font-size:1.25rem;color:var(--accent)}.practice-preview{display:flex;flex-direction:column;align-items:stretch}.practice-preview .button{margin-top:auto;align-self:flex-end}.action-strip{display:flex;justify-content:space-between;gap:24px;align-items:center;border-radius:11px;padding:27px 30px;background:var(--surface-2)}.action-strip h2{margin:4px 0;font-size:1.6rem;letter-spacing:-.045em}.action-strip p{margin:0;color:var(--muted)}.action-strip span{font-size:.78rem;color:var(--accent-strong);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.page-intro{padding-bottom:34px;border-bottom:1px solid var(--border);margin-bottom:28px}.page-intro h1{font-size:clamp(2.55rem,5.7vw,4.8rem)}.topic-tags{display:flex;flex-wrap:wrap;gap:8px}.topic-tags span{border:1px solid var(--border);border-radius:999px;padding:4px 9px;font-size:.78rem;color:var(--muted)}.back-link{padding:0;border:0;background:transparent;color:var(--accent-strong);font-weight:800;margin-bottom:28px}.review-banner{border-radius:10px;padding:22px 26px;margin-bottom:38px;background:var(--surface-2)}.review-banner ul{margin:12px 0 0;padding-left:20px}.review-banner li{margin:7px 0;color:var(--muted)}.content-stack{display:grid;gap:18px}.content-block{display:grid;grid-template-columns:1fr minmax(300px,.82fr);gap:24px;border-radius:10px;padding:24px}.content-block__copy{display:grid;align-content:start;gap:16px}.content-block__header{display:grid;gap:6px}.content-block__header>span,.content-block__code>span{color:var(--accent-strong);font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.content-block h3{margin:0;font-size:1.3rem;letter-spacing:-.03em}.explanation-list{display:grid;gap:10px}.explanation-row{display:grid;grid-template-columns:126px 1fr;gap:12px;align-items:start;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:8px;padding:12px;background:color-mix(in srgb,var(--surface-2) 42%,transparent)}.explanation-row>span{color:var(--accent-strong);font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.explanation-row p{margin:0;color:var(--muted)}.explanation-row--analogy{border-left:3px solid var(--accent)}.explanation-row--trap{border-color:color-mix(in srgb,var(--danger) 42%,var(--border));background:color-mix(in srgb,var(--danger-soft) 32%,transparent)}.explanation-row--shortcut{border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent-soft) 24%,transparent)}.study-callouts{display:grid;gap:8px}.content-block__code{display:grid;align-content:start;gap:8px}.chapter-questions{margin-top:48px}.question-list{display:grid;gap:18px}.study-question{border-radius:10px;padding:22px}.question-meta{display:flex;flex-wrap:wrap;gap:8px;text-transform:none;letter-spacing:0}.question-meta span{border-right:1px solid var(--border);padding-right:8px}.question-meta span:last-child{border:0}.difficulty{font-weight:800}.difficulty--muito-difícil{color:var(--danger)}.difficulty--difícil{color:var(--warn)}.study-question h3{font-size:1.08rem;line-height:1.45;margin:14px 0 18px;max-width:950px}.question-options{display:grid;gap:8px;margin-top:17px}.question-option{display:flex;align-items:flex-start;gap:11px;text-align:left;padding:12px;border:1px solid var(--border);border-radius:7px;background:transparent;color:var(--text);transition:.15s}.question-option:not(:disabled):hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 33%,transparent)}.question-option b{display:grid;place-items:center;flex:0 0 25px;height:25px;border:1px solid var(--border);border-radius:50%;font-size:.75rem}.question-option.is-correct{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 50%,transparent)}.question-option.is-correct b{background:var(--accent);color:#072318}.question-option.is-wrong{border-color:var(--danger);background:var(--danger-soft)}.answer-feedback{margin-top:16px;border-left:3px solid var(--accent);background:var(--surface-2);padding:13px 15px;border-radius:0 7px 7px 0}.answer-feedback.is-wrong{border-color:var(--danger)}.answer-feedback p{margin:6px 0 0;color:var(--muted)}.question-filters{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:12px;padding:15px;border-radius:10px;margin-bottom:18px}.question-filters label,.simulation-controls label{display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:800}.question-filters select,.question-filters input,.simulation-controls select{width:100%;min-height:42px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px}.question-filters .button{align-self:end;min-height:42px;white-space:nowrap}.result-count{margin:18px 0}.load-more{display:block;margin:24px auto 0}.simulation-controls{border-radius:9px;padding:15px;margin-bottom:18px;display:flex;align-items:end;justify-content:space-between}.simulation-controls>span{color:var(--muted);font-size:.88rem}.simulation-result{max-width:720px;margin:0 auto;border-radius:12px;padding:42px;text-align:center}.result-overline{color:var(--accent-strong);font-weight:800;text-transform:uppercase;letter-spacing:.09em;font-size:.8rem}.simulation-result>strong{display:block;font-size:clamp(4rem,12vw,7rem);line-height:1;margin:14px 0;color:var(--accent)}.simulation-result h2{margin:0;font-size:1.5rem}.simulation-result>p{color:var(--muted)}.weak-themes{padding:11px;margin:22px 0;background:var(--surface-2);border-radius:7px;color:var(--muted)}.simulation-result .button-row{justify-content:center}.review-section{margin-bottom:44px}.review-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-review-card{padding:19px;border:1px solid var(--border);border-radius:9px;background:var(--surface);min-height:190px}.quick-review-card>span{color:var(--accent);font-family:DM Mono,monospace;font-size:.85rem}.quick-review-card h3{font-size:1rem;margin:20px 0 8px}.quick-review-card p{font-size:.9rem;color:var(--muted);margin:0}.quick-review-card small{display:block;color:var(--accent-strong);font-size:.72rem;margin-top:16px;font-weight:800}.challenge-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;padding:27px;border-radius:10px}.challenge-layout ol{padding-left:20px;color:var(--muted)}.challenge-layout li{margin-bottom:12px}.chapters-index__list{display:grid;gap:12px}.chapter-index-card{display:flex;align-items:center;gap:20px;text-align:left;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:22px;color:var(--text);box-shadow:var(--shadow)}.chapter-index-card:hover{border-color:var(--accent)}.chapter-index-card>b{font-size:2rem;color:var(--accent)}.chapter-index-card span{display:grid;gap:4px;flex:1}.chapter-index-card small{color:var(--muted)}.chapter-index-card i{font-style:normal;font-size:1.5rem;color:var(--accent)}.code-card{margin:16px 0 0;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--code);color:var(--code-text)}.code-card--compact{font-size:.84rem}.code-card__header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 12px;background:color-mix(in srgb,var(--code) 85%,var(--surface));color:#bcd2c5;font-size:.75rem;font-family:DM Mono,monospace}.code-card__actions{display:flex;gap:8px;align-items:center}.code-card__actions button{border:0;background:transparent;color:#bcd2c5;font-size:inherit}.code-block{margin:0;padding:16px;overflow:auto;font-family:DM Mono,monospace;line-height:1.65;tab-size:2}.token-comment{color:#779088}.token-string{color:#f2c879}.token-keyword{color:#e6a8d7}.token-namespace{color:#89d8ef}.token-number{color:#a7e7bd}.token-plain{color:var(--code-text)}.bottom-nav{display:none}.icon-button{border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 10px;display:grid;place-items:center}.button-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}@media(max-width:800px){.study-shell{padding:0 16px 88px}.study-header{height:68px}.desktop-nav{display:none}.study-page{padding:34px 0}.study-hero,.home-grid,.content-block,.challenge-layout{grid-template-columns:1fr}.study-hero{gap:24px;padding-bottom:34px;min-height:auto}.study-hero h1,.page-intro h1{font-size:clamp(2.55rem,13vw,4.5rem)}.flow-dashboard{grid-template-columns:1fr 1fr}.home-grid{gap:18px}.chapter-card__count{display:none}.action-strip{align-items:flex-start;flex-direction:column;padding:23px}.content-block{gap:8px}.question-filters{grid-template-columns:1fr 1fr}.filter-search,.question-filters .button{grid-column:span 2}.review-grid{grid-template-columns:1fr 1fr}.bottom-nav{position:fixed;z-index:30;bottom:0;left:0;right:0;height:68px;display:grid;grid-template-columns:repeat(5,1fr);background:color-mix(in srgb,var(--surface) 94%,transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bottom-nav button{display:grid;place-items:center;align-content:center;gap:3px;border:0;background:transparent;color:var(--muted);font-size:.62rem}.bottom-nav button.is-active{color:var(--accent-strong)}.bottom-nav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.simulation-result{padding:30px 18px}.practice-preview .button{align-self:stretch}.chapter-index-card{padding:17px}.chapter-index-card>b{font-size:1.5rem}}@media(max-width:480px){.study-shell{padding-inline:12px}.study-header{gap:12px}.brand span{font-size:.95rem}.study-hero p,.page-intro p{font-size:.98rem}.button-row{display:grid;grid-template-columns:1fr}.button{width:100%}.flow-dashboard{grid-template-columns:1fr}.study-progress,.chapter-list-panel,.practice-preview,.study-question,.content-block{padding:17px}.explanation-row{grid-template-columns:1fr;gap:6px}.explanation-row>span{font-size:.68rem}.inline-code{white-space:normal}.question-filters{grid-template-columns:1fr}.filter-search,.question-filters .button{grid-column:auto}.review-grid{grid-template-columns:1fr}.question-option{font-size:.91rem}.simulation-controls{align-items:stretch;flex-direction:column}.chapter-index-card{gap:12px}.chapter-index-card small{font-size:.78rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.flashcards-page{display:grid;gap:28px}.flashcards-hero{display:grid;grid-template-columns:1fr auto;gap:34px;align-items:end;padding-bottom:28px;border-bottom:1px solid var(--border)}.flashcards-hero>div>span,.aside-label{color:var(--accent-strong);font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;font-weight:800}.flashcards-hero h1{max-width:760px;margin:8px 0 0;font-size:clamp(2.6rem,5.5vw,4.9rem);line-height:.98;letter-spacing:-.06em}.flashcards-hero p{max-width:660px;margin:16px 0 0;color:var(--muted);font-size:1.04rem}.flashcard-progress{display:grid;grid-template-columns:auto auto;gap:0 8px;min-width:220px;align-items:baseline}.flashcard-progress strong{color:var(--accent);font-size:2.6rem;line-height:1}.flashcard-progress span{font-size:1rem;color:var(--muted)}.flashcard-progress .progress-track{grid-column:span 2;margin-top:14px}.flashcard-progress .progress-track i{display:block;height:100%;background:var(--accent);border-radius:inherit}.flashcard-progress small{grid-column:span 2;margin-top:7px;color:var(--muted)}.flashcard-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;padding:15px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.flashcard-filters label{display:grid;gap:5px;font-size:.78rem;color:var(--muted);font-weight:800}.flashcard-filters select{min-height:42px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);padding:8px}.flashcard-filters .button{align-self:end;min-height:42px;white-space:nowrap}.deck-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.55fr);gap:22px;align-items:stretch}.flashcard{display:grid;gap:13px}.flashcard__surface{position:relative;min-height:440px;display:grid;place-items:center;border:1px solid var(--border);border-radius:13px;padding:36px;background:radial-gradient(circle at 50% 115%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 45%),var(--surface);box-shadow:var(--shadow);cursor:pointer;outline:none;transition:transform .2s ease,border-color .2s ease}.flashcard__surface:hover,.flashcard__surface:focus-visible{transform:translateY(-2px);border-color:var(--accent)}.flashcard__front,.flashcard__back{width:min(100%,720px);display:grid;justify-items:center;text-align:center}.flashcard__front>span,.flashcard__back>span{color:var(--accent-strong);font-size:.85rem;font-weight:800}.flashcard h2{margin:30px 0;font-size:clamp(1.9rem,3.8vw,3.45rem);line-height:1.18;letter-spacing:-.05em}.flashcard__front p{max-width:560px;margin:0;color:var(--muted)}.flashcard__front>b,.flashcard__back>b{margin-top:45px;color:var(--accent-strong);font-size:.9rem}.flashcard__back h2{font-size:clamp(1.25rem,2.25vw,1.72rem);line-height:1.5;letter-spacing:-.025em;margin:22px 0 6px}.flashcard__back .code-card{width:100%;text-align:left}.deck-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.deck-controls>span{color:var(--muted);font-family:DM Mono,monospace;font-size:.88rem}.flashcard-aside{display:flex;flex-direction:column;gap:20px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);padding:24px}.flashcard-aside h2{margin:8px 0;font-size:1.4rem;line-height:1.15;letter-spacing:-.045em}.flashcard-aside p{margin:0;color:var(--muted)}.flashcard-actions{display:grid;gap:9px;margin-top:auto}.flashcard-actions .button{width:100%}.button--selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.shuffle-button{border:0;border-top:1px solid var(--border);padding:17px 0 0;background:transparent;color:var(--accent-strong);font-weight:800;text-align:left}.tag-list{display:flex;flex-wrap:wrap;gap:7px}.tag-list span{border:1px solid var(--border);border-radius:999px;padding:3px 8px;color:var(--muted);font-size:.75rem}.flashcard-empty{display:grid;justify-items:center;text-align:center;gap:8px;border:1px dashed var(--border);border-radius:12px;padding:56px 22px;background:var(--surface)}.flashcard-empty h2{margin:0;font-size:1.45rem}.flashcard-empty p{max-width:480px;margin:0;color:var(--muted)}.flashcard-rating{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.flashcard-rating .button{display:grid;gap:4px;justify-items:start;min-height:72px;padding:11px}.flashcard-rating strong{font-size:.96rem}.flashcard-rating small{color:var(--muted);font-size:.72rem;font-weight:700;text-align:left}.flashcard-rating .button--selected small{color:var(--accent-strong)}.inline-code{display:inline-block;margin:.04em .06em;padding:.08em .28em;border-radius:5px;background:var(--code);color:#aee9c8;font-family:DM Mono,monospace;font-size:.7em;letter-spacing:0;vertical-align:.08em;white-space:nowrap}@media(max-width:800px){.flashcards-hero{grid-template-columns:1fr;gap:22px}.flashcard-progress{max-width:300px}.flashcard-filters{grid-template-columns:1fr 1fr}.flashcard-filters label:last-of-type{grid-column:span 2}.flashcard-filters .button{grid-column:span 2}.deck-layout{grid-template-columns:1fr}.flashcard-aside{gap:16px}.flashcard-actions{grid-template-columns:1fr 1fr}.shuffle-button{text-align:center}}@media(max-width:480px){.flashcards-hero h1{font-size:clamp(2.45rem,13vw,3.45rem)}.flashcard-filters{grid-template-columns:1fr}.flashcard-filters label:last-of-type,.flashcard-filters .button{grid-column:auto}.flashcard__surface{min-height:385px;padding:22px 18px}.flashcard h2{font-size:clamp(1.7rem,8vw,2.45rem);margin:22px 0}.flashcard__front>b,.flashcard__back>b{margin-top:27px}.deck-controls .button{width:auto;padding:10px}.flashcard-actions,.flashcard-rating{grid-template-columns:1fr}.flashcard-aside{padding:18px}}.topic-rail{display:flex;gap:8px;overflow:auto;padding:0 0 17px;margin:-5px 0 20px}.topic-rail button{flex:0 0 auto;border:1px solid var(--border);border-radius:999px;padding:8px 12px;background:var(--surface);color:var(--muted);font-weight:800}.topic-rail button:hover{color:var(--accent-strong);border-color:var(--accent)}.complexity-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 20px}.complexity-metrics article{display:grid;gap:5px;padding:17px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.complexity-metrics b{color:var(--accent);font-family:DM Mono,monospace;font-size:1.3rem}.complexity-metrics span{color:var(--muted);font-size:.84rem}.complexity-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.complexity-table{width:100%;min-width:680px;border-collapse:collapse;text-align:left}.complexity-table th,.complexity-table td{padding:13px 15px;border-bottom:1px solid var(--border)}.complexity-table th{color:var(--accent-strong);font-size:.82rem}.complexity-table td{color:var(--muted);font-size:.9rem}.complexity-table td:first-child{color:var(--text);font-weight:800}.complexity-table code{color:var(--accent-strong);font-family:DM Mono,monospace}.complexity-page .review-banner{margin-top:22px}.algorithm-nav{justify-content:space-between;margin-top:18px}.algorithm-nav span{color:var(--muted);font-family:DM Mono,monospace}.simulation-controls--topics{display:grid;grid-template-columns:150px 1fr auto auto;gap:16px;align-items:end}.simulation-topic-list{display:flex;gap:8px;flex-wrap:wrap}.simulation-topic-list label{display:flex;gap:5px;align-items:center;border:1px solid var(--border);border-radius:6px;padding:7px 9px;color:var(--muted);font-size:.78rem}.complexity-lab{display:grid;grid-template-columns:auto minmax(240px,1fr);gap:14px;align-items:center;margin-bottom:22px}.complexity-tabs{display:flex;gap:8px;flex-wrap:wrap}.complexity-tabs button,.sorting-controls button{border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);padding:9px 13px;font-weight:900}.complexity-tabs button.is-active,.sorting-controls button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.complexity-input{display:grid;gap:8px;color:var(--muted);font-size:.86rem;font-weight:800}.complexity-input strong{color:var(--accent-strong);font-family:DM Mono,monospace}.complexity-input input{width:100%;accent-color:var(--accent)}.complexity-growth,.sorting-lab{display:grid;gap:12px}.complexity-growth article,.sorting-list article{display:grid;grid-template-columns:190px 1fr 120px;gap:14px;align-items:center;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:14px}.complexity-growth article div,.sorting-list article div{display:grid;gap:4px}.complexity-growth strong,.sorting-list strong{font-size:1rem}.complexity-growth span,.sorting-list small,.sorting-list em{color:var(--muted);font-size:.8rem;font-style:normal}.complexity-growth i,.sorting-list i{display:block;height:12px;border-radius:999px;background:var(--surface-2);overflow:hidden}.complexity-growth b,.sorting-list b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-strong))}.complexity-growth code,.sorting-list code{color:var(--accent-strong);font-family:DM Mono,monospace;text-align:right}.complexity-growth aside{border:1px solid var(--border);border-radius:10px;background:var(--surface-2);padding:18px}.complexity-growth aside h2{margin:0 0 8px;font-size:1.1rem}.complexity-growth aside p{margin:0;color:var(--muted)}.sorting-controls{display:flex;gap:8px;flex-wrap:wrap}.sorting-list{display:grid;gap:10px}.sorting-list article{grid-template-columns:42px minmax(180px,.9fr) 1fr 110px;grid-template-areas:"rank name bar cost" ". note note note"}.sorting-list article>span{grid-area:rank;color:var(--accent-strong);font-family:DM Mono,monospace;font-weight:900}.sorting-list article>div{grid-area:name}.sorting-list article>i{grid-area:bar}.sorting-list article>code{grid-area:cost}.sorting-list article>em{grid-area:note}@media(max-width:800px){.question-filters{grid-template-columns:1fr 1fr}.complexity-metrics{grid-template-columns:repeat(2,1fr)}.complexity-lab{grid-template-columns:1fr}.complexity-growth article,.sorting-list article{grid-template-columns:1fr;grid-template-areas:none}.sorting-list article>*{grid-area:auto!important}.complexity-growth code,.sorting-list code{text-align:left}.simulation-controls--topics{grid-template-columns:1fr}.simulation-controls--topics .button{width:100%}.desktop-nav{gap:18px;font-size:.88rem}}@media(max-width:480px){.complexity-metrics{grid-template-columns:1fr 1fr}.topic-rail{margin-bottom:15px}.algorithm-nav .button{width:auto}.question-filters{grid-template-columns:1fr}.question-filters label,.question-filters .filter-search,.question-filters .button{grid-column:auto}}.chapter-card__number,.chapter-index-card__icon{overflow:hidden;white-space:nowrap;text-align:center}.chapter-index-card__icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid var(--border);border-radius:7px;color:var(--accent);font-size:1.3rem;line-height:1}.content-source{margin:18px 0 0!important;padding:10px 12px;border-left:2px solid var(--accent);background:var(--surface-2);color:var(--muted)!important;font-size:.86rem}.chapter-challenges{margin-top:48px}.chapter-challenges>p{color:var(--muted);margin:0 0 16px}.challenge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.challenge-card{border:1px solid var(--border);border-radius:10px;padding:20px;background:var(--surface);box-shadow:var(--shadow)}.challenge-card h3{margin:0 0 8px;color:var(--accent-strong)}.challenge-card p,.challenge-card small{color:var(--muted)}.challenge-card ul{margin:14px 0 0;padding-left:19px;color:var(--muted)}.challenge-card li{margin:5px 0}@media(max-width:600px){.challenge-grid{grid-template-columns:1fr}}.visualizer-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.visualizer-card{padding:24px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.visualizer-card p{color:var(--muted)}.node-track{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:80px;margin:18px 0;padding:12px;border:1px dashed var(--border);border-radius:8px}.node{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid var(--accent);border-radius:6px;color:var(--accent-strong);font-family:DM Mono,monospace}.node i{font-style:normal}@media(max-width:700px){.visualizer-grid{grid-template-columns:1fr}}button:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.progress-link{display:block;margin-top:14px;border:0;background:transparent;padding:0;color:var(--accent-strong);font-weight:800;text-align:left}.simulation-summary{font-size:.78rem}.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.more-card{position:relative;min-height:160px;display:grid;align-content:start;gap:9px;text-align:left;border:1px solid var(--border);border-radius:10px;padding:20px;background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.more-card:hover{border-color:var(--accent);transform:translateY(-2px)}.more-card strong{font-size:1.08rem}.more-card span{color:var(--muted);font-size:.9rem}.more-card i{position:absolute;right:18px;bottom:15px;color:var(--accent);font-style:normal;font-size:1.3rem}.more-card--mistakes{background:var(--surface-2)}@media(max-width:800px){.more-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.more-grid{grid-template-columns:1fr}}.recurring-errors{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.recurring-errors__title{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.recurring-errors__list{display:grid;gap:8px}.recurring-errors__chip{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);padding:9px 10px;text-align:left}.recurring-errors__chip:hover{border-color:var(--accent);color:var(--accent-strong)}.recurring-errors__chip strong{font-size:.9rem}.recurring-errors__chip span{font-size:.78rem;color:var(--muted);white-space:nowrap}.mistake-review-panel{display:grid;grid-template-columns:.75fr 1.55fr .9fr;gap:12px;margin-bottom:18px}.mistake-review-panel article{display:grid;align-content:start;gap:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:18px}.mistake-review-panel article>span{color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.mistake-review-panel strong{font-size:1.7rem;line-height:1;color:var(--accent-strong)}.mistake-review-panel small{color:var(--muted)}.mistake-theme-list{display:flex;flex-wrap:wrap;gap:8px}.mistake-theme-list button{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text);padding:7px 10px}.mistake-theme-list button:hover,.mistake-theme-list button.is-active{border-color:var(--accent);color:var(--accent-strong)}.mistake-theme-list strong{font-size:.82rem;color:inherit}.mistake-theme-list small{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:.72rem;font-weight:900}.question-dismiss{margin-left:auto;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted);padding:5px 9px;font-size:.72rem;font-weight:900}.question-dismiss:hover{border-color:var(--danger);color:var(--danger)}.empty-state{border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:24px;margin:18px 0;text-align:center}.empty-state h2{margin:0 0 8px}.empty-state p{margin:0 0 16px;color:var(--muted)}@media(max-width:800px){.mistake-review-panel{grid-template-columns:1fr}.mistake-review-panel__wide{order:3}.question-dismiss{width:100%;margin:6px 0 0;text-align:center}}.simulation-controls--topics{display:grid;grid-template-columns:120px 160px minmax(190px,1fr) auto auto;gap:12px;align-items:end}.simulation-topic-list{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.simulation-topic-list label{display:flex;grid-auto-flow:column;align-items:center;gap:7px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);padding:7px 10px;color:var(--text);font-size:.78rem}.simulation-topic-list input{accent-color:var(--accent)}.simulation-history{display:grid;gap:12px;margin:0 0 18px}.simulation-history__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.simulation-history article{display:grid;gap:6px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:15px}.simulation-history article>span{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.simulation-history strong{font-size:1.65rem;color:var(--accent-strong);line-height:1}.simulation-history small,.simulation-history em{color:var(--muted);font-size:.78rem;font-style:normal}.simulation-breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.simulation-breakdown article{display:grid;gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:12px;text-align:left}.simulation-breakdown span{color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.simulation-breakdown strong{font-size:.93rem;color:var(--text);line-height:1.25}.simulation-breakdown small{color:var(--muted);font-size:.76rem}.simulation-breakdown i{display:block;height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.simulation-breakdown b{display:block;height:100%;border-radius:inherit;background:var(--accent)}@media(max-width:800px){.simulation-controls--topics{grid-template-columns:1fr 1fr}.simulation-controls--topics .button,.simulation-controls--topics>span{grid-column:1/-1}.simulation-history__grid,.simulation-breakdown{grid-template-columns:1fr 1fr}}@media(max-width:480px){.simulation-controls--topics,.simulation-history__grid,.simulation-breakdown{grid-template-columns:1fr}.simulation-topic-list label{width:100%;justify-content:flex-start}}.study-progress h2{letter-spacing:0;word-spacing:.08em}.bigo-page{display:grid;gap:26px}.bigo-hero{margin-bottom:0}.bigo-plain{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);gap:20px;align-items:start;border:1px solid var(--border);border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 26%,var(--surface)),var(--surface));box-shadow:var(--shadow);padding:24px}.bigo-plain h2,.bigo-section-heading h2{margin:0 0 8px;font-size:1.55rem;letter-spacing:-.02em}.bigo-plain p,.bigo-section-heading p{margin:0;color:var(--muted)}.bigo-plain ul{margin:0;padding-left:22px;color:var(--muted)}.bigo-plain li{margin:7px 0}.bigo-plain strong{color:var(--accent-strong);font-family:DM Mono,monospace}.bigo-section-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:16px}.complexity-card-grid{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow:auto;padding-bottom:4px}.complexity-card{min-width:150px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);padding:14px}.complexity-card header{display:grid;gap:3px}.complexity-card header strong{font-family:DM Mono,monospace;font-size:1.35rem;color:var(--accent-strong)}.complexity-card header span{font-size:.78rem;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}.complexity-card p{min-height:72px;margin:12px 0;color:var(--muted);font-size:.88rem}.complexity-card dl{display:grid;gap:8px;margin:0}.complexity-card div{display:grid;gap:1px}.complexity-card dt{font-size:.68rem;color:var(--accent-strong);font-weight:900;text-transform:uppercase;letter-spacing:.07em}.complexity-card dd{margin:0;color:var(--muted);font-size:.8rem}.complexity-card .code-card{margin-top:auto}.complexity-card--constant{border-top:4px solid #4f9d69}.complexity-card--log{border-top:4px solid #3d8fb6}.complexity-card--linear{border-top:4px solid #8a7bd6}.complexity-card--nlogn{border-top:4px solid #b57a3a}.complexity-card--quadratic{border-top:4px solid #c35f55}.complexity-card--exponential{border-top:4px solid #b24f85}.complexity-card--factorial{border-top:4px solid #7d5bb3}.bigo-table{margin-top:-2px}.complexity-chart-panel,.sort-visualizer,.sort-learning-panel,.sort-quiz-section,.algorithm-comparison{border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:22px}.chart-range{min-width:280px;display:grid;gap:8px;color:var(--muted);font-size:.82rem;font-weight:800}.chart-range strong{color:var(--accent-strong);font-family:DM Mono,monospace}.chart-range input,.sort-controls input[type=range]{accent-color:var(--accent)}.curve-toggles{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.curve-toggles button{display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--muted);padding:8px 11px;font-weight:900}.curve-toggles button.is-active{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.curve-dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}.curve-dot--constant,.curve-line--constant{--curve:#4f9d69}.curve-dot--log,.curve-line--log{--curve:#3d8fb6}.curve-dot--linear,.curve-line--linear{--curve:#8a7bd6}.curve-dot--nlogn,.curve-line--nlogn{--curve:#b57a3a}.curve-dot--quadratic,.curve-line--quadratic{--curve:#c35f55}.curve-dot--exponential,.curve-line--exponential{--curve:#b24f85}.curve-dot--factorial,.curve-line--factorial{--curve:#7d5bb3}.curve-dot{background:var(--curve)}.chart-shell{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:stretch}.chart-shell svg{width:100%;min-height:300px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 35%,transparent),transparent)}.chart-grid line{stroke:color-mix(in srgb,var(--border) 70%,transparent);stroke-width:1}.chart-axis{stroke:var(--muted);stroke-width:1.4}.chart-shell text{fill:var(--muted);font-family:DM Mono,monospace;font-size:12px}.curve-line{fill:none;stroke:var(--curve);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:.76;cursor:pointer}.curve-line.is-selected{stroke-width:5;opacity:1}.chart-tooltip{border:1px solid var(--border);border-top:4px solid var(--curve,var(--accent));border-radius:8px;background:var(--surface-2);padding:16px}.chart-tooltip--constant{--curve:#4f9d69}.chart-tooltip--log{--curve:#3d8fb6}.chart-tooltip--linear{--curve:#8a7bd6}.chart-tooltip--nlogn{--curve:#b57a3a}.chart-tooltip--quadratic{--curve:#c35f55}.chart-tooltip--exponential{--curve:#b24f85}.chart-tooltip--factorial{--curve:#7d5bb3}.chart-tooltip span{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.chart-tooltip strong{display:block;margin:8px 0;font-family:DM Mono,monospace;font-size:1.5rem;color:var(--accent-strong)}.chart-tooltip p{color:var(--muted);margin:0 0 14px}.chart-tooltip code{display:block;color:var(--accent-strong);font-family:DM Mono,monospace;font-size:.82rem}.bigo-alert{margin:16px 0 0;border-left:3px solid var(--danger);border-radius:0 7px 7px 0;background:var(--danger-soft);padding:12px 14px;color:var(--text)}.sort-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.sort-stage{display:grid;gap:14px}.sort-counters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.sort-counters span{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:8px 10px;color:var(--muted);font-size:.78rem}.sort-counters strong{display:block;color:var(--accent-strong);font-family:DM Mono,monospace;font-size:1.1rem}.sort-bars{height:310px;display:flex;align-items:end;gap:8px;padding:18px;border:1px dashed var(--border);border-radius:9px;background:color-mix(in srgb,var(--surface-2) 42%,transparent);overflow:auto}.sort-bar{position:relative;flex:1 0 34px;min-width:28px;height:100%;display:flex;align-items:end;justify-content:center}.sort-bar span{width:100%;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 70%,#fff),var(--accent-strong));transition:height .18s ease,background .18s ease,transform .18s ease}.sort-bar b{position:absolute;bottom:7px;left:50%;transform:translate(-50%);font-family:DM Mono,monospace;font-size:.78rem;color:#04120d}.sort-bar small{position:absolute;top:-18px;color:var(--muted);font-family:DM Mono,monospace;font-size:.65rem}.sort-bar.is-comparing span{background:linear-gradient(180deg,#f4cf78,#b57a3a);outline:3px solid color-mix(in srgb,#f4cf78 40%,transparent)}.sort-bar.is-swapping span{background:linear-gradient(180deg,#ffb0aa,#a44343);transform:translateY(-8px)}.sort-bar.is-sorted span{background:linear-gradient(180deg,#b5f4d1,#247c62)}.sort-bar.is-active span{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}.sort-bar.is-pivot span{background:linear-gradient(180deg,#d2c4ff,#7d5bb3);outline:3px solid color-mix(in srgb,#7d5bb3 35%,transparent)}.step-explanation{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:16px}.step-explanation>span{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.step-explanation strong{display:block;margin:6px 0;color:var(--accent-strong);font-size:1.08rem}.step-explanation p{margin:0;color:var(--muted)}.state-legend{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}.state-legend span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.75rem;font-weight:800}.state-legend i{width:14px;height:14px;border-radius:4px;display:inline-block}.legend-compare{background:#f4cf78}.legend-swap{background:#a44343}.legend-pivot{background:#7d5bb3}.legend-sorted{background:#247c62}.sort-controls{display:grid;gap:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);padding:14px}.sort-controls label,.comparison-pane label{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:900}.sort-controls strong{color:var(--accent-strong);font-family:DM Mono,monospace}.sort-controls select,.sort-controls input:not([type=range]),.comparison-pane select{min-height:42px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);padding:8px}.sort-button-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sort-button-grid .button{min-height:42px;padding:9px 10px;font-size:.82rem}.sort-learning-panel{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px}.sort-facts,.sort-code-panel{display:grid;align-content:start;gap:14px}.sort-facts header span{color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.sort-facts h2{font-size:1.45rem;margin:4px 0;color:var(--accent-strong)}.sort-facts p{margin:0;color:var(--muted)}.sort-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.sort-facts dl div,.exam-trap,.line-explanation,.stl-notes{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);padding:11px}.sort-facts dt{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.sort-facts dd{margin:3px 0 0;color:var(--text);font-size:.86rem}.exam-trap strong{display:block;color:var(--accent-strong);margin-top:8px}.exam-trap strong:first-child{margin-top:0}.exam-trap p{margin:4px 0 0}.code-columns,.stl-code-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.line-explanation h3{margin:0 0 8px}.line-explanation ol{margin:0;padding-left:20px;color:var(--muted)}.line-explanation li{margin:5px 0}.stl-notes{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stl-notes p{margin:0;color:var(--muted);font-size:.9rem}.stl-notes strong{color:var(--accent-strong)}.quiz-mini-grid{display:grid;gap:14px}.quiz-mini-grid .study-question{box-shadow:none}.algorithm-comparison .comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.comparison-pane{display:grid;gap:13px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);padding:14px}.comparison-pane .sort-bars{height:180px;background:var(--surface)}.comparison-pane dl{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0}.comparison-pane dl div{border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:9px}.comparison-pane dt{color:var(--muted);font-size:.66rem;font-weight:900;text-transform:uppercase}.comparison-pane dd{margin:3px 0 0;color:var(--accent-strong);font-family:DM Mono,monospace;font-size:.84rem}@media(max-width:1000px){.complexity-card-grid{grid-template-columns:repeat(4,minmax(160px,1fr))}.sort-layout,.chart-shell,.sort-learning-panel{grid-template-columns:1fr}.sort-counters{justify-content:flex-start}.sort-controls{grid-template-columns:1fr 1fr}.sort-controls label:nth-child(4),.sort-button-grid{grid-column:1/-1}.chart-range{min-width:0}.stl-code-grid,.algorithm-comparison .comparison-grid{grid-template-columns:1fr}}@media(max-width:700px){.bigo-plain,.bigo-section-heading,.code-columns,.stl-notes{grid-template-columns:1fr;display:grid}.bigo-section-heading{align-items:start}.complexity-card-grid{display:flex}.complexity-chart-panel,.sort-visualizer,.sort-learning-panel,.sort-quiz-section,.algorithm-comparison{padding:16px}.sort-controls{grid-template-columns:1fr}.sort-bars{height:260px;padding:14px;gap:6px}.sort-bar{flex-basis:30px}.sort-button-grid{grid-template-columns:1fr}.sort-facts dl,.comparison-pane dl{grid-template-columns:1fr 1fr}.chart-shell svg{min-height:250px}.curve-toggles button{font-size:.82rem}.quiz-mini-grid .study-question{padding:16px}}@media(max-width:460px){.bigo-plain{padding:18px}.sort-bars{height:230px}.sort-bar{flex-basis:26px}.sort-bar b{font-size:.68rem}.sort-facts dl,.comparison-pane dl{grid-template-columns:1fr}.sort-counters{display:grid;grid-template-columns:1fr}.complexity-card{min-width:82vw}.chart-tooltip{padding:13px}.state-legend{display:grid;grid-template-columns:1fr 1fr}}:root{--bg:#f3f7ef;--surface:#fffef9;--surface-2:#e8f0e4;--muted:#53655c;--border:#bdcfc4;--shadow:0 18px 42px rgba(20,33,29,.07)}:root[data-theme=dark]{--shadow:0 18px 42px rgba(0,0,0,.22)}.study-shell{background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 22%,var(--bg)) 0%,var(--bg) 230px)}.study-hero h1,.page-intro h1,.flashcards-hero h1,.action-strip h2,.flashcard h2,.flashcard-aside h2,.content-block h3,.chapter-card strong,.quick-review-card h3{letter-spacing:0}.study-page>section,.study-page>.page-intro,.study-page>.back-link{animation:page-rise .28s ease both}.study-page>section:nth-of-type(2){animation-delay:.04s}.study-page>section:nth-of-type(3){animation-delay:.08s}.button,.icon-button,.chapter-card,.chapter-index-card,.more-card,.question-option,.complexity-tabs button,.sorting-controls button,.mistake-theme-list button{transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.button:not(:disabled):hover,.icon-button:hover{transform:translateY(-1px);box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 12%,transparent)}.empty-state,.flashcard-empty{position:relative;overflow:hidden;min-height:210px;align-content:center;border-style:solid;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 88%,var(--accent-soft)),var(--surface));box-shadow:var(--shadow)}.empty-state:before,.flashcard-empty:before{content:"";position:absolute;inset:14px;border:1px dashed color-mix(in srgb,var(--accent) 34%,var(--border));border-radius:8px;pointer-events:none}.empty-state>*,.flashcard-empty>*{position:relative}.empty-state h2,.flashcard-empty h2{color:var(--accent-strong)}.bottom-nav{box-shadow:0 -10px 30px #00000014}@keyframes page-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}@media(max-width:800px){.button:not(:disabled):hover,.icon-button:hover,.chapter-card:hover,.more-card:hover,.flashcard__surface:hover{transform:none}.study-page>section,.study-page>.page-intro,.study-page>.back-link{animation:none}.study-hero h1,.page-intro h1{font-size:clamp(2.35rem,11vw,3.75rem);line-height:1.04}.study-hero{padding-top:8px}.content-block,.challenge-layout,.deck-layout{gap:14px}.bottom-nav{padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:480px){.study-shell{padding-inline:10px}.study-page{padding-top:26px}.study-header{height:62px}.brand b{font-size:1.28rem}.study-hero h1,.page-intro h1,.flashcards-hero h1{font-size:2.35rem;line-height:1.06}.study-hero p,.page-intro p,.flashcards-hero p{font-size:.95rem;margin-top:14px}.flow-dashboard article,.chapter-list-panel,.practice-preview,.study-progress,.study-question,.content-block,.flashcard-aside,.simulation-result{border-radius:8px}.deck-controls{display:grid;grid-template-columns:1fr;justify-items:stretch}.deck-controls>span{text-align:center;order:-1}.empty-state,.flashcard-empty{min-height:180px;padding:34px 18px}.complexity-growth article,.sorting-list article{gap:9px}.code-block{padding:12px}}.complexity-card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;overflow:visible}.complexity-card{min-width:0;padding:16px}.complexity-card p{min-height:0;font-size:.9rem}.complexity-card dd{font-size:.82rem}.complexity-card .code-card{display:none}.complexity-card__code{margin:14px 0 0;padding:10px;overflow:auto;border:1px solid var(--border);border-radius:7px;background:var(--code);color:var(--code-text);font-family:DM Mono,monospace;font-size:.76rem;line-height:1.45}.sort-apply-array{min-height:40px;padding:8px 10px;font-size:.82rem}.sort-button-grid .button:disabled{box-shadow:none;transform:none}.sort-quiz-section .quiz-mini-grid{gap:12px}@media(max-width:1000px){.sort-apply-array{grid-column:1/-1}}@media(max-width:700px){.complexity-card-grid{display:flex;overflow:auto;padding-bottom:4px}.complexity-card{min-width:78vw}.sort-apply-array{width:100%}}@media(max-width:460px){.complexity-card{min-width:84vw}.complexity-card__code{font-size:.72rem}.sort-quiz-section .question-options{gap:7px}}
