@charset "UTF-8";
:root{color-scheme:light;--bg:#f5f7fb;--surface:#fff;--surface2:#eef2f9;--ink:#172440;--muted:#66728a;--line:#dce3ee;--accent:#2e5beb;--accent-hover:#2049d0;--accent-soft:#eaf0ff;--on-accent:#fff;--black:#24304a;--active:#dce7ff;--selected:#2e5beb;--good:#19754f;--good-soft:#e8f5ed;--bad:#b83b48;--bad-soft:#fff0f1;--gold:#a06408;--radius:18px}
:root[data-theme=dark]{color-scheme:dark;--bg:#0e1628;--surface:#162139;--surface2:#1e2b45;--ink:#eef3ff;--muted:#a5b2ca;--line:#32415b;--accent:#789cff;--accent-hover:#93afff;--accent-soft:#23365b;--on-accent:#101a2e;--black:#080f1e;--active:#314973;--selected:#7198ff;--good:#8bdbb3;--good-soft:#153e31;--bad:#ff939e;--bad-soft:#502b37;--gold:#edba65}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;color:var(--ink);background:var(--bg);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;display:block}button{color:inherit}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.18}h1{font-size:clamp(2rem,4.2vw,3.75rem);letter-spacing:-.04em;font-weight:730}h2{font-size:clamp(1.5rem,2.2vw,2rem);letter-spacing:-.025em;font-weight:700}h3{font-size:1.2rem;letter-spacing:-.015em}p{color:var(--muted)}button{border:0;background:none}button,a{touch-action:manipulation}[hidden]{display:none!important}.container{max-width:1280px;margin:auto;padding-left:40px;padding-right:40px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:10px;left:10px;transform:translateY(-200%);padding:12px 20px;background:var(--accent);color:var(--on-accent);z-index:100}.skip-link:focus{transform:translateY(0)}
.site-header{background:var(--surface);border-bottom:1px solid var(--line)}.header-inner{max-width:1280px;padding:19px 40px;margin:auto;display:flex;align-items:center;gap:34px}.brand{display:flex;gap:11px;align-items:center;flex-shrink:0}.brand>b{letter-spacing:-.025em}.brand b{display:block;font-size:1.25rem;line-height:1.1}.brand small{display:block;font-size:.78rem;letter-spacing:.025em;color:var(--muted);margin-top:3px}.brand-mark{width:33px;height:33px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.brand-mark i{border-radius:2px;background:var(--accent)}.brand-mark i:nth-child(2),.brand-mark i:nth-child(4),.brand-mark i:nth-child(9){opacity:.2}.main-nav{display:flex;gap:24px;align-items:center;margin-left:auto;font-size:.9rem;font-weight:550}.main-nav a{padding:8px 0;white-space:nowrap}.main-nav a[aria-current=page]{color:var(--accent)}.header-actions{display:flex;gap:16px;align-items:center;flex-shrink:0}.my-link{font-size:.88rem;white-space:nowrap;display:flex;align-items:center;gap:6px}.saved-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;border-radius:9px;border:1px solid var(--line);background:var(--surface);font-size:1.15rem;line-height:1}.icon-btn:hover{background:var(--surface2)}.theme-toggle{background:transparent}
.breadcrumbs{margin:21px 0 27px;font-size:.78rem;color:var(--muted)}.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;list-style:none;padding:0;margin:0}.breadcrumbs li+li:before{content:'/';margin-right:10px;color:var(--muted);opacity:.6}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs [aria-current]{color:var(--ink)}.eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.075em;text-transform:uppercase;color:var(--muted)}.eyebrow>span{margin-left:10px;color:var(--muted);font-weight:450}.btn{display:inline-flex;gap:12px;justify-content:center;align-items:center;min-height:46px;padding:11px 21px;border-radius:10px;font-size:.92rem;font-weight:650;line-height:1.4;border:1px solid transparent;transition:background .15s,color .15s,transform .15s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover);color:var(--on-accent)}.btn-secondary,.btn-small{background:var(--surface);border-color:var(--line)}.btn-secondary:hover,.btn-small:hover{background:var(--surface2);color:var(--ink)}.btn-small{font-size:.82rem;min-height:38px;padding:8px 13px}.text-link{font-size:.92rem;font-weight:600;color:var(--accent)}.text-button{padding:5px 0;font-size:.82rem;color:var(--muted);font-weight:500}.text-button:hover{color:var(--accent)}.action-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.home-intro{display:grid;grid-template-columns:1fr 1.12fr;gap:48px;align-items:center;padding:8px 0 36px}.intro-copy h1{margin:14px 0 20px;font-size:clamp(2.8rem,4.7vw,4.4rem);line-height:1.02}.intro-copy h1 span{color:var(--accent)}.intro-description{font-size:1.06rem;line-height:1.65;margin-bottom:26px}.intro-facts{display:flex;gap:28px;margin-top:28px;font-size:.8rem;color:var(--muted)}.intro-facts b{font-size:1.1rem;margin-right:4px;color:var(--ink);font-variant-numeric:tabular-nums}.hero-art{border-radius:22px;overflow:hidden;position:relative;display:block;background:#15223f;aspect-ratio:1.46;max-height:360px}.hero-art>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.hero-art:hover>img{transform:scale(1.025)}.hero-caption{position:absolute;left:0;right:0;bottom:0;padding:40px 25px 22px;color:#fff;background:linear-gradient(transparent,rgba(10,18,35,.9));display:flex;flex-direction:column}.hero-caption>span:first-child{font-size:.74rem;opacity:.9}.hero-caption strong{font-size:1.16rem;letter-spacing:-.02em;margin-top:4px;padding-right:30px}.hero-caption .hero-arrow{position:absolute;right:24px;bottom:24px;font-size:1.6rem}.topic-pills{display:flex;gap:10px;flex-wrap:wrap;margin:7px 0 40px}.topic-pills a{display:flex;gap:12px;align-items:center;padding:10px 16px;border:1px solid var(--line);border-radius:30px;background:var(--surface);font-size:.9rem;font-weight:550}.topic-pills a:hover{border-color:var(--accent);background:var(--accent-soft)}.topic-pills span{font-size:.72rem;font-weight:500;color:var(--muted)}.continue-panel{padding:18px 22px;margin:4px 0 24px;border-radius:12px;background:var(--accent-soft);display:flex;align-items:center;justify-content:space-between;gap:20px}.continue-panel small{color:var(--muted);display:block}.continue-panel strong{font-weight:650}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:21px}.section-heading>a{font-size:.86rem;color:var(--accent);font-weight:600}.count-label{font-size:.83rem;color:var(--muted);white-space:nowrap}.catalog-controls{display:flex;gap:12px;margin-bottom:24px}.search-field{position:relative;display:flex;align-items:center;flex:1;min-width:150px}.search-field>span:not(.sr-only){position:absolute;left:14px;color:var(--muted);font-size:1.5rem;line-height:1}.search-field input{width:100%;padding:12px 16px 12px 42px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-size:.9rem;min-height:47px}.select-field select{appearance:auto;min-height:47px;border:1px solid var(--line);border-radius:10px;padding:10px 30px 10px 12px;background:var(--surface);color:var(--ink);font-size:.86rem;max-width:100%}.puzzle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.puzzle-card{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;transition:transform .15s,border-color .15s}.puzzle-card:hover{transform:translateY(-3px);border-color:#a6b8db}.card-image{position:relative;aspect-ratio:1.88;display:block;overflow:hidden;background:var(--surface2)}.card-image>img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.card-image:hover img{transform:scale(1.045)}.level-badge{display:inline-flex;align-items:center;font-size:.72rem;font-weight:650;padding:4px 9px;border-radius:5px;line-height:1.5;background:var(--good-soft);color:var(--good)}.card-image>.level-badge{position:absolute;left:15px;top:15px;background:#fff;color:#2a4650}.level-2{background:var(--accent-soft);color:var(--accent)}.level-3{background:#fff2dd;color:#88550a}.card-image>.level-3{background:#fff2dd;color:#88550a}.card-state{position:absolute;right:12px;top:14px;border-radius:5px;background:#182840;color:#fff;padding:5px 8px;font-size:.7rem}.card-body{padding:19px 21px 17px;display:flex;flex-direction:column;flex:1}.card-body .eyebrow{font-size:.66rem;display:flex;justify-content:space-between}.card-body h3{margin:10px 0 11px;font-size:1.22rem}.card-body>p{font-size:.87rem;line-height:1.62;margin-bottom:20px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.77rem;color:var(--muted);margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}.dot-sep{padding:0 5px}.card-play{color:var(--accent);font-size:.84rem;font-weight:650;display:flex;gap:10px}.card-play>span{font-size:1.1rem}.more-wrap{text-align:center;margin:28px 0 6px}.catalog-empty{text-align:center;padding:45px 20px;border:1px dashed var(--line);border-radius:12px}.editorial-note{display:grid;grid-template-columns:.8fr 1fr;gap:80px;border-top:1px solid var(--line);margin:65px 0 0;padding:45px 0}.editorial-note h2{font-family:Georgia,"Times New Roman",serif;font-size:2.35rem;font-weight:500;line-height:1.2;margin-top:13px}.editorial-note p{font-size:.94rem;line-height:1.8;margin-bottom:16px}.editorial-note .eyebrow{font-family:inherit;font-size:.73rem}.faq-section{padding:10px 0 20px;max-width:900px}.faq-section>h2{margin-bottom:20px}.faq-section details,.below-game details{border-bottom:1px solid var(--line);padding:17px 0}.faq-section summary,.below-game summary{font-weight:600;cursor:pointer;padding-right:16px}.faq-section details p,.below-game details p{padding:14px 0 3px;max-width:800px}.site-footer{margin-top:70px;padding:34px 0 26px;border-top:1px solid var(--line);background:var(--surface)}.footer-inner{display:flex;gap:18px 30px;flex-wrap:wrap;align-items:center}.footer-brand{font-weight:700;font-size:1rem}.footer-brand span{font-weight:400;color:var(--muted);font-size:.8rem;margin-left:10px}.site-footer nav{display:flex;gap:20px;font-size:.8rem;margin-left:auto;flex-wrap:wrap}.site-footer p{width:100%;font-size:.8rem}.site-footer small{font-size:.72rem;color:var(--muted)}
.page-intro{max-width:900px;padding:15px 0 34px}.page-intro .eyebrow{margin-bottom:14px}.page-intro h1{margin-bottom:18px}.page-intro>p:not(.eyebrow){max-width:780px;font-size:1.02rem;line-height:1.8}.level-tabs{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}.level-tabs a{padding:8px 17px;border-radius:8px;font-size:.9rem;border:1px solid var(--line);background:var(--surface)}.level-tabs [aria-current]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.theme-card{border-radius:18px;overflow:hidden;position:relative;aspect-ratio:1.65;background:#142542}.theme-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.theme-card a{display:block;height:100%}.theme-card a:hover img{transform:scale(1.03)}.theme-card-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:28px;color:#fff;background:linear-gradient(transparent 30%,rgba(10,19,36,.88))}.theme-card-copy small{font-size:.77rem}.theme-card-copy h2{font-size:1.9rem;margin:7px 0}.theme-card-copy>span{font-size:.88rem}.theme-intro{display:grid;grid-template-columns:1fr .85fr;gap:55px;align-items:center;padding:10px 0 42px}.theme-intro>img{border-radius:18px;width:100%;max-height:300px;object-fit:cover}.theme-intro h1{font-size:2.8rem;margin:13px 0 18px}.theme-intro p:not(.eyebrow){font-size:.98rem;line-height:1.75}.small-stat{display:block;color:var(--muted);font-size:.8rem;margin-top:20px}.cross-promo{margin-top:50px;padding:30px;border-radius:16px;background:var(--accent-soft)}.cross-promo p{max-width:730px;margin:14px 0 22px}.prose{max-width:820px;margin:35px auto 60px}.prose h1{margin:13px 0 25px}.prose-lead{font-size:1.15rem;line-height:1.8}.prose h2{margin:36px 0 16px;font-size:1.6rem}.prose p,.prose li{line-height:1.9;margin-bottom:15px}.prose li{padding-left:5px;color:var(--muted)}.prose .btn{margin-top:22px}.prose-image{width:100%;max-height:400px;object-fit:cover;border-radius:18px;margin:28px 0}.daily-feature{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;margin-bottom:45px;max-width:960px}.daily-explainer h2{font-family:Georgia,serif;font-size:2.2rem;font-weight:500}.daily-explainer p{margin:18px 0 25px;line-height:1.8}.daily-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;max-width:850px}.calendar-weekday{text-align:center;color:var(--muted);font-size:.75rem;padding:5px}.calendar-day{padding:13px;min-height:86px;border:1px solid var(--line);background:var(--surface);border-radius:9px;display:flex;flex-direction:column;gap:6px}.calendar-day strong{font-size:1rem}.calendar-day small{font-size:.7rem;line-height:1.4}.calendar-day.is-today{border-color:var(--accent);background:var(--accent-soft)}.calendar-day.future{opacity:.45}.personal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:15px 0 38px}.personal-stat{padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.personal-stat b{display:block;font-size:2rem}.personal-stat span{color:var(--muted);font-size:.86rem}.my-section{margin-top:35px}.my-section h2{margin-bottom:22px}.empty-state{padding:45px 20px;text-align:center;border:1px dashed var(--line);border-radius:16px}.empty-state h2{margin-bottom:14px}.empty-state p{margin-bottom:23px}.data-tools{border-top:1px solid var(--line);margin-top:45px;padding-top:30px}.data-tools p{max-width:760px;margin:14px 0 22px}.file-button{position:relative;cursor:pointer}.file-button input{position:absolute;opacity:0;width:1px;height:1px;left:0;bottom:0}.file-button:focus-within{outline:3px solid var(--accent);outline-offset:3px}.error-page{min-height:45vh}.error-page .btn{margin-top:30px}.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);padding:13px 22px;border:1px solid var(--line);border-radius:12px;background:var(--ink);color:var(--bg);z-index:1000;font-size:.9rem;max-width:min(90vw,650px)}
/* The game is a working surface. Illustration stays secondary to the grid. */
.game-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:5px 0 25px}.game-heading h1{font-size:2.4rem;margin:10px 0 15px}.game-meta{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:.8rem;color:var(--muted)}.game-meta .level-badge{font-size:.72rem}.game-heading-actions{display:flex;gap:8px}.game-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,1fr);gap:28px;align-items:start}.play-panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:23px;min-width:0}.game-progress{display:flex;align-items:center;gap:18px;font-size:.78rem}.game-progress>div{margin-right:auto;display:flex;align-items:baseline;gap:9px}.game-progress b{font-size:1.05rem;letter-spacing:-.015em}.game-progress span{color:var(--muted)}.timer-control{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--muted);white-space:nowrap}.timer-control input{accent-color:var(--accent)}.timer-control time{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:4px}.progress-track{height:4px;background:var(--surface2);border-radius:4px;margin:13px 0 18px;overflow:hidden}.progress-track span{display:block;width:0;height:100%;background:var(--accent);transition:width .2s}.active-question{display:flex;align-items:center;gap:12px;background:var(--accent-soft);border-radius:10px;padding:11px;margin-bottom:20px;min-height:86px}.active-question>.icon-btn{width:30px;min-width:30px;height:34px;background:transparent;border:0}.active-question>div{flex:1;line-height:1.5;font-size:.9rem}.active-question small{display:block;font-size:.7rem;color:var(--muted);font-weight:600;letter-spacing:.02em;margin-bottom:3px}.board-wrap{position:relative;overflow:auto;max-width:100%;padding:3px;overscroll-behavior:contain;scrollbar-width:thin;border-radius:3px}.crossword-board{--cell-size:35px;display:grid;grid-template-columns:repeat(var(--cols),var(--cell-size));grid-template-rows:repeat(var(--rows),var(--cell-size));gap:1px;padding:1px;width:max-content;margin:0 auto;background:var(--black);border:1px solid var(--black)}.cell{border:0;padding:0;position:relative;background:var(--surface);border-radius:0;font-weight:600;min-width:0;touch-action:manipulation;color:var(--ink);font-size:calc(var(--cell-size)*.5);line-height:1;display:flex;align-items:center;justify-content:center}.cell-black{background:var(--black)}.cell sup{position:absolute;top:2px;left:2px;font-size:max(8px,calc(var(--cell-size)*.25));font-weight:500;line-height:1}.cell .letter{padding-top:4px}.cell.in-word{background:var(--active)}.cell.selected{background:var(--selected);color:var(--on-accent);outline:2px solid var(--accent);outline-offset:-2px;z-index:1}.cell.error .letter{color:var(--bad);text-decoration:underline wavy var(--bad);text-underline-offset:2px}.cell.selected.error .letter{color:var(--on-accent)}.cell.revealed:after{content:'';position:absolute;bottom:2px;right:2px;width:4px;height:4px;background:var(--gold);border-radius:50%}.cell:focus-visible{outline:3px solid var(--accent);outline-offset:0;z-index:2}.board-options{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:16px 0 10px}.zoom-controls{display:flex;align-items:center;gap:7px;font-size:.74rem;color:var(--muted)}.zoom-controls .icon-btn{width:28px;height:28px;min-width:28px;font-size:1rem}.board-options .text-button{font-size:.72rem}.keyboard{padding:10px 0 15px}.key-row{display:flex;justify-content:center;gap:4px;margin:4px 0}.key{border:1px solid var(--line);border-radius:5px;background:var(--surface2);font-size:.85rem;font-weight:550;height:36px;min-width:0;flex:1;max-width:38px;padding:0;transition:background .12s}.key:hover{background:var(--active)}.key-wide{max-width:70px;flex:2;font-size:1.2rem}.key-space{max-width:230px;flex:8;font-size:.8rem}.help-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:5px}.help-actions .btn{font-size:.8rem;min-height:40px;padding:9px 12px;flex:1;white-space:nowrap}.game-message{font-size:.8rem;min-height:27px;margin:13px 0 3px;line-height:1.65}.game-message.is-error{color:var(--bad)}.game-message.is-success{color:var(--good)}.secondary-actions{display:flex;flex-wrap:wrap;gap:15px;border-top:1px solid var(--line);padding-top:8px}.secondary-actions .text-button{font-size:.72rem}.save-note{font-size:.7rem;color:var(--muted);margin-top:13px}.clues-panel{min-width:0}.clues-disclosure{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:19px 10px 15px}.clues-disclosure>summary{font-weight:650;cursor:pointer;font-size:.94rem;padding:0 10px 6px}.clues-disclosure>summary span{float:right;font-size:.75rem;color:var(--muted)}.clues-disclosure h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);padding:20px 12px 9px;font-weight:650}.clue-list{list-style:none;padding:0;margin:0}.clue{display:flex;gap:10px;text-align:left;width:100%;padding:10px 12px;border-radius:8px;font-size:.84rem;line-height:1.6;border:1px solid transparent}.clue:hover{background:var(--surface2)}.clue.is-active{background:var(--accent-soft);border-color:var(--line)}.clue-num{color:var(--accent);font-weight:700;min-width:17px}.clue small{font-size:.72rem;color:var(--muted);white-space:nowrap}.clue-status{margin-left:auto;color:var(--good);font-weight:700}.clue.is-filled .clue-num{color:var(--muted)}.puzzle-story{margin-top:21px}.puzzle-story>img{width:100%;height:170px;object-fit:cover;border-radius:12px}.puzzle-story p{font-size:.84rem;margin:13px 0}.puzzle-story>a{font-size:.78rem;color:var(--accent)}.below-game{max-width:750px;margin-top:32px;font-size:.88rem}.related-section{margin-top:50px}.pause-cover{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:var(--surface2);z-index:10;min-height:200px}.paused .crossword-board{visibility:hidden}.game-dialog{padding:34px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);width:min(92vw,490px);max-height:85vh}.game-dialog::backdrop{background:rgba(10,19,38,.65)}.dialog-close{position:absolute;top:12px;right:12px;border:0}.game-dialog h2{font-size:1.8rem;line-height:1.25;margin:15px 0}.game-dialog p{font-size:.94rem;margin:15px 0 23px}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap}.dialog-actions .btn{flex:1}.result-mark{font-size:2rem;color:var(--accent);font-weight:500}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.result-stats>div{padding:13px;background:var(--surface2);border-radius:8px;font-size:.75rem;color:var(--muted)}.result-stats b{font-size:1.3rem;color:var(--ink);display:block}.notice{padding:16px;border:1px solid var(--line);background:var(--accent-soft);border-radius:9px;margin-bottom:20px}
@media(min-width:1050px){.play-panel{position:sticky;top:18px}.page-game .site-footer{margin-top:45px}}
@media(max-width:1080px){.header-inner{gap:22px}.main-nav{gap:15px;font-size:.82rem}.header-actions{gap:12px}.game-layout{grid-template-columns:minmax(0,1.3fr) minmax(275px,1fr)}.play-panel{padding:17px}.game-progress{gap:10px}.game-progress>div{display:block}.game-progress>div>span{display:block;font-size:.7rem}.intro-facts{gap:18px}.home-intro{gap:28px}.puzzle-grid{gap:17px}.card-body{padding:17px}.help-actions .btn{font-size:.74rem;padding:9px}.theme-intro{gap:30px}}
@media(max-width:900px){.header-inner{flex-wrap:wrap;padding:15px 25px;gap:14px}.main-nav{order:3;width:100%;justify-content:center;gap:28px;border-top:1px solid var(--line);padding-top:7px}.header-actions{margin-left:auto}.container{padding-left:25px;padding-right:25px}.breadcrumbs{margin:18px 0 22px}.home-intro{grid-template-columns:1fr 1fr}.intro-copy h1{font-size:3.2rem}.intro-description{font-size:.95rem}.intro-facts{gap:13px;flex-wrap:wrap}.hero-art{aspect-ratio:1.05}.hero-caption{padding:30px 18px 20px}.hero-caption strong{font-size:1rem}.puzzle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.editorial-note{gap:35px}.game-layout{grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);gap:18px}.game-heading h1{font-size:2.05rem}.game-heading-actions{flex-direction:column}.timer-control{font-size:.7rem}.play-panel{padding:14px}.help-actions .btn{white-space:normal}.clue{font-size:.8rem}.daily-calendar{gap:7px}.calendar-day{padding:9px}.calendar-day small{font-size:.65rem}}
@media(max-width:700px){.container{padding-left:18px;padding-right:18px}.header-inner{padding:14px 18px}.main-nav{justify-content:flex-start;gap:24px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:1px;scrollbar-width:none}.main-nav a{font-size:.8rem}.brand b{font-size:1.1rem}.brand-mark{width:29px;height:29px}.my-link{font-size:.78rem}.header-actions .icon-btn{width:34px;height:34px;min-width:34px}.breadcrumbs{font-size:.67rem;gap:4px}.breadcrumbs li+li:before{margin-right:6px}.home-intro{grid-template-columns:1fr;gap:25px;padding-top:0}.intro-copy h1{font-size:3.2rem;margin:12px 0 18px}.intro-copy h1 br{display:none}.intro-description br{display:none}.intro-description{margin-bottom:20px;max-width:460px}.intro-facts{margin-top:22px;gap:25px}.hero-art{aspect-ratio:1.9;max-height:260px}.hero-caption{padding-bottom:18px}.hero-caption strong{font-size:1.15rem}.home-intro{padding-bottom:24px}.topic-pills{gap:8px;margin-bottom:30px}.topic-pills a{padding:9px 12px;font-size:.79rem;gap:9px}.catalog-controls{flex-wrap:wrap;gap:9px;margin-bottom:20px}.search-field{flex-basis:100%}.select-field{flex:1;min-width:0}.select-field select{width:100%;font-size:.82rem}.search-field input{font-size:1rem}.puzzle-grid{gap:14px}.card-body{padding:14px}.card-body h3{font-size:1.03rem;margin:9px 0}.card-body>p{font-size:.79rem;line-height:1.6;margin-bottom:14px}.card-body .eyebrow{font-size:.6rem;letter-spacing:.035em}.card-body .eyebrow>span{display:none}.card-bottom{font-size:.68rem;padding-top:10px;gap:5px;flex-wrap:wrap}.card-play{font-size:.77rem}.card-image>.level-badge{left:10px;top:10px;font-size:.62rem;padding:3px 7px}.card-state{top:auto;bottom:8px;left:8px;right:auto;font-size:.62rem}.card-image{aspect-ratio:1.55}.puzzle-card{border-radius:12px}.editorial-note{grid-template-columns:1fr;gap:20px;margin-top:40px;padding:28px 0}.editorial-note h2{font-size:2rem;margin-top:8px}.editorial-note h2 br{display:none}.editorial-note p{font-size:.9rem}.faq-section summary{font-size:.9rem}.faq-section p{font-size:.9rem}.site-footer{margin-top:45px}.site-footer nav{margin-left:0;gap:13px 20px}.site-footer p{font-size:.75rem}.footer-inner{gap:18px}.theme-grid{gap:18px}.theme-card{aspect-ratio:1.1}.theme-card-copy{padding:18px}.theme-card-copy h2{font-size:1.3rem}.theme-card-copy>span{font-size:.76rem}.theme-intro{grid-template-columns:1fr;gap:23px;padding-bottom:30px}.theme-intro h1{font-size:2.5rem}.theme-intro h1 br{display:none}.theme-intro>img{height:240px}.page-intro h1{font-size:2.4rem}.page-intro p:not(.eyebrow){font-size:.95rem}.daily-feature{grid-template-columns:1fr;gap:25px}.daily-feature .puzzle-card{max-width:480px}.daily-explainer h2{font-size:1.8rem}.daily-calendar{gap:5px}.calendar-day{padding:8px 6px;min-height:75px}.calendar-day small{font-size:.61rem;overflow-wrap:anywhere}.personal-stats{gap:10px}.personal-stat{padding:15px}.personal-stat b{font-size:1.65rem}.personal-stat span{font-size:.74rem}.game-heading{align-items:flex-start;gap:12px;margin-top:0;margin-bottom:22px}.game-heading h1{font-size:1.8rem;margin:9px 0 12px}.game-heading-actions .btn{font-size:.7rem;min-height:32px;padding:6px 10px}.game-meta{gap:9px;font-size:.71rem}.game-meta .text-button{font-size:.72rem}.game-layout{grid-template-columns:1fr;gap:25px}.play-panel{padding:16px;border-radius:14px}.game-progress>div{display:flex;gap:7px}.game-progress>div>span{font-size:.75rem}.timer-control{font-size:.74rem}.game-progress>.text-button{font-size:.76rem}.active-question{margin-bottom:15px;min-height:75px;font-size:.86rem}.board-wrap{margin:0 -3px;max-width:calc(100% + 6px)}.keyboard{padding:7px 0 12px}.key{height:40px;max-width:45px;font-size:.82rem}.key-wide{max-width:70px}.key-space{max-width:230px}.key-row{gap:3px}.help-actions{gap:7px}.help-actions .btn{font-size:.74rem;white-space:nowrap;min-height:41px;padding:8px 9px}.board-options{gap:7px}.board-options .text-button{font-size:.66rem}.zoom-controls{gap:5px;font-size:.68rem}.clues-disclosure{padding:15px 9px}.clue{font-size:.88rem;padding:11px}.clues-disclosure h3{font-size:.78rem}.puzzle-story{display:grid;grid-template-columns:120px 1fr;gap:0 18px;align-items:center}.puzzle-story>img{height:100px;grid-row:1/3}.puzzle-story p{margin:0;font-size:.8rem}.puzzle-story>a{margin-top:8px;font-size:.76rem}.below-game{font-size:.84rem;margin-top:22px}.related-section{margin-top:36px}.related-section .puzzle-grid>.puzzle-card:last-child{display:none}.game-dialog{padding:25px}.game-dialog h2{font-size:1.6rem}.continue-panel{padding:15px;gap:12px}.continue-panel .btn{font-size:.8rem;padding:9px 13px}.continue-panel strong{font-size:.9rem}.continue-panel small{font-size:.73rem}.notice{font-size:.85rem}}
@media(max-width:390px){.container{padding-left:13px;padding-right:13px}.header-inner{padding-left:13px;padding-right:13px}.main-nav{gap:18px}.intro-copy h1{font-size:2.8rem}.puzzle-grid{gap:11px}.card-body{padding:12px}.card-body h3{font-size:.98rem}.card-body>p{font-size:.76rem}.card-bottom{gap:5px}.card-bottom>span{font-size:.64rem}.card-play{font-size:.72rem}.play-panel{padding:12px}.game-heading h1{font-size:1.65rem}.game-meta{gap:7px}.game-meta .text-button{font-size:.66rem}.game-progress{gap:8px}.game-progress>div>span{font-size:.65rem}.timer-control{font-size:.66rem}.timer-control time{font-size:.7rem}.game-progress>.text-button{font-size:.7rem}.help-actions .btn{font-size:.69rem;padding:8px 6px}.key{font-size:.78rem;height:39px}.secondary-actions{gap:11px}.secondary-actions .text-button{font-size:.68rem}.board-options .text-button{font-size:.61rem}.theme-grid{grid-template-columns:1fr}.theme-card{aspect-ratio:1.65}.personal-stats{grid-template-columns:1fr}.personal-stat{display:flex;align-items:center;gap:15px}.personal-stat b{font-size:1.5rem}.personal-stat span{font-size:.86rem}}
@media(max-width:700px){.home-intro,.theme-intro{grid-template-columns:minmax(0,1fr)}.intro-copy h1 br,.theme-intro h1 br{display:block}.game-heading{display:block}.game-heading-actions{flex-direction:row;margin-top:15px}.game-heading h1{overflow-wrap:anywhere}.page-intro h1{overflow-wrap:anywhere}.intro-copy,.theme-intro>div{min-width:0}}
@media(max-width:360px){.puzzle-grid{grid-template-columns:1fr}.related-section .puzzle-grid>.puzzle-card:last-child{display:block}.intro-copy h1{font-size:2.6rem}.action-row{gap:15px}.intro-facts{gap:15px}.card-body h3{font-size:1.15rem}.card-body>p{font-size:.86rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{body{background:#fff;color:#000;font:10pt/1.5 Georgia,serif}.site-header,.site-footer,.breadcrumbs,.game-heading-actions,.game-meta .text-button,.game-progress,.progress-track,.active-question,.board-options,.keyboard,.help-actions,.game-message,.secondary-actions,.save-note,.below-game,.related-section,.puzzle-story,.toast,.game-dialog,.skip-link,.pause-cover{display:none!important}.container{max-width:none;padding:0}.game-heading{margin:0 0 15px}.game-heading h1{font-size:22pt}.game-layout{display:block}.play-panel{position:static!important;border:0;padding:0;background:#fff}.crossword-board{--cell-size:23px!important;gap:0;border:1px solid #000;background:#fff;print-color-adjust:exact;-webkit-print-color-adjust:exact;margin:0 auto 20px;visibility:visible!important}.cell{border:.5px solid #000;background:#fff!important;color:#000!important;font-size:12pt}.cell-black{background:#222!important}.cell.selected{outline:0}.cell .letter,.cell.revealed:after{visibility:hidden!important}.cell sup{font-size:6pt}.board-wrap{overflow:visible;break-inside:avoid}.clues-disclosure{display:block;border:0;padding:0}.clues-disclosure>summary{display:none}.clues-disclosure h3{font-size:10pt;padding:12px 0 5px;color:#000;break-after:avoid}.clue-list{columns:2;column-gap:25px}.clue-list li{break-inside:avoid}.clue{padding:3px 0;font:9pt/1.5 Georgia,serif;color:#000;border:0;background:transparent!important}.clue small,.clue-num{color:#000}.clue-status{display:none}.level-badge{background:transparent;color:#000}.game-meta{font-size:9pt;color:#000}}
