:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#fbf4df;background:#173d35;font-synthesis:none;--ink:#153d33;--gold:#f0d599;--cream:#fff8e6;--muted:#b8cec0;--line:rgba(245,228,182,.24);--radius:22px}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #ffd680;outline-offset:4px}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}button,button span{touch-action:manipulation}#app{min-height:100svh;display:flex;flex-direction:column;isolation:isolate}.landscape{position:fixed;inset:0;z-index:-3;background:url('assets/rice.jpg') center 62%/cover no-repeat}.landscape:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,32,30,.26),rgba(9,33,25,.18) 37%,rgba(8,34,25,.74));backdrop-filter:saturate(1.08)}.landscape:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,32,30,.26),rgba(9,33,25,.18) 37%,rgba(8,34,25,.74)),url('assets/rice-harvested.png') center 62%/cover no-repeat;clip-path:inset(49% calc((1 - var(--harvest,0))*100%) 0 0);opacity:1}#world{position:fixed;inset:0;pointer-events:none;z-index:9}.topbar{height:83px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:12px clamp(16px,3.5vw,64px);gap:20px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(12,38,31,.7),rgba(12,38,31,.2));backdrop-filter:blur(12px)}.wordmark{display:flex;gap:12px;align-items:center;padding:0;background:transparent;text-align:left;font:24px Georgia,serif;letter-spacing:-.6px}.wordmark small{font:10px ui-sans-serif,system-ui;letter-spacing:2.2px;display:block;margin-top:5px;color:var(--gold)}.brand-mark{font:31px Georgia,serif;border:1px solid var(--gold);border-radius:50%;width:45px;height:45px;display:grid;place-items:center;color:var(--gold)}nav{display:flex;align-items:center;gap:6px}nav button{padding:10px 13px;background:transparent;border:1px solid transparent;border-radius:30px;font-size:14px;white-space:nowrap}nav button:hover{background:#ffffff12;border-color:var(--line)}nav button[aria-pressed=false]{opacity:.5}#albumCount{font-size:12px;color:var(--gold);margin-left:5px}main{flex:1;width:100%;display:flex;justify-content:center;align-items:center;min-height:0;padding:30px 25px}.small-footer{padding:12px clamp(16px,3.5vw,64px);display:flex;justify-content:space-between;gap:10px;color:#dae7d1b3;font-size:12px;position:relative;z-index:1}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:2.5px;font-weight:650;color:var(--gold);display:block}.start-layout{width:min(1060px,100%);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:36px;align-items:center}.start-panel{padding:38px 40px;background:linear-gradient(130deg,rgba(19,59,47,.96),rgba(16,45,37,.88));border:1px solid #d1b57470;border-radius:26px;box-shadow:0 25px 90px #001a1766;backdrop-filter:blur(20px)}h1{font:clamp(40px,4vw,60px)/1.02 Georgia,serif;letter-spacing:-2px;font-weight:400;margin:18px 0 14px}h1 em{color:var(--gold);font-weight:400}p{font-size:16px;line-height:1.6;margin:12px 0;color:#d3e1d5}.intro{max-width:390px;font-size:15px}.stages{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:25px 0 20px}.stage{position:relative;min-height:83px;background:#ffffff08;border:1px solid var(--line);border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;transition:background .2s,border .2s}.stage strong{font:27px Georgia,serif;letter-spacing:-1px}.stage small{font-size:12px;color:var(--muted)}.stage[aria-pressed=true]{background:#f0d599;border-color:var(--gold);color:var(--ink);box-shadow:0 4px 12px #0002}.stage[aria-pressed=true] small{color:var(--ink)}.stage.locked{opacity:.48}.stage:hover:not(.locked){border-color:var(--gold)}.difficulty{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode{text-align:left;background:#ffffff07;border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}.mode strong{font:22px Georgia,serif}.mode small{color:var(--muted);font-size:12px;line-height:1.5}.mode[aria-pressed=true]{border-color:var(--gold);background:#cfa95018}.mode[aria-pressed=true] strong{color:var(--gold)}.primary{background:var(--gold);color:#193f31;padding:15px 25px;border-radius:12px;font-weight:750;font-size:15px;box-shadow:0 5px 16px #0002;transition:background .2s}.primary:hover{background:#ffe7b3}.primary:disabled{opacity:.4}.start-button{margin-top:20px;width:100%;display:flex;justify-content:space-between;align-items:center}.subtle{background:none;color:var(--gold);border:1px solid var(--line);border-radius:12px;padding:11px 17px;font-size:14px}.subtle:hover{background:#ffffff0d}.resume{width:100%;margin-top:10px}.menu-footnote{font-size:12px;color:var(--muted);margin:15px 0 0;text-align:center}.side-story{display:flex;flex-direction:column;align-items:center;gap:20px;position:relative}.princess-welcome{width:200px;height:240px;margin-bottom:-28px;pointer-events:none}.book-button{position:relative;width:245px;min-height:245px;transform:rotate(4deg);border-radius:4px 15px 15px 4px;border:1px solid #d9b476;padding:26px 26px 22px 35px;background:linear-gradient(90deg,#112e28 0%,#2c5542 7%,#183e31 11%,#244f3f 90%,#335f48);box-shadow:12px 15px 30px #08251a80,inset 8px 0 #0b2d2970,inset -5px 0 #102f2270;transition:transform .3s}.book-button:hover{transform:rotate(1deg) translateY(-4px)}.book-button:before{content:"";position:absolute;inset:13px 12px 13px 24px;border:1px solid #eac98375;border-radius:2px 8px 8px 2px;pointer-events:none}.book-title{font:33px Georgia,serif;display:block;color:var(--gold);position:relative}.book-button .eyebrow{font-size:10px;letter-spacing:2px;margin:10px 0 17px}.cover-picture{width:85px;height:85px;border-radius:50%;border:2px solid #d7bc78;display:block;margin:0 auto 12px;background-size:800%!important}.book-button small{font-size:12px;color:#c7d7c7}.edition-tag{padding:8px 15px;border:1px solid var(--line);border-radius:30px;background:#153e2c77;font-size:12px;color:#eadcb9}.play-shell{width:100%;align-self:stretch;display:flex;flex-direction:column;align-items:center;gap:13px}.play-head{width:min(950px,100%);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px}.play-heading h2{font:28px Georgia,serif;margin:5px 0;color:var(--cream)}.play-heading .eyebrow{font-size:11px}.timer{text-align:center;min-width:130px;padding:8px 25px;border-radius:15px;background:#153d33dd;border:1px solid var(--line);font-variant-numeric:tabular-nums}.timer strong{font-size:30px;font-weight:550;display:block;letter-spacing:-1px}.timer small{font-size:11px;color:var(--gold)}.timer.urgent strong{color:#ffb298}.play-stats{justify-self:end;display:flex;gap:18px;text-align:right}.play-stats strong{display:block;font-size:21px;font-weight:500;font-variant-numeric:tabular-nums}.play-stats small{display:block;margin-top:4px;color:#d2dccb;font-size:11px}.board-wrap{position:relative;display:flex;align-items:center;justify-content:center;padding:14px 35px 0;max-width:100%}.board{--board-size:min(60vh,610px,calc(100vw - 100px));width:var(--board-size);height:var(--board-size);display:grid;grid-template-columns:repeat(var(--n),1fr);grid-template-rows:repeat(var(--n),1fr);gap:clamp(4px,.8vh,8px);padding:clamp(9px,1.5vh,16px);border-radius:20px;border:1px solid #edcf9480;background:linear-gradient(130deg,#f4e8c0dd,#cfc49ddd);box-shadow:0 18px 60px #061c1a80,inset 0 1px #fff9;backdrop-filter:blur(18px)}.card{min-width:0;min-height:0;padding:0;background:none;perspective:750px;position:relative;border-radius:7px}.card-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .42s cubic-bezier(.2,.8,.2,1);border-radius:inherit}.card.is-up .card-inner,.card.is-matched .card-inner{transform:rotateY(180deg)}.card-back,.card-front{position:absolute;inset:0;border-radius:inherit;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 2px 3px #092e3333}.card-back{display:grid;place-items:center;background:linear-gradient(145deg,#2e6653,#183f32);border:1px solid #658473;color:#eacf98}.card-back:before{content:"";position:absolute;inset:5px;border:1px solid #ccb67967;border-radius:3px}.card-back span{font:italic clamp(16px,3vh,29px) Georgia,serif;opacity:.8}.card-front{transform:rotateY(180deg);border:3px solid #fff7db;background-color:#eadaba;background-repeat:no-repeat;overflow:hidden}.card-front small{position:absolute;bottom:0;right:0;font:10px system-ui;color:#fff;background:#112f2bbb;padding:1px 4px;border-radius:4px 0 0 0}.card:hover:not(:disabled) .card-back{background:linear-gradient(140deg,#477a5e,#224f3b);border-color:#f5e0a2}.card.is-matched{opacity:.64}.card.is-matched:after{content:"✓";position:absolute;right:-2px;top:-3px;font-size:12px;width:18px;height:18px;border-radius:50%;color:#19422e;background:#f8dd91;z-index:2;display:grid;place-items:center;box-shadow:0 2px 3px #0002}.card.pair-pop{z-index:5;animation:pairPop .85s ease both}.card.help-card{box-shadow:0 0 0 3px #efc774,0 0 24px #ffdb7780}.rest-square{display:flex;align-items:center;justify-content:center;font:italic clamp(10px,2vh,16px)/1.2 Georgia,serif;color:#627760;text-align:center;border:1px dashed #64755655;border-radius:8px}.progress-rail{position:absolute;right:11px;top:30px;bottom:15px;width:4px;border-radius:6px;background:#163c2880;overflow:hidden}.progress-rail span{display:block;width:100%;position:absolute;bottom:0;background:var(--gold);border-radius:6px;transition:height .4s}.under-board{width:min(740px,100%);display:flex;flex-direction:column;align-items:center;gap:10px}.instruction{height:24px;margin:0;text-align:center;font-size:14px;color:#f4ead2;text-shadow:0 1px 4px #001c1a;font-weight:550}.action-bar{display:flex;align-items:center;justify-content:center;gap:10px;background:#12372dec;border:1px solid var(--line);border-radius:16px;padding:9px 13px;backdrop-filter:blur(20px)}.action-bar button{background:#ffffff09;border:1px solid var(--line);border-radius:9px;padding:9px 16px;font-size:13px}.action-bar .help-control{background:#f0d599;color:#173c30;border-color:#f0d599}.help-control:disabled{opacity:.45}.key{font-size:12px;display:inline-grid;place-items:center;width:23px;height:23px;background:#00000018;border:1px solid #0002;border-radius:5px;margin-right:6px;font-weight:800}.hearts{letter-spacing:3px}.round-label{font-size:12px;color:var(--muted);padding:0 6px}.album-shell,.records-shell{width:min(1120px,100%);background:#103a2fec;border:1px solid var(--line);border-radius:24px;padding:26px 32px;box-shadow:0 24px 80px #001f2077}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.section-title h2{font:38px Georgia,serif;margin:8px 0;color:var(--gold)}.section-title p{font-size:14px;margin:0}.album-spread{display:grid;grid-template-columns:1fr 1fr;background:#f7eed7;border-radius:4px 12px 12px 4px;color:#224233;box-shadow:0 5px 20px #0003;overflow:hidden;min-height:420px}.album-page{position:relative;padding:25px;background:linear-gradient(90deg,#eee2c3,#fff7e6 9%,#f9f0d9 94%,#ddcfad);display:flex;flex-direction:column}.album-page+ .album-page{background:linear-gradient(90deg,#d9c9a5,#faf2de 7%,#fff8e7 94%,#eee0c1);border-left:1px solid #ab976866}.page-top{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;color:#647355}.photo-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;flex:1}.album-photo{background:#fffefa;padding:7px 7px 16px;box-shadow:0 4px 9px #32432826;transform:rotate(-2deg);align-self:center;transition:transform .25s;position:relative}.album-photo:nth-child(even){transform:rotate(2deg)}.album-photo:hover{transform:rotate(0) scale(1.04);z-index:2}.photo-image{display:block;aspect-ratio:1;background-color:#dce0c5;background-repeat:no-repeat;background-size:800%}.photo-caption{font:italic 13px Georgia,serif;color:#687b60;display:block;margin-top:9px;text-align:center}.empty-photo{border:1px dashed #9eaf9377;display:grid;place-items:center;aspect-ratio:1;color:#9cab89;align-self:center;font:italic 15px Georgia,serif;background:#e6e5ce40}.page-number{font:italic 12px Georgia,serif;text-align:center;margin-top:18px;color:#88916e}.album-nav{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:20px}.album-nav small{color:#cad6c8}.locked-book{margin-top:20px;border:1px dashed var(--line);border-radius:14px;padding:16px;text-align:center;color:var(--muted);font-size:14px}.locked-book strong{color:var(--gold);display:block;font:22px Georgia,serif;margin-bottom:6px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px}.stat-tile{padding:17px;border:1px solid var(--line);border-radius:14px;background:#ffffff05}.stat-tile strong{display:block;font:30px Georgia,serif;color:var(--gold)}.stat-tile small{display:block;margin-top:7px;color:var(--muted);font-size:12px}.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.badge{border:1px solid var(--line);border-radius:14px;padding:18px 13px;background:#ffffff04;text-align:center}.badge-icon{display:block;font-size:31px;margin-bottom:10px;filter:grayscale(1);opacity:.5}.badge.earned{background:#e8be5d0f;border-color:#eed49685}.badge.earned .badge-icon{filter:none;opacity:1}.badge strong{display:block;font-size:13px;color:#e4dfca}.badge p{font-size:12px;color:var(--muted);line-height:1.45;margin:7px 0}.badge small{color:#849e8c;font-size:11px}.records-table{width:100%;border-collapse:collapse;margin-bottom:25px;font-size:13px}.records-table td,.records-table th{text-align:left;padding:10px;border-bottom:1px solid var(--line)}.records-table th{color:var(--gold);font-weight:500}.records-note{font-size:12px;color:var(--muted);margin:15px 0}.overlay{position:fixed;inset:0;background:rgba(5,24,19,.78);backdrop-filter:blur(12px);display:grid;place-items:center;z-index:30;padding:22px;overflow-y:auto}.modal{position:relative;width:min(520px,100%);padding:35px;border:1px solid #ddc58e88;border-radius:22px;background:linear-gradient(145deg,#255342,#11382d);box-shadow:0 20px 80px #0006;text-align:center;max-height:calc(100svh - 44px);overflow:auto}.modal h2{font:37px/1.1 Georgia,serif;color:var(--gold);margin:12px 0}.modal p{font-size:15px}.modal .primary{margin-top:12px}.modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}.close-modal{position:absolute;right:13px;top:13px;background:#ffffff10;border:1px solid var(--line);border-radius:50%;width:32px;height:32px;font-size:20px}.result-icon{font-size:45px;display:block;margin:4px 0}.result-stats{display:flex;gap:25px;justify-content:center;margin:23px 0;color:var(--cream)}.result-stats strong{display:block;font:26px Georgia,serif}.result-stats small{color:var(--muted);font-size:12px}.reward-modal{width:min(780px,100%)}.reward-deck{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:25px 0;perspective:800px}.reward-card{aspect-ratio:.75;border-radius:7px;background:linear-gradient(145deg,#3c7259,#173d31);border:1px solid #d2b579;box-shadow:0 5px 10px #0003;position:relative;font:italic 23px Georgia,serif;color:var(--gold);transition:transform .35s,opacity .35s;animation:shuffleIn 1.8s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i)*.025s)}.reward-card:hover:not(:disabled){transform:translateY(-7px) rotate(-2deg);box-shadow:0 8px 16px #0005}.reward-card.selected{opacity:.4;transform:rotateY(180deg)}.reward-card .photo-image{position:absolute;inset:3px;aspect-ratio:auto;border-radius:4px;transform:rotateY(180deg)}.reward-flight{position:fixed;width:180px;height:210px;padding:7px 7px 25px;background:#fff7e6;box-shadow:0 20px 45px #0008;left:calc(50% - 90px);top:calc(50% - 105px);z-index:60;pointer-events:none;animation:photoFlight 1.5s ease-in-out forwards}.reward-flight .photo-image{height:100%}.teacher-modal{width:min(690px,100%);background:#d6af6c;padding:16px;border:2px solid #eed499;border-radius:13px;overflow:visible}.school-board{background:#214839;border:7px solid #906541;padding:30px 30px 25px 130px;text-align:left;min-height:300px;color:#f1f2d9;box-shadow:inset 0 0 30px #06271f80}.school-board h2{font:30px Georgia,serif;color:#f6e6a8}.school-board p{font-size:16px;color:#e3ebd4}.teacher-avatar{position:absolute;bottom:-12px;left:-35px;width:195px;max-height:280px;object-fit:contain;filter:drop-shadow(0 5px 4px #0004)}.lesson-diagram{display:flex;align-items:center;justify-content:space-between;gap:7px;margin:20px 0}.lesson-diagram span{border:1px solid #d4e1c787;border-radius:8px;padding:10px;font-size:12px;text-align:center;flex:1}.school-board a{color:#ead392;font-size:12px}.teacher-modal .close-modal{background:#153d33;color:white;z-index:2}.viewer{width:min(1100px,95vw);background:#0c261f;padding:45px 25px 20px}.viewer-photo{height:min(72vh,850px);max-width:100%;margin:auto;aspect-ratio:1;background-repeat:no-repeat;background-color:#08241b}.viewer-photo.full{background-size:contain!important;background-position:center!important}.viewer p{font-size:13px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;z-index:70;border:1px solid #d9bb74a0;background:#123e31f2;padding:13px 22px;border-radius:13px;color:#fff0c7;box-shadow:0 8px 25px #0004;transition:opacity .2s,transform .2s;max-width:min(600px,90vw);font-size:14px;text-align:center;pointer-events:none}#toast.visible{opacity:1;transform:translate(-50%,0)}#gBanner{position:fixed;top:88px;left:50%;transform:translateX(-50%);z-index:26;background:#f1cb79;color:#173c30;font-size:16px;font-weight:900;padding:9px 22px;border-radius:0 0 12px 12px;box-shadow:0 6px 18px #0003}#holdStatus{position:fixed;bottom:65px;right:22px;z-index:65;color:#f4d79b;background:#173d33;padding:12px 18px;border:1px solid var(--line);border-radius:12px;font-size:13px}.pause-mask .card-inner{visibility:hidden}.practice-pill{display:inline-block;margin-top:4px;color:var(--gold);font-size:11px}.loading-note{color:#f3d79c;font-size:14px;text-align:center}.error-box{border:1px solid #f3b393;border-radius:14px;padding:15px;color:#fff0df;background:#592b2090}.status-flash{animation:flash .4s ease}.scene-caption{position:fixed;bottom:115px;left:50%;transform:translateX(-50%);z-index:15;background:#fff5dce8;color:#245036;padding:10px 22px;font:italic 18px Georgia,serif;border-radius:30px;box-shadow:0 8px 22px #08271c44;pointer-events:none}.science-link{font-size:12px;color:#bdcdbf;background:none;text-decoration:underline;margin:10px auto 0}.screen-note{max-width:500px;text-align:center;font-size:13px}.g-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:23px 0}.g-stages button{background:#f0d599;color:#173d33;border-radius:10px;padding:15px 5px;font:24px Georgia,serif}.g-note{font-size:13px!important}.menu-chip{font-size:12px;border:1px solid var(--line);border-radius:30px;padding:7px 13px;color:var(--gold);background:#12372b88}.page-dots{height:2px;background:#f0d59944;width:130px;display:inline-block}.page-dots span{height:2px;background:var(--gold);display:block}.reward-remaining{color:var(--gold);font-size:13px}.live-badge{display:inline-block;border:1px solid var(--line);padding:4px 8px;border-radius:5px;font-size:11px;margin-top:4px}
@keyframes pairPop{0%,100%{transform:scale(1)}45%{transform:scale(1.2)}}@keyframes shuffleIn{0%{transform:translate(calc((2.5 - var(--col))*75px),calc((.5 - var(--row))*110px)) rotate(-10deg) rotateY(180deg);opacity:0}22%{opacity:1}48%{transform:translate(calc((2.5 - var(--col))*30px),0) rotate(8deg) rotateY(180deg)}70%{transform:translate(0,0) rotate(-5deg) rotateY(90deg)}100%{transform:translate(0,0) rotate(0) rotateY(0)}}@keyframes photoFlight{0%{transform:scale(.5) rotate(-7deg);opacity:0}25%,55%{transform:scale(1.15) rotate(2deg);opacity:1}100%{transform:translate(32vw,-38vh) scale(.1) rotate(8deg);opacity:0}}@keyframes flash{50%{filter:brightness(1.35)}}
@media(min-width:1450px){.board{--board-size:min(64vh,740px,calc(100vw - 140px))}}@media(max-height:760px) and (min-width:761px){.topbar{height:65px}.start-panel{padding:23px 32px}h1{font-size:43px}.stages{margin:16px 0}.stage{min-height:68px}main{padding:15px 22px}.board{--board-size:min(58vh,540px)}.play-shell{gap:7px}.play-head{max-width:820px}.play-heading h2{font-size:24px}.board-wrap{padding-top:4px}.instruction{font-size:13px}.small-footer{padding-top:6px;padding-bottom:6px}.action-bar{padding:6px 10px}.princess-welcome{height:185px}.book-button{min-height:225px}}@media(max-width:760px){.topbar{height:72px;padding:10px 16px;gap:8px}.wordmark{font-size:21px;gap:8px}.brand-mark{width:35px;height:35px;font-size:24px}.wordmark small{font-size:8px;letter-spacing:1.4px}nav{gap:0}nav button{font-size:12px;padding:9px 7px}nav button span:not(#albumCount){display:none}#albumCount{display:none}main{padding:20px 14px;align-items:flex-start}.start-layout{grid-template-columns:1fr;gap:23px;max-width:530px}.start-panel{padding:29px 25px}.side-story{flex-direction:row;justify-content:center;gap:20px}.princess-welcome{height:165px;width:130px;margin:0}.book-button{width:165px;min-height:177px;padding:20px 20px 15px 26px}.book-title{font-size:23px}.book-button .eyebrow{font-size:8px;margin:8px 0 12px}.cover-picture{width:48px;height:48px;margin-bottom:8px}.book-button small{font-size:11px}.edition-tag{display:none}h1{font-size:46px;letter-spacing:-1.6px}.small-footer{font-size:10px;padding:15px 16px}.play-head{grid-template-columns:1fr auto;gap:8px}.play-heading h2{font-size:25px}.play-stats{grid-column:1/-1;justify-self:stretch;justify-content:space-between;text-align:left;gap:10px;padding:0 9px}.play-stats div{display:flex;gap:7px;align-items:baseline}.play-stats strong{font-size:18px}.play-stats small{font-size:11px}.timer{min-width:100px;padding:7px 12px}.timer strong{font-size:25px}.timer small{font-size:10px}.board-wrap{width:100%;padding:8px 18px 0}.board{--board-size:min(69vh,calc(100vw - 64px));gap:5px;border-radius:15px;padding:9px}.progress-rail{right:3px;top:20px;bottom:10px;width:3px}.play-shell{gap:13px}.under-board{gap:10px}.instruction{font-size:12px;min-height:30px;height:auto;max-width:340px}.action-bar{width:100%;gap:5px;justify-content:space-around;padding:8px}.action-bar button{padding:9px 10px;font-size:12px}.round-label{display:none}.key{width:20px;height:20px;margin-right:3px}.hearts{letter-spacing:0}.album-shell,.records-shell{padding:21px 16px}.section-title h2{font-size:31px}.section-title .subtle{font-size:12px;padding:8px}.section-title p{font-size:12px}.album-spread{min-height:0}.album-page{padding:12px}.page-top{font-size:8px;letter-spacing:1px;margin-bottom:13px}.photo-slots{gap:12px;grid-template-columns:1fr}.album-photo{padding:5px 5px 10px}.photo-caption{font-size:11px;margin-top:5px}.album-photo:nth-child(n+3),.empty-photo:nth-child(n+3){display:none}.page-number{font-size:10px;margin-top:12px}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-tile strong{font-size:25px}.badges{grid-template-columns:1fr 1fr;gap:9px}.badge{padding:13px 9px}.badge strong{font-size:12px}.badge p{font-size:11px}.modal{padding:30px 22px}.modal h2{font-size:31px}.reward-deck{gap:8px}.reward-card{font-size:18px}.reward-modal{padding:30px 15px}.school-board{padding:17px 15px 22px 80px;border-width:5px}.school-board h2{font-size:24px}.school-board p{font-size:14px}.teacher-avatar{left:-16px;width:125px;bottom:15px}.teacher-modal{padding:10px}.lesson-diagram span{font-size:10px;padding:8px 5px}.viewer{padding:46px 12px 10px}.viewer-photo{height:auto;width:100%;aspect-ratio:1}.scene-caption{bottom:110px;font-size:15px;width:max-content;max-width:90vw;text-align:center}.page-dots{width:70px}#gBanner{top:72px;font-size:13px;padding:7px 16px}.card-back span{font-size:20px}.card-back:before{inset:3px}.card-front{border-width:2px}.rest-square{font-size:12px}.card-front small{font-size:8px}.records-table{font-size:11px}.records-table td,.records-table th{padding:8px 4px}}
@media(max-width:380px){.wordmark{font-size:18px}.brand-mark{display:none}nav button{padding:9px 6px}.start-panel{padding:24px 18px}h1{font-size:39px}.mode{padding:12px}.stage strong{font-size:24px}.instruction{font-size:11px}.card-back span{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.album-shell .section-title .eyebrow{text-transform:none;letter-spacing:.08em}.album-photo{padding-bottom:7px}.stage.locked small{font-size:10px}.stage.locked:hover{opacity:.8}

/* Keep the entire teacher in the lesson, including in short viewports. */
.teacher-modal{display:grid;grid-template-columns:minmax(115px,25%) 1fr;align-items:end;max-width:780px;overflow:auto;gap:12px;padding:20px}.teacher-avatar{position:relative;grid-column:1;grid-row:1;left:auto;bottom:auto;width:100%;height:auto;max-height:330px;z-index:1;align-self:end;animation:teacherHello .7s ease-out both}.school-board{grid-column:2;grid-row:1;padding:24px 20px;min-height:300px}.lesson-diagram{flex-wrap:wrap}.rest-square{font-size:clamp(8px,1.1vw,13px);line-height:1.25;overflow-wrap:normal;padding:3px;text-wrap:balance}.teacher-modal .close-modal{position:absolute;right:8px;top:8px;z-index:3}@keyframes teacherHello{from{opacity:0;transform:translateY(20px) rotate(-3deg)}to{opacity:1;transform:none}}@media(max-width:760px){.teacher-modal{grid-template-columns:92px 1fr;gap:5px;padding:10px}.school-board{padding:20px 12px;min-height:0}.teacher-avatar{width:100%;left:auto;bottom:auto;max-height:250px}.school-board h2{font-size:23px}.lesson-diagram{gap:4px}.lesson-diagram span{min-width:50px}.rest-square{font-size:clamp(7px,1.85vw,11px)}}

h1 .skills-line{font-size:.64em;line-height:1.3;letter-spacing:-.025em}.path-note{font-size:14px;color:var(--gold);margin:16px 0 0}.path-note small{display:block;color:#cfdfd4;font-size:13px;line-height:1.5}.stage small{line-height:1.35;padding:0 4px}.scene-settings{border:1px solid var(--line);border-radius:12px;padding:14px 16px;text-align:left}.scene-settings legend{color:var(--gold);padding:0 8px}.scene-settings>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0}.scene-settings label{display:flex;align-items:center;gap:8px;font-size:15px}.scene-settings input{accent-color:var(--gold);width:18px;height:18px}.scene-settings small{display:block;font-size:13px;line-height:1.4;color:#c5d7ca}.scene-settings button{font-size:13px;padding:8px 10px}.scene-settings button:disabled{opacity:.4;cursor:default}.princess-welcome{height:280px;width:230px;margin-bottom:-12px}@media(max-width:760px){.princess-welcome{height:185px;width:145px;margin:0}}

/* Red memories extends the field-notes palette without hiding the original paths. */
.topbar{height:auto;min-height:83px;flex-wrap:wrap;row-gap:10px}.wordmark{font-size:clamp(18px,1.65vw,25px)}.topbar nav{flex-wrap:wrap;justify-content:flex-end}.red-toggle{border:1px solid #e06070;color:#ffadb6;background:#681e3080;animation:redInvitation 8s ease-in-out infinite;display:flex;align-items:center;gap:8px;font-weight:750;opacity:1!important}.switch-dot{width:27px;height:15px;border-radius:10px;background:#37191f;position:relative;border:1px solid #dd7182}.switch-dot:after{content:"";position:absolute;top:2px;left:2px;width:9px;height:9px;border-radius:50%;background:#f594a4;transition:transform .25s}.red-toggle[aria-pressed=true] .switch-dot:after{transform:translateX(11px);background:#fff0d7}
@keyframes redInvitation{0%,78%,100%{box-shadow:0 0 0 0 #ef607700}85%{box-shadow:0 0 15px 2px #ed58755c}92%{box-shadow:0 0 22px 5px #ed587500}}
.menu-heading{display:grid;grid-template-columns:1fr;align-items:center;gap:22px}.with-red{width:min(1380px,100%);grid-template-columns:minmax(570px,1.7fr) minmax(320px,1fr);gap:28px}.with-red .menu-heading{grid-template-columns:1.1fr .9fr}.huge-picker{border:2px solid #e45868;border-radius:17px;padding:18px 12px;text-align:center;box-shadow:inset 0 0 35px #ac253412,0 3px 13px #0002;background:linear-gradient(150deg,#61232b22,#111e1611)}.huge-picker>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.huge-picker>strong{display:block;font:700 23px Georgia,serif;margin-top:16px;color:var(--gold)}.huge-picker>small{display:block;color:#e8c8b4;font-size:12px;margin-top:7px}.huge-stage{background:#4d1f2326;border:2px solid #cf485b;border-radius:12px;padding:17px 5px;display:grid;gap:7px;color:var(--gold)}.huge-stage strong{font:28px Georgia,serif}.huge-stage small{font-size:12px;color:#f1c8b3}.huge-stage[aria-pressed=true]{background:linear-gradient(135deg,#8b3344,#4d182a);box-shadow:inset 0 0 18px #ff9a9130,0 0 0 2px #e4767555}.huge-stage:hover{border-color:#ff94a0}.huge-description{border:1px solid #dc5869;border-radius:14px;padding:16px 18px;margin-top:18px;background:#65213728}.huge-description strong{color:var(--gold);font-weight:850;font-size:22px}.huge-description p{font-size:14px;margin:8px 0 0}.bonus-note{display:block;color:#f1d899!important;border-top:1px solid #c0ad793d;margin-top:8px;padding-top:8px}.album-covers{display:flex;align-items:center;justify-content:center;gap:13px;width:100%}.with-red .book-button{width:48%;min-height:230px;padding:26px 16px 20px 22px}.with-red .book-title{font-size:26px}.with-red .book-button .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.7}.red-book{background:linear-gradient(90deg,#30121a,#8d3140 7%,#5c2032 13%,#521629 88%,#803047);border-color:#e66877;transform:rotate(-3deg);box-shadow:12px 15px 30px #21091277,inset 8px 0 #2d0b1570,inset -5px 0 #420f2270}.red-book:before{border-color:#e879887a}.cover-heart{display:grid;place-items:center;height:85px;margin:0 auto 12px;font:78px Georgia,serif;color:#f294a0}.album-tabs{display:flex;gap:12px;align-items:stretch;margin-bottom:25px}.album-tabs button{flex:1;line-height:1.5}.album-tabs [aria-pressed=true]{background:#f0d59920;border-color:var(--gold)}.album-tabs .red-tab{border:1px solid #e06077}.red-tab span{color:#efa2af}.album-dedication{text-align:center;font:italic 20px Georgia,serif;color:var(--gold);padding-top:12px}.record-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.achievement-preview{max-height:52vh;max-width:100%;object-fit:contain;border:1px solid #f0d59980;border-radius:7px;margin:15px auto}.modal a.subtle{display:inline-flex;align-items:center;text-decoration:none}.mixer-tracks{text-align:left;border:1px solid var(--line);border-radius:15px;margin:22px 0;padding:5px 16px}.mixer-track{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 0;border-bottom:1px solid var(--line)}.mixer-track:last-child{border-bottom:0}.mixer-track label{display:flex;gap:10px;align-items:center;font-size:16px}.mixer-track input{accent-color:#e7c78c;width:18px;height:18px}.mixer-track .subtle{padding:8px 12px}.mixer-track button:disabled{opacity:.3}.g-huge{border:1px solid #d95871;border-radius:12px;padding:13px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:20px}.g-huge button{border-color:#cf5f76}.g-huge #gUnlockHuge{flex-basis:100%;color:#ffb4c2}.teacher-modal{display:block;width:min(730px,100%);padding:17px;overflow:hidden}.school-board{display:block;padding:30px 34px 30px 100px;min-height:310px}.school-board .eyebrow{font-size:17px;letter-spacing:.12em;text-transform:none}.school-board h2{font-size:29px}.school-pointer{position:absolute;bottom:40px;left:8px;width:152px;height:180px;overflow:hidden;pointer-events:none;transform-origin:10% 100%;transform:rotate(-16deg);animation:pointerLesson 4s ease-in-out infinite}.school-pointer img{position:absolute;width:780px;max-width:none;left:-632px;top:0}.teacher-avatar{display:none}.school-board p[style]{font-size:13px!important}@keyframes pointerLesson{0%,100%{transform:rotate(-16deg)}50%{transform:rotate(-5deg)}}
body[data-scene=lotus] .landscape{background-image:url('assets/lotus.jpg');background-position:center}body[data-scene=sky] .landscape{background-image:url('assets/sky.png');background-position:center}body[data-scene=rewards] .landscape{background-image:url('assets/rewards2.jpg');background-position:center}body[data-scene=benefits] .landscape{background-image:url('assets/benefits.jpg');background-position:center}body:not([data-scene=rice]) .landscape:before{display:none}body[data-scene=sky] .landscape:after{background:linear-gradient(#040b1f12,#06122822 70%,#05091b77)}body[data-scene=rewards] .landscape:after,body[data-scene=benefits] .landscape:after{background:linear-gradient(#14091120,#1609100a 65%,#12071177)}
body[data-theme=red]{--gold:#f4d395;--line:rgba(241,118,137,.48);--muted:#dec0c7;--ink:#421628;background:#210d19}body[data-theme=red] .topbar{background:linear-gradient(#280e1dee,#36102688);border-color:#ab4159}body[data-theme=red] .start-panel,body[data-theme=red] .album-shell,body[data-theme=red] .records-shell{background:linear-gradient(145deg,#451828f5,#270e1cee);border-color:#d25870}body[data-theme=red] .timer,body[data-theme=red] .action-bar{background:#351224ee;border-color:#d8627b}body[data-theme=red] .board{border:2px solid #e86d82;background:linear-gradient(130deg,#c86c7399,#611e36dd);box-shadow:0 18px 60px #160914aa,inset 0 0 0 3px #e6829a44,0 0 20px #bb3d5b22}body[data-theme=red] .card-back,body[data-theme=red] .reward-card{background:linear-gradient(135deg,#8c354e,#46152c);border-color:#ec718d;color:#f5d4ad}body[data-theme=red] .card:hover:not(:disabled) .card-back{background:linear-gradient(135deg,#b14964,#6c233f);border-color:#ffd8c6}body[data-theme=red] .card-front{border-color:#ffc5c6}body[data-theme=red] .modal{background:linear-gradient(145deg,#642a3d,#2c1024);border-color:#df7085}body[data-theme=red] .rest-square{color:#ffd7d0;border-color:#efa0b880}body[data-theme=red] .card.is-matched:after{background:#ec8192;color:#45162b}body[data-theme=red] .progress-rail span{background:#ff8fa6}body[data-theme=red] .album-page{background:linear-gradient(90deg,#e8c7c5,#fff0e7 12%,#f2d9d5 94%,#c8a2ac)}body[data-theme=red] .album-page+.album-page{background:linear-gradient(90deg,#c79faa,#f8e5df 8%,#ffede5 92%,#ecc3ca)}body[data-theme=red] .album-spread{border:1px solid #d9637e}body[data-theme=red] .page-top{color:#87374f}body[data-theme=red] .empty-photo{border-color:#b9798c70;color:#a26b7b}body[data-theme=red] .primary{background:#f2b5bc;color:#441a2d}
.finale-host .overlay{background:#000;backdrop-filter:none;animation:finaleBlack 1.8s ease both}.finale-host .finale-modal{background:#000;border:0;box-shadow:none;width:100vw;max-width:none;padding:0;max-height:none;overflow:visible}.finale-inner{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.finale-inner p{color:#d0b4ba;font:italic 20px Georgia,serif}.finale-heart{color:#b15b72;font:90px Georgia,serif;animation:finaleBreathe 6s ease-in-out infinite}.finale-out .overlay{animation:finaleReveal 1.8s ease forwards}@keyframes finaleBlack{from{opacity:0}to{opacity:1}}@keyframes finaleReveal{from{opacity:1}to{opacity:0}}@keyframes finaleBreathe{0%,100%{opacity:.25;transform:scale(.92)}50%{opacity:.7;transform:scale(1.03)}}
@media(max-width:1120px){.with-red{grid-template-columns:minmax(0,1fr);width:min(780px,100%)}.with-red .side-story{flex-direction:row}.with-red .princess-welcome{width:155px;height:240px;flex-shrink:0}.with-red .album-covers{max-width:430px}.topbar nav{gap:2px}.topbar nav button{padding:8px 10px}}
@media(max-width:760px){.topbar{padding:10px 14px;min-height:80px;gap:10px}.wordmark{font-size:20px}.topbar nav{width:100%;justify-content:space-between}.topbar .wordmark small{font-size:9px}nav button span.switch-dot{display:inline-block}.topbar nav button{font-size:13px;padding:7px}.menu-heading,.with-red .menu-heading{grid-template-columns:1fr}.huge-picker{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8px;padding:13px}.huge-picker>div{grid-row:1/3}.huge-picker>strong{margin:0;font-size:22px}.huge-picker>small{margin:0}.huge-stage{padding:13px 6px}.with-red .side-story{flex-direction:column}.with-red .princess-welcome{height:185px;width:145px}.with-red .album-covers{max-width:380px}.with-red .book-button{min-height:220px}.book-button{max-width:220px}.school-board{padding:26px 18px 26px 60px}.school-board h2{font-size:24px}.school-pointer{transform:scale(.6) rotate(-16deg);left:-40px;bottom:30px;animation:none}.teacher-modal{padding:10px}.lesson-diagram span{font-size:12px}.action-bar{flex-wrap:wrap}.action-bar #mixer{flex-basis:100%;margin-top:4px}.instruction{min-height:36px}.board{--board-size:min(58vh,calc(100vw - 64px))}.mixer-track label{font-size:14px}.album-tabs{gap:8px}.album-tabs button{font-size:13px;padding:10px}#gBanner{top:116px}.viewer-photo{background-size:contain}.huge-description{padding:14px}.red-toggle .switch-dot{display:inline-block}.badge p{font-size:12px}.badge strong{font-size:14px}.badge small{font-size:12px}.records-note{font-size:14px}.stage small{font-size:12px}.mode small{font-size:13px}}
@media(prefers-reduced-motion:reduce){.red-toggle,.school-pointer,.finale-heart{animation:none}}

/* Compact red play space: fit the available viewport, without changing browser zoom. */
.huge-name{font-weight:850!important;display:inline!important;font-size:inherit!important;font-family:inherit!important;text-transform:none}
body[data-theme=red][data-view=play] main{padding:10px 22px 8px;align-items:flex-start}
body[data-theme=red] .play-shell{gap:6px}
body[data-theme=red] .play-head{max-width:800px;gap:12px}
body[data-theme=red] .play-heading h2{font-size:25px}
body[data-theme=red] .board-wrap{padding-top:21px;padding-bottom:21px}
body[data-theme=red] .under-board{gap:6px;max-width:720px}
body[data-theme=red] .instruction{height:auto;min-height:24px;font-size:14px}
body[data-theme=red] .action-bar{padding:7px 10px}
body[data-theme=red] .small-footer{padding-top:7px;padding-bottom:7px}
.huge-center{font-size:clamp(28px,5vh,48px);font-style:normal;filter:drop-shadow(0 3px 7px #16132277)}
.card{transition:transform .24s ease,filter .24s ease}
.card.is-selected{transform:scale(1.4);z-index:6;filter:drop-shadow(0 5px 8px #090b1140)}
.card.is-selected.pair-pop{animation:none;transform:scale(1.4)}
.reward-card.selected{opacity:1;animation:none;transform:scale(1.4) rotateY(180deg);z-index:5;box-shadow:0 8px 30px #16091680}
.help-control.empty,body[data-theme=red] .help-control.empty{background:#605961!important;border-color:#a498a0!important;color:#d7cfd5;opacity:.65;box-shadow:none}
.red-toggle{position:relative;isolation:isolate;animation:none;overflow:visible}
.red-toggle:before{content:"";position:absolute;inset:-5px;border-radius:inherit;background:radial-gradient(ellipse,#f6436b88,transparent 74%);z-index:-1;pointer-events:none;opacity:0;filter:blur(6px);animation:redTogglePulse 8s ease-in-out infinite}
@keyframes redTogglePulse{0%,70%,100%{opacity:0;transform:scale(.92)}80%{opacity:.85;transform:scale(1.16)}88%{opacity:.38;transform:scale(1.04)}93%{opacity:.6;transform:scale(1.1)}}
@media(max-width:760px){body[data-theme=red][data-view=play] main{padding:8px 14px}body[data-theme=red] .play-head{gap:6px}body[data-theme=red] .play-heading h2{font-size:22px}body[data-theme=red] .play-shell{gap:4px}body[data-theme=red] .play-stats{padding:0 4px}body[data-theme=red] .board-wrap{padding:18px}body[data-theme=red] .instruction{min-height:35px;font-size:13px;max-width:100%}body[data-theme=red] .action-bar button{min-height:40px;padding:8px;font-size:13px}body[data-theme=red] .action-bar{flex-wrap:nowrap;gap:5px;padding:6px}body[data-theme=red] .help-control{flex:1}body[data-theme=red] .small-footer{font-size:11px}.help-control.empty .key{display:none}.help-control #helpLabel{line-height:1.3}.reward-deck{gap:10px}}
@media(prefers-reduced-motion:reduce){.red-toggle:before{animation:none;opacity:.18}.card.is-selected{transition:none}.reward-card.selected{transition:none}}

/* September refinements: unobscured title, full-size selections, compact copy. */
.card.is-selected,body[data-theme=red] .card.is-selected{transform:scale(1.4);z-index:6;filter:drop-shadow(0 6px 10px #18091666)}
.card.is-selected.pair-pop{animation:none}
.badge .creator-small{display:inline;font-size:.5em;font-weight:inherit;white-space:nowrap}
.huge-picker .huge-stage small{font-size:12px;white-space:nowrap}
@media(max-width:760px){.huge-picker{grid-template-columns:minmax(0,1fr);gap:14px}.huge-picker>div{grid-row:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.huge-picker>strong{grid-column:1}.huge-stage{min-width:0}}
body[data-scene=rewards] .landscape{top:var(--scene-top,83px);background-size:contain;background-position:center top;background-repeat:no-repeat;background-color:#210710}
body[data-scene=rewards] .play-shell{padding-top:var(--rewards-title-space,100px)}
.g-reset{border-top:1px solid #e5c38f33;margin-top:22px;padding-top:18px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.g-reset .subtle{color:#ffb8c6;border-color:#c87384}
.reset-explanation{font-size:16px;line-height:1.6}
.reset-error{color:#ffc9d3;min-height:20px}

button.huge-center{padding:0;border:0;background:none;box-shadow:none;cursor:default;line-height:1.2;min-height:0;min-width:0}button.huge-center:hover{background:none;transform:none}button.huge-center:focus-visible{outline:1px solid #e6bdcb;outline-offset:3px}.board-wrap{position:relative}.huge-four-center{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(28px,5vh,48px);width:48px;height:48px}.huge-four-center:hover{transform:translate(-50%,-50%)!important}.red-ceo{white-space:nowrap;display:inline-flex;align-items:baseline}.red-ceo small{font-size:.8em}.red-ceo b{font-size:1.2em}

/* Keep the existing navigation order and alignment with the longer title. */
.topbar nav{column-gap:clamp(3px,.6vw,10px);row-gap:6px;min-width:0}
.topbar nav button{flex:0 0 auto;white-space:nowrap}
@media(max-width:760px){.topbar nav{column-gap:3px;row-gap:6px}.topbar nav #recordsNav{padding-inline:9px}}

.gh-progression-inspection{padding:18px 22px;margin:0 auto 22px;max-width:1000px;border:1px solid #d7b86a88;border-radius:18px;background:#153d32;color:#f8ecd0}.gh-progression-inspection p{margin:8px 0 12px;font-size:14px}.gh-progression-inspection button{padding:10px 16px}
/* Personal normal memories keep their full proportions in the existing album. */
.main-album-shell .empty-photo{position:relative}
.main-frame-number{position:absolute;bottom:5px;left:6px;background:#edf0e6ed;color:#294739;padding:3px 6px;border-radius:2px;font:600 .75rem/1.25 sans-serif;pointer-events:none}
.main-video-marker{position:absolute;right:7px;bottom:7px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#172c25d9;color:#ffe9b4;font-size:.8rem;pointer-events:none}
.main-memory-viewer .red-viewer{background:linear-gradient(140deg,#29473c,#13251e)}
.main-memory-viewer .red-large-frame{background:#15261f}
.main-album-inspection{margin-bottom:1.5rem;padding:1.25rem;background:#18372f;border:1px solid #b99655;border-radius:12px}
.main-thumbnail-check{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:660px;margin:auto}
.main-thumbnail-check .card{aspect-ratio:1;min-width:0;width:100%;height:auto}
@media(max-width:600px){.main-thumbnail-check{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Approved standard-board Hard description; keep body emphasis at body size. */
.mode[data-mode="hard"] small strong,.mode[data-mode="soft"] .standard-bonus-note strong{font-family:inherit;font-size:inherit;line-height:inherit;font-weight:700;color:inherit}
.mode:is([data-mode="soft"],[data-mode="hard"]) .standard-bonus-note{text-align:left;white-space:normal;overflow-wrap:break-word;animation:standard-bonus-reveal .18s ease-out both}
@keyframes standard-bonus-reveal{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.mode:is([data-mode="soft"],[data-mode="hard"]) .standard-bonus-note{animation:none}}

/* Memory pause only: approved Version 1 cube and two-line phone subtitle. */
[data-memory-pause-subtitle] .nr-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
[data-memory-pause-subtitle] .nr-visual{display:inline-flex;align-items:baseline;gap:0;white-space:nowrap;font:inherit;color:inherit;vertical-align:top}
[data-memory-pause-subtitle] .nr-first-line{display:inline-flex;align-items:baseline}
[data-memory-pause-subtitle] .nr-opening{--nr-depth:.8em;position:relative;display:inline-grid;vertical-align:baseline;height:1.6em;font:inherit;color:inherit;cursor:inherit}
@supports(height:1lh){[data-memory-pause-subtitle] .nr-opening{height:1lh;--nr-depth:.5lh}}
[data-memory-pause-subtitle] .nr-measure{grid-area:1 / 1;visibility:hidden;pointer-events:none;white-space:pre;line-height:inherit}
[data-memory-pause-subtitle] .nr-window{position:absolute;inset:0;overflow:hidden;perspective:14em;perspective-origin:50% 50%;pointer-events:none}
[data-memory-pause-subtitle] .nr-rotor{position:absolute;inset:0;transform-style:preserve-3d;transform-origin:50% 50%;transform:translateZ(calc(0px - var(--nr-depth))) rotateX(0deg);transition:transform 350ms cubic-bezier(0.22,0.61,0.36,1)}
[data-memory-pause-subtitle] .nr-face{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-end;text-align:right;white-space:pre;line-height:inherit;-webkit-backface-visibility:hidden;backface-visibility:hidden}
[data-memory-pause-subtitle] .nr-front{transform:translateZ(var(--nr-depth))}
[data-memory-pause-subtitle] .nr-reveal{transform:rotateX(-90deg) translateZ(var(--nr-depth))}
[data-memory-pause-subtitle] .nr-comma,[data-memory-pause-subtitle] .nr-tail{white-space:pre;font:inherit;color:inherit}
@media(max-width:480px){[data-memory-pause-subtitle] .nr-visual{display:flex;flex-direction:column;align-items:center}}
@media(hover:hover) and (pointer:fine){[data-memory-pause-subtitle] .nr-opening:hover .nr-rotor{transform:translateZ(calc(0px - var(--nr-depth))) rotateX(90deg)}}
@media(prefers-reduced-motion:reduce){[data-memory-pause-subtitle] .nr-rotor{transition:none}}
