:root{--bg:#0f1115;--panel:#151a22;--panel-soft:#1b2230;--text:#f3f5f9;--muted:#b8c0cf;--border:#2b3241;--focus:#22c55e;--active:#2b3b55;--link:#90cbff;--gold:#e8a13a;--gold-soft:rgba(232,161,58,.1);--gold-border:rgba(232,161,58,.6)}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100dvh;background:var(--bg);color:var(--text);font-family:var(--font-sans),"Trebuchet MS",Trebuchet,Verdana,sans-serif;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow:hidden}body{display:grid;grid-template-rows:auto 1fr auto}a{color:var(--link)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.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:absolute;left:1rem;top:-3rem;background:#fff;color:#111;padding:.5rem .75rem;border-radius:.5rem;z-index:1000}.skip-link:focus{top:1rem}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1.5px solid var(--border);padding:calc(.7rem + env(safe-area-inset-top)) calc(1.2rem + env(safe-area-inset-right)) .7rem calc(1.2rem + env(safe-area-inset-left))}.site-title{margin:0;line-height:0}.site-title-link{display:inline-flex;color:var(--text);text-decoration:none;border-radius:.3rem}.site-logo{display:block;width:auto;height:34px}.site-title-link:hover .site-logo{opacity:.85}.site-nav{margin-top:0}.nav-list{display:flex;gap:1rem;margin:0;padding:0;list-style:none}.main-content{width:100%;max-width:none;margin:0;height:100%;padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left);overflow:hidden}.site-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4rem .85rem;border-top:1.5px solid var(--border);padding:.55rem calc(1rem + env(safe-area-inset-right)) calc(.55rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left));background:rgba(15,17,21,.6)}.footer-link{color:var(--link);font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:2px;border-radius:.3rem}.footer-copyright,.footer-sep{color:var(--muted);font-size:.85rem}.about-page{height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(111,138,184,.45) rgba(21,26,34,.2);padding:1.5rem 1.2rem 2.5rem}.about-inner{width:min(760px,100%);margin-inline:auto}.about-back{display:inline-block;margin-bottom:1.2rem;color:var(--link);font-size:.95rem;font-weight:600;text-decoration:none;border-radius:.3rem}.about-back:hover{text-decoration:underline;text-underline-offset:2px}.about-title{margin:0 0 .8rem;font-size:1.7rem;font-weight:700}.about-lead{margin:0 0 1.4rem;font-size:1.1rem;line-height:1.55;color:var(--muted)}.about-section{border:1px solid rgba(66,80,104,.5);background:rgba(20,29,43,.5);border-radius:.9rem;padding:1rem 1.15rem;margin-bottom:1rem}.about-section h3{margin:0 0 .5rem;font-size:1.05rem;font-weight:700;color:#d8e4ff}.about-section p{margin:0;font-size:.98rem;line-height:1.6;color:var(--text)}.about-links{margin:0;padding-left:1.1rem;display:grid;grid-gap:.55rem;gap:.55rem}.about-links li{color:var(--text)}.about-links a{color:var(--link);text-underline-offset:2px}.feedback-form{max-width:560px;display:grid;grid-gap:1.25rem;gap:1.25rem}.feedback-fieldset{border:1.5px solid var(--border);border-radius:.8rem;padding:.85rem 1rem .7rem;margin:0;display:grid;grid-gap:.15rem;gap:.15rem}.feedback-fieldset legend{font-weight:700;font-size:.95rem;padding:0 .4rem}.feedback-radio-row{display:flex;align-items:center;gap:.6rem;width:100%;min-height:44px;font:inherit;font-size:.95rem;color:var(--text);text-align:left;cursor:pointer;border:1.5px solid var(--border);border-radius:.65rem;background:rgba(20,30,44,.5);padding:.45rem .75rem;margin:.2rem 0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.feedback-radio-row:hover{border-color:rgba(122,160,225,.6)}.feedback-radio-row:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.feedback-radio-circle{width:20px;height:20px;border:1.5px solid var(--gold);border-radius:50%;background:transparent;flex-shrink:0}.feedback-radio-row[aria-checked=true]{border-color:var(--gold-border);background:var(--gold-soft);font-weight:700}.feedback-radio-row[aria-checked=true] .feedback-radio-circle{background:radial-gradient(circle closest-side,var(--gold) 0 55%,transparent 62%)}.feedback-radio-check{visibility:hidden;margin-left:auto;color:var(--gold);font-weight:700}.feedback-radio-row[aria-checked=true] .feedback-radio-check{visibility:visible}.feedback-field{display:grid;grid-gap:.4rem;gap:.4rem}.feedback-field>label{font-weight:700;font-size:.95rem}.feedback-hint{margin:0;color:var(--muted);font-size:.85rem}.feedback-input,.feedback-textarea{font:inherit;font-size:.95rem;color:var(--text);background:var(--panel);border:1.5px solid var(--border);border-radius:.65rem;padding:.6rem .75rem;width:100%}.feedback-textarea{min-height:130px;resize:vertical}.feedback-input[aria-invalid=true],.feedback-textarea[aria-invalid=true]{border-color:rgba(233,96,125,.9)}.feedback-error{margin:0;color:#ffb6c2;font-size:.88rem;font-weight:600;display:flex;align-items:center;gap:.45rem}.feedback-alert{margin:0;max-width:560px;border:1.5px solid rgba(233,96,125,.65);background:rgba(95,28,42,.32);border-radius:.7rem;padding:.6rem .9rem;color:#ffb6c2;font-size:.95rem;font-weight:700;display:grid;grid-gap:.3rem;gap:.3rem}.feedback-alert p{margin:0;display:flex;align-items:center;gap:.55rem}.feedback-alert-detail{font-size:.84rem;font-weight:500}.feedback-submit{justify-self:start;font:inherit;font-size:.95rem;font-weight:700;color:var(--text);background:transparent;border:1.5px solid var(--gold);border-radius:999px;padding:.7rem 1.6rem;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.feedback-submit:hover{background:rgba(232,161,58,.08)}.feedback-submit:disabled{opacity:.6;cursor:default}.feedback-gotcha{display:none}.feedback-success{max-width:560px;border:1.5px solid rgba(63,202,114,.65);background:rgba(20,82,48,.25);border-radius:.9rem;padding:1.3rem 1.4rem}.feedback-success h3{margin:0 0 .5rem;font-size:1.15rem;color:#9df1b5}.feedback-success p{margin:0 0 .9rem;font-size:.95rem;line-height:1.5}.feedback-alt-channel{margin-top:.9rem}.learn-layout{position:relative;height:100%;display:grid;grid-template-columns:clamp(240px,21vw,320px) minmax(0,1fr)}.learn-layout.no-sidebar{grid-template-columns:minmax(0,1fr)}.learn-sidebar{border-right:1.5px solid var(--border);background:linear-gradient(180deg,#141a24,#0f141c);padding:1rem .75rem;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(111,138,184,.45) rgba(21,26,34,.2)}.sidebar-title{margin:0 0 .9rem;font-size:1rem;color:var(--muted)}.sidebar-search{margin-bottom:.9rem}.sidebar-search-input{width:100%;border:1.5px solid var(--border);border-radius:.6rem;background:rgba(13,18,27,.85);color:var(--text);font-family:inherit;font-size:.95rem;padding:.5rem .65rem;min-height:40px}.sidebar-search-input::placeholder{color:#93a0b5}.sidebar-search-count{margin:.35rem 0 0;min-height:1rem;font-size:.8rem;color:var(--muted)}.sidebar-empty{margin:.4rem 0 0;font-size:.85rem;line-height:1.45;color:var(--muted)}.sidebar-group{margin-bottom:.6rem}.group-toggle{width:100%;background:transparent;color:var(--text);border:0;text-align:left;padding:.5rem;border-radius:.5rem;font-size:1rem;font-weight:700;display:flex;align-items:center;gap:.45rem;cursor:pointer;min-height:44px;touch-action:manipulation}.group-arrow{display:inline-block;width:1rem;transition:transform .16s ease}.group-arrow.open{transform:rotate(90deg)}.criteria-wrap{margin-top:.35rem;display:grid;grid-gap:8px;gap:8px}.criteria-row{width:100%;border:1px solid rgba(43,50,65,.75);background:rgba(21,26,34,.28);color:var(--muted);text-align:left;padding:.55rem .6rem;border-radius:.5rem;cursor:pointer;font-size:16px;line-height:1.25;min-height:44px;touch-action:manipulation;box-shadow:0 1px 5px rgba(0,0,0,.22)}.criteria-row.active{background:var(--active);border-color:rgba(111,138,184,.65);color:var(--text);box-shadow:inset 3px 0 0 var(--gold),0 2px 8px rgba(0,0,0,.28)}.criteria-id{margin-right:.35rem;font-weight:700}.learn-main{height:100%;display:grid;grid-template-rows:auto 1fr;padding:1.2rem;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(111,138,184,.45) rgba(21,26,34,.2)}.learn-top-row{justify-content:space-between;flex-wrap:wrap;gap:1rem;width:min(1120px,100%);margin-inline:auto;margin-bottom:1rem}.learn-top-row,.top-left-group{display:flex;align-items:center}.top-left-group{gap:.65rem;min-width:0;flex:1 1 440px}.sidebar-toggle{display:none;position:relative;align-items:center;justify-content:center;width:44px;height:44px;border:1.5px solid var(--border);border-radius:.72rem;background:rgba(18,26,39,.88);color:var(--text);font-size:1.25rem;line-height:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.learn-sidebar.quiz-drawer,.sidebar-backdrop,.sidebar-mode-section,.sidebar-quiz-tools,.sidebar-toggle.sidebar-toggle-quiz,.top-row-logo{display:none}.sidebar-mode-label{margin:0 0 .4rem;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.sidebar-mode-row{display:block;width:100%;text-align:left;font:inherit;font-size:.92rem;color:var(--muted);border:1.5px solid var(--border);border-radius:.55rem;background:transparent;padding:.5rem .65rem;margin-bottom:.35rem;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.sidebar-mode-row.active{color:var(--text);background:var(--active);border-color:rgba(111,138,184,.65);box-shadow:inset 3px 0 0 var(--gold)}.mode-toggle{display:inline-flex;justify-self:end;margin-left:auto;padding:.22rem;border-radius:999px;border:1px solid var(--border);background:rgba(18,26,39,.8)}.mode-toggle-button{border:0;background:transparent;color:var(--muted);border-radius:999px;padding:.52rem .92rem;font-size:.9rem;font-weight:600;cursor:pointer}.mode-toggle-button.active{color:var(--text);background:rgba(56,78,116,.56);box-shadow:inset 0 0 0 1px rgba(133,167,227,.38),inset 0 -2px 0 var(--gold)}.learn-main::-webkit-scrollbar,.learn-sidebar::-webkit-scrollbar{width:9px;height:9px}.learn-main::-webkit-scrollbar-track,.learn-sidebar::-webkit-scrollbar-track{background:rgba(21,26,34,.18)}.learn-main::-webkit-scrollbar-thumb,.learn-sidebar::-webkit-scrollbar-thumb{background:rgba(111,138,184,.45);border-radius:999px;border:2px solid rgba(21,26,34,.2)}.learn-main::-webkit-scrollbar-thumb:hover,.learn-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(132,160,211,.58)}.status-text{min-height:1.3rem;margin:0;color:var(--muted);display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;flex:1 1 420px}.status-principle-chip{display:inline-flex;align-items:center;border:1px solid rgba(118,151,208,.55);border-radius:999px;background:rgba(33,46,67,.55);color:#d8e4ff;font-size:.8rem;font-weight:700;letter-spacing:.06em;padding:.2rem .52rem}.main-stage{min-height:0;align-content:safe center;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(111,138,184,.45) rgba(21,26,34,.2)}.main-stage,.start-screen{display:grid;justify-items:center}.start-screen{width:min(660px,100%);margin:0 auto;border:1.5px solid var(--border);border-radius:1.1rem;background:var(--panel);align-content:center;text-align:center;padding:clamp(2rem,5vw,3.2rem) clamp(1.2rem,4vw,2.6rem);box-shadow:0 10px 24px rgba(0,0,0,.3)}.start-screen-eyebrow{margin:0 0 .7rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);border:1px solid var(--gold-border);border-radius:999px;background:var(--gold-soft);padding:.24rem .7rem}.start-screen-title{margin:0;font-size:clamp(2.1rem,4.5vw,2.6rem);font-weight:700}.start-screen-sub{margin:.7rem 0 0;color:var(--muted);font-size:1.02rem;line-height:1.5;max-width:42ch}.start-screen-stats{margin:1.1rem 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem}.start-screen-stat{font-size:.84rem;font-weight:600;color:#d8e4ff;border:1px solid rgba(104,127,168,.55);background:rgba(37,49,70,.5);border-radius:999px;padding:.26rem .66rem}.start-row{margin-top:1.6rem;display:flex;justify-content:center;flex-wrap:wrap;gap:.8rem}.start-button{border:1.5px solid var(--border);border-radius:999px;background:var(--panel);color:var(--text);padding:.75rem 1.35rem;font-size:.95rem;font-weight:600;cursor:pointer;min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.start-button-primary{background:var(--active);border-color:color-mix(in srgb,var(--gold) 75%,transparent)}.nav-reset{margin:0}.study-shell{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;justify-content:center;grid-gap:1rem;gap:1rem;width:min(1120px,100%)}.arrow-block{display:flex;flex-direction:column;align-items:center;gap:.4rem}.arrow-button{width:58px;height:58px;border-radius:999px;border:1.5px solid var(--gold-border);background:transparent;color:var(--gold);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.study-nav-row{display:flex;justify-content:center;align-items:flex-start;gap:clamp(1rem,3.5vw,2.5rem);width:100%;padding:0 .35rem}.card-stack{width:100%;margin-inline:auto}.card-stack,.quiz-wrap{display:grid;grid-gap:.75rem;gap:.75rem}.quiz-wrap{justify-items:center;margin-top:.35rem}.quiz-prompt{margin:0;font-size:1.12rem;font-weight:600;color:var(--text)}.quiz-options{display:grid;grid-template-columns:1fr;grid-gap:.55rem;gap:.55rem;width:min(480px,100%)}.quiz-option{border:1.5px solid var(--border);border-radius:.82rem;background:rgba(20,30,44,.86);color:var(--text);min-height:52px;padding:.62rem .8rem;font-size:.98rem;font-weight:600;text-align:center;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease;display:flex;gap:.55rem}.quiz-key,.quiz-option{align-items:center;justify-content:center}.quiz-key{flex-shrink:0;display:inline-flex;min-width:1.45rem;height:1.45rem;border:1px solid rgba(104,127,168,.55);border-radius:.35rem;background:rgba(13,20,33,.72);color:var(--muted);font-family:inherit;font-size:.78rem;font-weight:700}.quiz-option-text{min-width:0}.quiz-option:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(122,160,225,.28),0 8px 18px rgba(0,0,0,.26)}.quiz-option.correct{border-color:rgba(63,202,114,.8);background:rgba(20,82,48,.36);box-shadow:0 0 0 1px rgba(63,202,114,.5),0 10px 24px rgba(14,45,27,.45)}.quiz-option.wrong{border-color:rgba(233,96,125,.8);background:rgba(95,28,42,.35);animation:quizShake .22s linear}.quiz-filter-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem 1.1rem;margin-bottom:.85rem}.quiz-filter{display:inline-flex;align-items:center;gap:.5rem}.quiz-filter-label{font-size:.8rem;color:var(--muted)}.quiz-select-shell{position:relative;display:inline-flex;align-items:center}.quiz-select-shell:after{content:"▾";position:absolute;right:.85rem;pointer-events:none;color:var(--muted);font-size:.8rem}.quiz-filter-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1.5px solid var(--border);border-radius:999px;background:var(--panel);color:var(--text);font:inherit;font-size:.88rem;font-weight:600;padding:.5rem 2rem .5rem .9rem;min-height:40px;cursor:pointer;touch-action:manipulation}.details-new-chip{font-size:.78rem;font-weight:700;color:#ffe7c4;padding:.16rem .15rem}.reference-w3c-link{margin-top:.55rem;display:inline-block;align-self:flex-start;color:var(--link);font-size:.88rem;text-decoration:underline;text-underline-offset:2px;border-radius:.3rem}.quiz-progress-row{display:flex;align-items:center;justify-content:center;gap:.6rem}.quiz-progress{margin:0;font-size:.92rem;color:var(--muted)}.quiz-score-chip{display:inline-flex;align-items:center;border:1px solid rgba(96,190,137,.5);border-radius:999px;background:rgba(19,44,31,.5);color:#8ed9ae;font-size:.8rem;font-weight:700;letter-spacing:.04em;padding:.18rem .55rem}.status-score-chip{display:none}.sc-quiz-text{max-width:85%;font-size:clamp(1.4rem,2.6vw,2.1rem);line-height:1.3;font-weight:700}.sc-quiz-quote,.sc-quiz-text{margin:0;text-align:center;color:var(--text)}.sc-quiz-quote{max-width:min(620px,88%);font-size:clamp(1.02rem,1.8vw,1.25rem);line-height:1.55;font-weight:500}.quiz-next-row{display:flex;justify-content:center}.quiz-summary{width:min(720px,100%);margin-inline:auto;border:1.5px solid var(--border);border-radius:1rem;background:var(--panel);box-shadow:0 10px 24px rgba(0,0,0,.28);padding:1.4rem 1.5rem 1.5rem;display:grid;justify-items:center;grid-gap:.55rem;gap:.55rem}.quiz-summary-kicker{margin:0;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#a9bce3}.quiz-summary-score{margin:0;font-size:2.6rem;font-weight:800;line-height:1;color:var(--text)}.quiz-summary-message{margin:0;font-size:1rem;color:var(--muted)}.mastery-block{width:min(420px,100%);display:grid;grid-gap:.45rem;gap:.45rem;margin-top:.35rem}.mastery-line{margin:0;font-size:.88rem;color:var(--muted);text-align:center}.mastery-num{font-family:var(--font-mono),ui-monospace,monospace;font-weight:700;color:var(--text)}.mastery-bar{height:6px;border-radius:999px;background:var(--border);overflow:hidden}.mastery-fill{display:block;height:100%;border-radius:999px;background:rgba(96,190,137,.75)}.mastery-rows{list-style:none;margin:.25rem 0 0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem}.mastery-row{display:flex;align-items:center;gap:.6rem}.mastery-row-label{width:7.2rem;flex-shrink:0;font-size:.8rem;color:var(--muted);text-align:left}.mastery-row-bar{flex:1 1;height:5px;border-radius:999px;background:var(--border);overflow:hidden}.mastery-row-num{font-family:var(--font-mono),ui-monospace,monospace;font-size:.72rem;color:var(--muted);width:2.9rem;flex-shrink:0;text-align:right}.quiz-summary-list{list-style:none;margin:.5rem 0 .4rem;padding:0;width:100%;display:grid;grid-gap:.4rem;gap:.4rem;max-height:38vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(111,138,184,.45) rgba(21,26,34,.2)}.summary-row{display:flex;align-items:baseline;gap:.55rem;border-radius:.6rem;padding:.48rem .65rem;font-size:.92rem}.summary-row.correct{border:1px solid rgba(96,190,137,.4);background:rgba(19,44,31,.4)}.summary-row.missed{border:1px solid hsla(0,56%,64%,.4);background:rgba(50,22,24,.4)}.summary-mark{font-weight:800;flex-shrink:0}.summary-row.correct .summary-mark{color:#8ed9ae}.summary-row.missed .summary-mark{color:#efa3a3}.summary-crit{color:var(--text);min-width:0}.summary-answer{margin-left:auto;flex-shrink:0;color:var(--muted);font-size:.84rem}.quiz-option:disabled{cursor:default;opacity:.6}.quiz-option:disabled:hover{transform:none;box-shadow:none}.quiz-message{margin:0;min-height:1.4rem;font-size:.95rem;color:var(--muted)}.quiz-feedback{margin:0;width:min(480px,100%);border-radius:.7rem;padding:.55rem .9rem;font-size:1.05rem;font-weight:800;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;gap:.6rem;text-align:center}.quiz-feedback.correct{color:#9df1b5;background:rgba(20,82,48,.32);border:1.5px solid rgba(63,202,114,.65);animation:quizPop .3s ease-out}.quiz-feedback.wrong{color:#ffb6c2;background:rgba(95,28,42,.32);border:1.5px solid rgba(233,96,125,.65)}@keyframes quizShake{0%{transform:translateX(0)}25%{transform:translateX(-3px)}50%{transform:translateX(3px)}75%{transform:translateX(-2px)}to{transform:translateX(0)}}@keyframes quizPop{0%{transform:scale(.85);opacity:.6}to{transform:scale(1);opacity:1}}.example-overlay{position:fixed;inset:0;z-index:200;background:rgba(5,9,16,.74);backdrop-filter:blur(10px) saturate(65%);-webkit-backdrop-filter:blur(10px) saturate(65%);padding:.5rem .5rem .75rem;display:flex;flex-direction:column;gap:.35rem}@media (pointer:coarse){.example-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(5,9,16,.93)}}.overlay-close{align-self:center;z-index:2}.example-overlay-image-wrap{position:relative;width:100%;flex:1 1;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden}.example-overlay-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none;image-rendering:auto}.flashcard{width:100%;min-height:360px;display:flex;border:1.5px solid var(--border);border-radius:1rem;background:var(--panel);color:var(--text);box-shadow:0 10px 24px rgba(0,0,0,.28);animation:cardIn .3s linear}@keyframes cardIn{0%{transform:rotateY(-8deg);opacity:.8}to{transform:rotateY(0);opacity:1}}.card-back,.card-front{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px}.reference-back{display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:.5rem;padding:.7rem .9rem}.reference-topbar{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;min-width:0}.reference-hero{display:flex;justify-content:center}.reference-hero .reference-image-trigger{width:min(500px,100%)}.reference-image-trigger{border:0;background:transparent;padding:0;cursor:zoom-in;border-radius:.75rem}.reference-image-trigger .example-image-frame{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.reference-image-trigger:hover .example-image-frame{transform:translateY(-1px);box-shadow:0 10px 22px rgba(0,0,0,.38)}.reference-image-trigger:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.card-front{position:relative}.flashcard.quiz-card{min-height:240px}.sc-quiz-kicker{margin:0 0 .6rem;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#a9bce3}.sc-quiz-id{margin:0;text-align:center;font-size:clamp(3rem,7vw,4.6rem);line-height:1;font-weight:800;letter-spacing:.03em;color:var(--text)}.example-image-frame{position:relative;width:min(620px,100%);border:1.5px solid #3a4354;border-radius:.75rem;background:var(--panel-soft);box-shadow:0 8px 20px rgba(0,0,0,.35);padding:6px;overflow:hidden}.reference-back .example-image-frame{width:100%;max-width:none;margin:0 auto}.example-image-shell{position:relative;width:100%;aspect-ratio:16/9;height:auto;border-radius:.4rem;overflow:hidden;background:transparent}.example-image{position:absolute;inset:0;width:100%;height:100%;display:block;border:0;object-fit:contain;object-position:center;transform:none}.reference-title{margin:0 .3rem 0 0;font-size:1.2rem;font-weight:700;line-height:1.2;min-width:0}.reference-meta-divider{height:1px;background:linear-gradient(90deg,rgba(101,128,172,.55),rgba(101,128,172,.08),rgba(101,128,172,0))}.reference-sections{margin-top:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.reference-section{border:1px solid rgba(66,80,104,.5);background:rgba(13,20,32,.52);border-radius:.8rem;padding:.5rem .62rem;min-width:0}.reference-section h3{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:#a9bce3}.reference-section p{margin:.34rem 0 0;font-size:.82rem;line-height:1.36;color:var(--text)}.reference-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.reference-example{border-radius:.8rem;padding:.5rem .62rem;min-width:0}.reference-example h3{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.reference-example p{margin:.34rem 0 0;font-size:.82rem;line-height:1.36;color:var(--text)}.example-pass{border:1px solid rgba(96,190,137,.5);background:rgba(19,44,31,.5)}.example-pass h3{color:#8ed9ae}.example-fail{border:1px solid hsla(0,56%,64%,.5);background:rgba(50,22,24,.5)}.example-fail h3{color:#efa3a3}.reference-expand-hint{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:2;pointer-events:none;margin:0;padding:.24rem .58rem;border-radius:999px;border:1px solid rgba(117,146,196,.55);background:rgba(13,20,33,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);font-size:.9rem;letter-spacing:.02em;color:#c1d4f6;opacity:.92}.hidden{display:none!important}.criteria-row:hover,.group-toggle:hover,.start-button:hover{box-shadow:0 0 0 1px rgba(122,160,225,.32),0 8px 18px rgba(0,0,0,.3);border-color:rgba(122,160,225,.5)}.arrow-button:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--gold) 35%,transparent),0 8px 18px rgba(0,0,0,.3);border-color:var(--gold);background:var(--gold-soft)}.start-button:hover{transform:translateY(-1px)}.details-id-badge{margin:0;font-family:var(--font-mono),ui-monospace,monospace;font-size:.9rem;font-weight:700;color:var(--gold);padding:.2rem .15rem;letter-spacing:.02em;flex-shrink:0}.details-level{font-size:.8rem;font-weight:700;padding:.18rem .15rem}.details-level-a{color:#ccf7d8}.details-level-aa{color:#dbe7ff}.details-level-aaa{color:#ffe7c4}.details-tech-chip{font:inherit;font-size:.78rem;color:#d8e4ff;border:1px solid rgba(104,127,168,.55);background:rgba(37,49,70,.5);border-radius:999px;padding:.16rem .46rem;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.details-tech-chip:hover{border-color:rgba(144,203,255,.8)}.details-tech-chip.active{color:var(--gold);background:var(--gold-soft);border-color:var(--gold);font-weight:700}.details-tech-chip.active:hover{border-color:var(--gold)}.tag-filter-chip{font:inherit;font-size:.82rem;font-weight:600;color:var(--gold);border:1px solid var(--gold-border);background:var(--gold-soft);border-radius:999px;padding:.3rem .8rem;display:inline-flex;align-items:center;gap:.55rem;justify-self:start;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.tag-filter-chip:hover .tag-filter-clear{text-decoration:underline;text-underline-offset:3px}.tag-filter-clear{color:var(--text);border-left:1px solid rgba(104,127,168,.7);padding-left:.55rem}.sidebar-filter-chip{margin-bottom:.7rem}.sidebar-toggle-badge{position:absolute;top:-7px;right:-7px;background:var(--gold);color:#0f1115;font-size:.72rem;font-weight:700;line-height:1;border-radius:999px;padding:.18rem .4rem}@media (max-width:1024px){.learn-layout{grid-template-columns:1fr;overflow:hidden}.learn-sidebar{position:absolute;inset:0 auto 0 0;width:min(320px,86vw);max-width:100%;border-right:1.5px solid var(--border);border-bottom:0;transform:translateX(-104%);visibility:hidden;transition:transform .22s ease,visibility 0s linear .22s;z-index:40;pointer-events:none;box-shadow:0 16px 34px rgba(0,0,0,.45)}.learn-sidebar.open{transform:translateX(0);visibility:visible;transition:transform .22s ease;pointer-events:auto}.sidebar-backdrop{display:block;position:absolute;inset:0;border:0;padding:0;margin:0;background:rgba(6,9,16,.58);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:30;cursor:pointer}.sidebar-toggle{display:inline-flex}.sidebar-backdrop.quiz-drawer-backdrop{display:none}.study-shell{grid-template-columns:1fr}.study-nav-row{gap:clamp(.85rem,4.5vw,1.8rem)}}@media (min-width:769px) and (max-height:860px){.reference-hero .reference-image-trigger{width:min(396px,100%)}.reference-back{gap:.4rem;padding:.55rem .9rem}.reference-example,.reference-section{padding:.42rem .6rem}.study-shell{gap:.55rem}.arrow-button{width:48px;height:48px}}@media (min-width:769px) and (max-height:720px){.reference-hero .reference-image-trigger{width:min(360px,100%)}}@media (max-width:768px){.site-header{padding:calc(.35rem + env(safe-area-inset-top)) calc(1rem + env(safe-area-inset-right)) .35rem calc(1rem + env(safe-area-inset-left))}.site-logo{height:28px}.site-title-link{padding:.5rem 0;margin:-.5rem 0}.status-text{font-size:.85rem;gap:.4rem}.arrow-button{width:48px;height:48px}.site-footer{gap:.15rem .7rem;padding:.3rem calc(1rem + env(safe-area-inset-right)) calc(.3rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left))}.footer-copyright,.footer-link,.footer-sep{font-size:.72rem}.learn-main{padding:.5rem}.mode-toggle{display:none}.sidebar-mode-section{display:block;border-bottom:1.5px solid var(--border);margin-bottom:.9rem;padding-bottom:.55rem}.learn-sidebar.quiz-drawer{display:block}.sidebar-toggle.sidebar-toggle-quiz{display:inline-flex}.sidebar-backdrop.quiz-drawer-backdrop{display:block}.study-shell{min-height:100%;grid-template-rows:1fr auto}.study-nav-row{position:-webkit-sticky;position:sticky;bottom:0;z-index:5;background:var(--bg);border-top:1.5px solid var(--border);padding:.4rem .35rem calc(.4rem + env(safe-area-inset-bottom))}.learn-top-row{flex-direction:column;align-items:stretch;gap:.45rem}.top-left-group{flex:1 1 auto;width:100%}.main-stage{align-content:start}.start-screen-title{font-size:1.8rem}.start-row{flex-direction:column;align-items:stretch}.start-button{width:100%;font-size:1rem}.summary-row{flex-wrap:wrap}.summary-answer{margin-left:1.45rem;flex-basis:100%}.quiz-summary{padding:1.1rem 1rem 1.2rem}.flashcard{min-height:300px}.card-back,.card-front{padding:20px}.reference-back{gap:.72rem;padding:.85rem}.reference-examples,.reference-sections{grid-template-columns:1fr}.reference-example p,.reference-section p{font-size:.93rem}.reference-title{font-size:1.05rem}}@media (max-width:1024px) and (max-height:480px) and (orientation:landscape){body.app-started .site-header{display:none}body.app-started .top-row-logo{display:inline-flex}.top-row-logo .site-logo{height:22px}.learn-main{padding:.4rem .55rem}.learn-top-row{flex-direction:row;align-items:center;gap:.65rem;margin-bottom:.45rem}.status-text{font-size:.85rem}.status-principle-chip,.status-score-chip{margin-left:auto}.status-score-chip{display:inline-flex}.mode-toggle{display:none}.sidebar-mode-section{display:block;border-bottom:1.5px solid var(--border);margin-bottom:.9rem;padding-bottom:.55rem}.learn-sidebar.quiz-drawer{display:block}.sidebar-toggle.sidebar-toggle-quiz{display:inline-flex}.sidebar-backdrop.quiz-drawer-backdrop,.sidebar-quiz-tools{display:block}.sidebar-quiz-filters{display:grid;grid-gap:.45rem;gap:.45rem;margin-bottom:.55rem}.sidebar-quiz-filters .quiz-filter{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.quiz-filter-row,.quiz-progress-row{display:none}.study-shell-reference{padding-inline:56px}.study-nav-row{display:contents}.arrow-block{position:fixed;top:50%;transform:translateY(-50%);z-index:20}.arrow-block.left{left:max(6px,env(safe-area-inset-left))}.arrow-block.right{right:max(6px,env(safe-area-inset-right))}.arrow-button{width:48px;height:48px}.flashcard{min-height:0}.card-back,.card-front{padding:16px}.card-stack-quiz{grid-template-columns:minmax(0,46fr) minmax(0,54fr);align-items:stretch;gap:.7rem}.card-stack-quiz .quiz-wrap{margin-top:0;align-content:center;justify-items:stretch;gap:.5rem;min-width:0}.quiz-prompt{font-size:.98rem;text-align:center}.quiz-options{width:100%;gap:.45rem}.quiz-option{min-height:44px;padding:.4rem .7rem;font-size:.92rem}.quiz-message{text-align:center}.quiz-feedback{width:100%;padding:.4rem .7rem;font-size:.95rem}.quiz-next-row .start-button{padding:.45rem 1.1rem;font-size:.95rem}.sc-quiz-id{font-size:2rem}.sc-quiz-text{font-size:1.15rem;max-width:100%}.sc-quiz-quote{font-size:.98rem;max-width:100%}.sc-quiz-kicker{margin-bottom:.4rem}.site-footer{gap:.1rem .6rem;padding:.22rem calc(1rem + env(safe-area-inset-right)) calc(.22rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left))}.footer-copyright,.footer-link,.footer-sep{font-size:.7rem}.start-screen{padding:1.1rem 1.3rem}.start-screen-title{font-size:1.6rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (pointer:coarse){.details-tech-chip,.feedback-radio-row,.feedback-submit,.mode-toggle-button,.quiz-filter-select,.sidebar-mode-row,.tag-filter-chip{min-height:44px}.footer-link{display:inline-block;padding:.6rem .4rem}}@font-face{font-family:__Schibsted_Grotesk_e8899d;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/56069e83bb5b2425-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Schibsted_Grotesk_e8899d;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/91601dd83defba07-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Schibsted_Grotesk_Fallback_e8899d;src:local("Arial");ascent-override:93.46%;descent-override:24.67%;line-gap-override:0.00%;size-adjust:104.49%}.__className_e8899d{font-family:__Schibsted_Grotesk_e8899d,__Schibsted_Grotesk_Fallback_e8899d;font-style:normal}.__variable_e8899d{--font-sans:"__Schibsted_Grotesk_e8899d","__Schibsted_Grotesk_Fallback_e8899d"}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ae822095a172cc5c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3c70c5716f1730b3-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fc727f226c737876-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/77fb5eec12c66d49-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/281dae1e814de8c6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Mono_e8b655;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/806de4d605d3ad01-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Mono_Fallback_e8b655;src:local("Arial");ascent-override:81.58%;descent-override:26.30%;line-gap-override:0.00%;size-adjust:137.28%}.__className_e8b655{font-family:__Space_Mono_e8b655,__Space_Mono_Fallback_e8b655;font-style:normal}.__variable_e8b655{--font-mono:"__Space_Mono_e8b655","__Space_Mono_Fallback_e8b655"}