:root{--ink:#1f1b3d;--ink-soft:#4a4570;--paper:#fffaf0;--white:#fff;--sun:#ffd23f;--sun-deep:#f5a800;--berry:#5b3df5;--berry-deep:#3f25c4;--coral:#ff6b6b;--peach:#ffd6c9;--leaf:#17734b;--sea:#0e7490;--sea-light:#bdeff7;--sand:#fde7b0;--plum:#6d28d9;--focus:#1d4ed8;--font:"Nunito", "Baloo 2", ui-rounded, "SF Pro Rounded", "Segoe UI", system-ui, sans-serif;--text-xs:.875rem;--text-sm:1rem;--text-md:1.125rem;--text-lg:1.375rem;--text-xl:1.875rem;--text-2xl:2.5rem;--text-hero:clamp(2.75rem, 8vw, 4.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-sm:.625rem;--radius-md:1.125rem;--radius-lg:1.75rem;--radius-pill:999px;--shadow-sm:0 2px 0 #1f1b3d2e;--shadow-md:0 5px 0 #1f1b3d33, 0 10px 20px #1f1b3d1f;--shadow-lg:0 8px 0 #1f1b3d33, 0 18px 36px #1f1b3d29;--border:3px solid var(--ink);--ease-pop:cubic-bezier(.34, 1.56, .64, 1);--dur:.18s}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:var(--text-md);color:var(--ink);background:radial-gradient(circle at 10% 0%, #ffe9a8 0, transparent 40%), radial-gradient(circle at 100% 20%, #d9ccff 0, transparent 45%), var(--paper);min-height:100vh;margin:0;line-height:1.5}h1,h2,h3{margin:0 0 var(--space-3);line-height:1.15}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{margin:0 0 var(--space-3)}ul{margin:0;padding:0}a{color:var(--berry-deep)}:focus-visible{outline:4px solid var(--focus);outline-offset:3px;border-radius:var(--radius-sm)}.skip-link{left:var(--space-3);z-index:10;background:var(--ink);color:var(--white);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);position:absolute;top:-4rem}.skip-link:focus{top:var(--space-3)}.topbar{gap:var(--space-3);padding:var(--space-3) var(--space-5);flex-wrap:wrap;justify-content:space-between;align-items:center;max-width:72rem;margin:0 auto;display:flex}.logo{font-size:var(--text-lg);color:var(--ink);font-weight:900;text-decoration:none}.toolbar{gap:var(--space-3);flex-wrap:wrap;display:flex}.seg{background:var(--white);border:var(--border);border-radius:var(--radius-pill);padding:2px;display:inline-flex}.seg .btn{box-shadow:none;padding:var(--space-1) var(--space-4);min-height:2.5rem;font-size:var(--text-sm);border:0}.seg .btn[aria-pressed=true]{background:var(--ink);color:var(--white)}.main{max-width:72rem;padding:var(--space-3) var(--space-5) var(--space-7);outline:none;margin:0 auto}.muted{color:var(--ink-soft);font-size:var(--text-sm)}.big-emoji{font-size:var(--text-2xl);letter-spacing:.1em;margin:0}.row{gap:var(--space-3);margin:var(--space-3) 0;flex-wrap:wrap;align-items:center;display:flex}.cols{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));display:grid}.bi{text-align:inherit;flex-direction:column;line-height:1.15;display:inline-flex}.bi__sub{opacity:.85;font-size:.75em;font-weight:600}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:3rem;padding:var(--space-2) var(--space-5);font:inherit;cursor:pointer;border:var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);transition:transform var(--dur) var(--ease-pop), box-shadow var(--dur);font-weight:800;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-2px)rotate(-.5deg)}.btn:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(3px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--sun);color:var(--ink)}.btn--secondary{background:var(--berry);color:var(--white)}.btn--ghost{background:var(--white);color:var(--ink);box-shadow:var(--shadow-sm)}.btn--lg{min-height:3.75rem;font-size:var(--text-lg);padding:var(--space-3) var(--space-6)}.btn--mini{min-height:2.25rem;padding:0 var(--space-3);font-size:var(--text-sm)}.card{border:var(--border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-lg);background:var(--white)}.card--sun{background:linear-gradient(160deg,#fff1b8,#ffc766)}.card--sea{background:linear-gradient(160deg,#d6f6fb,#7fd3e6)}.card--berry{background:linear-gradient(160deg,#ede7ff,#d4c4ff)}.card--leaf{background:linear-gradient(160deg,#dff9ec,#9be5be)}.card--peach{background:linear-gradient(160deg,#ffe7de,#ffb8a3)}.card--lemon{background:linear-gradient(160deg,#fff9c9,#f7e479)}.panel{background:var(--white);border:var(--border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-md);margin-bottom:var(--space-4)}.panel__title{font-size:var(--text-lg);align-items:center;gap:var(--space-2);display:flex}.hero{text-align:center;padding:var(--space-5) 0}.hero__parrot{margin:0;font-size:4rem;animation:3s ease-in-out infinite bob}.hero__title{font-size:var(--text-hero);letter-spacing:-.02em;color:var(--berry-deep);text-shadow:3px 3px 0 var(--sun)}.hero__tag{font-size:var(--text-lg);justify-content:center;display:flex}.hero__tag .bi{align-items:center}.game-card{align-items:flex-start;gap:var(--space-2);transition:transform var(--dur) var(--ease-pop);flex-direction:column;display:flex}.game-card:hover{transform:translateY(-4px)rotate(-.6deg)}.game-card__art{letter-spacing:.08em;font-size:3.25rem}.game-card__meta{align-items:center;gap:var(--space-2);font-size:var(--text-xs);border:2px solid var(--ink);border-radius:var(--radius-pill);padding:2px var(--space-3);background:#ffffffb8;font-weight:800;display:inline-flex}.game-card p{flex:1}.cols--games{margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(min(17rem,100%),1fr))}.promises{gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;justify-content:center;list-style:none;display:flex}.promises li{background:var(--white);border:var(--border);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-4);box-shadow:var(--shadow-sm);font-weight:800}.shelf-row{margin-bottom:var(--space-3)}.confirm-box{align-items:center;gap:var(--space-3);background:var(--paper);border:var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.confirm-box__text{margin:0;font-weight:800}.world{border-radius:var(--radius-lg);padding:var(--space-5);border:var(--border);box-shadow:var(--shadow-lg)}.game__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.game__identity{gap:var(--space-2);flex-direction:column;display:flex}.game__title{font-size:var(--text-xl);margin:0}.step-bar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.step-bar__dots{gap:6px;display:inline-flex}.step-dot{border:2px solid var(--ink);width:1.75rem;height:1.75rem;font-size:var(--text-xs);background:var(--white);border-radius:50%;place-items:center;font-weight:900;display:grid}.step-dot--done{background:var(--leaf);color:var(--white)}.step-dot--now{background:var(--sun);box-shadow:var(--shadow-sm);transform:scale(1.1)}.step-dot--todo{opacity:.6}.step-bar__text{margin:0;font-weight:800}.game>*+*{margin-top:var(--space-4)}.message{border-radius:var(--radius-md);min-height:3.5rem;padding:var(--space-3) var(--space-4);font-weight:800}.message--on{background:var(--white);border:var(--border);box-shadow:var(--shadow-sm);animation:pop .3s var(--ease-pop)}.end-card{text-align:center}.end-card .row{justify-content:center}.cols--map{grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));align-items:start}.customer{gap:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.customer__face{background:var(--white);border:var(--border);width:5.5rem;height:5.5rem;box-shadow:var(--shadow-md);border-radius:50%;flex:none;place-items:center;font-size:3.75rem;animation:3.5s ease-in-out infinite bob;display:grid;position:relative}.customer__mood{background:var(--sun);border:2px solid var(--ink);border-radius:50%;place-items:center;width:2.1rem;height:2.1rem;font-size:1.5rem;display:grid;position:absolute;bottom:-.25rem;right:-.35rem}.customer__body{gap:var(--space-2);flex-direction:column;flex:1;align-items:flex-start;min-width:min(14rem,100%);display:flex}.customer__name{margin:0;font-weight:900}.bubble{background:var(--white);border:var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);max-width:36rem;box-shadow:var(--shadow-sm)}.bubble p{margin:0}.bubble__main{font-size:var(--text-lg);font-weight:800}.bubble__sub{color:var(--ink-soft);margin-top:var(--space-1)}.world--market{background:linear-gradient(#ffd9a0,#ffb3a7)}.bill-badge{align-items:center;gap:var(--space-2);border:var(--border);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);box-shadow:var(--shadow-sm);background:#dff9ec;font-weight:900;display:inline-flex}.coupon-badge{align-items:center;gap:var(--space-2);background:var(--sun);border:2px solid var(--ink);border-radius:var(--radius-pill);padding:2px var(--space-3);font-size:var(--text-sm);font-weight:900;display:inline-flex}.awning{border:var(--border);border-radius:var(--radius-md) var(--radius-md) 0 0;background:repeating-linear-gradient(90deg, var(--coral) 0 2rem, var(--white) 2rem 4rem);height:2.5rem}.stall{background:var(--sand);border:var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}.shelf{gap:var(--space-3);padding:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));display:grid}.product{font:inherit;color:var(--ink);background:var(--white);border:var(--border);border-radius:var(--radius-md);padding:var(--space-2);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-pop);flex-direction:column;align-items:center;gap:0;display:flex}.product:hover:not(:disabled){transform:translateY(-3px)scale(1.03)}.product:active:not(:disabled){transform:scale(.96)}.product:disabled{opacity:.6;cursor:not-allowed}.product__emoji{font-size:2.5rem}.product__name{font-weight:900}.product__name--sub{font-weight:600;font-size:var(--text-xs);color:var(--ink-soft)}.product__price{margin-top:var(--space-1);background:var(--sun);border:2px solid var(--ink);border-radius:var(--radius-pill);padding:0 var(--space-3);font-weight:900}.basket{font-size:var(--text-md);margin-bottom:var(--space-3);gap:var(--space-2);flex-direction:column;list-style:none;display:flex}.basket li{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.basket__dots{letter-spacing:.05em}.coins{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.coin{background:var(--sun-deep);min-width:4rem;min-height:4rem;color:var(--ink);border-radius:50%;padding:0}.coins-placed{gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.coin-chip{min-height:2.25rem;padding:0 var(--space-3);font-size:var(--text-sm);background:var(--sun)}.pouch{font-weight:800}.world--compass{background:linear-gradient(#bdeff7,#5fc4dc)}.map-stack{gap:var(--space-3);flex-direction:column;align-items:flex-start;display:flex}.map-top{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;max-width:30rem;display:flex}.compass-rose{background:var(--white);border:var(--border);width:4.5rem;height:4.5rem;box-shadow:var(--shadow-sm);border-radius:50%;flex:none;padding:4px}.sea{grid-template-columns:1.5rem repeat(var(--n), minmax(0, 1fr));background:var(--sea);padding:var(--space-2);border:var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);gap:3px;width:100%;max-width:30rem;display:grid}.cell{aspect-ratio:1;border-radius:var(--radius-sm);background:#e2fafd;border:0;place-items:center;padding:0;font-family:inherit;font-size:clamp(1.1rem,4.5vw,1.9rem);display:grid}.cell:nth-child(odd){background:#cdf4f9}.cell--wake{background:#a7ebfa!important}.cell--wind{background:#e7f9d9!important}.cell--boat{animation:pop .3s var(--ease-pop);background:var(--sun)!important}.cell--step{cursor:pointer;outline:2px dashed var(--sea);outline-offset:-3px;transition:transform var(--dur) var(--ease-pop)}.cell--step:hover{transform:scale(1.06);background:#fff1b8!important}.axis{color:var(--white);font-weight:900;font-size:var(--text-xs);place-items:center;display:grid}.legend{margin:0}.clue{font-size:var(--text-lg);margin-bottom:var(--space-2);font-weight:800}.clue--sub{color:var(--ink-soft);font-weight:600;font-size:var(--text-md)}.wind{font-weight:800}.wind-pips{vertical-align:middle;margin-left:var(--space-2);flex-wrap:wrap;gap:4px;display:inline-flex}.wind-pip{border:2px solid var(--ink);background:var(--sea-light);border-radius:50%;width:.75rem;height:.75rem;display:inline-block}.wind-pip--off{opacity:.35;background:0 0}.dpad{gap:var(--space-2);max-width:21rem;margin:var(--space-3) 0;grid-template-columns:repeat(3,1fr);grid-template-areas:".n.""w.e"".s.";display:grid}.dir{padding:var(--space-1) var(--space-2)}.dir--N{grid-area:n}.dir--E{grid-area:e}.dir--S{grid-area:s}.dir--W{grid-area:w}.world--colors{background:linear-gradient(#e9fbd5,#b7e4a0)}.stage{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.chameleon{aspect-ratio:1;background:var(--paint);border:var(--border);width:min(14rem,60vw);box-shadow:var(--shadow-md);transition:background-color var(--dur);animation:pop .3s var(--ease-pop);border-radius:50%;place-items:center;font-size:clamp(4rem,18vw,6.5rem);display:grid;position:relative}.chameleon--happy:after{content:"✨";font-size:2rem;position:absolute;top:.5rem;right:.75rem}.bowl{font-size:var(--text-lg);background:var(--white);border:var(--border);border-radius:var(--radius-pill);padding:var(--space-2) var(--space-5);align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:center;margin:0;font-weight:800;display:flex}.chip{border:2px solid var(--ink);background:var(--paint);border-radius:50%;width:1.5rem;height:1.5rem;display:inline-block}.pots{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));display:grid}.pot{align-items:center;gap:var(--space-2);display:flex}.pot[aria-pressed=true]{background:var(--sun);transform:translateY(3px)}.pot__swatch{background:var(--paint);border:2px solid var(--ink);border-radius:50%;flex:none;width:2rem;height:2rem}.gallery{justify-content:center;gap:var(--space-4);margin:var(--space-4) 0;flex-wrap:wrap;display:flex}.gallery__item{align-items:center;gap:var(--space-2);flex-direction:column;font-weight:800;display:flex}.gallery__item .chameleon{width:7rem;font-size:3rem;animation:none}.world--recipe{background:linear-gradient(#fff0db,#ffd0b5)}.jug-stage{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.jug-svg{width:min(14rem,60vw);height:auto}.jug-readout{font-size:var(--text-lg);background:var(--white);border:var(--border);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-5);box-shadow:var(--shadow-sm);margin:0;font-weight:900}.ingredients{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));display:grid}.ing-btn{padding:var(--space-2);gap:var(--space-1);flex-direction:column;min-height:5rem}.ing-btn[aria-pressed=true]{background:var(--sun)}.ing-btn__emoji{font-size:2rem}.scoops{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.verbs{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));display:grid}.world--station{background:linear-gradient(#e5dcff,#b8c7ff)}.station-stage{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.clock-svg{filter:drop-shadow(0 6px #1f1b3d33);width:min(16rem,65vw);height:auto}.ticket-card{align-items:center;gap:var(--space-3);background:var(--sun);border:var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);box-shadow:var(--shadow-sm);font-weight:900;display:inline-flex}.clock-controls{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.world--detective{background:linear-gradient(#fff6bf,#f9d89c)}.clue-list{gap:var(--space-2);margin-bottom:var(--space-2);font-size:var(--text-lg);flex-direction:column;font-weight:800;list-style:none;display:flex}.clue-list__sub{color:var(--ink-soft);font-weight:600;font-size:var(--text-md)}.suspects{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr));display:grid}.suspect-card{background:var(--white);border:var(--border);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-md);gap:var(--space-2);transition:transform var(--dur) var(--ease-pop), opacity var(--dur);flex-direction:column;display:flex}.suspect-card:hover{transform:translateY(-2px)}.suspect-card--cleared{opacity:.55;background:#f2efe9}.suspect-card--culprit{animation:pop .3s var(--ease-pop);background:#dff9ec}.suspect-card__top{justify-content:space-between;align-items:center;display:flex}.suspect-card__badge{background:var(--sun);border:2px solid var(--ink);border-radius:var(--radius-pill);padding:1px var(--space-3);font-weight:900;font-size:var(--text-sm)}.suspect-card__avatar{font-size:3rem;line-height:1;position:relative}.suspect-card__hat{font-size:1.5rem;position:absolute;top:-.9rem;left:.35rem}.suspect-card__glasses{font-size:1.25rem;position:absolute;bottom:0;right:-.6rem}.suspect-card__name{font-size:var(--text-lg);margin:0}.suspect-card__traits{font-size:var(--text-sm);flex-direction:column;flex:1;gap:2px;font-weight:700;list-style:none;display:flex}.suspect-card__actions{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.world--words{background:linear-gradient(#e5ddff,#b9aaff)}.word-picture{text-align:center;font-size:5rem}.word-answer,.letter-rack,.number-choices{justify-content:center;gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.letter-tile{min-width:3.5rem;min-height:3.5rem;padding:var(--space-1);font-size:var(--text-xl)}.letter-tile--selected{background:var(--sun);color:var(--ink)}.letter-slot{border:3px dashed var(--ink);border-radius:var(--radius-md);min-width:3.5rem;min-height:3.5rem;font-size:var(--text-xl);background:#fff9;place-items:center;font-weight:900;display:grid}.world--garden{background:linear-gradient(#d9f6c8,#a6dc91)}.flower-sequence{justify-content:center;gap:var(--space-3);margin:var(--space-4) 0;flex-wrap:wrap;display:flex}.flower-pot{border:var(--border);border-radius:var(--radius-md);min-width:5.25rem;min-height:6rem;box-shadow:var(--shadow-sm);font-size:var(--text-xl);padding:var(--space-2);background:#e5f4ff;flex-direction:column;justify-content:center;align-items:center;display:flex}.flower-pot span{font-size:1.75rem}.flower-pot--empty{background:var(--white);border-style:dashed}.flower-pot--bloomed{animation:pop .3s var(--ease-pop);background:#dff9ec}.number-choice{min-width:5.5rem;min-height:4rem;font-size:var(--text-lg)}.break-nudge{border:var(--border);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-4) auto;align-items:center;gap:var(--space-3);max-width:34rem;box-shadow:var(--shadow-sm);background:#dff9ec;flex-direction:column;display:flex}.break-nudge__text{margin:0;font-weight:800}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes pop{0%{transform:scale(.85)}to{transform:scale(1)}}
