.page{flex-direction:column;align-items:center;min-height:100vh;display:flex}.center{width:100%;max-width:564px;margin:0 auto}.screen{width:100%;max-width:596px;margin:0 auto;padding:28px 16px 8px}@media (width>=700px){.screen{padding-top:44px}}.status,.no-puzzle{text-align:center;font-family:var(--display);color:var(--ink-dim);padding:40px 0;font-weight:700}.topbar{justify-content:space-between;align-items:center;gap:14px;min-height:46px;margin:0 0 22px;padding:4px 2px;display:flex}.brand{align-items:center;gap:14px;display:flex}.logo-mark{background:var(--card);border:2px solid var(--line-strong);width:46px;height:46px;box-shadow:4px 4px 0 var(--line-strong);border-radius:13px;flex:none;grid-template-columns:1fr 1fr;gap:3px;padding:6px;display:grid;rotate:-3deg}.logo-mark i{border-radius:4px;display:block}.logo-mark i:first-child{background:var(--c1-bot)}.logo-mark i:nth-child(2){background:var(--c2-bot)}.logo-mark i:nth-child(3){background:var(--c3-bot)}.logo-mark i:nth-child(4){background:var(--c4-bot)}.brand h1{font-family:var(--display);letter-spacing:-.01em;font-size:29px;font-weight:800;line-height:1}.brand .tag{color:var(--ink-dim);letter-spacing:.01em;margin-top:4px;font-size:12px;font-weight:800}.hbtns{align-items:center;gap:9px;display:flex}.streak{background:var(--card);border:2px solid var(--line-strong);box-shadow:3px 3px 0 var(--line-strong);color:#e07a00;border-radius:12px;align-items:center;gap:6px;padding:9px 13px;font-size:15px;font-weight:900;display:flex}.iconbtn{cursor:pointer;background:var(--card);width:42px;height:42px;color:var(--ink);border:2px solid var(--line-strong);box-shadow:3px 3px 0 var(--line-strong);font-size:18px;font-weight:900;font-family:var(--display);border-radius:12px;place-items:center;transition:transform .1s,box-shadow .1s;display:grid}.iconbtn:hover{box-shadow:4px 4px 0 var(--line-strong);transform:translate(-1px,-1px)}.iconbtn:active{box-shadow:0 0 0 var(--line-strong);transform:translate(3px,3px)}.gamecard{background:var(--card);border:2px solid var(--line-strong);box-shadow:8px 8px 0 var(--line-strong);border-radius:24px;padding:26px 26px 30px}.subhead{text-align:center;margin-bottom:20px}.subhead .date{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);font-size:11px;font-weight:900}.subhead .instr{font-family:var(--display);color:var(--ink);margin-top:5px;font-size:19px;font-weight:700}.lives{justify-content:center;align-items:center;gap:10px;margin:6px 0 24px;display:flex}.lives .lab{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.1em;margin-right:5px;font-size:11px;font-weight:900}.heart{width:22px;height:22px;transition:transform .2s;position:relative}.heart svg{width:100%;height:100%;filter:drop-shadow(0 2.5px 0 var(--heart-base));display:block}.heart.lost{animation:heart-pop calc(.5s * var(--anim)) ease forwards}.heart.lost svg{filter:none;opacity:.9;fill:var(--line)!important}@keyframes heart-pop{0%{transform:scale(1)}35%{transform:scale(1.5)rotate(-12deg)}to{transform:scale(1)}}.solved{margin-bottom:var(--gap);text-align:center;color:#fff;border:2px solid var(--line-strong);box-shadow:0 var(--depth) 0 var(--base), 4px calc(var(--depth) + 4px) 0 var(--line-strong);background:linear-gradient(180deg, var(--top), var(--bot));animation:solved-drop calc(.55s * var(--anim)) cubic-bezier(.2,1.3,.5,1);border-radius:14px;padding:13px 14px;position:relative;overflow:hidden}.solved:after{content:"";pointer-events:none;animation:solved-shine calc(.7s * var(--anim)) ease-out calc(.25s * var(--anim)) forwards;background:linear-gradient(115deg,#0000 38%,#fff6 50%,#0000 62%);position:absolute;inset:-4px;transform:translate(-110%)}@keyframes solved-shine{to{transform:translate(110%)}}.solved .cat{font-family:var(--display);letter-spacing:.01em;text-shadow:0 1.5px #00000038;animation:solved-text calc(.45s * var(--anim)) cubic-bezier(.2,1.5,.4,1) calc(.12s * var(--anim)) both;font-size:16px;font-weight:800}.solved .ws{opacity:.95;letter-spacing:.05em;animation:solved-text calc(.45s * var(--anim)) cubic-bezier(.2,1.5,.4,1) calc(.2s * var(--anim)) both;margin-top:2px;font-size:12.5px;font-weight:800}@keyframes solved-text{0%{opacity:0;transform:translateY(7px)scale(.9)}to{opacity:.999;transform:none}}.solved.c1{--top:var(--c1-top);--bot:var(--c1-bot);--base:var(--c1-base);color:#4a3100}.solved.c1 .cat{text-shadow:0 1.5px #ffffff4d}.solved.c2{--top:var(--c2-top);--bot:var(--c2-bot);--base:var(--c2-base)}.solved.c3{--top:var(--c3-top);--bot:var(--c3-bot);--base:var(--c3-base)}.solved.c4{--top:var(--c4-top);--bot:var(--c4-bot);--base:var(--c4-base)}@keyframes solved-drop{0%{opacity:0;transform:translateY(-30px)scale(.92)}55%{opacity:1;transform:translateY(3px)scale(1.03,.95)}78%{transform:translateY(-2px)scale(.99,1.02)}to{opacity:1;transform:none}}.grid{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.tile{cursor:pointer;-webkit-user-select:none;user-select:none;aspect-ratio:1;border-radius:var(--radius);text-align:center;background:linear-gradient(180deg, var(--tile-top), var(--tile-bot));min-width:0;color:var(--tile-ink);letter-spacing:-.01em;border:2px solid var(--line-strong);box-shadow:0 var(--depth) 0 var(--tile-base), 0 calc(var(--depth) + 2px) 0 var(--line-strong);place-items:center;padding:4px;font-size:clamp(12px,2.2vw,17px);font-weight:900;transition:transform .13s cubic-bezier(.2,1.4,.5,1),box-shadow .13s;display:grid;position:relative}.tile span{pointer-events:none;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-width:100%;line-height:1.05}.tile:hover{box-shadow:0 calc(var(--depth) + 2px) 0 var(--tile-base), 0 calc(var(--depth) + 4px) 0 var(--line-strong);transform:translateY(-2px)}.tile.sel{background:linear-gradient(180deg, var(--sel-top), var(--sel-bot));color:#fff;text-shadow:0 1px #0000004d;box-shadow:0 var(--depth) 0 var(--sel-base), 0 calc(var(--depth) + 2px) 0 var(--line-strong);animation:tile-pop calc(.32s * var(--anim)) cubic-bezier(.2,1.5,.4,1)}.tile.sel:hover{transform:translateY(-2px)}@keyframes tile-pop{0%{transform:scale(1)}45%{transform:scale(1.12)translateY(-3px)}to{transform:scale(1)}}.tile:active{transform:translateY(var(--depth));box-shadow:0 0 0 var(--line-strong)}.tile.shake{animation:tile-shake calc(.5s * var(--anim)) cubic-bezier(.36,.07,.19,.97)}@keyframes tile-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}.tile.wobble{animation:tile-wobble calc(.6s * var(--anim)) ease}@keyframes tile-wobble{0%,to{transform:rotate(0)}20%{transform:rotate(-4deg)}40%{transform:rotate(3deg)}60%{transform:rotate(-2deg)}80%{transform:rotate(1deg)}}.tile.jump{animation:tile-jump calc(.5s * var(--anim)) cubic-bezier(.2,1.6,.4,1) both;z-index:2}.tile.jump.d1{animation-delay:calc(70ms * var(--anim))!important}.tile.jump.d2{animation-delay:calc(.14s * var(--anim))!important}.tile.jump.d3{animation-delay:calc(.21s * var(--anim))!important}@keyframes tile-jump{0%{transform:translateY(0)}40%{transform:translateY(-22px)scale(1.08)}to{opacity:0;transform:translateY(0)scale(.6)}}.actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px;display:flex}.btn{cursor:pointer;font-family:var(--display);letter-spacing:.01em;color:var(--ink);background:var(--card-2);border:2px solid var(--line-strong);box-shadow:0 4px 0 var(--line-strong);border-radius:14px;justify-content:center;align-items:center;gap:7px;padding:12px 22px;font-size:16px;font-weight:700;transition:transform .1s,box-shadow .1s,opacity .15s;display:inline-flex}.btn:hover{box-shadow:0 5px 0 var(--line-strong);transform:translateY(-1px)}.btn:active{box-shadow:0 0 0 var(--line-strong);transform:translateY(4px)}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:0 4px 0 var(--line-strong);transform:none}.btn.primary{color:#4a3100;background:linear-gradient(180deg, var(--c1-top), var(--c1-bot));box-shadow:0 5px 0 var(--c1-base)}.btn.primary:not(:disabled):hover{filter:brightness(1.04);box-shadow:0 6px 0 var(--c1-base)}.btn.ghost{box-shadow:0 4px 0 var(--line);border-color:var(--line);color:var(--ink-dim);background:0 0}.btn.ghost:hover{box-shadow:0 5px 0 var(--line)}.btn.ghost:active{box-shadow:0 0 0 var(--line)}.fx-layer{pointer-events:none;z-index:60;position:fixed;inset:0;overflow:hidden}.particle{will-change:transform, opacity;border-radius:3px;position:absolute}.confetti-canvas{pointer-events:none;z-index:70;position:fixed;inset:0}.toast-wrap{z-index:80;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%)}.toast{background:var(--ink);color:var(--card);font-family:var(--display);border:2px solid var(--line-strong);box-shadow:0 4px 0 var(--line-strong);animation:toast-in calc(.35s * var(--anim)) cubic-bezier(.2,1.4,.4,1), toast-out .4s ease 1.5s forwards;border-radius:999px;align-items:center;gap:8px;padding:11px 20px;font-size:15px;font-weight:700;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(-14px)scale(.9)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(-10px)}}.overlay{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#22190c8c;place-items:center;padding:20px;animation:.25s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{background:var(--card);border:2px solid var(--line-strong);width:100%;max-width:440px;box-shadow:10px 10px 0 var(--line-strong);text-align:center;animation:modal-pop calc(.45s * var(--anim)) cubic-bezier(.2,1.4,.4,1);border-radius:24px;padding:30px 28px 26px}@keyframes modal-pop{0%{opacity:0;transform:scale(.85)translateY(20px)}to{opacity:1;transform:none}}.modal h2{font-family:var(--display);letter-spacing:-.01em;font-size:31px;font-weight:800}.modal .sub{color:var(--ink-dim);margin-top:5px;font-size:14px;font-weight:800}.crest{color:#fff;border:2px solid var(--line-strong);width:70px;height:70px;box-shadow:0 5px 0 var(--cr-base), 6px 9px 0 -2px var(--line-strong);background:linear-gradient(180deg, var(--cr-top), var(--cr-bot));animation:crest-pop calc(.5s * var(--anim)) cubic-bezier(.2,1.5,.4,1) 50ms both;border-radius:20px;place-items:center;margin:0 auto 16px;display:grid;rotate:-3deg}.crest.gold{--cr-top:#ffce45;--cr-bot:#f2a100;--cr-base:#c47a00;color:#4a3100}.crest.violet{--cr-top:#b07bd6;--cr-bot:#8447b6;--cr-base:#5e2e85}@keyframes crest-pop{0%{transform:scale(0)rotate(20deg)}to{transform:scale(1)}}.miniwrap{flex-direction:column;gap:6px;width:max-content;margin:22px auto;display:flex}.minirow{gap:6px;display:flex}.minidot{border:2px solid var(--line-strong);width:30px;height:30px;box-shadow:0 3px 0 var(--base);background:linear-gradient(180deg,var(--top),var(--bot));border-radius:7px}.minidot.c1{--top:var(--c1-top);--bot:var(--c1-bot);--base:var(--c1-base)}.minidot.c2{--top:var(--c2-top);--bot:var(--c2-bot);--base:var(--c2-base)}.minidot.c3{--top:var(--c3-top);--bot:var(--c3-bot);--base:var(--c3-base)}.minidot.c4{--top:var(--c4-top);--bot:var(--c4-bot);--base:var(--c4-base)}.statline{justify-content:center;gap:26px;margin:20px 0 22px;display:flex}.stat .n{font-family:var(--display);font-size:32px;font-weight:800;line-height:1}.stat .l{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.08em;margin-top:6px;font-size:11px;font-weight:900}.beat{color:#e07a00;margin-bottom:20px;font-size:15px;font-weight:900}.modal .actions{margin-top:6px}.reveal{flex-direction:column;gap:16px;margin:22px 0 6px;display:flex}.reveal .solved{margin:0;animation:none!important}.reveal .solved:after,.reveal .solved .cat,.reveal .solved .ws{animation:none!important}.gamecard.result{text-align:center}.result-badge-banner{margin:4px 0 18px}.result-badge-banner-title{font-family:var(--display);color:var(--ink);justify-content:center;align-items:center;gap:7px;font-size:14.5px;font-weight:800;display:inline-flex}.result-badge-banner-title svg{color:#e07a00;flex:none}@media (prefers-reduced-motion:no-preference){.gamecard.result.win{animation:.62s cubic-bezier(.2,1.5,.4,1) both result-celebrate}.gamecard.result.win .crest{animation:.5s cubic-bezier(.2,1.5,.4,1) 50ms both crest-pop,1.5s .5s crest-glow}.gamecard.result.win .statline .stat .n{animation:.5s cubic-bezier(.2,1.6,.4,1) .38s both stat-land}}@keyframes result-celebrate{0%{opacity:0;transform:translateY(16px)scale(.94)}55%{opacity:1;transform:translateY(-3px)scale(1.015)}to{opacity:1;transform:none}}@keyframes crest-glow{0%,to{filter:none}40%{filter:drop-shadow(0 0 10px var(--cr-bot))}}@keyframes stat-land{0%{opacity:0;transform:translateY(8px)scale(.8)}60%{opacity:1;transform:translateY(0)scale(1.08)}to{transform:none}}.streak-banner{background:linear-gradient(180deg, var(--c1-top), var(--c1-bot));color:#4a3100;border:2px solid var(--line-strong);box-shadow:0 4px 0 var(--c1-base);font-family:var(--display);border-radius:14px;justify-content:center;align-items:center;gap:10px;margin:16px 0 18px;padding:12px 16px;font-size:14.5px;font-weight:800;line-height:1.25;display:flex}.streak-banner-flame{flex:none;font-size:20px}.streak-banner-text{text-align:left}.countdown{background:var(--card-2);border:2px solid var(--line);border-radius:14px;flex-direction:column;align-items:center;gap:3px;margin-top:18px;padding:10px 20px;display:inline-flex}.countdown-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);font-size:11px;font-weight:900}.countdown-clock{font-family:var(--display);letter-spacing:.04em;font-variant-numeric:tabular-nums;color:var(--ink);font-size:22px;font-weight:800}.badge-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0;display:grid}.badge{background:var(--card-2);border:2px solid var(--line);text-align:left;border-radius:13px;align-items:center;gap:11px;padding:13px 12px;display:flex}.badge.locked{opacity:.5;filter:grayscale(.7)}.badge .ic{color:#fff;border:2px solid var(--line-strong);width:38px;height:38px;box-shadow:0 3px 0 var(--ic-base);background:linear-gradient(180deg, var(--ic-top), var(--ic-bot));border-radius:11px;flex:none;place-items:center;display:grid}.badge.b1 .ic{--ic-top:#ffce45;--ic-bot:#f2a100;--ic-base:#c47a00;color:#4a3100}.badge.b2 .ic{--ic-top:#ff9f45;--ic-bot:#f26a00;--ic-base:#b84e00}.badge.b3 .ic{--ic-top:#5ba8e8;--ic-bot:#2f77c6;--ic-base:#1e5294}.badge.b4 .ic{--ic-top:#b07bd6;--ic-bot:#8447b6;--ic-base:#5e2e85}.badge.b5 .ic{--ic-top:#66c77a;--ic-bot:#2e9e55;--ic-base:#1e6e3a}.badge.b6 .ic{--ic-top:#ff7e8e;--ic-bot:#e8556a;--ic-base:#b23347}.badge .bt{font-family:var(--display);font-size:13px;font-weight:700;line-height:1.15}.badge>div{flex-direction:column;gap:3px;min-width:0;display:flex}.badge .bd{color:var(--ink-dim);font-size:11px;font-weight:700}.helplist{text-align:left;flex-direction:column;gap:14px;margin:20px 0 24px;display:flex}.helpitem{align-items:flex-start;gap:12px;display:flex}.helpitem .num{width:27px;height:27px;font-family:var(--display);background:var(--card-2);border:2px solid var(--line-strong);border-radius:8px;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.helpitem p{color:var(--ink);font-size:14px;font-weight:600;line-height:1.45}.helpitem b{color:var(--ink)}.foot{color:var(--ink-dim);text-align:center;opacity:.8;padding:10px 0 26px;font-size:12px;font-weight:800}.revoke-link{cursor:pointer;font:inherit;color:var(--ink-dim);text-underline-offset:2px;opacity:.85;background:0 0;border:0;margin:0;padding:0;text-decoration:underline;display:inline}.revoke-link:hover{opacity:1}.revoke-link.foot-consent{margin-top:6px;display:block}.revoke-link.game-consent{text-align:center;color:var(--ink-dim);margin:10px auto 26px;font-weight:800;display:block}.content-page{width:100%;max-width:564px;color:var(--ink);margin:0 auto;padding:24px 20px 8px;font-size:17px;line-height:1.6}.content-page h1{font-family:var(--display);letter-spacing:-.01em;margin-bottom:14px;font-size:28px;font-weight:800;line-height:1.15}.content-page h2{font-family:var(--display);margin:28px 0 10px;font-size:21px;font-weight:700;line-height:1.2}.content-page p{margin-bottom:14px}.content-page a{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.site-footer{text-align:center;max-width:564px;color:var(--ink-dim);margin:40px auto 0;padding:0 20px 26px;font-size:14px;font-weight:700}.site-footer hr{border:none;border-top:1px solid var(--line);margin:0 0 16px}.site-footer-nav{flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 8px;line-height:1.7;display:flex}.site-footer-nav a{color:var(--ink-dim);padding:4px 2px;text-decoration:none}.site-footer-nav a:hover{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.site-footer-copyright{color:var(--ink-dim);margin-top:10px;font-size:12.5px;font-weight:800}.archive-chapo{color:var(--ink-dim)}.archive-note{color:var(--ink);margin:0 0 14px}.archive-grid{margin:18px 0}.archive-grid .solved{animation:none}.archive-grid .solved:after{display:none}.archive-grid .solved .cat,.archive-grid .solved .ws{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.archive-cta{margin:20px 0}.archive-nav{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:24px;display:flex}.archive-nav a{color:var(--ink);text-underline-offset:2px;overflow-wrap:anywhere;text-decoration:underline}.archive-list{margin:14px 0;padding:0;list-style:none}.archive-list li{margin:0 0 8px}.btn.sm{border-radius:11px;padding:8px 16px;font-size:14px}.support-slot{background:repeating-linear-gradient(135deg, var(--card-2) 0 11px, transparent 11px 22px), var(--card);border:2px dashed var(--line);color:var(--ink-dim);letter-spacing:.14em;text-transform:uppercase;text-align:center;-webkit-user-select:none;user-select:none;opacity:.8;border-radius:10px;place-items:center;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px;font-weight:800;line-height:1.6;display:grid;position:relative;overflow:hidden}.support-slot:after{content:attr(data-label);white-space:pre}.support-lead{flex:none;width:728px;max-width:100%;height:90px;margin:18px auto 4px}.support-rail{flex:none;width:160px;height:600px;margin-top:62px}.support-slot:empty{display:none}:is(.support-slot:has(.kofi-fallback),.support-slot:has(.support-slot-ins)){opacity:1;background:0 0;border:none}.support-slot:has(.kofi-fallback):after{content:none}.support-slot:has(.support-slot-ins):after{content:none}.support-slot-fallback{position:absolute;inset:0}.support-slot-ins{width:100%;height:100%}.kofi-fallback{box-sizing:border-box;text-align:center;background:var(--card);border:2px solid var(--line-strong);width:100%;height:100%;box-shadow:3px 3px 0 var(--line-strong);border-radius:10px;justify-content:center;align-items:center;gap:12px;padding:10px 16px;display:flex}.kofi-lead{flex-direction:row}.kofi-msg{color:var(--ink);margin:0;font-size:13px;font-weight:800;line-height:1.35}.kofi-cta{white-space:nowrap;background:var(--card-2);border:2px solid var(--line-strong);box-shadow:2px 2px 0 var(--line-strong);color:#e07a00;border-radius:11px;flex:none;align-items:center;gap:7px;padding:7px 13px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.kofi-cta:hover{box-shadow:3px 3px 0 var(--line-strong);transform:translate(-1px,-1px)}.kofi-cta:active{box-shadow:0 0 0 var(--line-strong);transform:translate(2px,2px)}.kofi-cta-ic{display:inline-flex}@media (width<=560px){.kofi-msg{display:none}.support-lead{height:52px}.kofi-fallback{padding:4px 12px}}@media (width<=1079px){.screen .support-rail{display:none}}@media (width>=1080px){.screen .support-rail{margin-top:0;position:fixed;top:96px;left:calc(50% + 310px)}}.hero{text-align:center;background:var(--card);border:2px solid var(--line-strong);box-shadow:8px 8px 0 var(--line-strong);border-radius:24px;padding:30px 26px 28px;position:relative}.hero .date{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);font-size:11px;font-weight:900}.hero h2{font-family:var(--display);letter-spacing:-.01em;margin-top:6px;font-size:34px;font-weight:800;line-height:1.05}@media (width<=560px){.hero h2{font-size:30px}}.hero .mini{flex-direction:column;gap:6px;width:max-content;margin:20px auto 22px;display:flex;rotate:-2deg}.hero .minirow{gap:6px;display:flex}.hero .minidot{border:2px solid var(--line-strong);width:26px;height:26px;box-shadow:0 3px 0 var(--base);background:linear-gradient(180deg, var(--top), var(--bot));border-radius:7px}.hero .minidot.blank{--top:var(--card-2);--bot:var(--card-2);--base:var(--line);border-color:var(--line)}.hero .minidot.c1{--top:var(--c1-top);--bot:var(--c1-bot);--base:var(--c1-base)}.hero .minidot.c2{--top:var(--c2-top);--bot:var(--c2-bot);--base:var(--c2-base)}.hero .minidot.c3{--top:var(--c3-top);--bot:var(--c3-bot);--base:var(--c3-base)}.hero .minidot.c4{--top:var(--c4-top);--bot:var(--c4-bot);--base:var(--c4-base)}.hero .cta{border-radius:16px;width:100%;max-width:340px;padding:15px 24px;font-size:18px}.hero .note{color:var(--ink-dim);justify-content:center;align-items:center;gap:7px;margin-top:14px;font-size:12.5px;font-weight:800;display:flex}.section{margin-top:30px}.sechead{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;padding:0 4px;display:flex}.sechead h3{font-family:var(--display);font-size:21px;font-weight:800}.sechead .sub{font-family:var(--font);color:var(--ink-dim);margin-top:2px;font-size:12px;font-weight:800;display:block}.quota{background:var(--card);border:2px solid var(--line);color:var(--ink-dim);border-radius:999px;align-items:center;gap:9px;padding:8px 13px;font-size:12px;font-weight:900;display:inline-flex}.quota .pips{gap:4px;display:flex}.quota .pip{background:var(--c2-bot);border-radius:50%;width:9px;height:9px;box-shadow:inset 0 -2px #0000002e}.quota .pip.used{background:var(--line);box-shadow:none}.quota.low{border-color:var(--c1-bot);color:#e07a00}.quota.empty .pip{background:var(--line);box-shadow:none}.quota.empty{color:var(--ink-dim)}.archlist{flex-direction:column;gap:12px;display:flex}.arch{background:var(--card);border:2px solid var(--line-strong);box-shadow:0 4px 0 var(--line-strong);border-radius:18px;flex-wrap:wrap;align-items:center;gap:14px;padding:14px 16px;display:flex}.arch .chip{background:var(--card-2);border:2px solid var(--line-strong);width:40px;height:40px;box-shadow:0 3px 0 var(--line-strong);border-radius:11px;flex:none;grid-template-columns:1fr 1fr;gap:2.5px;padding:5px;display:grid}.arch .chip i{border-radius:3px}.arch .chip i:first-child{background:var(--c1-bot)}.arch .chip i:nth-child(2){background:var(--c2-bot)}.arch .chip i:nth-child(3){background:var(--c3-bot)}.arch .chip i:nth-child(4){background:var(--c4-bot)}.arch .meta{flex:1;min-width:0}.arch .num{font-family:var(--display);font-size:17px;font-weight:800;line-height:1.1}.arch .when{color:var(--ink-dim);margin-top:1px;font-size:12px;font-weight:800}.arch.locked{background:var(--card-2);border-style:dashed;border-color:var(--ink-dim);box-shadow:none}.arch.locked .chip{filter:grayscale();opacity:.45;box-shadow:none}.arch.locked .num{color:var(--ink-dim);align-items:center;gap:6px;display:flex}.arch .unlock{flex:none}.arch.locked .unlock{color:var(--ink);background:var(--card);padding:9px 14px;font-size:13px}@media (width<=460px){.arch.locked .unlock{flex-basis:100%}}.support{text-align:center;background:var(--card-2);border:2px solid var(--line);border-radius:22px;margin-top:30px;padding:24px 22px}.support h3{font-family:var(--display);justify-content:center;align-items:center;gap:9px;font-size:20px;font-weight:800;display:flex}.support h3 svg{color:#e8556a}.support p{color:var(--ink-dim);max-width:380px;margin:8px auto 18px;font-size:14px;font-weight:700;line-height:1.55}.support .duo{justify-content:center;gap:12px;display:flex}@media (width<=560px){.support .duo{flex-direction:column}}.bigbtn{background:var(--card);text-align:left;border-radius:16px;flex:1;justify-content:flex-start;gap:14px;max-width:300px;padding:13px 16px}@media (width<=560px){.bigbtn{max-width:none}}.bigbtn .lab{white-space:nowrap;flex:1;align-items:center;gap:10px;font-size:15px;display:flex}.bigbtn .sub{font-family:var(--font);color:var(--ink-dim);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;font-size:10.5px;font-weight:900}.bigbtn.coffee{background:linear-gradient(180deg, var(--c1-top), var(--c1-bot));box-shadow:0 4px 0 var(--c1-base), 0 6px 0 var(--line-strong)}.bigbtn.coffee,.bigbtn.coffee .sub{color:#4a3100}.bigbtn.coffee:not(:disabled):hover{filter:brightness(1.04)}@media (prefers-reduced-motion:no-preference){.screen>.topbar{animation:enter-rise calc(.5s * var(--anim)) cubic-bezier(.2,1.3,.4,1) both 50ms}.screen>.gamecard{animation:enter-pop calc(.55s * var(--anim)) cubic-bezier(.2,1.4,.4,1) both .12s}.screen>.foot{animation:enter-rise calc(.5s * var(--anim)) ease both .9s}.gamecard .subhead,.gamecard .lives{animation:enter-rise calc(.45s * var(--anim)) cubic-bezier(.2,1.3,.4,1) both .25s}.gamecard .lives{animation-delay:.32s}.gamecard .actions{animation:enter-rise calc(.45s * var(--anim)) cubic-bezier(.2,1.3,.4,1) both .8s}.grid .tile{animation:enter-tile calc(.5s * var(--anim)) cubic-bezier(.2,1.5,.4,1) both}.grid .tile:first-child{animation-delay:.34s}.grid .tile:nth-child(2){animation-delay:.37s}.grid .tile:nth-child(3){animation-delay:.4s}.grid .tile:nth-child(4){animation-delay:.43s}.grid .tile:nth-child(5){animation-delay:.46s}.grid .tile:nth-child(6){animation-delay:.49s}.grid .tile:nth-child(7){animation-delay:.52s}.grid .tile:nth-child(8){animation-delay:.55s}.grid .tile:nth-child(9){animation-delay:.58s}.grid .tile:nth-child(10){animation-delay:.61s}.grid .tile:nth-child(11){animation-delay:.64s}.grid .tile:nth-child(12){animation-delay:.67s}.grid .tile:nth-child(13){animation-delay:.7s}.grid .tile:nth-child(14){animation-delay:.73s}.grid .tile:nth-child(15){animation-delay:.76s}.grid .tile:nth-child(16){animation-delay:.79s}.grid .tile.sel{animation:tile-pop calc(.32s * var(--anim)) cubic-bezier(.2,1.5,.4,1)}.grid .tile.shake{animation:tile-shake calc(.5s * var(--anim)) cubic-bezier(.36,.07,.19,.97)}.grid .tile.wobble{animation:tile-wobble calc(.6s * var(--anim)) ease}.grid .tile.jump{animation:tile-jump calc(.5s * var(--anim)) cubic-bezier(.2,1.6,.4,1) both}}@keyframes enter-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes enter-pop{0%{opacity:0;transform:translateY(22px)scale(.96)}60%{opacity:1}to{opacity:1;transform:none}}@keyframes enter-tile{0%{opacity:0;transform:translateY(-14px)scale(.7)}60%{opacity:1;transform:translateY(2px)scale(1.04)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.center>*{animation:.55s cubic-bezier(.2,1.3,.4,1) both rise}.center>.topbar{animation-delay:50ms}.center>.hero{animation:.6s cubic-bezier(.2,1.4,.4,1) .15s both pop}.center>.section{animation-delay:.3s}.center>.support{animation-delay:.45s}.center>.foot{animation-delay:.55s}.hero .mini .minirow{animation:.45s cubic-bezier(.2,1.4,.4,1) both rise}.hero .mini .minirow:first-child{animation-delay:.35s}.hero .mini .minirow:nth-child(2){animation-delay:.42s}.hero .mini .minirow:nth-child(3){animation-delay:.49s}.hero .mini .minirow:nth-child(4){animation-delay:.56s}.archlist .arch{animation:.5s cubic-bezier(.2,1.3,.4,1) both rise}.archlist .arch:first-child{animation-delay:.4s}.archlist .arch:nth-child(2){animation-delay:.47s}.archlist .arch:nth-child(3){animation-delay:.54s}.archlist .arch:nth-child(4){animation-delay:.61s}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:translateY(20px)scale(.96)}60%{opacity:1}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.tile.sel,.tile.shake,.tile.wobble,.tile.jump,.solved,.solved:after,.solved .cat,.solved .ws,.heart.lost,.toast,.modal,.crest,.overlay{animation:none!important}.tile,.btn,.iconbtn{transition:none!important}.center>*,.center>.hero,.hero .mini .minirow,.archlist .arch,.screen>.topbar,.screen>.gamecard,.screen>.foot,.gamecard .subhead,.gamecard .lives,.gamecard .actions,.grid .tile,.solved .cat,.solved .ws{opacity:1!important;animation:none!important;transform:none!important}}
