@font-face{font-family:Jost;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/Jost-400-700-BzT6BTit.woff2)format("woff2")}:root{--font:"Jost", system-ui, sans-serif;--features:"ss01";--bg:#f7f3ec;--tile:#ece4d6;--tile-sel:#d6c8b1;--ink:#2a2520;--muted:#8c8273;--radius:14px;--g1:#f0d38a;--g2:#c3d9bf;--g3:#bdd3e6;--g4:#e8bba6;--ease:cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-feature-settings:var(--features);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation}button{font:inherit;font-feature-settings:inherit;color:inherit}.app{max-width:460px;margin:0 auto;padding:12px 16px 24px}.header{padding:8px 2px 0;padding-top:max(8px, env(safe-area-inset-top));align-items:center;display:flex}.wordmark{letter-spacing:-.01em;flex:1;font-size:22px;font-weight:600}.nav-back{cursor:pointer;background:0 0;border:0;place-items:center;width:40px;height:40px;margin:-10px 2px -10px -12px;padding:0;display:grid}.nav-back svg{width:26px;height:26px}.dots{gap:6px;display:flex}.dot{border:1.5px solid var(--muted);opacity:.6;border-radius:50%;width:12px;height:12px;transition:background-color .4s,border-color .4s,opacity .4s,transform .4s cubic-bezier(.3,1.6,.5,1)}.dot.done{opacity:1;border-color:#0000;transform:scale(1.15)}.hint{color:var(--muted);margin:22px 2px 14px;font-size:16px}.today{margin:36px 2px 22px}.today-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:15px}.today-date{letter-spacing:-.015em;margin-top:4px;font-size:30px;font-weight:600}.date-nav{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.date-nav button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:30px}.date-nav button.date-nav-today{font-size:15px;text-decoration:underline}.date-nav label{position:relative}.date-nav input{opacity:0;width:100%;position:absolute;inset:0}.cards{flex-direction:column;gap:12px;display:flex}.card{border-radius:calc(var(--radius) + 4px);background:var(--tile);text-align:left;cursor:pointer;border:0;align-items:center;gap:12px;width:100%;min-height:84px;padding:16px 16px 16px 20px;transition:transform .12s,opacity .3s;display:flex}.card:active{transform:scale(.98)}.card-text{flex-direction:column;flex:1;gap:4px;display:flex}.card-title{letter-spacing:-.01em;font-size:22px;font-weight:600}.card-hint{color:var(--muted);font-size:15px}.card-mark{width:28px;height:28px;color:var(--muted)}.card-mark svg{width:100%;height:100%}.card.done{opacity:.45}.card.done .card-mark{color:var(--ink)}.see-you{text-align:center;color:var(--muted);margin:28px 2px;font-size:17px}.gear{cursor:pointer;width:40px;height:40px;color:var(--muted);-webkit-touch-callout:none;background:0 0;border:0;place-items:center;margin:-10px -8px -10px 4px;padding:0;display:grid;position:relative}.gear .icon{width:22px;height:22px;transition:transform .2s}.hold-bar{z-index:45;background:var(--ink);transform-origin:0;opacity:0;width:100%;height:5px;position:fixed;top:0;left:0;transform:scaleX(0)}.hold-bar.holding{opacity:1;transition:transform var(--hold) linear;transform:scaleX(1)}.gear.holding .icon{transform:scale(.9)}.gate-hint{z-index:40;background:var(--ink);color:var(--bg);white-space:nowrap;opacity:0;pointer-events:none;border-radius:999px;padding:8px 14px;font-size:14px;transition:opacity .25s,transform .25s;position:fixed;top:18px;left:50%;transform:translate(-50%,-6px)}.gate-hint.show{opacity:1;transform:translate(-50%)}.board{transition:height .45s var(--ease);position:relative}.board.no-anim,.board.no-anim .tile,.board.no-anim .row{transition:none}.row{border-radius:calc(var(--radius) + 6px);width:100%;transition:transform .45s var(--ease);position:absolute;top:0;left:0}.row .label{letter-spacing:-.005em;justify-content:center;align-items:center;height:40px;font-size:19px;font-weight:600;animation:.35s .2s both label-in;display:flex;position:absolute;bottom:0;left:0;right:0}@keyframes label-in{0%{opacity:0;transform:translateY(6px)}}.tile{transform-origin:0 0;transition:transform .45s var(--ease);cursor:pointer;position:absolute;top:0;left:0}.anim{perspective:700px;width:100%;height:100%}.face{background:var(--tile);border-radius:var(--radius);flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:background-color .18s,transform .12s;display:flex;position:relative}.face:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 3px var(--ink);opacity:0;transition:opacity .18s;position:absolute;inset:0}.face img{object-fit:contain;pointer-events:none;width:88%;height:70%;margin-top:2%;transition:transform .2s}.face .word{white-space:nowrap;margin-top:5%;font-size:15px;font-weight:500;line-height:1}.face img.photo{object-fit:cover;object-position:50% 35%;border-radius:calc(var(--radius) - 4px);width:88%;height:70%;margin-top:2%}.no-words .face:not(.always-word) img{width:88%;height:88%;margin-top:0}.no-words .face:not(.always-word) img.photo{border-radius:var(--radius);width:100%;height:100%}.no-words .face:not(.always-word) .word{display:none}.flip{width:100%;height:100%;transform-style:preserve-3d;transition:transform .5s var(--ease);position:relative}.flip.flipped{transform:rotateY(180deg)}.flip .face{backface-visibility:hidden;position:absolute;inset:0}.flip .back{transform:rotateY(180deg)}.letters-upper .face .big-word{text-transform:uppercase;letter-spacing:.02em}.letters-title .face .big-word{text-transform:capitalize}.word-tools{gap:8px;margin-top:24px;display:flex}.letter-switch{background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:16px;flex:1;gap:4px;padding:4px;display:flex}.letter-switch button{cursor:pointer;height:56px;color:var(--muted);background:0 0;border:0;border-radius:12px;flex:1;font-size:26px;font-weight:600;transition:background-color .2s,color .2s,transform .12s}.letter-switch button:active{transform:scale(.96)}.letter-switch button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.hint-toggle{cursor:pointer;background:color-mix(in srgb, var(--ink) 8%, transparent);width:84px;color:var(--muted);border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:14px;font-weight:600;transition:background-color .2s,color .2s,transform .12s;display:flex}.hint-toggle svg{width:24px;height:24px}.hint-toggle:active{transform:scale(.96)}.hint-toggle[aria-pressed=true]{background:var(--ink);color:var(--bg)}:root{--word-red:#c62828;--word-blue:#1f5fc9;--word-pink:#c2185b;--word-green:#2e7d32;--word-orange:#d2601a;--word-purple:#6a3fb5}.cue-number{color:var(--muted);margin-bottom:6px;font-size:26px;font-weight:600;line-height:1}.cue-shape{background:var(--muted);width:26px;height:26px;margin-bottom:8px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.big-word{letter-spacing:-.005em;text-align:center;padding:0 8px;font-size:23px;font-weight:600;line-height:1.1}.tile.pressed .face{transform:scale(.95)}.tile.selected .face{background:var(--tile-sel)}.tile.selected .face:after{opacity:1}.tile.selected img{transform:scale(.94)}.tile.solved .face{background:#ffffff8c}.actions{justify-content:center;align-items:center;min-height:96px;padding-top:20px;display:flex}.btn{color:var(--bg);background:var(--ink);cursor:pointer;border:0;border-radius:999px;min-width:200px;padding:18px 44px;font-size:20px;font-weight:600;transition:transform .12s,opacity .25s}.btn:active{transform:scale(.96)}.btn.ghost{color:var(--ink);min-width:0;box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--ink) 25%, transparent);background:0 0}.check{opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;transform:translateY(6px)}.check.show{opacity:1;pointer-events:auto;transform:none}.scrim{z-index:20;pointer-events:none;background:#1e191400;transition:background-color .4s;position:fixed;inset:0}.scrim.show{pointer-events:auto;background:#1e19142e}.sheet{z-index:30;background:var(--bg);width:min(460px,100%);padding:34px 24px calc(28px + env(safe-area-inset-bottom));text-align:center;border-radius:28px 28px 0 0;transition:transform .55s cubic-bezier(.2,.9,.2,1);position:fixed;bottom:0;left:50%;transform:translate(-50%,105%);box-shadow:0 -8px 40px #281e141f}.sheet.show{transform:translate(-50%)}.sheet h2{letter-spacing:-.015em;margin:0 0 6px;font-size:34px;font-weight:600}.sheet p{color:var(--muted);margin:0 0 22px;font-size:17px}.chips{flex-direction:column;gap:8px;margin:0 0 26px;display:flex}.chip{text-align:left;opacity:0;border-radius:16px;align-items:center;gap:12px;padding:8px 14px 8px 8px;font-size:17px;font-weight:600;transition:opacity .35s,transform .35s;display:flex;transform:translateY(8px)}.sheet.show .chip{opacity:1;transform:none}.chip .thumbs{gap:2px;display:flex}.chip img{object-fit:contain;width:34px;height:34px}.settings h2{margin-bottom:18px}.set-note{text-align:left;border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent);padding-top:12px;line-height:1.45;margin:4px 0 0!important;font-size:14px!important}.set-row{text-align:left;border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:17px;display:flex}.set-row.dev{opacity:.45;margin-top:12px}.seg{background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:999px;gap:2px;padding:3px;display:flex}.seg button{cursor:pointer;background:0 0;border:0;border-radius:999px;min-width:52px;padding:8px 14px;font-size:15px}.seg button[aria-pressed=true]{background:var(--bg);font-weight:600;box-shadow:0 1px 3px #0000001f}.sheet-actions{justify-content:center;gap:10px;margin-top:22px;display:flex}.empty{color:var(--muted);margin:8px 2px;font-size:17px}
