:root{--paper:#fbf8f4;--ink:#1f1b24;--muted:#6b6375;--line:#e6ded1;--accent:#6b4ea8;--accent-soft:#efe7f8;--card:#ffffff;color-scheme:light;--night:#10202e;--night-deep:#0a1620;--night-top:#1f3a4f;--snow:#f4efe6;--frost:#c9d3da;--mist:#8ea0ad;--gold:#d9b56c;--heart:#e2a1e5}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:Jost,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased}body:has(.stage){background:var(--night-deep);color-scheme:dark}a{color:inherit;text-decoration:none}.stage{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;color:var(--snow);background:radial-gradient(120% 70% at 50% 0,var(--night-top) 0,var(--night) 55%,var(--night-deep) 100%);overflow-x:hidden}.snow{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.wrap{position:relative;z-index:1;width:100%;max-width:480px;margin:0 auto;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:clamp(8px,1.9dvh,20px);padding-inline:22px;padding-top:calc(env(safe-area-inset-top, 0px) + clamp(16px, 3dvh, 36px));padding-bottom:clamp(4px,1dvh,12px)}.logo{width:clamp(150px,26dvh,220px);height:auto;display:block;margin-bottom:clamp(2px,1dvh,10px)}.head{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(30px,5.6dvh,46px);line-height:1.08;margin:clamp(4px,1.5dvh,16px) 0 0;text-wrap:balance}.sub{margin:0 0 clamp(2px,1dvh,10px);font-size:clamp(16px,2.7dvh,21px);line-height:1.35;color:var(--frost)}.pct{font-family:Fraunces,Georgia,serif;font-weight:700;font-size:clamp(92px,19dvh,160px);line-height:.9;letter-spacing:-.02em;color:var(--snow);text-shadow:0 0 30px rgba(217,181,108,.35)}.codewrap{display:flex;flex-direction:column;align-items:center;gap:clamp(3px,.8dvh,7px)}.codelabel{font-size:clamp(12px,1.8dvh,14px);letter-spacing:.2em;text-transform:uppercase;font-weight:600}.code,.codelabel{color:var(--gold)}.code{font-family:inherit;font-weight:700;font-size:clamp(24px,4.4dvh,34px);letter-spacing:.16em;background:transparent;border:1.5px dashed var(--gold);border-radius:12px;padding:clamp(6px,1.2dvh,10px) 18px clamp(6px,1.2dvh,10px) 24px;cursor:pointer}.hint{font-size:clamp(13px,2dvh,16px);line-height:1.4;color:var(--frost);min-height:1.2em;max-width:30ch;text-wrap:balance}.cta{width:100%;min-height:clamp(60px,9.5dvh,78px);border:none;border-radius:16px;display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--gold);color:var(--night);font-family:inherit;cursor:pointer;margin-top:clamp(2px,.8dvh,6px);box-shadow:0 8px 24px rgba(217,181,108,.25)}.cta:active{transform:translateY(1px)}.cta .lbl{display:flex;flex-direction:column;align-items:flex-start;text-align:left;flex:1 1;min-width:0}.cta .lbl b{font-size:clamp(18px,2.8dvh,22px);font-weight:700}.cta .lbl small{font-size:clamp(13px,2dvh,16px);font-weight:500;opacity:.75}.cta .arr{font-size:22px;font-weight:600;flex:none}.flags{display:flex;flex:none}.flag{width:clamp(30px,4.6dvh,38px);height:clamp(30px,4.6dvh,38px);border-radius:50%;overflow:hidden;display:block;background:#fff;box-shadow:0 0 0 2px var(--gold)}.flags .flag+.flag{margin-left:-8px}.other{background:none;border:none;font-family:inherit;font-size:clamp(15px,2.3dvh,18px);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 8px}.other,.pick{color:var(--frost)}.pick{font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-top:4px}.list{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px;margin-top:2px}.list,.mk{width:100%}.mk{display:flex;align-items:center;gap:12px;min-height:54px;padding:8px 12px;border-radius:12px;background:rgba(16,32,46,.72);border:1px solid rgba(255,255,255,.14);color:var(--snow);font-family:inherit;font-size:15px;font-weight:500;text-align:left;cursor:pointer}.mk .flag{width:24px;height:24px;box-shadow:0 0 0 1.5px rgba(255,255,255,.5)}.mk .flags .flag+.flag{margin-left:-6px}.mk .t{flex:1 1;min-width:0}.mk .d{font-size:12px;opacity:.6;flex:none}.forest{position:relative;z-index:0;display:block;width:100%;flex:1 1;min-height:96px;max-height:240px;pointer-events:none}.stage button:focus-visible{outline:3px solid var(--heart);outline-offset:2px}@media (prefers-reduced-motion:reduce){.cta:active{transform:none}}.dash{max-width:1080px;margin:0 auto;padding:28px 20px 64px}.dash h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:34px;margin:0 0 4px}.dash .sub{color:var(--muted);font-size:14px;margin:0 0 24px}.banner{border:1px solid #e8c98a;background:#fdf6e6;color:#6b5218;border-radius:12px;padding:12px 14px;font-size:14px;margin-bottom:20px}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));grid-gap:12px;gap:12px}.tile{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px}.tile .k{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.tile .v{font-size:26px;font-weight:800;margin-top:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tile .n{font-size:12px;color:var(--muted);margin-top:2px}.tile.accent .v{color:var(--accent)}.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;margin-top:22px}.panel h2{font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-weight:700}table{width:100%;border-collapse:collapse;font-size:14px}td,th{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line)}th{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scroll-x{overflow-x:auto}.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;align-items:end}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.field input{padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink)}.btn,.field input{font-family:inherit;font-size:15px}.btn{font-weight:700;padding:10px 18px;border:none;border-radius:10px;background:var(--accent);color:#fff;cursor:pointer;min-height:44px}.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}.legend{display:flex;gap:16px;font-size:12px;color:var(--muted);margin-bottom:10px}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:middle}