@font-face{font-family:fredoka;src:url(../media/fredoka_latin_wght_normal-s.p.2fpsu8src1nhe.woff2)format("woff2");font-display:swap;font-weight:300 700}@font-face{font-family:fredoka Fallback;src:local(Arial);ascent-override:95.32%;descent-override:23.1%;line-gap-override:0.0%;size-adjust:102.19%}._5tzZRa_className{font-family:fredoka,fredoka Fallback}._5tzZRa_variable{--font-fredoka:"fredoka", "fredoka Fallback"}
@font-face{font-family:nunito;src:url(../media/nunito_latin_wght_normal-s.p.43ritpld78jne.woff2)format("woff2");font-display:swap;font-weight:200 1000}@font-face{font-family:nunito Fallback;src:local(Arial);ascent-override:103.02%;descent-override:35.97%;line-gap-override:0.0%;size-adjust:98.13%}.HAAPGW_className{font-family:nunito,nunito Fallback}.HAAPGW_variable{--font-nunito:"nunito", "nunito Fallback"}
@font-face{font-family:caveat;src:url(../media/caveat_latin_700_normal-s.p.23o9u2ocxwgg-.woff2)format("woff2");font-display:swap;font-weight:700}@font-face{font-family:caveat Fallback;src:local(Arial);ascent-override:126.46%;descent-override:39.52%;line-gap-override:0.0%;size-adjust:75.91%}.SRSltW_className{font-family:caveat,caveat Fallback;font-weight:700}.SRSltW_variable{--font-caveat:"caveat", "caveat Fallback"}
:root{--page:#0b221f;--night:#0f2c27;--night-2:#17403a;--pine:#2e6b50;--pine-light:#4f9a73;--snow:#fbfaf6;--snow-dim:#fbfaf6c2;--snow-faint:#fbfaf624;--red:#d63a30;--red-deep:#a3221c;--gold:#f2c15c;--gold-deep:#c9952f;--ink:#1b2a26;--ink-soft:#5b6b65;--bark:#7a4a2b;--error:#ffb0a8;--f-display:var(--font-fredoka), "Nunito", system-ui, sans-serif;--f-body:var(--font-nunito), system-ui, -apple-system, "Segoe UI", sans-serif;--f-hand:var(--font-caveat), "Segoe Print", "Bradley Hand", cursive;--btn-h:62px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{min-height:100%;margin:0}body{background:radial-gradient(120% 50% at 50% 0%, var(--night-2) 0%, transparent 70%), linear-gradient(180deg, var(--night) 0%, var(--page) 100%) fixed;background-color:var(--page);color:var(--snow);font-family:var(--f-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:16px}button,input,select{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.snow{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.screen{z-index:1;max-width:460px;min-height:100dvh;padding-top:max(28px, env(safe-area-inset-top,0px));padding-left:max(22px, env(safe-area-inset-left,0px));padding-right:max(22px, env(safe-area-inset-right,0px));flex-direction:column;gap:18px;margin:0 auto;animation:.35s ease-out enter;display:flex;position:relative}@keyframes enter{0%{opacity:.4;transform:translateY(10px)}to{opacity:1;transform:none}}.hd{text-align:center;flex-direction:column;gap:8px;display:flex}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--gold);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:800;display:inline-flex}.badge{background:var(--gold);color:var(--ink);letter-spacing:.08em;border-radius:6px;padding:2px 7px;font-size:11px}h1{font-family:var(--f-display);text-wrap:balance;margin:0;font-size:clamp(30px,8.6vw,36px);font-weight:700;line-height:1.08}.hand{font-family:var(--f-hand);color:var(--gold);font-weight:700}h1 .hand{font-size:1.2em}.sub{max-width:32ch;color:var(--snow-dim);text-wrap:balance;margin:0 auto;font-size:16.5px;line-height:1.45}.stage{flex:auto;place-items:center;min-height:170px;display:grid;position:relative}.stage.compact{flex:none;height:120px;min-height:120px}.stage>svg{width:min(60%,220px);height:auto;max-height:100%;overflow:visible}.stage.compact>svg{width:auto;height:104px}.float{transform-origin:50% 90%;animation:4.5s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)rotate(-1.5deg)}50%{transform:translateY(-6px)rotate(1.5deg)}}.fields{flex-direction:column;gap:10px;display:flex}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--snow-dim);font-size:13px;font-weight:800}.input{background:var(--snow);width:100%;height:64px;color:var(--ink);border:2px solid #0000;border-radius:18px;padding:0 20px;font-size:21px;font-weight:700}.input.code{text-transform:uppercase;letter-spacing:.06em}.input::placeholder{color:#a3aea9;text-transform:none;letter-spacing:0;font-weight:600}.input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 4px #f2c15c40}.hint{color:var(--snow-dim);margin:0;font-size:14.5px;line-height:1.45}.hint.err{color:var(--error);font-weight:700}.actions{z-index:2;padding-top:18px;padding-bottom:max(20px, env(safe-area-inset-bottom,0px));background:linear-gradient(180deg, transparent, var(--page) 28px);flex-direction:column;gap:10px;margin-top:auto;display:flex;position:sticky;bottom:0}.btn{height:var(--btn-h);width:100%;font-family:var(--f-display);letter-spacing:.01em;cursor:pointer;border:0;border-radius:20px;justify-content:center;align-items:center;gap:10px;font-size:21px;font-weight:600;text-decoration:none;transition:transform .12s,box-shadow .12s,opacity .12s;display:inline-flex}.btn:disabled{opacity:.6;cursor:progress}.btn.primary{background:var(--red);color:var(--snow);box-shadow:0 5px 0 var(--red-deep), 0 12px 24px #0000004d;background-image:linear-gradient(90deg,#0000 calc(50% - 7px),#f2c15ce6 calc(50% - 7px) calc(50% + 7px),#0000 calc(50% + 7px))}.btn.primary>span{background:var(--red);border-radius:8px;padding:0 12px}.btn.primary:active{box-shadow:0 1px 0 var(--red-deep), 0 6px 12px #0000004d;transform:translateY(4px)}.btn.ghost{color:var(--snow);border:2px solid var(--snow-faint);background:#0b221f99;height:54px;font-size:18px}.btn.ghost:active{background:var(--snow-faint)}.btn.danger{color:var(--error);background:0 0;border:2px solid #ffb0a859;height:50px;font-size:17px}.link-btn{color:var(--snow-dim);cursor:pointer;text-align:center;background:0 0;border:0;padding:8px;font-size:15px;font-weight:700;text-decoration:none}.link-btn:hover{color:var(--snow)}.done-note{text-align:center;color:var(--snow-dim);background:#fbfaf60f;border-radius:18px;margin:0;padding:14px 16px;font-size:15px;line-height:1.45}.done-note strong{color:var(--snow)}.tags{flex-wrap:wrap;justify-content:center;gap:12px 10px;padding:6px 2px;display:flex}.tag{background:var(--snow);color:var(--ink);font-family:var(--f-hand);clip-path:polygon(14px 0,100% 0,100% 100%,14px 100%,0 50%);transform:rotate(var(--rot,-2deg));border-radius:6px 12px 12px 6px;align-items:center;padding:8px 14px 9px 30px;font-size:25px;font-weight:700;line-height:1;display:inline-flex;position:relative}.tag:before{content:"";background:var(--night);border-radius:50%;width:7px;height:7px;margin-top:-3.5px;position:absolute;top:50%;left:13px}.tag:nth-child(3n+2){--rot:2.5deg}.tag:nth-child(3n){--rot:-.5deg}.tag.me{background:var(--gold)}.count{text-align:center;color:var(--snow-dim);margin:0;font-size:14px;font-weight:700}.card{background:var(--snow);color:var(--ink);text-align:center;border-radius:22px;flex-direction:column;align-items:center;gap:6px;padding:18px 18px 16px;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 30px #0000004d}.card:before{content:"";background:#d63a3017;width:12px;margin-left:-6px;position:absolute;inset:0 auto 0 50%}.card .card-label{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-size:12px;font-weight:800;position:relative}.card .card-code{font-family:var(--f-display);letter-spacing:.04em;color:var(--red-deep);font-size:34px;font-weight:700;position:relative}.card .card-hint{color:var(--ink-soft);max-width:30ch;font-size:14px;line-height:1.4;position:relative}.copy-inline{color:var(--red-deep);cursor:pointer;background:0 0;border:0;padding:6px;font-size:14px;font-weight:800;position:relative}.list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.row{border:1px solid var(--snow-faint);background:#fbfaf612;border-radius:16px;align-items:center;gap:10px;min-height:58px;padding:8px 8px 8px 16px;display:flex}.row .name{min-width:0;font-family:var(--f-hand);overflow-wrap:anywhere;flex:1;font-size:27px;font-weight:700;line-height:1}.row .meta{color:var(--snow-dim);white-space:nowrap;font-size:13px;font-weight:700}.row .meta.ok{color:var(--pine-light)}.icon-btn{min-width:44px;height:44px;color:var(--snow-dim);cursor:pointer;background:0 0;border:0;border-radius:12px;flex:none;place-items:center;padding:0 8px;font-size:22px;display:inline-grid}.icon-btn.text{border:1.5px solid var(--snow-faint);font-size:14px;font-weight:800}.icon-btn:active{background:var(--snow-faint)}.amp{color:var(--gold);font-family:var(--f-display);padding:0 4px;font-size:18px}.empty{text-align:center;color:var(--snow-dim);border:1.5px dashed var(--snow-faint);border-radius:16px;margin:0;padding:14px;font-size:15px}.pair-picker{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.pair-picker .amp{font-size:20px;font-weight:700}.select{background:var(--snow);width:100%;height:56px;color:var(--ink);font-family:var(--f-hand);border:0;border-radius:16px;padding:0 12px;font-size:24px;font-weight:700}.admin-tabs{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.admin-tabs a{color:var(--snow-dim);border:1px solid var(--snow-faint);border-radius:999px;padding:7px 12px;font-size:13px;font-weight:800;text-decoration:none}.admin-tabs a[aria-current=page]{background:var(--snow);color:var(--ink);border-color:var(--snow)}.secret-row{cursor:pointer}.secret-row .arrow{color:var(--gold);flex:none}.secret-row .secret{text-align:right;min-width:0;font-family:var(--f-hand);flex:1;font-size:27px;font-weight:700;line-height:1;transition:filter .25s}.secret-row:not(.open) .secret{filter:blur(8px);-webkit-user-select:none;user-select:none}.secret-row.open{background:#f2c15c24;border-color:#f2c15c66}.danger-zone{border:1.5px dashed #ffb0a84d;border-radius:18px;flex-direction:column;gap:10px;padding:16px;display:flex}.danger-zone h2{letter-spacing:.1em;text-transform:uppercase;color:var(--error);margin:0;font-size:13px;font-weight:800}.confirm{background:#d63a3024;border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.confirm p{margin:0;line-height:1.45}.confirm .row-btns{grid-template-columns:1fr 1fr;gap:8px;display:grid}.confirm .btn{height:50px;font-size:17px}.reveal{cursor:pointer;width:100%;height:100%;color:inherit;background:0 0;border:0;place-items:center;padding:0;display:grid}.reveal svg{width:min(62%,230px);height:auto;overflow:visible}.reveal .lid{transform-origin:100px 90px;transition:transform .6s cubic-bezier(.3,1.6,.5,1)}.reveal.opened .lid{transform:translate(40px,-60px)rotate(28deg)}.reveal-tap{color:var(--gold);letter-spacing:.04em;margin-top:8px;font-size:15px;font-weight:800}.result-name{text-align:center;flex-direction:column;gap:4px;animation:.5s cubic-bezier(.3,1.6,.5,1) pop;display:flex}.result-name .lbl{letter-spacing:.14em;text-transform:uppercase;color:var(--snow-dim);font-size:15px;font-weight:800}.result-name .who{font-family:var(--f-hand);color:var(--gold);overflow-wrap:anywhere;font-size:64px;font-weight:700;line-height:1}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.overlay{z-index:50;padding:max(20px, env(safe-area-inset-top,0px)) max(20px, env(safe-area-inset-right,0px)) max(20px, env(safe-area-inset-bottom,0px)) max(20px, env(safe-area-inset-left,0px));background:#051210eb;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:fixed;inset:0}.overlay img{-webkit-touch-callout:default;border-radius:16px;max-width:100%;max-height:68dvh;box-shadow:0 20px 50px #00000080}.overlay p{text-align:center;max-width:32ch;margin:0;font-weight:700;line-height:1.45}.overlay .btn{max-width:360px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.float,.screen,.result-name{animation:none}.reveal .lid{transition:none}.snow{display:none}}.f-red{fill:var(--red)}.f-red-d{fill:var(--red-deep)}.f-gold{fill:var(--gold)}.f-gold-d{fill:var(--gold-deep)}.f-pine{fill:var(--pine)}.f-pine-l{fill:var(--pine-light)}.f-snow{fill:var(--snow)}.f-bark{fill:var(--bark)}.f-night{fill:var(--night)}.f-ink{fill:var(--ink)}.s-gold{stroke:var(--gold);fill:none}.s-snow{stroke:var(--snow);fill:none}.s-ink{stroke:var(--ink-soft);fill:none}.s-red{stroke:var(--red);fill:none}
