:root{--paper:#fffbe8;--paper-2:#efe9d2;--ink:#111;--hit:#00c26e;--near:#fc0;--miss:#c9c3b0;--hot:#ff3b30;--blue:#0057ff;--pink:#ff2d95;--line:3px solid var(--ink);--shadow:4px 4px 0 var(--ink);--display:"Archivo Black", "Arial Black", system-ui, sans-serif;--body:"Space Grotesk", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-tap-highlight-color:transparent;min-height:100dvh}a{color:inherit}button{font:inherit;color:inherit}.shell{max-width:560px;margin:0 auto;padding:16px 16px 40px}.topbar{border-bottom:var(--line);background:var(--paper);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.logo{font-family:var(--display);letter-spacing:1px;text-transform:uppercase;font-size:22px;text-decoration:none}.logo span{background:var(--near);border:var(--line);margin-left:2px;padding:0 6px}.btn{border:var(--line);box-shadow:var(--shadow);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;background:#fff;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:700;text-decoration:none;transition:transform 80ms,box-shadow 80ms;display:inline-flex}.btn:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-1px,-1px)}.btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.btn[disabled]{opacity:.5;cursor:default}.btn.yellow{background:var(--near)}.btn.green{background:var(--hit)}.btn.pink{background:var(--pink);color:#fff}.btn.blue{background:var(--blue);color:#fff}.btn.small{box-shadow:3px 3px 0 var(--ink);padding:6px 10px;font-size:12px}.card{border:var(--line);box-shadow:var(--shadow);background:#fff;padding:16px}.tag{border:2px solid var(--ink);text-transform:uppercase;background:var(--paper-2);padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}h1,h2,h3{font-family:var(--display);text-transform:uppercase;margin:0;font-weight:400}.muted{color:#555}.hero{margin:16px 0 8px;font-size:clamp(44px,13vw,72px);line-height:.9}.hero em{background:var(--pink);color:#fff;border:var(--line);padding:0 8px;font-style:normal;display:inline-block;transform:rotate(-2deg)}.modes{gap:20px;margin-top:24px;display:grid}.mode-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.mode-actions{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.mode-actions .btn{padding:12px 6px;font-size:13px}.mini-tiles{gap:4px;display:flex}.mini-tiles i{border:2px solid var(--ink);width:18px;height:18px;display:block}.game-head{justify-content:space-between;align-items:flex-end;gap:8px;margin:8px 0 16px;display:flex}.game-head h1{font-size:26px}.toast{z-index:20;background:var(--ink);color:var(--paper);border:var(--line);box-shadow:4px 4px 0 var(--near);white-space:nowrap;padding:10px 16px;font-weight:700;position:fixed;top:76px;left:50%;transform:translate(-50%)}.board{justify-content:center;gap:6px;margin:0 auto 20px;display:grid}.row{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.row.shake{animation:.4s shake}.tile{aspect-ratio:1;border:var(--line);width:min(60px,16vw);font-family:var(--display);text-transform:uppercase;-webkit-user-select:none;user-select:none;background:#fff;place-items:center;font-size:min(30px,8vw);display:grid}.tile.filled{animation:.1s pop}.tile.correct,.tile.present,.tile.absent{box-shadow:3px 3px 0 var(--ink);animation:.45s backwards flip}.tile.correct{background:var(--hit)}.tile.present{background:var(--near)}.tile.absent{background:var(--miss)}.tile:nth-child(2){animation-delay:80ms}.tile:nth-child(3){animation-delay:.16s}.tile:nth-child(4){animation-delay:.24s}.tile:nth-child(5){animation-delay:.32s}.keyboard{-webkit-user-select:none;user-select:none;gap:8px;display:grid}.krow{justify-content:center;gap:6px;display:flex}.key{border:var(--line);text-transform:uppercase;cursor:pointer;max-width:44px;height:54px;box-shadow:2px 2px 0 var(--ink);background:#fff;flex:1;padding:0;font-size:15px;font-weight:700}.key:active{box-shadow:none;transform:translate(2px,2px)}.key.wide{letter-spacing:-.3px;flex:1.5;max-width:68px;font-size:11px}@media (width<=420px){.krow{gap:4px}.key{border-width:2px;height:50px;font-size:14px}.key.wide{font-size:10px}}.key.correct{background:var(--hit)}.key.present{background:var(--near)}.key.absent{background:var(--miss);color:#555}.pegboard{gap:5px;max-width:340px;margin:0 auto 16px;display:grid}.pegrow{border:var(--line);background:var(--paper-2);grid-template-columns:28px 1fr 36px;align-items:center;gap:10px;padding:4px 10px;display:grid}.pegrow.current{box-shadow:var(--shadow);background:#fff}.pegrow.shake{animation:.4s shake}.pegrow .num{font-family:var(--display);color:#777;font-size:13px}.holes{justify-content:center;gap:10px;display:flex}.peg{border:3px solid var(--ink);background:0 0;border-radius:50%;width:26px;height:26px}.peg.empty{border:2px dashed #999}.peg.placed{animation:.12s pop}.pins{grid-template-columns:repeat(2,12px);gap:4px;display:grid}.pin{border:2px solid #aaa;border-radius:50%;width:12px;height:12px}.pin.black{background:var(--ink);border-color:var(--ink)}.pin.white{border-color:var(--ink);background:#fff}.pegpad{gap:10px;display:grid}.swatches{grid-template-columns:repeat(6,minmax(0,48px));justify-content:center;gap:12px;display:grid}.swatch{aspect-ratio:1;border:var(--line);cursor:pointer;box-shadow:3px 3px 0 var(--ink);border-radius:50%;padding:0;position:relative}.swatch:active{box-shadow:none;transform:translate(3px,3px)}.swatch small{border:2px solid var(--ink);background:#fff;padding:0 3px;font-size:10px;font-weight:700;line-height:14px;position:absolute;bottom:-2px;right:-2px}.pad-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.result{text-align:center;margin-top:20px}.result h2{margin-bottom:4px;font-size:32px}.result .answer{gap:6px;margin:12px 0;display:inline-flex}.result-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:12px;display:flex}.cal-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.cal-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cal-dow{text-align:center;color:#777;font-size:11px;font-weight:700}.cal-day{aspect-ratio:1;border:2px solid var(--ink);background:#fff;place-items:center;font-size:15px;font-weight:700;text-decoration:none;display:grid;position:relative}.cal-day:hover{box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px)}.cal-day.off{color:#ccc;pointer-events:none;background:0 0;border-color:#ccc}.cal-day.won{background:var(--hit)}.cal-day.lost{background:var(--hot);color:#fff}.cal-day.playing{background:var(--near)}.cal-day.today{outline:3px solid var(--blue);outline-offset:2px}.cal-day small{font-size:10px;position:absolute;bottom:1px;right:4px}.legend{flex-wrap:wrap;gap:12px;margin-top:14px;font-size:12px;font-weight:700;display:flex}.legend i{border:2px solid var(--ink);vertical-align:-2px;width:12px;height:12px;margin-right:4px;display:inline-block}@keyframes pop{50%{transform:scale(1.08)}}@keyframes flip{0%{transform:rotateX(90deg)}to{transform:rotateX(0)}}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.input{border:var(--line);font:inherit;box-shadow:3px 3px 0 var(--ink);background:#fff;outline:none;width:100%;padding:12px 14px;font-size:16px;font-weight:700}.input:focus{box-shadow:3px 3px 0 var(--blue);border-color:var(--blue)}.seg{gap:6px;display:flex}.slot{cursor:pointer;background:0 0;border:0;padding:0}.secret-input{font-family:var(--display);letter-spacing:.3em;text-transform:uppercase;font-size:24px}.secret-input::placeholder{color:#ccc}.secret-pegs .peg{width:40px;height:40px}.stat-nums{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px;display:grid}.stat-num{justify-items:center;gap:2px;display:grid}.stat-num b{font-family:var(--display);font-size:30px;font-weight:400;line-height:1}.stat-num small{text-transform:uppercase;color:#555;font-size:11px;font-weight:700}.stat-num.hot b{color:var(--pink)}.dist{gap:4px;display:grid}.dist-row{grid-template-columns:16px 1fr;align-items:center;gap:8px;font-size:13px;font-weight:700;display:grid}.dist-track{min-width:0}.dist-bar{background:var(--miss);border:2px solid var(--ink);text-align:right;min-width:24px;padding:1px 6px;font-size:12px;font-weight:700}.dist-bar.me{background:var(--hit)}.tag.streak{background:var(--near)}.hard-toggle{flex-wrap:wrap;align-items:center;gap:10px;margin:-4px 0 14px;font-size:12px;display:flex}.switch{border:2px solid var(--ink);text-transform:uppercase;cursor:pointer;box-shadow:2px 2px 0 var(--ink);background:#fff;align-items:center;gap:8px;padding:4px 10px 4px 4px;font-size:12px;font-weight:700;display:inline-flex}.switch i{border:2px solid var(--ink);background:var(--miss);width:30px;height:16px;display:block;position:relative}.switch i:after{content:"";background:var(--ink);width:10px;height:10px;transition:left .12s;position:absolute;top:1px;left:1px}.switch.on i{background:var(--hot)}.switch.on i:after{background:#fff;left:15px}.tag.hard{background:var(--hot);color:#fff}
