:root{--night:#070a1c;--ink:#0e1330;--panel:rgba(18,22,52,0.72);--line:rgba(232,194,122,0.22);--gold:#e8c27a;--gold-2:#f6dca4;--cream:#f3ead7;--muted:#a9a3bd;--danger:#ff8a8a;--ok:#8fe3b5;--radius:18px;--serif:"Cormorant Garamond","Iowan Old Style",Georgia,serif;--sans:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--night);color:var(--cream);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;min-height:100dvh}a{color:var(--gold);text-decoration:none}a:hover{color:var(--gold-2)}button{font-family:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}.pool-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.topbar{position:fixed;top:0;left:0;right:0;z-index:30;justify-content:space-between;padding:14px clamp(16px,4vw,40px);background:linear-gradient(180deg,rgba(7,10,28,.8),rgba(7,10,28,0))}.logo,.topbar{display:flex;align-items:center}.logo{font-family:var(--serif);font-size:26px;color:var(--cream);letter-spacing:.02em;gap:8px}.logo em{color:var(--gold);font-style:italic}.topnav{display:flex;gap:clamp(10px,2.5vw,24px);align-items:center;font-size:14px}.topnav a{color:var(--muted)}.topnav a:hover{color:var(--cream)}.lang{border:1px solid var(--line);padding:3px 9px;border-radius:99px;font-size:12px;letter-spacing:.08em}.footer{position:relative;z-index:2;border-top:1px solid var(--line);padding:36px clamp(16px,4vw,40px) 48px;color:var(--muted);font-size:14px;background:var(--night)}.footer nav{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:16px}.footer nav a{color:var(--muted)}.footer nav a:hover{color:var(--cream)}.footer small{display:block;max-width:640px;opacity:.8}.hero{min-height:100dvh;overflow:hidden;flex-direction:column}.hero,.hero-inner{position:relative;display:flex}.hero-inner{z-index:3;flex:1 1;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:clamp(92px,16vh,150px) 16px 40px}.kicker{font-size:12px;letter-spacing:.32em;color:var(--gold);margin-bottom:14px}.kicker:after,.kicker:before{content:"✦";margin:0 10px;opacity:.7}.display{font-family:var(--serif);font-weight:500;font-size:clamp(38px,7vw,76px);line-height:1.02;margin:0}.display i{color:var(--gold-2)}.lede{font-size:clamp(15px,2.2vw,18px);margin:16px 0 0;max-width:520px}.counter,.lede{color:var(--muted)}.counter{margin-top:18px;font-size:13px;display:inline-flex;gap:8px;align-items:center}.counter b{color:var(--cream);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card{width:min(560px,100%);margin-top:28px;text-align:left;background:var(--panel);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,4vw,28px);box-shadow:0 30px 80px rgba(0,0,0,.45)}.step-label{font-size:11px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;margin-bottom:10px}.h2{font-family:var(--serif);font-size:28px;font-weight:500;margin:0 0 4px}.sub{color:var(--muted);margin:0 0 18px;font-size:14px}.textarea{width:100%;min-height:120px;resize:vertical;border-radius:14px;background:rgba(5,8,24,.6);color:var(--cream);border:1px solid rgba(255,255,255,.12);padding:14px 16px;font:18px/1.45 var(--serif);outline:none}.input:focus,.textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(232,194,122,.15)}.input{width:100%;border-radius:12px;background:rgba(5,8,24,.6);color:var(--cream);border:1px solid rgba(255,255,255,.12);padding:12px 14px;font-size:15px;outline:none}.row{display:flex;justify-content:space-between;align-items:center;gap:12px}.meta{font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meta.over{color:var(--danger)}.warn{font-size:12.5px;color:var(--muted);margin:8px 0 14px;display:flex;gap:8px}.choice{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;margin-top:8px;border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:border-color .2s,background .2s}.choice:hover{border-color:rgba(232,194,122,.4)}.choice.on{border-color:var(--gold);background:rgba(232,194,122,.07)}.choice input{accent-color:var(--gold);margin-top:4px}.choice b{font-weight:600;font-size:14.5px;display:block}.choice span{font-size:12.5px;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:99px;padding:15px 26px;cursor:pointer;font-weight:700;letter-spacing:.12em;font-size:13.5px;color:#1b1405;background:linear-gradient(135deg,var(--gold-2),var(--gold) 55%,#c79b4a);box-shadow:0 10px 30px rgba(232,194,122,.25),inset 0 1px 0 rgba(255,255,255,.6);transition:transform .15s,box-shadow .2s,opacity .2s}.btn:hover{transform:translateY(-1px);box-shadow:0 14px 40px rgba(232,194,122,.35),inset 0 1px 0 rgba(255,255,255,.6);color:#1b1405}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.block{width:100%}.btn.ghost{background:transparent;color:var(--cream);border:1px solid var(--line);box-shadow:none}.btn.ghost:hover{border-color:var(--gold);color:var(--gold-2)}.btn.small{padding:9px 16px;font-size:12px}.actions{display:flex;gap:10px;margin-top:18px}.actions .btn{flex:1 1}.error{color:var(--danger);font-size:13.5px;margin-top:10px}.legal{font-size:11.5px;color:var(--muted);margin-top:12px;line-height:1.5}.coins{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px;gap:10px}.coin-opt{position:relative;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px 12px 14px;background:rgba(5,8,24,.45);color:var(--cream);cursor:pointer;text-align:center;transition:border-color .2s,transform .2s,background .2s}.coin-opt:hover{transform:translateY(-2px);border-color:rgba(232,194,122,.45)}.coin-opt.on{border-color:var(--gold);background:rgba(232,194,122,.08);box-shadow:0 0 0 3px rgba(232,194,122,.12)}.coin-disc{width:54px;height:54px;border-radius:50%;margin:0 auto 10px;position:relative;box-shadow:inset -4px -6px 10px rgba(0,0,0,.35),inset 3px 4px 8px rgba(255,255,255,.45),0 8px 24px var(--cg)}.coin-disc:after{content:"✦";position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.7);font-size:20px}.coin-copper{background:radial-gradient(circle at 35% 30%,#ffd2ae,#c56a3a 55%,#6e3217);--cg:rgba(255,150,90,.35)}.coin-silver{background:radial-gradient(circle at 35% 30%,#fff,#b9c2cf 55%,#5d6674);--cg:rgba(210,225,255,.35)}.coin-gold{background:radial-gradient(circle at 35% 30%,#fff5c4,#e3ad3c 55%,#8a5a12);--cg:rgba(255,205,90,.45)}.coin-star{background:radial-gradient(circle at 35% 30%,#fff,#c9b5ff 55%,#5b3fb0);--cg:rgba(190,160,255,.5)}.coin-name{font-size:13.5px;font-weight:600}.coin-price{font-family:var(--sans);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:18px;color:var(--gold-2)}.summary{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);padding:14px 0;margin:8px 0 14px}.summary .row+.row{margin-top:8px}.summary .total{font-size:22px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.quote{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--cream);opacity:.9;margin:0 0 12px;word-break:break-word}.stage{-moz-user-select:none;user-select:none;-webkit-user-select:none;position:fixed;inset:0;overflow:hidden;background:var(--night)}.stage-ui{position:absolute;inset:0;z-index:5;pointer-events:none;display:flex;flex-direction:column;align-items:center}.stage-ui>*{pointer-events:auto}.stage-top{pointer-events:none!important;-moz-user-select:none;user-select:none;-webkit-user-select:none;margin-top:clamp(70px,10vh,100px);text-align:center;padding:0 16px;transition:opacity .6s}.stage-top .display{font-size:clamp(30px,6vw,52px)}.hint{color:var(--muted);font-size:14px;margin-top:8px;animation:breathe 2.6s ease-in-out infinite}@keyframes breathe{50%{opacity:.45}}.stage-bottom{margin-top:auto;margin-bottom:max(26px,env(safe-area-inset-bottom));display:flex;gap:10px;align-items:center}.sound{position:absolute;top:16px;right:16px;z-index:6}.fade-out{opacity:0;pointer-events:none}.success{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(ellipse at center,rgba(7,10,28,.55),rgba(7,10,28,.85));animation:rise 1.1s ease both}.success .card{text-align:center}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.center-msg{position:absolute;inset:0;display:grid;place-items:center;z-index:9;text-align:center;padding:16px}.spinner{width:40px;height:40px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--gold);animation:spin 1s linear infinite;margin:0 auto 14px}@keyframes spin{to{transform:rotate(1turn)}}.page{position:relative;padding:110px clamp(16px,4vw,40px) 60px;max-width:1180px;margin:0 auto}.page-head{text-align:center;margin-bottom:36px}.wall{columns:280px 3;column-gap:16px}.wish{page-break-inside:avoid;break-inside:avoid;margin:0 0 16px;position:relative;background:linear-gradient(160deg,rgba(28,32,72,.75),rgba(14,18,44,.75));border:1px solid rgba(232,194,122,.14);border-radius:var(--radius);padding:20px 20px 16px}.wish p{font-family:var(--serif);font-size:20px;line-height:1.35;margin:8px 0 14px;word-break:break-word}.wish .spark{color:var(--gold)}.wish footer{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}.menu-btn{background:none;border:0;color:var(--muted);cursor:pointer;font-size:18px;padding:2px 6px;border-radius:8px}.menu-btn:hover{color:var(--cream);background:rgba(255,255,255,.06)}.menu{position:absolute;right:12px;bottom:42px;z-index:5;background:#151a3d;border:1px solid var(--line);border-radius:12px;padding:6px;min-width:200px;box-shadow:0 20px 50px rgba(0,0,0,.5)}.menu button{display:block;width:100%;text-align:left;background:none;border:0;color:var(--cream);padding:8px 10px;border-radius:8px;cursor:pointer;font-size:13.5px}.menu button:hover{background:rgba(255,255,255,.06)}.menu .ttl{font-size:11px;color:var(--muted);padding:6px 10px;letter-spacing:.08em;text-transform:uppercase}.prose{max-width:760px;margin:0 auto}.prose h1{font-size:clamp(34px,5vw,50px);margin:0 0 12px}.prose h1,.prose h2{font-family:var(--serif);font-weight:500}.prose h2{font-size:26px;margin:34px 0 8px;color:var(--gold-2)}.prose li,.prose p{color:#d7d0e4}.notice{border:1px solid var(--line);background:rgba(232,194,122,.06);border-radius:12px;padding:12px 16px;font-size:14px;color:var(--muted)}.steps3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:14px;gap:14px;margin:26px 0}.steps3>div{border:1px solid var(--line);border-radius:var(--radius);padding:20px;background:var(--panel)}.steps3 b{font-family:var(--serif);font-size:40px;color:var(--gold);display:block;line-height:1}.sr{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}@media (max-width:560px){.topnav .hide-sm{display:none}.coins{gap:8px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}