:root{--bg:#faf8f2;--paper:#fffdfa;--ink:#183b42;--muted:#74868a;--teal:#256e76;--deep:#18454d;--mint:#d5f3e7;--mint2:#ebf9f1;--pink:#ffe5e9;--coral:#eb798b;--yellow:#fff1c6;--blue:#e3f1ff;--violet:#eee8fb;--line:#e8e8e0;--shadow:0 18px 48px rgba(35,78,79,.07);--r:22px;--sidebar:266px;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',system-ui,-apple-system,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.55}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a{color:var(--teal)}a:hover{text-decoration:underline}svg{max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ec8eaa;outline-offset:3px}::selection{background:#ffced7;color:var(--deep)}.serif,h1,h2,h3,.display{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.037em}.shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);display:flex;flex-direction:column;background:#fffdf8;border-right:1px solid var(--line);padding:29px 16px 18px;z-index:50;overflow-y:auto}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink);padding:0 10px 24px}.brandlogo{height:44px;width:44px;border-radius:15px;background:var(--mint);display:grid;place-items:center;flex-shrink:0}.brand strong{font-size:21px;display:block;letter-spacing:-.08em;font-family:Fraunces,serif}.brand small{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--muted);font-weight:800}.side-label{color:#93a0a0;font-size:10px;letter-spacing:.15em;font-weight:800;text-transform:uppercase;margin:16px 14px 6px}.nav-btn{border:0;background:transparent;text-align:left;display:flex;gap:12px;align-items:center;padding:12px 13px;border-radius:14px;width:100%;color:#577075;font-weight:700;margin:2px 0;transition:background .18s,transform .18s,color .18s}.nav-btn:hover{background:#eff7f2;color:var(--deep);transform:translateX(2px)}.nav-btn.active{background:var(--mint);color:#15585a}.nav-btn svg{width:18px;height:18px;stroke-width:1.9;flex-shrink:0}.nav-btn small{margin-left:auto;background:#fff;border-radius:7px;padding:1px 6px;color:var(--deep);font-size:10px}.side-bottom{margin-top:auto;padding:18px 9px 0}.side-note{padding:16px;border:1px solid #ffdde3;background:#fff3f3;border-radius:17px;color:#8e5963;font-size:12px}.side-note strong{color:#b75e75}.side-note .heart{font-size:23px;float:right}.side-foot{font-size:10px;color:#97a1a0;margin-top:16px;text-align:center}.main{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));min-width:0}.content{max-width:1190px;margin:auto;padding:36px 43px 96px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:16px}.crumb{color:#92a2a3;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;display:flex;gap:9px;align-items:center}.crumb .dash{width:23px;height:1px;background:#a9b7b5}.topright{display:flex;align-items:center;gap:9px}.tiny-pill{border:1px solid var(--line);border-radius:999px;background:var(--paper);padding:8px 12px;color:var(--teal);font-weight:800;font-size:11px;display:flex;align-items:center;gap:7px}.tiny-pill .dot{background:#70be9e;width:7px;height:7px;border-radius:50%}.mobilehead{display:none}.welcome-head{font-size:clamp(34px,4.2vw,56px);line-height:1.1;margin:7px 0 10px}.sub{color:var(--muted);max-width:670px;font-size:15px;line-height:1.7}.eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#469688;display:flex;gap:7px;align-items:center}.title-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:21px}.title-row h1{margin:3px 0 5px;font-size:clamp(33px,3.4vw,49px);line-height:1.1}.title-row p{margin:0;color:var(--muted)}.btn{border:1px solid transparent;background:var(--deep);color:white;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;border-radius:13px;padding:13px 18px;transition:transform .2s,box-shadow .2s,background .2s;text-decoration:none;white-space:nowrap}.btn:hover{transform:translateY(-2px);box-shadow:0 9px 18px #18454d24;text-decoration:none}.btn:active{transform:scale(.98)}.btn.secondary{background:#fff;color:var(--deep);border-color:var(--line)}.btn.soft{background:var(--mint);color:var(--deep)}.btn.pink{background:var(--coral);color:white}.btn.sm{padding:9px 13px;font-size:12px;border-radius:11px}.btn.ghost{background:transparent;color:var(--teal);border-color:transparent}.btn svg{width:17px;height:17px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 5px 22px #1d5d5b05}.panel{padding:25px}.hero{background:#d9f4e9;border-radius:29px;min-height:310px;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;position:relative;padding:32px 32px 0 38px;border:1px solid #cce9dc}.hero-copy{z-index:1;padding-bottom:35px}.hero h2{font-size:clamp(36px,3.9vw,58px);line-height:1.08;margin:11px 0 15px}.hero h2 i{font-style:normal;color:#cf7184}.hero p{font-size:14px;color:#557e7e;line-height:1.7;max-width:375px}.hero-art{align-self:end;min-width:0;height:292px;margin-right:-32px}.hero-art svg{width:100%;height:100%;display:block}.hero-art .float{animation:bob 4s ease-in-out infinite}.hero-art .float2{animation:bob 5s ease-in-out infinite reverse}.hero-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.meta-line{display:flex;gap:14px;align-items:center;margin-top:20px;color:#738f87;font-weight:700;font-size:11px;flex-wrap:wrap}.meta-line span{display:flex;align-items:center;gap:4px}.meta-line .sparkle{color:#d67186}.grid{display:grid;gap:16px}.cols3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols4{grid-template-columns:repeat(4,minmax(0,1fr))}.section-h{display:flex;justify-content:space-between;align-items:center;margin:34px 0 14px;gap:12px}.section-h h2{font-size:24px;margin:0}.section-h p{color:var(--muted);margin:0}.section-h .linkbtn{background:transparent;border:0;color:var(--teal);font-weight:800}.stat{padding:19px 20px;min-height:115px}.stat .iconbox{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;font-size:21px;margin-bottom:12px}.stat strong{font-family:Fraunces,serif;font-size:30px;display:block;line-height:1}.stat span{color:var(--muted);font-size:12px;font-weight:600}.progress-track{height:8px;border-radius:12px;background:#e8efeb;overflow:hidden}.progress-fill{height:100%;border-radius:12px;background:#6ec5af;transition:width .45s ease}.module-card{padding:22px;cursor:pointer;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;flex-direction:column;min-height:205px}.module-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#c9e7d7}.mod-emoji{font-size:25px;background:var(--mint2);display:grid;place-items:center;width:51px;height:51px;border-radius:15px}.module-card h3{font-family:'DM Sans',sans-serif;font-size:15px;letter-spacing:-.025em;margin:14px 0 6px}.module-card p{color:var(--muted);font-size:12px;line-height:1.6;margin:0 0 17px;flex:1}.mod-foot{display:flex;justify-content:space-between;align-items:center;color:#8ba0a0;font-size:11px;font-weight:800}.mod-foot b{color:#31978d}.mod-foot .arrow{width:27px;height:27px;border-radius:50%;background:#e9f7ef;display:grid;place-items:center;color:#27776d}.filterrow{display:flex;gap:8px;flex-wrap:wrap;margin:21px 0}.chip{border-radius:999px;border:1px solid var(--line);background:#fff;color:#7b8c8e;padding:9px 15px;font-size:12px;font-weight:800;transition:background .2s}.chip:hover{background:#eff7f2}.chip.active{background:var(--deep);color:white;border-color:var(--deep)}.learn-shell{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;align-items:start}.chapter-list{padding:10px;position:sticky;top:22px;max-height:82vh;overflow:auto}.chapter-mini{width:100%;text-align:left;border:0;background:transparent;border-radius:13px;padding:13px 12px;display:flex;align-items:center;gap:10px;color:#678086;font-weight:700}.chapter-mini:hover{background:#f0f8f4}.chapter-mini.active{background:var(--mint);color:var(--deep)}.chapter-mini span:first-child{font-size:19px}.chapter-mini .chapter-label{line-height:1.25;font-size:12px}.chapter-mini small{display:block;font-size:10px;color:#8d9e9f;margin-top:3px}.lesson{overflow:hidden}.lesson-header{padding:26px 28px 0}.lesson-label{font-size:11px;color:#6ca59c;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.lesson h2{font-size:clamp(29px,3vw,43px);line-height:1.12;margin:9px 0 12px}.lesson-header p{margin:0;color:var(--muted);max-width:730px;font-size:14px}.lesson-body{padding:25px 28px 0}.lesson-body h3{font-family:Fraunces,serif;font-size:31px;margin:4px 0 15px}.lesson-body .lead{font-size:17px;line-height:1.76;color:#375961;margin-bottom:24px}.content-chunk{padding:18px 19px;border-radius:15px;margin-bottom:12px;background:#eff8f3;display:flex;gap:14px;align-items:flex-start}.content-chunk.why{background:#fff4e3}.content-chunk.avoid{background:#fff0f2}.content-chunk .em{font-size:20px;width:31px;flex-shrink:0}.content-chunk strong{display:block;margin-bottom:3px;color:#2b5d5b}.content-chunk p{margin:0;color:#547178;line-height:1.7}.lesson-nav{border-top:1px solid var(--line);padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:25px}.dots{display:flex;flex-wrap:wrap;gap:6px}.stepdot{width:10px;height:10px;border:0;background:#d7e6df;border-radius:100%;padding:0}.stepdot.visited{background:#81c8b0}.stepdot.active{background:var(--deep);width:27px;border-radius:8px}.lesson-actions{display:flex;gap:9px}.visual-card{border-radius:19px;background:#e9f5f6;padding:17px;margin-top:15px;overflow:hidden}.visual-card svg{display:block;max-height:360px;margin:auto}.visual-caption{font-size:11px;color:#719398;margin:8px auto 0;max-width:650px;text-align:center}.big-visual{margin-top:0;margin-bottom:15px}.callout{border-radius:17px;background:#fff2f4;padding:17px 20px;color:#82586b;display:flex;gap:12px;align-items:center;line-height:1.6}.callout b{color:#ad5576}.quiz-panel{max-width:800px;margin:0 auto}.question-meta{color:#8ca1a0;letter-spacing:.11em;font-size:11px;font-weight:800;text-transform:uppercase;display:flex;justify-content:space-between;gap:10px}.question-title{font-size:clamp(25px,3.1vw,38px);margin:16px 0 24px;line-height:1.24}.choices{display:grid;gap:10px}.choice{border:1px solid #e0e7e1;border-radius:15px;background:#fff;display:flex;gap:13px;align-items:center;text-align:left;padding:16px;color:#45656a;transition:background .15s,border-color .15s,transform .15s;width:100%;font-weight:700;line-height:1.55}.choice:hover:not(:disabled){border-color:#84c2b1;transform:translateX(2px);background:#f6fcf8}.choice .letter{font-size:12px;font-weight:800;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#f1f5f2;color:#819191;flex-shrink:0}.choice.correct{border:2px solid #75c3a3;background:#effbf4}.choice.correct .letter{background:#4aaf88;color:#fff}.choice.wrong{border:2px solid #ec9bab;background:#fff2f3}.choice.wrong .letter{background:#e17c90;color:white}.choice:disabled{cursor:default}.answer-box{margin-top:18px;padding:21px;border:1px solid #c5e4d4;background:#f0faf4;border-radius:17px;animation:slideup .28s ease}.answer-box.bad{border-color:#f2ccd2;background:#fff5f5}.answer-box h3{font-family:'DM Sans',sans-serif;font-size:16px;letter-spacing:0;margin:0 0 9px}.answer-box p{color:#547070;margin:0 0 9px;line-height:1.7}.answer-box .trap{font-size:12px;color:#7b797b;border-top:1px solid #d7e4db;padding-top:12px;margin-top:14px}.question-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:20px;flex-wrap:wrap}.question-card{padding:28px}.progress-rail{width:100%;height:8px;border-radius:12px;background:#e4eae7;overflow:hidden;margin:16px 0 28px}.progress-rail span{display:block;height:100%;background:#90cdb5;transition:width .3s}.flash-wrap{max-width:830px;margin:auto}.flash-frame{min-height:340px;cursor:pointer;perspective:1200px;position:relative;margin:25px 0 16px}.flash-inner{position:relative;width:100%;height:355px;transform-style:preserve-3d;transition:transform .56s cubic-bezier(.2,.75,.25,1)}.flash-frame.flipped .flash-inner{transform:rotateY(180deg)}.flash-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:28px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:37px;text-align:center;border:1px solid #d0e9df;box-shadow:var(--shadow);background:linear-gradient(145deg,#e7f7ed,#cdebe0)}.flash-back{transform:rotateY(180deg);background:linear-gradient(145deg,#fff5e8,#ffe4eb);border-color:#f3d5d4}.flash-face .flabel{position:absolute;top:22px;left:26px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#669d92;font-weight:800}.flash-face .flove{position:absolute;right:25px;top:20px;font-size:21px;color:#db87a0}.flash-face h2{max-width:620px;font-family:Fraunces,serif;font-size:clamp(25px,3.5vw,39px);line-height:1.24;margin:8px 0}.flash-face p{max-width:600px;color:#587577;font-size:14px}.flash-face .hint{position:absolute;bottom:22px;color:#8cabaa;font-size:11px}.flash-controls{display:flex;gap:11px;justify-content:center;flex-wrap:wrap}.flash-controls .btn{min-width:153px}.study-select{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}.result-wrap{padding:40px 30px;text-align:center;max-width:760px;margin:0 auto}.result-emoji{font-size:52px}.result-wrap h2{font-size:43px;margin:12px 0}.result-wrap p{color:var(--muted);max-width:520px;margin:0 auto 22px}.results-stats{display:flex;gap:15px;justify-content:center;margin:24px 0;flex-wrap:wrap}.result-stat{background:#f2f8f3;padding:16px 25px;border-radius:17px;min-width:120px}.result-stat strong{display:block;font-family:Fraunces;font-size:30px}.result-stat span{color:var(--muted);font-size:11px}.review-row{padding:19px;border-bottom:1px solid var(--line);}.review-row h4{font-size:15px;margin:0 0 8px}.review-row p{margin:5px 0;color:#6f878a;font-size:12px;line-height:1.7}.review-row .yes{color:#3e987b;font-weight:800}.review-row .no{color:#e27c8e;font-weight:800}.exam-options{display:flex;gap:10px;flex-wrap:wrap}.scenario-card{padding:22px;cursor:pointer;transition:transform .2s}.scenario-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.scenario-card .scenarioemoji{font-size:30px}.scenario-card h3{margin:11px 0 5px;font-family:'DM Sans';font-size:16px;letter-spacing:-.03em}.scenario-card p{color:var(--muted);line-height:1.5;font-size:12px;margin:0}.scenario-story{border-left:4px solid #b9d9ce;padding:17px 19px;background:#f0f8f4;color:#426a6c;border-radius:0 12px 12px 0;margin-bottom:23px;line-height:1.8}.steps{display:flex;gap:10px;margin:20px 0}.stepbubble{width:37px;height:37px;border-radius:50%;background:#eef4ee;color:#94a9a1;display:grid;place-items:center;font-weight:800}.stepbubble.done{background:#9bd5b8;color:white}.stepbubble.current{background:var(--deep);color:white}.quick-card{padding:21px;min-height:173px}.quick-card .quick-label{font-size:11px;color:#84a09b;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.quick-card h3{font-size:29px;margin:6px 0}.quick-card p{color:#718888;font-size:12px;margin:0;line-height:1.65}.refsource{padding:18px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px;text-decoration:none;color:inherit;transition:background .2s}.refsource:hover{background:#f4fbf7;text-decoration:none}.refsource strong{display:block}.refsource p{margin:3px 0 0;font-size:12px;color:var(--muted)}.refsource .linkicon{color:var(--teal);font-size:20px}.search{width:100%;background:#fff;border:1px solid #e3e7df;border-radius:14px;padding:14px 18px;color:var(--ink);outline:none}.search:focus{border-color:#84bfac}.checklist{padding:23px}.checkrow{display:flex;gap:13px;padding:13px 0;border-bottom:1px solid var(--line);align-items:start;cursor:pointer;font-weight:600;color:#4b6a6e}.checkrow:last-child{border:0}.checkrow input{width:20px;height:20px;accent-color:#4eaa8a;flex-shrink:0;margin:2px 0}.checkrow.done span{text-decoration:line-through;color:#a2afae}.glossary-item{padding:13px 19px;border-bottom:1px solid var(--line);display:flex;gap:18px;justify-content:space-between}.glossary-item strong{width:32%;flex-shrink:0}.glossary-item p{flex:1;color:var(--muted);margin:0}.notice{padding:17px 19px;border-radius:15px;background:#fff8e8;border:1px solid #f3e8c7;color:#8e7a49;font-size:12px;line-height:1.65}.notice strong{color:#796534}.footer{margin:45px 0 10px;text-align:center;color:#9aa6a4;font-size:11px}.footer .heart{color:#df8b9a}.love-quote{border-radius:24px;background:var(--pink);padding:24px;color:#935f6d;min-height:174px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.love-quote:after{content:'♡';font-size:130px;position:absolute;color:#f5cad1;right:6px;bottom:-70px;line-height:1}.love-quote b{position:relative;z-index:1;font-family:Fraunces;font-size:22px;line-height:1.25;font-weight:600}.love-quote span{position:relative;z-index:1;font-size:11px;margin-top:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:800}.empty{padding:45px 20px;text-align:center;color:var(--muted)}.empty .em{font-size:38px}.empty h3{font-size:23px;color:var(--ink);margin:10px 0}.micro{font-size:11px;color:var(--muted)}.inline-tag{background:#e6f7e9;border-radius:6px;padding:3px 8px;font-size:10px;font-weight:800;color:#3b9a79}.meter{height:9px;background:#e7efec;border-radius:20px;overflow:hidden}.meter span{display:block;height:100%;background:#78c3a4;border-radius:20px}.focus{background:#f2effd;padding:18px;border-radius:16px}.focus p{margin:5px 0 0;color:#7c739b;font-size:12px}.review-list{max-height:550px;overflow-y:auto}.save-note{font-size:11px;color:var(--muted);margin:10px 0}.diagram-overlay{font-size:11px;fill:#2b6870;font-weight:800}.diagram-label{font-size:10px;fill:#3e8391}.countdown{color:#ce7486;font-weight:800}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,16px);background:#194c50;color:white;border-radius:999px;padding:11px 20px;z-index:100;box-shadow:0 10px 36px #18454d4d;font-weight:700;font-size:12px;opacity:0;pointer-events:none;transition:opacity .26s,transform .26s}.toast.show{opacity:1;transform:translate(-50%,0)}#celebrate{pointer-events:none;position:fixed;inset:0;overflow:hidden;z-index:100}.confetti{position:absolute;top:-28px;font-size:17px;animation:fall var(--duration) cubic-bezier(.24,.53,.45,.98) forwards;left:var(--left);opacity:0;will-change:transform}.heartpop{position:fixed;pointer-events:none;font-size:22px;animation:heartRise 1.6s ease-out forwards;z-index:110}.mobile-nav{display:none}.desktop-only{}@keyframes fall{0%{transform:translateY(-20px) rotate(0deg);opacity:0}8%{opacity:1}100%{transform:translateY(110vh) rotate(var(--rotate));opacity:0}}@keyframes heartRise{0%{transform:translateY(0) scale(.3);opacity:0}20%{opacity:1}100%{transform:translateY(-130px) scale(1.4) rotate(24deg);opacity:0}}@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes slideup{from{opacity:0;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.09)}}.pulse{animation:pulse .95s infinite}.heartstamp{font-size:28px;color:#e5899e}.inline-link{border:0;background:transparent;color:var(--teal);text-decoration:underline;padding:0;font-weight:800}.split-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.benchmark{padding:13px 16px;background:#eef9ef;border-radius:12px;font-size:12px;color:#548375}.badgecount{background:#e6faf0;color:#3a9478;padding:4px 9px;border-radius:8px;font-size:11px;font-weight:800}.option-list{display:flex;gap:8px;flex-wrap:wrap}.lesson-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:15px}.index-item{border:1px solid var(--line);text-align:left;padding:12px 13px;background:#fff;border-radius:12px;color:var(--deep);font-weight:700}.index-item.active{background:#def4e8;border-color:#9ecfbb}.index-item small{display:block;color:#8e9e9b}.index-item:hover{background:#f2faf4}.svg-btn{border:0;background:transparent;font-weight:800;color:var(--teal);cursor:pointer}.guide-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.guide-detail{padding:24px;border-radius:20px;background:#f2faf7}.illustration-switch{background:#fff;padding:5px;border:1px solid var(--line);border-radius:12px;display:inline-flex;gap:3px}.illustration-switch button{border:0;border-radius:9px;background:transparent;padding:8px 12px;font-weight:700;color:#79918e}.illustration-switch button.active{background:var(--mint);color:var(--deep)}.sprintbox{display:flex;gap:10px;flex-wrap:wrap}.sprintbox .btn{flex:1}.divider{height:1px;background:var(--line);margin:20px 0}.small-screen{font-size:11px;color:var(--muted)}
@media(max-width:1200px){:root{--sidebar:235px}.content{padding:28px 26px 90px}.cols4{grid-template-columns:repeat(2,1fr)}.learn-shell{grid-template-columns:215px 1fr}}
@media(max-width:900px){:root{--sidebar:0px}.sidebar{display:none}.main{margin:0;width:100%}.mobilehead{display:flex;position:sticky;top:0;z-index:40;background:#fffdf8ec;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);padding:10px 17px;justify-content:space-between;align-items:center}.mobilehead .brand{padding:0}.mobilehead .brandlogo{width:34px;height:34px;border-radius:11px}.mobilehead .brand strong{font-size:18px}.mobilehead .brand small{font-size:8px}.content{padding:23px 20px 115px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fffdfaee;backdrop-filter:blur(18px);border-top:1px solid var(--line);z-index:50;justify-content:space-around;padding:8px 7px max(11px,env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:none;padding:7px 5px;border-radius:13px;min-width:48px;color:#93a5a2;font-weight:800;font-size:10px;display:flex;gap:2px;align-items:center;flex-direction:column}.mobile-nav button.active{color:#287e6b;background:#e8f7ed}.mobile-nav svg{width:20px;height:20px}.learn-shell{grid-template-columns:1fr}.chapter-list{display:flex;position:static;max-height:none;overflow:auto;white-space:nowrap;padding:7px}.chapter-mini{width:auto;flex-shrink:0}.chapter-mini .chapter-label{max-width:100px;white-space:normal}.topbar{margin-bottom:22px}}
@media(max-width:680px){.hero{display:flex;flex-direction:column;padding:26px 22px 0;min-height:0}.hero h2{font-size:41px}.hero-art{height:194px;width:calc(100% + 44px);margin:0 -22px;align-self:center}.hero-art svg{height:100%}.cols3,.cols2,.cols4{grid-template-columns:1fr}.stat{min-height:0}.title-row{align-items:start;flex-direction:column}.title-row h1{font-size:38px}.lesson-header{padding:23px 20px 0}.lesson-body{padding:20px 20px 0}.lesson-nav{padding:17px 20px;flex-direction:column;align-items:stretch}.lesson-actions{justify-content:space-between}.stepdot{width:8px;height:8px}.stepdot.active{width:22px}.question-card{padding:20px}.question-title{font-size:27px}.choice{padding:13px}.panel{padding:20px}.flash-inner{height:365px}.flash-frame{min-height:365px}.flash-face{padding:35px 24px}.flash-face h2{font-size:28px}.split-head{flex-direction:column}.glossary-item{flex-direction:column;gap:3px}.glossary-item strong{width:auto}.topright .tiny-pill:first-child{display:none}.refsource{align-items:start}.hero-cta .btn{flex:1}.content-chunk{padding:15px}.lesson h2{font-size:33px}.result-wrap h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.flash-inner{transition:none!important}}
/* Final bespoke interface refinements */
button.brand-action{border:0;background:transparent;width:100%;text-align:left;cursor:pointer}button.brand-action:hover{text-decoration:none}button.brand-action:focus-visible{border-radius:15px}
.brand-heart{color:#db8194;margin-left:2px}.page-h{font-size:clamp(29px,3.3vw,45px);line-height:1.12;margin:8px 0}.light{color:#a1b6b1}.stack{display:grid;gap:16px;align-content:start}.feature-title{font-family:Fraunces,Georgia,serif;font-size:clamp(22px,2vw,27px);line-height:1.19;margin:10px 0}.feature-copy{font-size:13px;color:#70868a;line-height:1.75;margin:10px 0 22px}.hero .eyebrow{color:#529a8c}.love-squiggle{font-size:20px;position:relative;z-index:1;color:#d78495;margin-bottom:8px}.quote-bubbles{position:absolute;right:23px;top:23px;font-size:23px;color:#ecb2bc;letter-spacing:10px}.priority-list{display:grid;gap:0;margin-top:10px}.priority-item{display:flex;align-items:center;gap:12px;border:0;border-bottom:1px solid var(--line);background:transparent;width:100%;padding:12px 2px;color:var(--ink);font-weight:750;text-align:left}.priority-item:hover{color:#3d9b86}.priority-item:last-child{border-bottom:0}.priority-item svg{margin-left:auto;color:#81afa1}.priority-n{font-size:10px;letter-spacing:.08em;color:#a5b5a8}.badgecount{white-space:nowrap;align-self:flex-start}.bookmarker{display:inline-flex;align-items:center;gap:7px;background:#fff8fa;border:1px solid #f0e0e4;border-radius:10px;padding:7px 10px;color:#bb7b8b;font-size:11px;font-weight:800}.bookmarker.saved{background:#ffe3ea;color:#a25b70}.recall-box{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;background:#f6f3fd;border:1px solid #eeebf7;border-radius:18px;margin:23px 0 28px}.recall-box h3{font-family:Fraunces,serif;font-size:22px;line-height:1.3;margin:9px 0}.recall-answer{color:#6d6889;margin:6px 0;font-weight:650}.recall-box .btn{flex-shrink:0}.study-dropdown{appearance:none;border-radius:12px;padding:10px 32px 10px 13px;border:1px solid #dfebe1;color:#336467;background:#fffdfa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%233b7777' stroke-width='2'%3E%3Cpath d='m4 7 6 6 6-6'/%3E%3C/svg%3E") right 9px center / 17px no-repeat;font-size:12px;font-weight:750;max-width:100%}.study-dropdown.full{display:block;width:100%;margin:8px 0 22px}.field-label{display:block;margin-top:21px;color:#557575;font-size:12px;font-weight:800}.switchrow{display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:16px 0}.switchrow input{margin:3px 0 0;width:20px;height:20px;accent-color:#55ac94;flex-shrink:0}.switchrow strong,.switchrow small{display:block}.switchrow strong{color:#3b6567;font-size:13px}.switchrow small{font-size:11px;color:#8d9c9b;line-height:1.55;margin-top:3px}.btn.large{width:100%;margin-top:16px;padding:17px;font-size:14px}.quiz-bigstat{font-family:Fraunces,serif;font-size:74px;letter-spacing:-.05em;line-height:1.3;color:#286c6a}.mini-bars>div{display:grid;grid-template-columns:75px 1fr 38px;gap:9px;align-items:center;margin:13px 0;color:#78918a;font-size:11px}.mini-bars b{font-size:10px;text-align:right}.compact-love{min-height:170px}.centered{justify-content:center}.result-actions,.settings-actions,.guide-bottom{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:18px}.guide-bottom{justify-content:flex-start}.love-envelope{border-radius:15px;background:#fff0f4;padding:21px;margin-top:23px;line-height:1.8;color:#a56b7a;font-weight:650}.flash-frame{border:0;padding:0;background:transparent;display:block;width:100%;text-align:initial}.flash-pager{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.choice-marker{margin-left:auto;color:#39a17a}.source-inline{font-size:12px;font-weight:800}.practice-points{display:grid;gap:10px;margin:15px 0}.practice-points>div{font-size:12px;color:#557978;padding:8px 0;border-bottom:1px solid #eef0e8}.practice-points>div:last-child{border:0}.modal-shade{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;background:#14383db3;backdrop-filter:blur(8px);padding:20px;animation:slideup .2s}.settings-modal{width:min(560px,100%);max-height:min(87vh,770px);overflow-y:auto;border-radius:24px;padding:27px;background:#fffefa;box-shadow:0 20px 70px #163b3b54}.settings-modal h2{font-size:30px;margin:8px 0 10px}.close-btn{border:0;border-radius:10px;background:#f6edf0;padding:9px 13px;color:#9f6976;font-size:16px;font-weight:800}.settings-modal .divider{margin:12px 0}.settings-actions{justify-content:flex-start}.surprise-overlay{position:fixed;inset:0;z-index:160;background:#2e4d52a6;backdrop-filter:blur(9px);display:grid;place-items:center;padding:22px;animation:slideup .25s}.surprise-card{position:relative;border-radius:30px;background:linear-gradient(150deg,#fff6f1,#ffe7ec);border:2px solid #fff9fb;box-shadow:0 30px 100px #8e586b35;max-width:550px;width:100%;padding:42px 35px 36px;text-align:center}.surprise-card h2{font-size:clamp(29px,5vw,43px);line-height:1.1;color:#935c6d}.surprise-card p{color:#87616d;font-size:15px;line-height:1.85}.super-heart{font-size:71px;animation:bob 3s ease-in-out infinite}.envelope-star{font-size:14px;color:#c9849c;letter-spacing:7px}.love-sign{display:block;margin-top:22px;font-family:Fraunces,serif;font-size:25px;color:#c87590}.close-surprise{position:absolute;right:18px;top:18px;background:#fff;border:0;border-radius:50%;height:35px;width:35px;font-size:26px;color:#bd8392}.hero .hero-art{pointer-events:none}.exam-options .btn{flex-shrink:0}body{overflow-x:hidden}a.source-inline:hover{color:#d2798f}
@media(max-width:680px){.recall-box{flex-direction:column;align-items:stretch}.recall-box .btn{align-self:flex-start}.lesson h2{font-size:clamp(28px,8vw,38px)}.feature-title{font-size:24px}.settings-modal{padding:22px}.flash-controls .btn{flex:1;min-width:125px;padding:11px}.flash-face h2{font-size:clamp(23px,6.5vw,31px)}.flash-face p{font-size:12px}.flash-face{padding:34px 23px}.flash-pager .btn{flex:1}.surprise-card{padding:39px 26px 25px}.page-h{font-size:34px}.crumb span:last-child,.crumb .dash{display:none}.hero{border-radius:22px}.recall-box h3{font-size:22px}.result-actions .btn{flex:1}.title-row{gap:9px}}
.mobile-more-shade{display:none}
@media(max-width:900px){.mobile-more-shade{display:block;position:fixed;inset:0;z-index:48;background:#173e45a3;backdrop-filter:blur(5px);animation:slideup .2s}.mobile-more-sheet{position:absolute;bottom:71px;left:12px;right:12px;border-radius:23px 23px 17px 17px;background:#fffdf7;border:1px solid #f0e5df;box-shadow:0 10px 50px #305d5b35;padding:23px}.mobile-more-item{display:flex;align-items:center;gap:14px;border:0;border-bottom:1px solid var(--line);background:transparent;width:100%;padding:15px 4px;color:#365e60;text-align:left;font-weight:800}.mobile-more-item:last-child{border:0}.mobile-more-item svg:last-child{margin-left:auto}}
.print-promo{display:flex;gap:18px;align-items:center;justify-content:space-between;margin:18px 0 12px;background:#eef7ef}.print-promo .feature-copy{margin-bottom:0}.print-promo .btn{flex-shrink:0}@media(max-width:680px){.print-promo{display:block}.print-promo .btn{margin-top:15px}}
body.motion-off *,body.motion-off *::before,body.motion-off *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
