/* Little Learners resource library.
   Editorial layer only: the shared header/search and embedded game frames are
   deliberately owned by their existing stylesheets. No remote font requests. */
body{background:#f6f3eb}
main#main{--cream:#f6f3eb;--paper:#fffdf8;--ink:#243a32;--muted:#55635d;--blue:#285b46;--sky:#e9efe8;--orange:#9c402b;--button-orange:#9c402b;--peach:#f3e7da;--mint:#e9efe8;--gold:#e8d59d;--line:#c9cfc2;--radius:3px;--shadow:none;color:var(--ink);font-family:Nunito,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:400;line-height:1.7}
main#main h1,main#main h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;line-height:1.08;text-wrap:balance}
main#main h3{font-family:inherit;font-weight:700;letter-spacing:-.025em;line-height:1.25;text-wrap:balance}
main#main p{max-width:76ch}
main#main a{color:var(--blue)}
main#main :focus-visible{outline:3px solid #8a3b25;outline-offset:5px}
main#main .eyebrow{font-size:.7rem;letter-spacing:.13em;font-weight:750;color:#596449;line-height:1.5}
main#main .button{border-radius:3px;box-shadow:none;font-size:.87rem;font-weight:700;letter-spacing:.01em;min-height:48px;padding:13px 21px;gap:22px;transition:background .15s,color .15s;color:#fffdf8}
main#main .button:hover{transform:none;box-shadow:none;background:#7c3222;border-color:#7c3222}
main#main .button.secondary{color:var(--ink);border-color:#8a978b;background:transparent}
main#main .button.secondary:hover{background:#e6ebdf;border-color:#5b715e}
main#main .text-link{font-size:.88rem;font-weight:700;text-decoration-thickness:1px;gap:14px}
main#main .actions{gap:12px;margin-top:27px}
main#main .hero{gap:70px;padding:66px 0 62px;align-items:center;border-bottom:1px solid var(--line)}
main#main .hero-copy{padding-block:6px}
main#main .hero h1{font-size:clamp(3.3rem,6vw,5.6rem);line-height:1.02;margin:21px 0 25px;max-width:10.5em}
main#main .hero h1 em{font-style:italic;font-weight:400;color:#80503c}
main#main .hero-lede{font-size:1.12rem;line-height:1.7;max-width:480px;color:var(--muted)}
main#main .hero-facts{margin-top:33px;padding-top:22px;border-top:1px solid var(--line);gap:29px}
main#main .hero-facts span{font-family:inherit;font-size:.72rem;line-height:1.5;color:var(--muted)}
main#main .hero-facts strong{font-family:Georgia,serif;font-size:1.7rem;font-weight:400;line-height:1.2;color:var(--ink);margin-bottom:4px}
main#main .sun-dot{border-radius:0;width:8px;height:8px;background:#9c402b;transform:none}
main#main .hero-poster{border:0;border-radius:2px;box-shadow:none;transform:none;min-height:474px;background-color:#e2e8d7;outline:1px solid #c6cebb;outline-offset:8px}
main#main .hero-poster:before{background:linear-gradient(100deg,#eff0e4e8,#e5e9da30 70%)}
main#main .poster-label{font-family:inherit;letter-spacing:.14em;font-size:.6rem;font-weight:700;margin:29px 28px 0;color:#3b5146}
main#main .poster-copy{font-family:Georgia,serif;font-size:clamp(2.5rem,3.6vw,3.7rem);font-weight:400;letter-spacing:-.045em;max-width:240px;margin:28px}
main#main .hero-cat{bottom:57px;right:0}
main#main .star-sticker{display:none}
main#main .number-sticker{font-family:Georgia,serif;font-weight:700;font-size:5.8rem;-webkit-text-stroke:2px #f9f5e9;filter:none;bottom:72px}
main#main .poster-note{background:#fffdf8e8;border-top:1px solid #d4dac9;font-size:.75rem;font-weight:500;padding:17px 22px;letter-spacing:.015em}
main#main .poster-note>span{color:#80503c;font-size:1.35rem}
main#main .section-heading{margin:60px 0 24px;align-items:end;gap:30px}
main#main .section-heading .eyebrow{margin-bottom:10px}
main#main .section-heading h2{font-size:clamp(2.1rem,3.7vw,3.25rem)}
main#main .section-heading p:not(.eyebrow){font-size:1rem;line-height:1.7;margin-top:16px}
/* A resource index is a set of readable rows, with a stable information order. */
main#main .card-grid,main#main .teacher-tools,main#main .resource-index{display:block;border-top:2px solid #66765d}
main#main .resource-card{display:grid;grid-template-columns:66px minmax(175px,.85fr) minmax(0,1.5fr) 28px;gap:25px;align-items:start;min-height:0;padding:25px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;color:var(--ink);transition:background .15s}
main#main .resource-card.blue,main#main .resource-card.peach,main#main .resource-card.mint,main#main .resource-card.gold{background:transparent}
main#main .resource-card:hover{transform:none;box-shadow:none;background:#e9ecdf80}
main#main .card-marker{border:0;border-radius:0;font-family:inherit;font-size:.66rem;letter-spacing:.08em;line-height:1.5;font-weight:650;color:#617156;padding:4px 0;margin:0;max-width:100%;overflow-wrap:anywhere}
main#main .resource-card h3{font-family:Georgia,serif;font-size:1.55rem;font-weight:400;letter-spacing:-.035em;max-width:none;line-height:1.15}
main#main .resource-card p{padding:0;margin:0;font-size:.94rem;line-height:1.65;color:var(--muted);max-width:56ch}
main#main .card-arrow{position:static;font-size:1.15rem;line-height:1.3;justify-self:end;color:#6b765d}
main#main .page-intro{padding:46px 0 37px;max-width:1020px}
main#main .page-intro h1{font-size:clamp(2.8rem,5.7vw,4.7rem);max-width:18ch}
main#main .page-intro .eyebrow{margin-bottom:18px}
main#main .lede{font-size:1.1rem;line-height:1.75;max-width:730px;margin-top:24px}
main#main .breadcrumbs{font-size:.72rem;letter-spacing:.01em;color:var(--muted);margin-top:27px}
main#main .breadcrumbs a{color:var(--muted)}
main#main .reading,main#main .policy{font-size:1.03rem;line-height:1.85;max-width:740px}
main#main .reading p,main#main .policy p{color:#41534a}
main#main .reading h2,main#main .policy h2{font-size:2.1rem;margin:39px 0 17px;line-height:1.15}
main#main .reading h3{font-size:1.15rem;margin-top:27px}
main#main .reading.wide{max-width:800px}
main#main .article-layout{grid-template-columns:210px minmax(0,740px);gap:70px}
main#main .article-toc{border-top:2px solid #66765d;padding-top:17px}
main#main .article-toc a{font-size:.84rem;line-height:1.6;color:#435c49}
main#main .teacher-banner{background:#e2e8da;color:var(--ink);border-radius:2px;border-block:1px solid #bdc8b4;margin-top:65px;padding:45px;gap:65px}
main#main .teacher-banner .eyebrow{color:#4c6145}
main#main .teacher-banner h2{font-size:clamp(2.3rem,3.8vw,3.5rem);margin:17px 0 20px}
main#main .teacher-banner p{color:#41534a}
main#main .paper-lines{box-shadow:6px 7px 0 #bcc8af80;transform:rotate(-2deg);border-radius:1px;background:#fffdf7;border:1px solid #c6cdbb;padding:30px}
main#main .paper-lines strong{font-size:1rem;font-weight:600;border-bottom:1px solid #d0d4c6}
main#main .paper-lines>span{font-weight:700;color:#5c684e}
main#main .round-note{background:#d9c592;font-size:.73rem;line-height:1.4;font-weight:600;transform:none;border-radius:2px;padding:15px 20px;right:0;top:-8px}
main#main .teacher-cat{right:-20px;transform:none}
main#main .app-strip{border-radius:2px;background:transparent;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin:60px 0;gap:27px}
main#main .app-strip h2{font-size:1.85rem}
main#main .app-strip img{border-radius:17px}
main#main .app-strip p:not(.eyebrow){font-size:.91rem}
main#main .notice,main#main .callout,main#main .small-note,main#main .worked-box,main#main .worked-example,main#main .app-note,main#main .side-note{border-radius:2px;box-shadow:none}
main#main .notice{background:#f0e6d6;border-left:3px solid #9c402b;padding:21px 25px}
main#main .notice strong{font-size:1rem;font-weight:650}
main#main .notice p{font-size:.94rem;color:#5b594d}
main#main .side-note{padding:27px;background:#e8ecdf;border-top:2px solid #66765d}
main#main .side-note h2{font-size:2rem}
main#main .side-note p:not(.eyebrow){font-size:.94rem;color:#455644}
main#main .side-note a{font-size:.85rem}
main#main .paper-banner,main#main .policy-summary,main#main .success-card{border-radius:2px;background:#e9eddf;border-block:1px solid #c7cfbd}
main#main .paper-banner{padding:32px;margin-block:40px}
main#main .paper-banner h2{font-size:2.25rem}
main#main .table-links{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border-top:2px solid #66765d;border-left:1px solid var(--line)}
main#main .table-links a{border-radius:0;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 12px;background:transparent;box-shadow:none}
main#main .table-links a:hover{transform:none;background:#e7ebdf}
main#main .table-links strong{font-family:Georgia,serif;font-size:2.4rem;font-weight:400}
main#main .table-links strong>span{font-size:1.2rem}
main#main .table-links a>span{font-size:.68rem;font-weight:500;color:#55634f;margin-top:8px}
main#main .table-scroll,main#main .fact-table{border-radius:2px;box-shadow:none}
main#main .times-chart th{background:#e4eadb;font-weight:650}
main#main .times-chart tbody tr:nth-child(even) td{background:#f7f7ef}
main#main .fact-table thead th{background:#385342;font-weight:600}
main#main .fact-table tbody td{font-weight:600;font-variant-numeric:tabular-nums;color:#8b402c}
main#main .age-grid{display:block;border-top:2px solid #66765d}
main#main .age-card{display:grid;grid-template-columns:120px 1fr 1.35fr;column-gap:28px;padding:28px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
main#main .age-card h2{font-size:1.8rem;margin:0}
main#main .age-card p:not(.eyebrow){font-size:.94rem;line-height:1.7}
main#main .age-card a{grid-column:2/-1;justify-self:start;margin-top:14px}
main#main .conversation-grid{gap:0;border-top:2px solid #66765d}
main#main .conversation-grid blockquote{border-radius:0;background:transparent;border-bottom:1px solid var(--line);padding:28px 28px 28px 0}
main#main .conversation-grid blockquote p{font-family:Georgia,serif;font-size:1.9rem;font-weight:400;color:var(--ink)}
main#main .conversation-grid blockquote span{font-size:.88rem}
main#main .station-plan li{padding:25px 0;border-bottom:1px solid var(--line)}
main#main .station-plan li>span{border-radius:0;background:#e0e7d6;color:#3c573d;font-weight:650;font-size:.75rem;padding:8px 12px}
main#main .station-plan h3{font-size:1.2rem}
main#main .form-card{border-radius:3px;box-shadow:none;border-color:#c0c7b9}
main#main .form-card h2{font-size:2.2rem}
main#main .field input,main#main .field textarea,main#main .embed-code{border-radius:3px;border-color:#9fae9f;background:#fffdf8}
main#main .field label,main#main .faq-grid summary{font-weight:650}
main#main .faq-grid{gap:0 30px;border-top:1px solid var(--line)}
main#main .faq-grid details{padding:22px 0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}
/* Interactive learning tools keep generous controls; the surrounding page is quiet. */
main#main .tool-mount{border-radius:3px;border:1px solid #b4c2ad;border-top:3px solid #5d7552;background:#fffdf8;box-shadow:none;padding:29px}
main#main .tool-mount label,main#main .tool-mount legend{font-weight:650;font-size:.85rem}
main#main .tool-mount button{border-radius:4px;background:#315c43;border-color:#315c43;font-weight:650}
main#main .tool-mount button:hover{background:#244631}
main#main .tool-mount input:not([type=checkbox]):not([type=radio]),main#main .tool-mount select{border-radius:3px;border-color:#9dae9e;background:#fffdf8}
main#main .tool-mount fieldset{border-radius:2px;border-color:#c8d0bf}
main#main .flashcard,main#main .picker-result{border-radius:2px;background:#eaf0e1}
main#main .worksheet-sheet{border-radius:1px;background:#fffefa;border-color:#d2d5c5}
/* Alphabet and lesson modules supplied by the content generator. */
main#main .topic-nav{display:flex;flex-wrap:wrap;gap:0;border-block:1px solid var(--line);margin:24px 0 35px;padding:0;list-style:none}
main#main .topic-nav a{display:block;padding:12px 20px 12px 0;margin-right:23px;text-decoration:none;font-size:.88rem;font-weight:650}
main#main .topic-nav a:hover,main#main .topic-nav a[aria-current]{text-decoration:underline;text-decoration-thickness:2px}
main#main .readiness-band{display:flex;gap:18px;align-items:baseline;flex-wrap:wrap;border-block:1px solid var(--line);padding:15px 0;margin:22px 0 34px;color:#526447;font-size:.88rem}
main#main .readiness-band strong{font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#3b523a}
main#main .alphabet-hub,main#main .lesson-hub{margin-bottom:40px}
main#main .letter-hero{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr);gap:60px;align-items:center;border-block:1px solid var(--line);padding:35px 0;margin-bottom:40px}
main#main .letter-pair{font-family:Georgia,serif;font-size:clamp(7rem,15vw,12rem);letter-spacing:-.065em;line-height:1.05;color:#466242;font-weight:400}
main#main .letter-hero img{max-width:220px;max-height:240px;object-fit:contain}
main#main .sound-note{font-size:.94rem;max-width:68ch;color:#4a594f;padding:20px 0;border-top:1px solid var(--line);margin-top:24px}
main#main .sound-note strong{font-weight:650;color:#253e31}
main#main .activity-sequence,main#main .lesson-steps{list-style:none;padding:0;margin:24px 0 40px;counter-reset:lesson-step;border-top:2px solid #66765d}
main#main .activity-sequence>li,main#main .lesson-steps>li{position:relative;padding:25px 0 25px 58px;border-bottom:1px solid var(--line);margin:0;counter-increment:lesson-step}
main#main .activity-sequence>li:before,main#main .lesson-steps>li:before{content:counter(lesson-step,decimal-leading-zero);position:absolute;left:0;top:29px;font-size:.72rem;color:#617156;letter-spacing:.07em}
main#main .activity-sequence h3,main#main .lesson-steps h3{font-family:Georgia,serif;font-size:1.65rem;font-weight:400;margin:0 0 12px}
main#main .activity-sequence p,main#main .lesson-steps p{font-size:.96rem;color:#4a594f}
main#main .teacher-panel,main#main .home-panel{padding:28px 30px;border:0;border-top:2px solid #708262;background:#e8eddf;border-radius:2px;margin:30px 0}
main#main .home-panel{background:#f0e9dd;border-top-color:#a17a56}
main#main .teacher-panel h2,main#main .home-panel h2{font-size:2rem;margin:0 0 15px}
main#main .teacher-panel p,main#main .home-panel p{font-size:.95rem;color:#435442}
main#main .lesson-metadata{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;border-block:1px solid var(--line);padding:20px 0;margin:20px 0 35px}
main#main .lesson-metadata dt{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:#637057;font-weight:650}
main#main .lesson-metadata dd{margin:5px 0 0;font-size:.95rem;color:#2d4336}
@media(min-width:1500px){main#main .hero-poster{min-height:500px}}
@media(max-width:1050px){main#main .hero{gap:45px}main#main .hero-poster{min-height:450px}main#main .resource-card{grid-template-columns:55px minmax(165px,.9fr) minmax(0,1.3fr) 22px;gap:20px}main#main .article-layout{gap:40px;grid-template-columns:185px minmax(0,1fr)}}
@media(max-width:800px){main#main .hero{padding-top:42px;gap:45px;grid-template-columns:1fr}main#main .hero-copy{max-width:650px}main#main .hero h1{font-size:clamp(3.4rem,8vw,4.8rem);max-width:12ch}main#main .hero-poster{width:calc(100% - 16px);max-width:none;min-height:420px;margin:0 8px 8px}main#main .poster-copy{font-size:3.5rem;max-width:270px}main#main .hero-cat{width:48%;height:76%;right:4%}main#main .number-sticker.one{left:48%}main#main .number-sticker.two{right:4%}main#main .section-heading{margin-top:50px}main#main .resource-card{grid-template-columns:50px minmax(150px,.9fr) minmax(0,1.2fr) 22px;gap:18px}main#main .resource-card h3{font-size:1.45rem}main#main .teacher-banner{padding:33px;gap:20px;grid-template-columns:1fr}main#main .tool-preview{min-height:280px;max-width:460px}main#main .article-layout{grid-template-columns:1fr;gap:25px}main#main .age-card{grid-template-columns:90px 1fr;gap:15px 25px}main#main .age-card p:not(.eyebrow){grid-column:2}main#main .age-card a{grid-column:2}main#main .letter-hero{gap:35px}main#main .app-strip>.button{margin-left:0}}
@media(max-width:600px){main#main .resource-card{grid-template-columns:37px minmax(0,1fr) 20px;gap:11px 14px;padding:23px 0}main#main .resource-card h3{grid-column:2;font-size:1.55rem;max-width:21ch}main#main .resource-card p{grid-column:2;font-size:.9rem;max-width:48ch}main#main .card-marker{grid-column:1;grid-row:1 / 3;font-size:.59rem;overflow-wrap:normal}main#main .card-arrow{grid-column:3;grid-row:1}main#main .table-links{grid-template-columns:repeat(4,1fr)}main#main .conversation-grid{grid-template-columns:1fr}main#main .conversation-grid blockquote{padding-right:0}main#main .lesson-metadata{grid-template-columns:1fr;gap:15px}main#main .lesson-metadata>div{display:grid;grid-template-columns:100px 1fr;gap:15px}main#main .lesson-metadata dd{margin:0}main#main .letter-hero{grid-template-columns:1fr;gap:25px}main#main .letter-pair{font-size:8rem}main#main .activity-sequence>li,main#main .lesson-steps>li{padding-left:43px}}
@media(max-width:480px){main#main .hero{padding:34px 0 35px;gap:35px}main#main .hero h1{font-size:3.2rem;line-height:1.04;margin:18px 0 22px;max-width:11ch}main#main .hero-lede{font-size:1.01rem}main#main .eyebrow{font-size:.64rem;letter-spacing:.11em}main#main .hero-facts{margin-top:26px;padding-top:18px;gap:25px}main#main .hero-facts strong{font-size:1.45rem}main#main .hero-facts span{font-size:.65rem}main#main .hero-poster{min-height:350px;outline-offset:5px;width:calc(100% - 10px);margin-inline:5px}main#main .poster-label{font-size:.53rem;margin:23px 22px 0}main#main .poster-copy{font-size:2.8rem;margin:22px;max-width:210px}main#main .hero-cat{height:68%;width:55%;bottom:48px;right:0}main#main .number-sticker{font-size:4.5rem;bottom:58px}main#main .number-sticker.one{left:30%}main#main .poster-note{font-size:.66rem;padding:13px 16px;gap:9px}main#main .poster-note>span{font-size:1.1rem}main#main .section-heading{display:block;margin:43px 0 22px}main#main .section-heading h2{font-size:2.1rem;line-height:1.13}main#main .section-heading p:not(.eyebrow){font-size:.94rem;margin-top:14px}main#main .section-heading>.text-link{margin-top:17px}main#main .page-intro{padding:30px 0}main#main .page-intro h1{font-size:2.85rem;line-height:1.07}main#main .lede{font-size:1rem;margin-top:20px}main#main .reading,main#main .policy{font-size:.97rem;line-height:1.85}main#main .reading h2,main#main .policy h2{font-size:1.9rem;margin-top:32px}main#main .button{font-size:.83rem;min-height:47px;padding:12px 17px;gap:15px}main#main .teacher-banner{padding:26px 22px;margin-top:45px}main#main .teacher-banner h2{font-size:2.5rem}main#main .teacher-banner p{font-size:.94rem}main#main .round-note{font-size:.66rem;padding:11px 15px}main#main .paper-lines{padding:24px 21px}main#main .paper-lines strong{font-size:.89rem}main#main .teacher-cat{right:-16px;width:104px;height:165px}main#main .app-strip{padding:25px 0;gap:18px;margin-block:43px}main#main .app-strip h2{font-size:1.6rem}main#main .app-strip img{width:61px;height:61px;border-radius:13px}main#main .app-strip p:not(.eyebrow){font-size:.86rem}main#main .notice{padding:19px}main#main .paper-banner{padding:24px}main#main .table-links{grid-template-columns:repeat(3,1fr)}main#main .table-links a{padding:19px 8px}main#main .table-links strong{font-size:2.15rem}main#main .table-links a>span{font-size:.64rem}main#main .tool-mount{padding:23px 16px}main#main .age-card{grid-template-columns:1fr;gap:12px;padding:25px 0}main#main .age-card p:not(.eyebrow),main#main .age-card a{grid-column:1}main#main .age-card a{margin-top:3px}main#main .conversation-grid blockquote p{font-size:1.75rem}main#main .teacher-panel,main#main .home-panel{padding:24px 20px}main#main .activity-sequence h3,main#main .lesson-steps h3{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){main#main *,main#main *:before,main#main *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{body,main#main{background:white;color:black}main#main .resource-card{break-inside:avoid;background:none}main#main .hero{border:0}main#main .letter-hero{padding:20px 0}main#main .lesson-metadata{gap:15px}main#main .tool-mount{border:0;padding:0}main#main h1{font-size:24pt}main#main h2{font-size:18pt}main#main .teacher-panel,main#main .home-panel{background:none;border:1px solid #aaa;break-inside:avoid}}
/* A colophon, rather than another promotional panel. */
.site-footer{background:#e9ecdf;border-top:1px solid #c3cbb9;color:#243a32;padding-top:42px;margin-top:75px;font-family:Nunito,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.site-footer .footer-brand{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;font-weight:400;letter-spacing:-.035em;color:#243a32}
.site-footer .footer-brand span{display:none}
.site-footer .footer-grid p{font-size:.95rem;line-height:1.65;color:#4a5c49}
.site-footer .footer-grid .footer-small{font-size:.76rem;line-height:1.8;color:#58654e}
.site-footer .footer-grid nav h2{font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:#4b5f44}
.site-footer .footer-grid nav a{font-size:.81rem;color:#3b5540;line-height:1.55}
.site-footer .footer-grid nav a:hover{color:#243a32}
.site-footer .footer-bottom{font-size:.68rem;line-height:1.7;color:#526348;border-top-color:#bdc7b2}
.site-footer :focus-visible{outline:3px solid #8a3b25;outline-offset:5px}
@media(max-width:480px){.site-footer{margin-top:45px;padding-top:32px}.site-footer .footer-grid{gap:30px 20px}.site-footer .footer-grid nav a{font-size:.78rem}.site-footer .footer-grid nav h2{font-size:.66rem}}
@media print{.site-footer{display:none!important}}
/* Child-facing alphabet workspaces: large targets, local illustration, clear state. */
main#main .alphabet-practice-board{padding:26px;text-align:center;background:#edf1e5;border:1px solid #c6d1bb;border-radius:3px;margin-top:22px}
main#main .alphabet-practice-board h3{font-family:Nunito,sans-serif;font-weight:800;font-size:1.2rem;line-height:1.4;margin:0 auto 18px;max-width:35ch}
main#main .alphabet-question-letter{font-family:Nunito,sans-serif;font-weight:800;font-size:clamp(5rem,12vw,8rem);line-height:1.15;color:#385e3b;padding:10px 0 17px}
main#main .alphabet-word-art{width:150px;height:150px;object-fit:contain;margin:10px auto}
main#main .alphabet-word-label{font-weight:750;font-size:1.35rem;margin:7px auto 20px;color:#283e30}
main#main .alphabet-answers{justify-content:center;gap:13px;margin:15px auto 24px}
main#main .alphabet-answers .alphabet-answer{width:78px;min-height:72px;padding:6px;border:1px solid #7c9876;border-radius:7px;background:#fffdf8;color:#294a32;font-family:Nunito,sans-serif;font-size:2.25rem;font-weight:800;line-height:1.3;box-shadow:0 3px 0 #bcc9b0}
main#main .alphabet-answers .alphabet-answer:hover{background:#e0ead7;border-color:#436b41}
main#main .alphabet-answers .alphabet-answer:disabled{opacity:.55;box-shadow:none;cursor:default}
main#main .alphabet-practice-board>button{font-size:.8rem;background:transparent;color:#385a3c;border-color:#7e9776}
main#main .alphabet-tally{border-top:1px solid var(--line);padding-top:15px;margin-top:22px;font-size:.8rem;line-height:1.8;color:#52634b}
main#main .tool-note{font-size:.79rem;line-height:1.75;color:#5b6554;margin-top:20px}
main#main .alphabet-celebration:empty{display:none}
main#main .alphabet-celebration{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:15px;padding:22px;background:#f3ead2;border-block:1px solid #d9c897;margin:20px 0;text-align:center}
main#main .alphabet-celebration-cat{width:70px;height:85px;object-fit:contain}
main#main .alphabet-earned-stars{font-size:1.5rem;letter-spacing:.08em;color:#93651e;margin:0}
main#main .alphabet-celebration strong{font-family:Georgia,serif;font-size:1.45rem;font-weight:400}
main#main .alphabet-explorer-card{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:25px;padding:28px;background:#edf1e5;border:1px solid #c6d1bb;border-radius:3px;text-align:center}
main#main .alphabet-uppercase-art{width:130px;height:145px;object-fit:contain;justify-self:center}
main#main .alphabet-lowercase-art{font-family:Nunito,sans-serif;font-size:7.5rem;font-weight:800;line-height:1.1;color:#4c7044}
main#main .alphabet-explorer-card>.alphabet-word-art{width:140px;height:145px;margin:0 auto}
main#main .alphabet-explorer-card h3{grid-column:1/-1;font-family:Nunito,sans-serif;font-size:1.25rem;font-weight:750;margin:0}
main#main .alphabet-writing-pad{margin:30px 0 25px;padding-top:25px;border-top:1px solid var(--line)}
main#main .alphabet-writing-pad h3{font-family:Georgia,serif;font-size:1.8rem;font-weight:400;margin:0 0 12px}
main#main .alphabet-writing-pad p{font-size:.89rem;color:#53624c;margin-bottom:18px}
main#main .alphabet-writing-pad canvas{display:block;width:100%;height:220px;max-width:100%;border:1px solid #aab7a2;border-radius:2px;background:#fff;touch-action:none;margin:0 0 15px}
main#main .alphabet-writing-pad button{font-size:.8rem;min-height:44px}
main#main .alphabet-print-preview{max-height:790px;overflow:auto;overscroll-behavior:contain;border:1px solid #c8cebe;background:#e9ecdf;padding:22px;margin-top:22px}
main#main .alphabet-sheet-pack{max-width:720px;margin:auto}
main#main .alphabet-print-page{padding:30px;background:#fffefa;margin-bottom:22px;border-color:#c6cbb9;box-shadow:0 2px 3px #34472f0d}
main#main .alphabet-print-page:last-child{margin-bottom:0}
main#main .alphabet-print-page h2{font-family:Nunito,sans-serif;font-size:1.7rem;font-weight:800;margin:12px 0 18px;letter-spacing:-.02em}
main#main .alphabet-print-page h3{font-family:Nunito,sans-serif;text-align:center;font-size:1.5rem;font-weight:800;margin:15px auto}
main#main .worksheet-eyebrow{font-family:Nunito,sans-serif;font-size:.58rem;letter-spacing:.09em;font-weight:750;color:#52634b}
main#main .worksheet-footnote{font-size:.66rem;border-top:1px solid #c9d0bf;margin-top:24px;padding-top:13px;color:#59644f}
main#main .alphabet-trace-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));text-align:center;gap:10px;font-family:Nunito,sans-serif;font-size:clamp(2.5rem,5vw,4.3rem);font-weight:800;line-height:1.8;color:#718065;margin-block:15px}
main#main .alphabet-trace-row span{-webkit-text-stroke:1px #6a785f;color:transparent}
main#main .alphabet-write-line{position:relative;height:70px;border-top:1px solid #99a68f;border-bottom:1px solid #7f9073;margin:10px 0 24px}
main#main .alphabet-write-line:before{content:'';position:absolute;left:0;right:0;top:50%;border-top:1px dashed #a2ae99}
main#main .alphabet-match-columns{display:grid;grid-template-columns:1fr 1fr;gap:35%;padding:10px 20px}
main#main .alphabet-match-columns p{font-family:Nunito,sans-serif;font-size:2.4rem;line-height:1.8;margin:10px 0;font-weight:800;text-align:center}
main#main .alphabet-print-word-art{width:140px;height:145px;object-fit:contain;margin:20px auto}
main#main .alphabet-print-choices{font-family:Nunito,sans-serif;font-weight:800;font-size:2.2rem;word-spacing:.7em;line-height:2;text-align:center;margin:15px 0}
@media(max-width:600px){main#main .alphabet-practice-board{padding:22px 13px}main#main .alphabet-answers{gap:10px}main#main .alphabet-answers .alphabet-answer{width:65px;min-height:66px;font-size:2rem}main#main .alphabet-explorer-card{padding:20px 14px;gap:12px}main#main .alphabet-uppercase-art{width:85px;height:110px}main#main .alphabet-explorer-card>.alphabet-word-art{width:95px;height:110px}main#main .alphabet-lowercase-art{font-size:5.5rem}main#main .alphabet-print-preview{padding:10px;max-height:650px}main#main .alphabet-print-page{padding:22px 16px}main#main .alphabet-print-page h2{font-size:1.4rem}main#main .alphabet-trace-row{font-size:2.6rem;gap:4px}main#main .alphabet-match-columns{padding-inline:0;gap:28%}main#main .alphabet-print-choices{font-size:1.8rem;word-spacing:.4em}}
/* Physical print dimensions leave room on both US Letter and A4. */
@page{margin:12mm}
@media print{
 #ll-print-root{font:10pt/1.5 Nunito,sans-serif;color:#111}
 .alphabet-sheet-pack{max-width:none;margin:0}
 .alphabet-print-page{break-after:page;break-inside:avoid;page-break-after:always;padding:0;background:#fff;border:0;border-radius:0;box-shadow:none;margin:0;font-family:Nunito,sans-serif;color:#111}
 .alphabet-print-page:last-child{break-after:auto;page-break-after:auto}
 .alphabet-print-page h2{font-family:Nunito,sans-serif;font-size:21pt;line-height:1.2;font-weight:800;letter-spacing:0;margin:4mm 0 3mm}
 .alphabet-print-page h3{font-family:Nunito,sans-serif;font-size:19pt;line-height:1.25;font-weight:800;text-align:center;margin:4mm 0}
 .alphabet-print-page p{font-size:10pt;line-height:1.5;margin:2mm 0 3mm}
 .alphabet-print-page .worksheet-eyebrow{font-size:7pt;line-height:1.4;letter-spacing:.08em}
 .alphabet-print-page .worksheet-footnote{font-size:7.5pt;line-height:1.5;border-top:1px solid #999;margin-top:5mm;padding-top:3mm}
 .alphabet-trace-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5mm;text-align:center;font-family:Nunito,sans-serif;font-size:36pt;font-weight:800;line-height:1.55;color:#718065;margin:2mm 0}
 .alphabet-trace-row span{-webkit-text-stroke:1px #6a785f;color:transparent}
 .alphabet-write-line{position:relative;height:14mm;border-top:1px solid #999;border-bottom:1px solid #666;margin:2mm 0 5mm}
 .alphabet-write-line:before{content:'';position:absolute;left:0;right:0;top:50%;border-top:1px dashed #999}
 .alphabet-match-columns{display:grid;grid-template-columns:1fr 1fr;gap:35%;padding:3mm 10mm}
 .alphabet-match-columns p{font-family:Nunito,sans-serif;font-size:28pt;font-weight:800;line-height:1.6;margin:2mm 0;text-align:center}
 .alphabet-print-word-art{display:block;width:30mm;height:30mm;object-fit:contain;margin:3mm auto}
 .alphabet-print-choices{font-family:Nunito,sans-serif;font-size:28pt;font-weight:800;word-spacing:1em;line-height:1.6;text-align:center;margin:5mm 0}
 .alphabet-answer-key{break-inside:auto;page-break-inside:auto}
 .alphabet-answer-key p{break-inside:avoid;page-break-inside:avoid}
}

/* A single print-only repeater brands every physical page, including overflow
   and answer keys. Per-sheet preview marks stay in the DOM without doubling it. */
.print-page-brand{display:none!important}
.worksheet-brand{display:block;margin-top:18px;padding-top:9px;border-top:1px solid #c9cfc2;color:#41534a;font:700 12px/1.4 Nunito,sans-serif;text-align:center;letter-spacing:.02em}
@media print{
 @page{margin:12mm}
 .print-page-brand{display:block!important;position:fixed;left:0;right:0;bottom:0;height:5mm;margin:0;padding:1mm 0 0;border-top:.2mm solid #b8beb4;color:#333;background:#fff;font:8.5pt/1.25 Nunito,Arial,sans-serif;text-align:center;letter-spacing:.02em;z-index:1000}
 .worksheet-brand{display:none!important}
 /* Clone the footer reserve on each page fragment, not only at document end. */
 main#main,#ll-print-root{padding-bottom:8mm!important;box-decoration-break:clone;-webkit-box-decoration-break:clone}
 body[data-printing="worksheet"]>.print-page-brand{display:none!important}
 #ll-print-root>.print-page-brand{display:block!important}
}
