@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#182d3c;background:#f9f7f2;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible+span{outline:3px solid #e85935;outline-offset:5px}.topbar{max-width:1260px;margin:auto;padding:27px 42px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #deded5}.brand{text-decoration:none;color:inherit;display:flex;align-items:center;gap:12px;font-size:14px;font-weight:800;letter-spacing:1px}.brand-icon{background:#e85935;color:white;border-radius:10px;padding:7px 11px;font-family:Outfit,sans-serif;font-size:22px}.edition{border-left:1px solid #b9bfc0;padding-left:15px;margin-left:8px;color:#67737b;font-size:12px}.text-button{border:0;background:none;color:#43525b;font-size:14px;font-weight:600;padding:10px}.text-button span{margin-left:8px}main{max-width:1120px;margin:46px auto 35px;display:grid;grid-template-columns:1fr 1.1fr;gap:60px;padding:0 24px}.intro{padding:18px 0}.eyebrow{font-size:12px;font-weight:800;letter-spacing:1.8px;color:#637078}h1{font-family:Outfit,sans-serif;font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-2.5px;margin:18px 0}h1 em{font-style:normal;color:#df522e}.intro>p{font-size:18px;line-height:1.6;color:#637078;margin:0}.art-wrap{position:relative;max-width:340px;margin:-10px auto 0;text-align:center}.art-wrap img{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 14px #192c3b15)}.art-caption{font-size:14px;color:#67737b;display:block;margin-top:-24px;position:relative;transform:rotate(-4deg)}.practice-note{display:flex;gap:16px;margin:34px 0 0;align-items:center}.practice-note>span{font-size:44px;color:#df522e}.practice-note strong{font-size:15px}.practice-note p{font-size:14px;line-height:1.5;color:#68757a;margin:5px 0}.game{background:white;border:1px solid #e5e4de;border-radius:26px;padding:28px;box-shadow:0 14px 55px #142c3e08;align-self:start}.game-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}.game-heading .eyebrow{font-size:11px;letter-spacing:1.4px}.practice-badge{font-size:12px;background:#edf4ee;color:#38624a;border-radius:20px;padding:7px 10px;font-weight:600}.difficulty{display:flex;background:#f3f4f4;border:0;border-radius:14px;padding:5px;margin:24px 0 28px;gap:4px}.difficulty label{flex:1;position:relative;cursor:pointer}.difficulty input{position:absolute;opacity:0;width:1px;height:1px}.difficulty span{display:block;text-align:center;padding:11px 4px;border-radius:10px;font-size:15px;font-weight:700;color:#68757a}.difficulty small{display:block;font-weight:400;font-size:12px;margin-top:4px}.difficulty input:checked+span{background:#182d3c;color:white;box-shadow:0 3px 5px #182d3c20}.round-meta{display:flex;justify-content:space-between;align-items:center;gap:8px}h2{font-size:16px;margin:0}.round-meta>span{font-size:13px;color:#6c787f}.pattern{display:flex;gap:9px;margin:16px 0 0}.slot{flex:1;min-width:0;height:55px;display:flex;align-items:center;justify-content:center;border:1.5px dashed #cfd5d8;border-radius:10px;font-size:23px;font-family:Outfit,sans-serif;background:#fafbfb;color:#87929a}.slot.filled{background:#eaf3ed;border:1.5px solid #87b99a;color:#285a3d}.slot.reminder{background:#fff7e9;color:#99732d;border:1.5px dashed #d8ba82}.feedback{min-height:64px;padding:18px 0 12px;color:#637078;font-size:14px;line-height:1.5}.feedback.success{color:#286442}.feedback.wrong{color:#b23f26}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tiles.four{grid-template-columns:repeat(2,1fr)}.tile{border:1px solid #dfdcd5;border-bottom:5px solid #d5d1c7;border-radius:14px;min-height:93px;background:#f7f5ee;font:600 33px Outfit,sans-serif;color:#263d4a;transition:transform .12s,background .12s;position:relative}.tile:hover:not(:disabled){background:#fff1d7;transform:translateY(-2px)}.tile:active:not(:disabled){transform:translateY(2px)}.tile:disabled{cursor:default}.tile.correct{color:#2c6949;background:#eaf3ed;border-color:#c0dbcb}.tile.correct:after{content:'✓';position:absolute;top:9px;right:12px;font:600 15px 'DM Sans',sans-serif}.tile.error{background:#ffded4;border-color:#ed9a82;color:#a43721;animation:shake .24s}.game-bottom{display:flex;justify-content:space-between;align-items:center;margin:18px 0;color:#6c787f;font-size:14px}.game-bottom strong{color:#182d3c}.best{border-top:1px solid #e9ebe9;padding-top:20px;display:flex;gap:12px;align-items:center}.best-icon{font-size:28px;color:#bf822c}.best strong{font-size:14px}.best p{font-size:13px;color:#6c787f;margin:5px 0;line-height:1.4}.best>span:last-child{margin-left:auto;font-size:10px;letter-spacing:1px;color:#788389}.storage-note{font-size:12px;color:#748087;margin:15px 0 0;line-height:1.5}.result{padding:20px 0 12px;text-align:center}.result h2{font:700 36px Outfit,sans-serif;margin:8px}.result p{font-size:15px;line-height:1.6;color:#55676c}.primary{background:#e85935;border:0;border-bottom:4px solid #bd3e21;color:white;padding:16px 20px;border-radius:12px;font-weight:700;width:100%;font-size:15px}.primary:hover{background:#cd4929}.help{grid-column:1/-1;background:#fff;border:1px solid #e5e4de;padding:26px;border-radius:18px;line-height:1.7;font-size:16px}.help li{padding:3px 0}.help p{color:#647078}footer{max-width:1120px;margin:0 auto;padding:22px 24px 30px;display:flex;justify-content:space-between;gap:14px;color:#748087;font-size:12px}footer span{letter-spacing:1px;font-size:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@keyframes shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}@media(max-width:760px){.topbar{padding:16px 20px}.edition{display:none}.brand{font-size:11px;gap:8px}.brand-icon{font-size:18px;padding:6px 9px}main{display:block;margin:24px auto;max-width:540px;padding:0 16px}.intro{position:relative;padding:0 0 22px}.intro>.eyebrow{font-size:10px;letter-spacing:1.1px}h1{font-size:43px;margin:12px 0;letter-spacing:-1.6px;max-width:70%}.intro>p{font-size:14px;line-height:1.5;max-width:62%}.art-wrap{position:absolute;right:-4px;top:35px;width:155px;margin:0}.art-caption,.practice-note{display:none}.game{padding:22px 19px;border-radius:22px}.difficulty{margin:19px 0 23px}.tile{min-height:79px}.help{margin-top:20px}footer{padding:0 23px 24px;justify-content:center}footer span{display:none}}@media(max-width:360px){.art-wrap{width:125px;top:55px}.game{padding:19px 14px}.game-heading .eyebrow{font-size:10px}.practice-badge{font-size:11px}h1{font-size:38px}.slot{height:45px}.pattern{gap:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.allowance{font-weight:700;margin-bottom:10px;font-size:18px}#heat{width:100%;height:10px;accent-color:#e85935;margin:0 0 20px}.pattern{flex-wrap:wrap}.slot{flex:0 0 calc((100% - 45px)/6);min-width:32px}.brand-icon{font-size:17px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:5px;letter-spacing:0}.brand{letter-spacing:.3px}@media(max-width:420px){.brand{font-size:11px}.topbar{padding:12px}.text-button{font-size:12px}.slot{height:44px}}
