:root{--ink:#243b36;--muted:#718078;--green:#164e45;--green-light:#e7f1eb;--paper:#fafbf8;--line:#e3e8e1;--serif:'Nunito',system-ui,sans-serif;--heading:'Nunito',system-ui,sans-serif;--body:'Inter',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a,button,input,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #b98848}input:focus,textarea:focus,select:focus{outline:2px solid #408b76}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--heading);font-weight:750;line-height:1.25;letter-spacing:-.045em}h1{font-size:48px}h2{font-size:30px}h3{font-size:20px}p{color:var(--muted)}.container{width:min(1180px,calc(100% - 80px));margin-inline:auto}.icon{flex-shrink:0;vertical-align:middle}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:13px 23px;background:var(--green);border:1px solid var(--green);border-radius:8px;color:#fff;font-weight:600;font-size:14px;line-height:1.5;transition:background .18s,transform .18s;white-space:normal}.button:hover{background:#236456;transform:translateY(-1px)}.button .icon{width:20px;height:20px}.button.secondary{background:transparent;color:var(--green);border-color:#cdd9d1}.button.secondary:hover{background:#eaf2ec}.button.light{background:#f5f4e8;color:var(--green);border-color:#f5f4e8}.button.small{min-height:40px;padding:9px 16px;font-size:13px}.full{width:100%}.link{border:0;background:none;padding:0;color:var(--green);font-size:13px;text-decoration:underline;text-underline-offset:4px}.eyebrow{font-size:max(10px, var(--mobile-min-font-size, 0px));font-weight:700;letter-spacing:.17em;color:#678679;display:block;margin-bottom:13px}.lead{font-size:17px;line-height:1.85;max-width:680px}.muted{color:var(--muted);font-size:13px}.skip{position:absolute;top:-100px;left:16px;z-index:100;background:var(--green);color:white;padding:12px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{width:min(1280px,calc(100% - 80px));height:98px;display:flex;align-items:center;justify-content:space-between;margin:auto}.brand{display:flex;align-items:center;gap:11px;font-family:var(--heading);font-size:19px;line-height:1.2;font-weight:800;letter-spacing:-.7px}.brand-mark{width:42px;height:46px;background:var(--green);color:#fff;border-radius:10px;display:grid;place-items:center}.brand-mark svg{width:28px;height:28px}.brand-light{font-weight:500}.brand small{display:block;font-family:var(--body);font-size:max(8px, var(--mobile-min-font-size, 0px));letter-spacing:.22em;font-weight:600;color:var(--muted);margin-top:7px}.header-inner nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:550}.nav-link:hover{color:#40927b}.nav-login{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--line);border-radius:7px}.nav-login .icon{width:16px;height:16px}.hero{display:grid;grid-template-columns:1.06fr 1fr;align-items:center;min-height:580px;padding-top:49px;padding-bottom:50px;gap:35px}.pill{display:inline-flex;align-items:center;gap:8px;font-size:max(10px, var(--mobile-min-font-size, 0px));font-weight:550;background:#edf1e8;border:1px solid #e1e7db;padding:5px 12px;border-radius:30px;color:#58765e;margin-bottom:24px}.live-dot{width:6px;height:6px;border-radius:50%;background:#728a51}.hero h1{font-size:58px;line-height:1.13;letter-spacing:-2.8px;margin-bottom:23px;position:relative;width:max-content;max-width:100%;font-weight:750}.hero h1 em{font-family:var(--serif);font-weight:400;color:#42836b;letter-spacing:-2px}.underline{position:absolute;width:215px;bottom:-8px;left:0;fill:none;stroke:#acc49b;stroke-width:3;stroke-linecap:round}.hero-copy>p{font-size:15px;line-height:1.85;margin-bottom:25px}.hero-benefits{display:flex;gap:23px;font-size:max(10px, var(--mobile-min-font-size, 0px));color:#7c897f;margin-top:18px}.hero-benefits span{display:flex;gap:6px;align-items:center}.hero-benefits .icon{width:13px;height:13px;color:#52846b}.hero-art{height:440px;position:relative;isolation:isolate;display:grid;place-items:center}.art-orbit{position:absolute;border:1px solid #e0e7da;border-radius:50%;z-index:-1}.orbit-one{width:380px;height:380px;background:#f0f2e9}.orbit-two{width:445px;height:445px;border-style:dashed}.art-spark{position:absolute;color:#c5a76a;font-size:38px}.spark-one{left:9%;top:23%}.spark-two{right:2%;bottom:25%;font-size:27px}.illustration-sheet{width:272px;background:#fff;border:1px solid #e2e6dd;border-radius:13px;padding:23px;box-shadow:0 22px 50px #364b3720;transform:rotate(-7deg);position:relative}.sheet-top{display:flex;gap:10px;align-items:center;font-family:var(--heading);font-size:max(11px, var(--mobile-min-font-size, 0px));font-weight:750}.sheet-icon{padding:7px;background:#e8f0e8;color:#538171;border-radius:7px}.sheet-icon .icon{width:20px;height:20px}.sheet-top small{display:block;font:max(8px, var(--mobile-min-font-size, 0px)) var(--body);color:#96a195;margin-top:3px}.sheet-dots{margin-left:auto;color:#b5c2b8;letter-spacing:2px}.sheet-progress{height:4px;background:#eef2ec;margin-top:22px;border-radius:8px}.sheet-progress span{display:block;width:68%;height:100%;background:#9bb7a0;border-radius:8px}.sheet-question{font-family:var(--heading);font-weight:650;font-size:14px;margin:22px 0 17px}.sheet-option{display:flex;align-items:center;gap:12px;border:1px solid #e7ece6;border-radius:6px;padding:9px;margin-bottom:9px}.sheet-option b{font-size:max(8px, var(--mobile-min-font-size, 0px));color:#8b9a8d;border:1px solid #e3e9e0;padding:3px 6px;border-radius:3px;font-weight:500}.sheet-option i{display:block;background:#e6eae3;height:5px;width:65%;border-radius:4px}.sheet-option:nth-of-type(5) i{width:55%}.sheet-option:nth-of-type(6) i{width:72%}.sheet-option.picked{background:#eef5ee;border-color:#94b79b}.picked b{background:#4f8069;color:white;border-color:#4f8069}.picked i{background:#c1d2bf}.picked .icon{width:15px;height:15px;color:#518365}.sheet-bottom{margin-top:19px;display:flex;align-items:center;justify-content:space-between;font-size:max(8px, var(--mobile-min-font-size, 0px));color:#819880}.sheet-bottom .icon{width:16px;height:16px}.floating-note{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border:1px solid #e2e7de;border-radius:9px;box-shadow:0 8px 20px #2e4d3810;font-weight:600;font-size:max(10px, var(--mobile-min-font-size, 0px));z-index:2}.floating-note small{display:block;font-weight:400;font-size:max(9px, var(--mobile-min-font-size, 0px));color:#92a092;margin-top:2px}.note-top{top:12px;right:-3px;transform:rotate(4deg)}.note-bottom{left:0;bottom:19px;transform:rotate(-3deg)}.mini-icon{width:30px;height:30px;display:grid;place-items:center;background:#e9f2e9;color:#58936f;border-radius:50%}.mini-icon .icon{width:17px;height:17px}.mini-icon.amber{background:#f9f0dd;color:#bb9849}.little-plant{position:absolute;width:85px;height:120px;right:0;bottom:13px;transform:rotate(3deg)}.trust-strip{background:#f0f3eb;border-top:1px solid #e8ece1;border-bottom:1px solid #e8ece1}.trust-strip>.container{display:flex;justify-content:space-between;gap:20px;padding-block:20px;font-size:max(11px, var(--mobile-min-font-size, 0px));color:#748372}.trust-strip span{display:flex;align-items:center;gap:9px}.trust-strip .icon{width:18px;height:18px;color:#6b876a}.trust-location{padding-left:35px;border-left:1px solid #dbe3d3}.categories-section{padding-block:64px 50px;scroll-margin-top:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.section-heading h2{margin-bottom:10px}.section-heading p{margin:0;font-size:13px}.search-box{display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--line);border-radius:7px;min-height:43px;padding:8px 13px;color:#8a998e}.search-box .icon{width:17px;height:17px}.search-box input{width:205px;border:0;background:none;font-size:max(11px, var(--mobile-min-font-size, 0px));outline:none;padding:3px 0;color:var(--ink)}.search-box:focus-within{outline:2px solid #8da98d}.catalog-tabs{display:flex;gap:8px;margin-bottom:25px;flex-wrap:wrap}.catalog-tabs button{font-size:max(11px, var(--mobile-min-font-size, 0px));font-weight:500;white-space:nowrap;padding:8px 13px;border:1px solid transparent;border-radius:6px;background:none;color:#839082}.catalog-tabs button:hover{background:#f0f3ec}.catalog-tabs button.active{color:var(--green);background:#ebf0e7;border-color:#dce6d6}.catalog-tabs button span{font-size:max(9px, var(--mobile-min-font-size, 0px));border:1px solid #d1ddca;border-radius:3px;padding:0 4px;margin-left:7px}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.category-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:11px;padding:24px 25px 17px;min-height:258px;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}.category-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px #2545320c;border-color:#b6cebb}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.category-icon{display:inline-grid;place-items:center;flex-shrink:0;width:43px;height:43px;border-radius:10px;background:#e8f2eb;color:#53836c}.category-icon .icon{width:25px;height:25px}.card-number{font-family:var(--heading);font-size:max(10px, var(--mobile-min-font-size, 0px));letter-spacing:.1em;color:#bdc7ba}.category-card h2{font-size:18px;letter-spacing:-.6px;margin-bottom:10px}.category-card p{font-size:max(11.5px, var(--mobile-min-font-size, 0px));line-height:1.85;margin-bottom:19px;max-width:290px}.card-bottom{margin-top:auto;padding-top:13px;border-top:1px solid #f0f2ed;display:flex;align-items:center;justify-content:space-between;font-size:max(10px, var(--mobile-min-font-size, 0px));color:#7f8d7c;gap:8px}.circle-arrow{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f3f6f0;color:#567b5b}.circle-arrow .icon{width:16px;height:16px}.purple .category-icon,.category-icon.purple{background:#eeebf8;color:#8a79af}.blue .category-icon,.category-icon.blue{background:#eaf1fa;color:#6c8fae}.orange .category-icon,.category-icon.orange{background:#fcf0df;color:#bc965a}.rose .category-icon,.category-icon.rose{background:#f6eaf0;color:#b1849c}.encouragement-card{background:#eef1e5;border-radius:11px;padding:31px 26px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.encouragement-card>span:first-child{font-size:max(8px, var(--mobile-min-font-size, 0px));letter-spacing:.12em;font-weight:600;color:#84936d;margin-bottom:21px}.encouragement-card h3{font-size:21px;line-height:1.5;font-weight:600;letter-spacing:-.6px;margin-bottom:11px;z-index:1}.encouragement-card h3 em{font-family:var(--serif);font-size:26px;color:#6f8c58;font-weight:400}.encouragement-card p{font-size:max(10px, var(--mobile-min-font-size, 0px));color:#8e9a7b;margin:0;z-index:1}.doodle-star{position:absolute;font-size:135px;color:#e0e6cf;right:-5px;bottom:-37px;line-height:1.5}.how-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:55px;padding-bottom:65px;border-top:1px solid var(--line)}.how-section h2{font-size:29px;line-height:1.4;margin-bottom:18px}.how-section>div>p{font-size:12px;line-height:1.9}.steps{list-style:none;padding:0;margin:0;display:grid;gap:21px}.steps li{display:flex;align-items:flex-start;gap:19px}.steps li>span{font-size:max(11px, var(--mobile-min-font-size, 0px));color:#8a9c79;background:#edf1e5;width:34px;height:34px;border:1px solid #e1e7d8;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.steps h3{font-size:14px;letter-spacing:-.3px;margin:3px 0 5px}.steps p{font-size:max(11px, var(--mobile-min-font-size, 0px));margin:0}.start-banner{background:var(--green);color:#fff;border-radius:12px;padding:35px 42px;display:flex;justify-content:space-between;align-items:center;gap:25px;position:relative;overflow:hidden}.start-banner .eyebrow{color:#b5ceaf;font-size:max(8px, var(--mobile-min-font-size, 0px))}.start-banner h2{font-size:24px;margin-bottom:9px}.start-banner p{color:#b3c9ba;font-size:12px;margin:0}.start-banner .button{flex-shrink:0;font-size:12px}.demo-disclaimer{display:flex;gap:10px;align-items:flex-start;padding-top:23px;padding-bottom:34px}.demo-disclaimer .icon{color:#93a38d;width:15px;height:15px;margin-top:4px}.demo-disclaimer p{font-size:max(10px, var(--mobile-min-font-size, 0px));color:#98a08f;max-width:850px;margin:0}.demo-disclaimer strong{font-weight:500}.site-footer{padding-block:37px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--line);margin-top:45px}.footer-brand{font-family:var(--heading);font-size:14px;letter-spacing:-.3px;font-weight:750}.footer-brand span{font-family:var(--body);display:block;font-size:max(10px, var(--mobile-min-font-size, 0px));color:#8b9887;font-weight:400;margin-top:5px;letter-spacing:0}.site-footer>div>p{font-size:max(9px, var(--mobile-min-font-size, 0px));color:#a1aa9b;max-width:390px;margin-top:16px}.site-footer nav{display:flex;align-items:flex-start;justify-content:flex-end;gap:19px;flex-wrap:wrap;font-size:max(10px, var(--mobile-min-font-size, 0px));padding-top:8px}.site-footer nav .link{font-size:max(9px, var(--mobile-min-font-size, 0px));color:#8a9786}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-block:18px;font-size:max(9px, var(--mobile-min-font-size, 0px));color:#9ba591}.footer-bottom>span>span{color:#c0a772;font-size:14px;padding-left:6px}.back-link{display:inline-block;font-size:12px;color:#6a8375;margin-bottom:35px}.back-link:hover{text-decoration:underline}.catalog-page{padding-block:44px;min-height:55vh}.catalog-title{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:30px}.catalog-title h1{margin-bottom:15px}.category-icon.big{width:85px;height:85px;border-radius:20px}.category-icon.big svg{width:45px;height:45px}.year-bar{display:flex;justify-content:space-between;gap:20px;background:#edf2ea;border:1px solid #dee7d9;border-radius:10px;padding:19px 24px;margin-bottom:28px}.year-bar strong{display:block;font-size:14px}.year-bar span{font-size:12px;color:#85947d}.year-bar form{display:flex;align-items:center;gap:12px;font-size:12px}.year-bar select{background:#fff;border:1px solid #ccd9c8;border-radius:6px;padding:8px 12px;color:var(--green)}.subject-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.subject-card{border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;padding:23px;gap:18px;transition:border-color .2s,transform .2s}.subject-card:hover{border-color:#a9c1aa;transform:translateY(-2px)}.subject-card>div{flex:1;min-width:0}.subject-card h2{font-size:17px;margin:0 0 5px;letter-spacing:-.4px}.subject-card p{font-size:max(11px, var(--mobile-min-font-size, 0px));margin:0}.subject-card>.icon{width:19px;color:#85a18a}.catalog-note{display:flex;align-items:center;gap:15px;margin-top:40px;padding:22px;border-radius:8px;background:#f2f3e9;color:#9eaa7e}.catalog-note p{margin:0;font-size:12px}.practice-intro{padding-block:40px 80px}.intro-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:start}.intro-layout h1{font-size:44px;margin-bottom:20px}.intro-layout>div>.category-icon{margin-bottom:20px}.intro-tags{display:flex;flex-wrap:wrap;gap:20px;margin:28px 0}.intro-tags span{display:flex;gap:8px;align-items:center;font-size:12px;color:#6c8472}.intro-tags .icon{width:18px;height:18px}.start-panel{background:white;border:1px solid var(--line);border-radius:15px;padding:35px;box-shadow:0 10px 35px #24432c06}.start-panel h2{font-size:30px;margin-bottom:18px;line-height:1.4}.start-panel p{font-size:13px}.start-panel ul{padding:0;list-style:none;display:grid;gap:13px;font-size:12px;margin:25px 0}.start-panel li{display:flex;gap:10px;align-items:center}.start-panel li .icon{width:16px;height:16px;color:#669479}.start-panel small{display:block;text-align:center;font-size:max(10px, var(--mobile-min-font-size, 0px));color:#98a591;margin-top:13px}.notice{padding:16px 20px;border:1px solid #e3e3c9;border-radius:8px;background:#f4f4e8;color:#7d7b50;font-size:12px;line-height:1.8}.error{padding:16px 20px;border-radius:8px;background:#f9eae7;color:#aa4e3f;font-size:13px}.prose{max-width:800px;padding-block:50px 70px;min-height:60vh}.prose h1{font-size:46px}.prose p{line-height:1.9}.prose a:not(.button){color:var(--green);text-decoration:underline}.prose h2{font-size:26px;margin-top:36px}.empty{text-align:center;padding-block:100px}.empty h1{font-size:44px}.empty .button{margin-top:15px}.search-empty{padding:35px;text-align:center}.continue-section{display:flex;align-items:center;gap:25px;padding:27px 30px;margin-bottom:35px;border:1px solid #d8e5d3;background:#eff5eb;border-radius:12px}.continue-section>div{flex:1}.continue-section h2{font-size:23px;margin:0 0 6px}.continue-section p{font-size:12px;margin:0}.continue-section .eyebrow{font-size:max(9px, var(--mobile-min-font-size, 0px))}.recent-section{padding-bottom:35px}.recent-section h2{font-size:25px}.recent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.recent-card{display:grid;grid-template-columns:60px 1fr;align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;padding:18px;column-gap:15px}.recent-card>strong{grid-row:1/3;font-family:var(--heading);font-size:24px;color:#58896a}.recent-card>span{font-size:12px;font-weight:600}.recent-card small{font-size:max(9px, var(--mobile-min-font-size, 0px));color:var(--muted)}.ad-space{display:none;padding:20px 0;text-align:center;min-height:125px;border-top:1px solid var(--line);margin-top:35px}.ad-space.enabled{display:block}.ad-space>span{display:block;font-size:max(9px, var(--mobile-min-font-size, 0px));color:#9caa99;margin-bottom:8px}.cookie-panel{position:fixed;bottom:20px;left:20px;width:min(410px,calc(100% - 40px));padding:24px;background:#fff;border:1px solid #d5dfd0;border-radius:12px;box-shadow:0 8px 40px #25372929;z-index:20}.cookie-panel strong{font-family:var(--heading);font-size:15px}.cookie-panel p{font-size:max(11px, var(--mobile-min-font-size, 0px));margin:10px 0 20px}.cookie-panel p a{text-decoration:underline}.cookie-actions{display:flex;gap:10px}.cookie-actions .button{flex:1}.focus-mode{background:#fff}.focus-mode .question-shell{width:min(780px,calc(100% - 48px));margin:auto;min-height:100dvh;padding-bottom:30px}.question-top{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:86px;color:#8a988d;font-size:12px}.question-top>span:first-of-type{flex:1}.exit-practice{display:grid;place-items:center;width:34px;height:34px;color:#8f9e92;border-radius:6px}.exit-practice:hover{background:#f0f4ed}.exit-practice svg{width:20px;height:20px}.question-counter{letter-spacing:.04em}.question-counter strong{font-size:15px;color:var(--green)}.question-progress{height:5px;background:#edf1eb;border-radius:8px;overflow:hidden}.question-progress>span{display:block;height:100%;background:#82a88a;transition:width .2s}.question-content{padding:43px 20px 0}.question-content .eyebrow{font-size:max(10px, var(--mobile-min-font-size, 0px));margin-bottom:17px}.question-image{margin:0 0 25px;border-radius:12px;background:transparent;overflow:hidden}.question-image img{max-height:310px;object-fit:contain;margin:auto}.answers{border:0;padding:0;margin:0;display:grid;gap:12px;min-width:0}.answer{display:flex;align-items:center;gap:15px;min-height:65px;border:1px solid #dfe6dc;border-radius:10px;padding:13px 17px;color:#56695d;position:relative;cursor:pointer;font-size:14px;line-height:1.5;transition:background .15s,border-color .15s;overflow-wrap:anywhere}.answer input{position:absolute;opacity:0;width:1px;height:1px}.answer:has(input:focus-visible){outline:3px solid #b98848;outline-offset:3px}.answer:has(input:checked){border-color:#648f76;background:#f0f7f0}.answer-letter{font-family:var(--heading);font-size:12px;display:grid;place-items:center;width:33px;height:33px;border-radius:6px;background:#f3f5f0;color:#82957e;flex-shrink:0;border:1px solid #e7ece3}.answer:has(input:checked) .answer-letter{background:#3e755e;color:#fff;border-color:#3e755e}.answer>span:nth-of-type(2){flex:1;min-width:0}.answer-check{display:none}.answer-check svg{width:18px;height:18px}.answer.is-correct,.answer.is-correct:has(input:checked){border-color:#79a78a;background:#eff7ef;color:#326f4b}.answer.is-correct .answer-letter{background:#5b946e;color:white;border-color:#5b946e}.answer.is-wrong,.answer.is-wrong:has(input:checked){border-color:#dcb5ac;background:#fcf2ee;color:#a46657}.answer.is-wrong .answer-letter{background:#bb806e;border-color:#bb806e}.answer.is-correct .answer-check,.answer.is-wrong .answer-check{display:block}.answers:disabled .answer{cursor:default}.answer-feedback{margin-top:20px;border-radius:8px;padding:18px 20px;background:#f1f6ef;border:1px solid #dce9d5;font-size:13px;color:#5d805e}.answer-feedback p{margin:6px 0 0;color:inherit;font-size:12px;line-height:1.5}.question-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:27px 10px}.question-actions>span{font-size:max(10px, var(--mobile-min-font-size, 0px));color:#9aa592}.question-actions .button{font-size:12px;min-height:46px;padding:12px 19px}.results-page{padding-block:55px 50px;max-width:900px}.results-page>[data-practice-view]>h1{margin-bottom:12px;font-size:44px}.result-summary{display:flex;align-items:center;gap:40px;background:white;border:1px solid var(--line);border-radius:14px;padding:35px;margin:30px 0}.score-circle{width:160px;height:160px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#739b70 var(--score),#edf1e7 0);flex-shrink:0}.score-circle>div{width:139px;height:139px;border-radius:50%;background:white;display:flex;align-items:center;justify-content:center;flex-direction:column}.score-circle strong{font-family:var(--heading);font-size:40px;letter-spacing:-2px;line-height:1.3}.score-circle strong small{font-size:19px;letter-spacing:0}.score-circle span{font-size:max(10px, var(--mobile-min-font-size, 0px));color:#96a18b}.result-summary h2{font-size:24px}.result-summary p{font-size:13px}.result-numbers{display:flex;gap:30px;font-size:max(10px, var(--mobile-min-font-size, 0px));color:#96a18b}.result-numbers strong{display:block;font-size:21px;color:var(--green);font-family:var(--heading)}.result-actions{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:48px}.results-page .section-heading h2{font-size:25px;margin:0}.results-page .section-heading>span{font-size:max(11px, var(--mobile-min-font-size, 0px));color:#8b9c85}.review-list{display:grid;gap:12px}.review-item{background:white;border:1px solid var(--line);border-radius:9px}.review-item summary{cursor:pointer;padding:20px;display:flex;align-items:center;gap:15px;list-style:none;font-size:13px}.review-item summary::-webkit-details-marker{display:none}.review-item summary>span:nth-child(2){flex:1}.review-item small{display:block;color:#8c9b86;font-size:max(9px, var(--mobile-min-font-size, 0px));letter-spacing:.04em;margin-bottom:5px}.review-item summary>span:last-child{font-size:20px;color:#819776}.review-item[open] summary>span:last-child{transform:rotate(45deg)}.review-state{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;flex-shrink:0}.review-state svg{width:16px;height:16px}.review-state.correct{background:#eaf3e7;color:#5e9464}.review-state.incorrect{background:#f9ede6;color:#b98868}.review-body{padding:0 30px 20px 63px;font-size:12px;line-height:1.5}.review-body p{margin-bottom:8px}.review-body img{max-height:200px;margin-bottom:20px}.login-page{min-height:70vh;display:grid;place-items:center;padding:50px 24px}.login-card{width:min(420px,100%);background:white;border:1px solid var(--line);border-radius:14px;padding:36px}.login-card>.category-icon{margin-bottom:20px}.login-card h1{font-size:32px;margin-bottom:10px}.login-card>p{font-size:13px}.login-card .back-link{margin:23px 0 0;font-size:max(11px, var(--mobile-min-font-size, 0px))}.login-card form{display:grid;gap:16px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field>span{font-size:max(11px, var(--mobile-min-font-size, 0px));font-weight:550;color:#6e8271}.field input,.field textarea,.field select{background:#fff;border:1px solid #dbe3d5;border-radius:6px;min-height:42px;padding:9px 12px;font-size:13px;color:var(--ink);width:100%;max-width:100%}.field textarea{resize:vertical}.field input[type=file]{font-size:max(10px, var(--mobile-min-font-size, 0px))}.admin-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:45px;padding-block:45px;min-height:65vh}.admin-sidebar{padding-top:7px}.admin-sidebar>.eyebrow{font-size:max(8px, var(--mobile-min-font-size, 0px))}.admin-sidebar h2{font-size:19px;margin-bottom:25px}.admin-sidebar nav{display:grid;gap:7px;margin-bottom:35px}.admin-sidebar nav a{display:flex;gap:12px;align-items:center;font-size:12px;padding:11px 14px;border-radius:6px;color:#809279}.admin-sidebar nav .icon{width:17px;height:17px}.admin-sidebar nav a.active{background:#eaf1e5;color:#3f7050}.admin-sidebar nav a:hover{background:#f0f4ed}.admin-sidebar>.back-link{font-size:max(10px, var(--mobile-min-font-size, 0px));margin-top:20px}.admin-content h1{font-size:34px;margin-bottom:18px}.admin-content>.eyebrow{font-size:max(9px, var(--mobile-min-font-size, 0px))}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-block:30px}.stats-grid>div{background:white;padding:22px;border:1px solid var(--line);border-radius:10px}.stats-grid strong{display:block;font-family:var(--heading);font-size:35px}.stats-grid span{font-size:max(11px, var(--mobile-min-font-size, 0px));color:#82967a}.admin-panel{background:white;border:1px solid var(--line);border-radius:10px;padding:28px;margin-bottom:25px}.admin-panel h2{font-size:23px}.admin-panel p{font-size:13px}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.admin-toolbar>p{font-size:12px;margin:0}.admin-toolbar .field{flex:1;max-width:600px}.admin-toolbar select{font-size:max(11px, var(--mobile-min-font-size, 0px))}.admin-toolbar .search-box{flex:1;max-width:500px}.admin-toolbar .search-box input{width:100%}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:9px}table{border-collapse:collapse;width:100%;font-size:max(11px, var(--mobile-min-font-size, 0px));text-align:left}th{background:#f0f4ed;color:#87977f;letter-spacing:.03em;font-size:max(9px, var(--mobile-min-font-size, 0px));font-weight:550;padding:13px 16px}td{padding:17px 16px;border-top:1px solid #eaf0e5;vertical-align:top}td strong{font-size:12px;font-weight:550}td small{display:block;font-size:max(9px, var(--mobile-min-font-size, 0px));color:#8c9d84;margin-top:5px;max-width:280px;overflow-wrap:anywhere}.row-actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap;white-space:nowrap;font-size:max(11px, var(--mobile-min-font-size, 0px))}.row-actions a{color:#598362;text-decoration:underline;text-underline-offset:3px}.row-actions .link{font-size:max(11px, var(--mobile-min-font-size, 0px))}.danger{color:#b67c6a}.status{display:inline-block;font-size:max(9px, var(--mobile-min-font-size, 0px));border-radius:4px;padding:3px 6px;background:#f2eee0;color:#a3976b}.status.published{background:#eaf3e5;color:#6c965c}.duplicate{font-size:max(9px, var(--mobile-min-font-size, 0px));color:#93a088;margin-top:10px}.duplicate>summary{cursor:pointer}.duplicate form{margin-top:12px;display:flex;gap:7px;align-items:center;flex-wrap:wrap}.duplicate input{max-width:80px;border:1px solid var(--line);border-radius:3px;padding:5px;font-size:max(10px, var(--mobile-min-font-size, 0px))}.duplicate .button{font-size:max(9px, var(--mobile-min-font-size, 0px));min-height:30px;padding:5px 8px}.duplicate .link{font-size:max(9px, var(--mobile-min-font-size, 0px))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-grid .field:has(textarea),.form-actions,.span-two{grid-column:1/-1}.checkbox{display:flex;align-items:center;gap:9px;font-size:12px;color:#7a8d72;align-self:center}.checkbox input{accent-color:var(--green);width:16px;height:16px}.form-actions{display:flex;align-items:center;gap:20px;font-size:12px;padding-top:8px}.admin-preview{max-width:200px;max-height:150px;border-radius:6px;margin-bottom:10px}[hidden]{display:none!important}
@media(min-width:1500px){.hero{min-height:640px}.hero h1{font-size:65px}}
@media(max-width:1100px){.container,.header-inner{width:calc(100% - 48px)}.hero{gap:10px}.hero h1{font-size:51px}.hero-art{transform:scale(.88);transform-origin:center right}.orbit-two{width:395px;height:395px}.note-top{right:-5px}.category-card{padding:22px 20px 16px}.category-card h2{font-size:17px}.hero{min-height:550px}.header-inner nav{gap:21px}.trust-location{padding-left:15px}.intro-layout{gap:40px}.admin-layout{grid-template-columns:175px minmax(0,1fr);gap:25px}.search-box input{width:170px}}
@media(max-width:800px){.brand{font-size:16px}.brand-mark{width:36px;height:40px}.header-inner nav{gap:17px}.header-inner .nav-link:nth-child(2){display:none}.header-inner{height:80px}.hero{min-height:490px;padding-top:35px;padding-bottom:36px;grid-template-columns:1fr .8fr}.hero h1{font-size:43px;letter-spacing:-2px}.hero-copy>p{font-size:13px}.hero-art{transform:scale(.73);transform-origin:center center;margin-left:-55px}.hero-benefits{gap:12px;font-size:max(8px, var(--mobile-min-font-size, 0px))}.hero .button{font-size:12px}.trust-strip>.container{flex-wrap:wrap;gap:14px;font-size:max(10px, var(--mobile-min-font-size, 0px))}.trust-location{border:0;padding:0}.section-heading{align-items:flex-start}.section-heading h2{font-size:26px}.category-grid{grid-template-columns:repeat(2,1fr);gap:16px}.category-card{min-height:255px}.encouragement-card h3{font-size:22px}.categories-section{padding-top:42px}.search-box input{width:145px}.how-section{gap:35px;padding-block:40px}.how-section h2{font-size:24px}.start-banner{padding:28px}.start-banner h2{font-size:20px}.start-banner .button{gap:10px;max-width:190px}.site-footer{gap:20px}.site-footer nav{gap:12px}.subject-card{gap:13px;padding:18px}.subject-card h2{font-size:15px}.subject-card .category-icon{width:35px;height:35px}.subject-card .category-icon svg{width:20px}.catalog-title h1{font-size:37px}.intro-layout{grid-template-columns:1fr 1fr;gap:28px}.intro-layout h1{font-size:34px}.start-panel{padding:25px}.start-panel h2{font-size:26px}.intro-tags{gap:12px}.intro-tags span{font-size:max(10px, var(--mobile-min-font-size, 0px))}.recent-grid{grid-template-columns:repeat(2,1fr)}.continue-section{flex-wrap:wrap}.continue-section>div{min-width:100%}.admin-layout{grid-template-columns:1fr}.admin-sidebar nav{display:flex;flex-wrap:wrap;margin-bottom:16px}.admin-sidebar nav a{font-size:max(11px, var(--mobile-min-font-size, 0px));padding:8px 12px}.admin-sidebar h2,.admin-sidebar>.eyebrow{display:none}.admin-sidebar form{display:inline-block}.admin-sidebar>.back-link{margin:0 0 0 20px}.admin-sidebar{padding-bottom:15px;border-bottom:1px solid var(--line)}.admin-content h1{font-size:30px}.admin-toolbar .search-box input{width:100%}}
@media(max-width:600px){.container,.header-inner{width:calc(100% - 36px)}.header-inner{height:75px}.brand{font-size:14px;letter-spacing:-.6px;gap:8px}.brand-mark{width:32px;height:36px;border-radius:8px}.brand-mark svg{width:22px;height:22px}.brand small{font-size:max(6px, var(--mobile-min-font-size, 0px));margin-top:5px}.header-inner .nav-link{display:none}.nav-login{border:0;padding:9px;font-size:max(10px, var(--mobile-min-font-size, 0px));gap:5px}.nav-login svg{width:14px;height:14px}.hero{grid-template-columns:1fr;gap:0;padding-top:28px;padding-bottom:30px;min-height:0}.hero-copy{position:relative;z-index:2}.pill{font-size:max(9px, var(--mobile-min-font-size, 0px));margin-bottom:21px;padding:5px 11px}.hero h1{font-size:40px;letter-spacing:-1.8px;line-height:1.13;margin-bottom:25px}.hero h1 br:nth-child(2){display:none}.hero h1{max-width:345px;width:auto}.hero h1 em{display:block}.underline{width:190px}.hero-copy>p{font-size:13px;line-height:1.8;margin-bottom:20px}.hero .button{font-size:12px;min-height:47px}.hero-benefits{font-size:max(9px, var(--mobile-min-font-size, 0px));gap:20px;margin-top:14px}.hero-art{height:310px;margin:8px -10px -8px;transform:scale(.74);transform-origin:center center}.note-top{right:0;top:-2px}.note-bottom{bottom:0;left:0}.little-plant{right:-9px;bottom:-2px}.orbit-two{width:395px;height:395px}.trust-strip>.container{display:grid;grid-template-columns:1fr 1fr;padding-block:16px;gap:13px 8px;font-size:max(9px, var(--mobile-min-font-size, 0px))}.trust-strip .icon{width:15px;height:15px}.trust-strip span{gap:7px}.categories-section{padding-block:34px}.section-heading{display:block;margin-bottom:22px}.section-heading .eyebrow{font-size:max(8px, var(--mobile-min-font-size, 0px));margin-bottom:10px}.section-heading h2{font-size:24px;letter-spacing:-1px}.section-heading p{font-size:12px}.section-heading .search-box{margin-top:20px}.search-box input{width:100%;font-size:12px}.search-box{min-height:43px}.catalog-tabs{gap:5px;margin-bottom:19px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.catalog-tabs button{font-size:max(10px, var(--mobile-min-font-size, 0px));padding:7px 9px}.catalog-tabs button span{display:none}.category-grid{grid-template-columns:1fr;gap:13px}.category-card{min-height:0;padding:20px;display:grid;grid-template-columns:44px 1fr;gap:0 16px}.card-top{display:contents}.card-top .category-icon{grid-column:1;grid-row:1/3;width:43px;height:43px}.card-number{position:absolute;top:23px;right:20px;font-size:max(8px, var(--mobile-min-font-size, 0px))}.category-card h2{grid-column:2;grid-row:1;font-size:16px;letter-spacing:-.5px;padding-right:20px;margin:1px 0 9px}.category-card>p{grid-column:2;grid-row:2;font-size:max(11px, var(--mobile-min-font-size, 0px));line-height:1.75;max-width:none;margin-bottom:13px}.card-bottom{grid-column:2;grid-row:3;padding-top:10px;font-size:max(9px, var(--mobile-min-font-size, 0px))}.circle-arrow{width:23px;height:23px}.encouragement-card{min-height:180px;padding:24px}.encouragement-card>span:first-child{font-size:max(7px, var(--mobile-min-font-size, 0px));margin-bottom:12px}.encouragement-card h3{font-size:21px;line-height:1.4}.encouragement-card p{font-size:max(10px, var(--mobile-min-font-size, 0px))}.encouragement-card .doodle-star{right:15px;bottom:-30px;font-size:160px}.how-section{grid-template-columns:1fr;gap:22px;padding-block:33px 36px}.how-section h2{font-size:26px;margin-bottom:13px}.how-section .eyebrow{font-size:max(8px, var(--mobile-min-font-size, 0px))}.how-section>div>p{font-size:12px;margin-bottom:5px}.steps{gap:20px}.steps h3{font-size:13px}.steps p{font-size:max(11px, var(--mobile-min-font-size, 0px));line-height:1.8}.steps li{gap:14px}.steps li>span{width:29px;height:29px;font-size:max(9px, var(--mobile-min-font-size, 0px))}.start-banner{display:block;padding:27px 23px;border-radius:10px}.start-banner h2{font-size:23px;line-height:1.4;max-width:260px}.start-banner p{font-size:max(11px, var(--mobile-min-font-size, 0px));margin-bottom:20px}.start-banner .button{max-width:none;font-size:max(11px, var(--mobile-min-font-size, 0px));min-height:44px}.demo-disclaimer{padding-top:20px;padding-bottom:10px}.demo-disclaimer p{font-size:max(9px, var(--mobile-min-font-size, 0px));line-height:1.8}.site-footer{grid-template-columns:1fr;margin-top:28px;padding-top:26px;gap:9px}.site-footer>div>p{font-size:max(9px, var(--mobile-min-font-size, 0px));margin-top:12px}.site-footer nav{justify-content:flex-start;gap:15px;padding-block:6px 15px;font-size:max(10px, var(--mobile-min-font-size, 0px))}.footer-bottom{font-size:max(8px, var(--mobile-min-font-size, 0px));gap:14px;align-items:center;padding-block:17px}.footer-bottom>span{max-width:145px;text-align:right}.catalog-page{padding-block:25px}.back-link{font-size:max(11px, var(--mobile-min-font-size, 0px));margin-bottom:28px}.catalog-title{gap:15px;margin-bottom:25px}.catalog-title h1{font-size:32px;margin-bottom:15px;overflow-wrap:anywhere}.catalog-title .lead{font-size:13px}.category-icon.big{width:55px;height:55px;border-radius:13px}.category-icon.big svg{width:30px;height:30px}.catalog-title>.category-icon{align-self:flex-start;margin-top:28px}.subject-grid{grid-template-columns:1fr;gap:13px}.subject-card{padding:18px;gap:14px}.subject-card h2{font-size:16px}.subject-card p{font-size:max(10px, var(--mobile-min-font-size, 0px))}.year-bar{padding:16px;gap:12px}.year-bar strong{font-size:12px}.year-bar span{font-size:max(10px, var(--mobile-min-font-size, 0px));display:block;max-width:145px}.year-bar form{gap:7px;font-size:max(10px, var(--mobile-min-font-size, 0px))}.year-bar select{padding:7px;font-size:max(11px, var(--mobile-min-font-size, 0px));max-width:120px}.catalog-note{margin-top:28px;padding:18px;gap:11px}.catalog-note p{font-size:max(11px, var(--mobile-min-font-size, 0px))}.practice-intro{padding-block:25px 35px}.intro-layout{grid-template-columns:1fr;gap:25px}.intro-layout h1{font-size:35px}.intro-layout .lead{font-size:14px}.intro-tags{margin:20px 0;gap:14px}.intro-tags span{font-size:max(10px, var(--mobile-min-font-size, 0px))}.intro-layout .notice{font-size:max(11px, var(--mobile-min-font-size, 0px))}.start-panel{padding:26px}.start-panel h2{font-size:28px}.prose{padding-block:30px 40px}.prose h1{font-size:36px}.prose .lead{font-size:15px}.prose p{font-size:13px}.empty{padding-block:65px}.empty h1{font-size:34px}.continue-section{padding:22px;gap:15px}.continue-section h2{font-size:22px}.continue-section .button{min-height:43px;font-size:12px}.recent-grid{grid-template-columns:1fr}.recent-section>.section-heading{display:flex}.recent-section h2{font-size:22px}.recent-card{padding:15px}.cookie-panel{bottom:12px;left:12px;width:calc(100% - 24px);padding:20px}.cookie-panel p{font-size:max(11px, var(--mobile-min-font-size, 0px))}.cookie-panel strong{font-size:14px}.focus-mode .question-shell{width:100%;padding-bottom:env(safe-area-inset-bottom,15px)}.question-top{padding-inline:15px;min-height:64px;gap:10px;font-size:max(10px, var(--mobile-min-font-size, 0px))}.question-top>span:first-of-type{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.question-progress{border-radius:0;height:4px}.question-counter{white-space:nowrap;font-size:max(11px, var(--mobile-min-font-size, 0px))}.question-content{padding:27px 20px 15px}.question-content .eyebrow{font-size:max(9px, var(--mobile-min-font-size, 0px));margin-bottom:15px}.question-image{margin-bottom:21px}.question-image img{max-height:225px}.answers{gap:10px}.answer{padding:12px 13px;gap:12px;min-height:61px;font-size:14px}.answer-letter{width:30px;height:30px;font-size:max(11px, var(--mobile-min-font-size, 0px))}.answer-feedback{margin-top:17px;padding:15px;font-size:12px}.answer-feedback p{font-size:12px}.question-actions{flex-direction:column-reverse;gap:13px;align-items:stretch;padding-top:22px}.question-actions>.button{width:100%;font-size:13px;min-height:49px}.question-actions>span{text-align:center;font-size:max(9px, var(--mobile-min-font-size, 0px))}.results-page{padding-block:35px}.results-page>[data-practice-view]>h1{font-size:33px;line-height:1.35}.result-summary{display:block;padding:25px;text-align:center;margin-top:25px}.score-circle{margin:0 auto 25px;width:145px;height:145px}.score-circle>div{width:126px;height:126px}.result-summary h2{font-size:23px;line-height:1.4}.result-summary p{font-size:12px}.result-numbers{justify-content:center;gap:27px}.result-numbers strong{font-size:20px}.result-actions{display:grid;gap:12px;margin-bottom:35px}.result-actions .button{width:100%;font-size:12px}.results-page .section-heading{display:flex}.results-page .section-heading h2{font-size:21px}.review-item summary{padding:16px;gap:12px;font-size:12px}.review-body{padding:0 20px 18px;font-size:max(11px, var(--mobile-min-font-size, 0px))}.login-page{padding:30px 18px}.login-card{padding:27px}.admin-layout{padding-top:22px;gap:25px}.admin-sidebar nav{gap:3px;margin-bottom:15px}.admin-sidebar nav a{font-size:max(10px, var(--mobile-min-font-size, 0px));gap:5px;padding:8px}.admin-sidebar nav .icon{width:14px;height:14px}.admin-sidebar .link{font-size:max(10px, var(--mobile-min-font-size, 0px))}.admin-content h1{font-size:29px}.admin-content>.lead{font-size:14px}.stats-grid{gap:9px;margin-top:22px}.stats-grid>div{padding:15px 10px}.stats-grid strong{font-size:28px}.stats-grid span{font-size:max(9px, var(--mobile-min-font-size, 0px))}.admin-panel{padding:20px}.admin-panel h2{font-size:21px}.admin-panel p{font-size:12px}.admin-toolbar{flex-wrap:wrap}.admin-toolbar .search-box{min-width:100%}.admin-toolbar>.button{margin-left:auto}.admin-toolbar>.field{min-width:100%}.form-grid{grid-template-columns:1fr;gap:17px}.form-grid .span-two,.form-grid .field:has(textarea),.form-actions{grid-column:auto}.form-actions{font-size:max(11px, var(--mobile-min-font-size, 0px));gap:17px}.form-actions .button{font-size:12px;min-height:44px}.field input,.field textarea,.field select{font-size:16px}.admin-toolbar select{font-size:12px}.notice{font-size:max(11px, var(--mobile-min-font-size, 0px));padding:15px}td{padding:14px 12px}th{padding:12px}.table-wrap table{min-width:560px}.row-actions{gap:10px}.duplicate .link{font-size:max(10px, var(--mobile-min-font-size, 0px))}.admin-mode .site-footer{margin-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.admin-mode [data-consent-open]{display:none}
.results-back{max-width:900px;padding-top:30px}
.results-back .back-link{margin-bottom:0}
.results-back + .results-page{padding-top:20px}

/* Regreso a los catálogos: visible sin competir con la acción principal. */
.back-link.return-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 100%;
  min-height: 46px;
  padding: 8px 14px 8px 9px;
  margin-bottom: 26px;
  border: 1px solid var(--primary-border);
  border-radius: 9px;
  background: var(--primary-soft);
  color: var(--primary);
  font-size: 15px;
  font-weight: 650;
  line-height: 1.4;
  text-decoration: none;
  transition: border-color .18s, box-shadow .18s;
}
.back-link.return-link:hover {
  border-color: var(--primary);
  box-shadow: 0 2px 6px #234c7810;
  text-decoration: none;
}
.back-link.return-link:focus-visible { outline: 3px solid var(--focus-ring); outline-offset: 3px; }
.return-link-icon {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--paper);
}
.return-link-icon .icon { width: 18px; height: 18px; stroke-width: 2.3; }
.return-link > span:last-child { min-width: 0; }
.results-back .return-link { margin-bottom: 0; }
@media (max-width: 600px) {
  .back-link.return-link { min-height: 44px; margin-bottom: 20px; font-size: 14px; }
  .results-back .return-link { margin-bottom: 0; }
}
@media (prefers-reduced-motion: reduce) { .back-link.return-link { transition: none; } }






/* Texto de lectura y controles más cómodos en escritorio. */
@media (min-width: 801px) {
  body { font-size: 16px; }

  .hero-copy > p,
  .section-heading p,
  .category-card p,
  .encouragement-card p,
  .how-section > div > p,
  .steps p,
  .start-banner p,
  .subject-card p,
  .catalog-note p,
  .start-panel p,
  .start-panel ul,
  .notice,
  .error,
  .continue-section p,
  .cookie-panel p,
  .result-summary p,
  .review-item summary,
  .review-body,
  .review-body p,
  .login-card > p,
  .admin-panel p,
  .admin-toolbar > p {
    font-size: 16px;
    line-height: 1.75;
  }

  .button,
  .button.small,
  .link,
  .header-inner nav,
  .search-box input,
  .catalog-tabs button,
  .back-link,
  .year-bar form,
  .year-bar select,
  .start-banner .button,
  .question-actions .button,
  .field input,
  .field textarea,
  .field select,
  .admin-toolbar select,
  .admin-sidebar nav a,
  .form-actions {
    font-size: 15px;
  }

  .hero-benefits,
  .trust-strip > .container,
  .card-bottom,
  .muted,
  .year-bar span,
  .intro-tags span,
  .start-panel small,
  .footer-brand span,
  .site-footer > div > p,
  .site-footer nav,
  .site-footer nav .link,
  .demo-disclaimer p,
  .recent-card > span,
  .question-top,
  .question-actions > span,
  .score-circle span,
  .result-numbers,
  .results-page .section-heading > span,
  .field > span,
  .field input[type=file],
  .checkbox,
  .stats-grid span,
  .row-actions,
  .row-actions .link,
  .duplicate .button,
  .duplicate .link {
    font-size: 14px;
  }

  .pill { font-size: 13px; }
  .brand small { font-size: max(10px, var(--mobile-min-font-size, 0px)); }
  .eyebrow,
  .start-banner .eyebrow,
  .continue-section .eyebrow,
  .admin-sidebar > .eyebrow,
  .admin-content > .eyebrow,
  .question-content .eyebrow,
  .encouragement-card > span:first-child,
  .catalog-tabs button span,
  .card-number,
  .recent-card small,
  .review-item small,
  .footer-bottom,
  td small,
  .status,
  .duplicate {
    font-size: 12px;
  }

  .year-bar strong { font-size: 16px; }
  .answer { font-size: 18px; }
  .answer-letter { font-size: 14px; }
  .answer-feedback,
  .answer-feedback p { font-size: 16px; }
  table { font-size: 14px; }
  th { font-size: 13px; }
  td strong { font-size: 14px; }

  .trust-strip > .container { flex-wrap: wrap; }
  .search-box input { width: 245px; }
  .admin-toolbar .search-box input { width: 100%; }
  .category-card p { max-width: none; }
}

/* El encabezado identifica la pregunta; las lecturas usan párrafos de texto. */
.question-image.reading-image img { width: 100%; height: auto; max-height: none; }
.reading-image figcaption { text-align: right; }
.reading-image-link { display: inline-flex; align-items: center; gap: 5px; min-height: 44px; color: var(--ink); font-size: 14px; text-decoration: underline; text-underline-offset: 3px; }
.reading-image-link .icon { width: 17px; height: 17px; }
.question-references { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.home-categories { padding-top: 32px; }
.home-categories > .section-heading h1 { margin: 0; font-size: 30px; }
@media (max-width: 600px) {
  .home-categories { padding-top: 24px; }
  .home-categories > .section-heading h1 { font-size: 24px; }
}
.question-content .question-heading { font-family: var(--body); font-size: 12px; font-weight: 600; line-height: 1.5; letter-spacing: .12em; margin: 0 0 18px; }
.question-text { font-size: 14px; font-weight: 400; line-height: 1.5; letter-spacing: normal; text-align: justify; overflow-wrap: anywhere; margin: 0 0 27px; }
@media (min-width: 801px) {
  .question-text { font-size: 18px; }
}
.question-text > p { color: var(--ink); margin: 0 0 1.1em; }
.question-text > p:last-child { margin-bottom: 0; }
.answer-letter { width: 40px; height: 40px; font-size: 20px; }
@media (max-width: 600px) {
  .question-content { padding-top: 20px; }
  .question-content .question-heading { font-size: max(11px, var(--mobile-min-font-size, 0px)); margin-bottom: 12px; }
  .question-text { font-size: 14px; line-height: 1.5; margin-bottom: 18px; }
  .question-text > p { margin-bottom: .7em; }
  .question-image { margin-bottom: 16px; }
  .question-actions { padding-top: 16px; gap: 10px; }
}

.question-top > span:first-of-type { min-width: 0; font-size: 18px; font-weight: 700; line-height: 1.4; color: var(--ink); white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .question-top > span:first-of-type { font-size: 16px; }
}

.question-actions > .button { margin-inline-start: auto; font-size: 18px; }
@media (max-width: 600px) {
  .question-actions > .button { font-size: 16px; }
}

#answer-submit .icon { width: 24px; height: 24px; stroke-width: 3; }

.practice-intro .intro-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
.practice-intro .intro-layout > div > .category-icon { display: none; }
.practice-intro .intro-layout > div > .muted:last-child { margin-bottom: 0; }
.practice-intro .start-actions .practice-last-result { margin-top: 16px; margin-bottom: 0; }

.practice-intro .start-panel .lead { font-size: 16px; line-height: 1.6; }
@media (max-width: 600px) {
  .practice-intro .start-panel .lead { font-size: 14px; }
}

/* Mantiene los textos secundarios legibles en pantallas pequeñas. */
@media (max-width: 800px) {
  :root { --mobile-min-font-size: 12px; }
}

.practice-intro .start-actions .button { font-size: 18px; }
.practice-intro .start-actions .button .icon { width: 24px; height: 24px; stroke-width: 3; }
@media (max-width: 600px) {
  .practice-intro .start-actions .button { font-size: 16px; }
}
