:root{--navy:#151c35;--navy2:#222c4e;--cream:#f7f3e8;--paper:#fffdf7;--ink:#172039;--muted:#697087;--line:#d9d4c8;--yellow:#ffd947;--blue:#4768ff;--red:#ef5a5a;--green:#45a778;--shadow:0 5px 0 var(--navy)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.5 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button{font:inherit}a{color:inherit}.hidden{display:none!important}
.site-header{height:68px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1040px)/2));position:relative;z-index:5}.brand{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:800;letter-spacing:.02em;text-decoration:none}.brand strong{color:var(--yellow)}.brand-mark{width:34px;height:34px;display:block;flex:none}.site-header nav{display:flex;height:100%;align-items:center;gap:4px}.site-header nav a{height:100%;display:flex;align-items:center;padding:0 15px;text-decoration:none;font-weight:750;color:#bfc6dd;border-bottom:4px solid transparent}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:#fff;border-bottom-color:var(--yellow)}
.play-area{width:min(900px,calc(100% - 32px));margin:auto;padding:52px 0 30px}.game-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:24px}.puzzle-number,.section-label{margin:0 0 7px;color:var(--blue);font-size:.75rem;font-weight:950;letter-spacing:.13em}.game-heading h1{font-size:clamp(2rem,5vw,3.25rem);letter-spacing:-.045em;line-height:1.05;margin:0 0 9px}.game-heading>div>p:last-child{color:var(--muted);margin:0}.streak-card{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 16px;min-width:128px}.streak-card>span{font-size:1.7rem}.streak-card strong{display:block;font-size:1.25rem;line-height:1}.streak-card small{color:var(--muted)}
.mode-tabs{display:flex;justify-content:center;margin-bottom:-2px;position:relative;z-index:1}.mode-tabs button{border:2px solid var(--navy);background:#e9e5db;padding:10px 25px;font-weight:900;cursor:pointer}.mode-tabs button:first-child{border-radius:12px 0 0 0}.mode-tabs button:last-child{border-radius:0 12px 0 0;border-left:0}.mode-tabs button.active{background:var(--yellow)}
.game-shell{background:var(--paper);border:2px solid var(--navy);border-radius:20px;padding:20px;box-shadow:0 8px 0 var(--navy),0 24px 50px rgba(21,28,53,.12)}.game-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.82rem;font-weight:800;margin-bottom:12px}.solved-groups{display:grid;gap:7px;margin-bottom:7px}.solved-group{border:2px solid var(--navy);border-radius:10px;text-align:center;padding:9px 6px;animation:pop .25s ease-out}.solved-group strong{display:block;text-transform:uppercase;font-size:.83rem;letter-spacing:.06em}.solved-group span{font-size:.75rem}.puzzle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.poke-card{min-width:0;min-height:118px;border:2px solid var(--navy);border-radius:11px;background:#fff;color:var(--ink);padding:5px;box-shadow:0 3px 0 var(--navy);font-weight:900;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;transition:transform .12s,background .12s,color .12s}.poke-card img{width:68px;height:68px;image-rendering:pixelated;object-fit:contain}.poke-card span{font-size:clamp(.68rem,2vw,.92rem);overflow-wrap:anywhere}.poke-card:hover,.poke-card:focus-visible{transform:translateY(-2px);outline:3px solid rgba(71,104,255,.3);outline-offset:1px}.poke-card.selected{background:var(--navy2);color:#fff;transform:translateY(2px);box-shadow:none}.game-status{text-align:center;min-height:27px;margin:17px 0 3px;font-weight:850}.mistakes{text-align:center;color:var(--muted);font-size:.86rem}.dot{display:inline-block;width:11px;height:11px;background:var(--navy);border-radius:50%;margin:0 2px}.game-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:16px}.control{border:2px solid var(--navy);border-radius:10px;padding:9px 14px;font-weight:900;cursor:pointer}.control:disabled{opacity:.45;cursor:not-allowed}.secondary{background:#fff}.submit{background:var(--yellow);min-width:145px}.save-note{text-align:center;color:var(--muted);font-size:.78rem;margin:24px 0 0}.save-note:first-letter{color:var(--green)}.shake{animation:shake .35s}@keyframes shake{25%{transform:translateX(-6px)}50%{transform:translateX(6px)}75%{transform:translateX(-3px)}}@keyframes pop{from{transform:scale(.95);opacity:.3}}
.below-game{width:min(1040px,calc(100% - 32px));margin:auto;padding:55px 0 95px}.daily-note{display:grid;grid-template-columns:auto 1fr;gap:20px;background:#e9edff;border:1px solid #c9d2ff;border-radius:18px;padding:26px;margin-bottom:55px}.note-icon{width:52px;height:52px;background:var(--blue);color:#fff;display:grid;place-items:center;border-radius:50%;font-size:1.5rem;font-weight:950}.daily-note h2{margin:0 0 7px;font-size:1.45rem}.daily-note p:last-child{margin:0;color:var(--muted)}.content-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:45px;align-items:start}.content-grid h2,.seo-copy h2{font-size:2rem;letter-spacing:-.035em;margin:0 0 17px}.steps{list-style:none;padding:0;margin:0 0 22px;counter-reset:steps}.steps li{counter-increment:steps;display:grid;grid-template-columns:38px 1fr;margin:17px 0}.steps li:before{content:counter(steps);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);border:2px solid var(--navy);font-weight:950}.steps b,.steps span{grid-column:2}.steps span{color:var(--muted);font-size:.9rem}.text-link{color:var(--blue);font-weight:900}.return-card{background:var(--navy);color:#fff;padding:28px;border-radius:18px;box-shadow:8px 8px 0 var(--yellow)}.return-card h2{margin:10px 0}.return-card p{color:#c2c9de}.pixel-stars{color:var(--yellow);letter-spacing:.3em}.big-link{display:flex;justify-content:space-between;background:var(--yellow);color:var(--navy);font-weight:950;text-decoration:none;padding:13px 15px;border-radius:9px;margin:20px 0 14px}.quiet-link{color:#cbd2e5;font-size:.85rem}.seo-copy{border-top:1px solid var(--line);margin-top:75px;padding-top:55px;max-width:800px}.seo-copy>p:not(.section-label){color:var(--muted)}.topic-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.topic-links a{background:#fff;border:1px solid var(--line);border-radius:99px;padding:8px 13px;text-decoration:none;font-weight:750;font-size:.85rem}
.content-page{width:min(860px,calc(100% - 32px));margin:auto;padding:65px 0 100px}.content-page h1{font-size:clamp(2.4rem,7vw,4.8rem);line-height:1.02;letter-spacing:-.05em;margin:0 0 20px}.content-page h2{font-size:1.8rem;margin:48px 0 14px}.lede{font-size:1.16rem;color:var(--muted)}.notice{background:#e9edff;border-left:5px solid var(--blue);padding:16px 18px;margin:26px 0;border-radius:0 12px 12px 0}.primary-link{display:inline-block;background:var(--yellow);border:2px solid var(--navy);box-shadow:var(--shadow);border-radius:10px;padding:12px 18px;margin:12px 0 25px;text-decoration:none;font-weight:950}.comparison{width:100%;border-collapse:collapse;background:#fff;margin:25px 0}.comparison th,.comparison td{padding:13px;border:1px solid var(--line);text-align:left}.comparison th{background:var(--navy);color:#fff}.faq details{background:#fff;border:1px solid var(--line);padding:16px;margin:9px 0;border-radius:10px}.faq summary{font-weight:900;cursor:pointer}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.archive-card{background:#fff;border:2px solid var(--navy);border-radius:12px;padding:18px;text-decoration:none;box-shadow:0 3px 0 var(--navy)}.archive-card strong{display:block}.archive-card span{color:var(--muted);font-size:.83rem}
footer{background:var(--navy);color:#fff;padding:48px max(24px,calc((100vw - 1040px)/2));display:flex;justify-content:space-between;gap:35px}footer p{max-width:600px;color:#b9c0d5;font-size:.84rem}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{color:#d5d9e7}.footer-brand{width:max-content}
@media(max-width:720px){.site-header{height:auto;min-height:62px;padding:10px 16px}.site-header nav a{display:none}.site-header nav a:nth-child(-n+2){display:flex;padding:10px;height:auto;border:0;border-radius:7px}.site-header nav a[aria-current=page]{background:var(--yellow);color:var(--navy)}.game-heading{display:block}.streak-card{margin-top:16px;width:max-content}.play-area{padding-top:30px}.game-shell{padding:12px 8px}.poke-card{min-height:96px}.poke-card img{width:55px;height:55px}.control{padding:8px 11px}.content-grid{grid-template-columns:1fr}.daily-note{grid-template-columns:1fr}.archive-grid{grid-template-columns:1fr 1fr}footer{display:block}.footer-links{margin-top:25px}}
@media(max-width:470px){.brand{font-size:1rem}.brand-mark{width:30px;height:30px}.site-header nav a{font-size:.8rem}.game-heading h1{font-size:2rem}.puzzle-grid{gap:5px}.poke-card{min-height:85px;border-radius:8px;padding:2px}.poke-card img{width:48px;height:48px}.poke-card span{font-size:.61rem}.solved-group span{font-size:.65rem}.game-controls .control span{display:none}.archive-grid{grid-template-columns:1fr}.comparison{font-size:.78rem}.comparison th,.comparison td{padding:8px 5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
