:root{color-scheme:dark;--bg: #06060b;--bg-lift: #0d0d16;--surface: rgba(255, 255, 255, .045);--surface-strong: rgba(255, 255, 255, .075);--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--accent: #8a7bf8;--accent-deep: #6c5ce7;--accent-light: #b7acff;--accent-ink: #ffffff;--accent-glow: rgba(138, 123, 248, .45);--accent-wash: rgba(138, 123, 248, .12);--text: #f5f5fa;--text-muted: #9c9cb4;--text-dim: #6e6e85;--ok: #4ade80;--warn: #fbbf24;--danger: #f87171;--radius-sm: 10px;--radius: 16px;--radius-lg: 22px;--gap-xs: 6px;--gap-sm: 10px;--gap: 16px;--gap-lg: 24px;--gap-xl: 36px;--shadow-glow: 0 18px 48px -16px var(--accent-glow);--shadow-card: 0 12px 32px -18px rgba(0, 0, 0, .9);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:-30vh 0 auto 0;height:70vh;background:radial-gradient(60% 60% at 50% 40%,var(--accent-glow),transparent 70%);opacity:.55;pointer-events:none;z-index:0}#root{position:relative;z-index:1}button{font:inherit;color:inherit}input{font:inherit}.shell{max-width:520px;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) var(--gap) calc(var(--gap-xl) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--gap-lg);min-height:100vh}@media(min-width:900px){.shell{max-width:980px;display:grid;grid-template-columns:300px 1fr;grid-template-areas:"head head" "aside main";align-content:start;gap:var(--gap-lg) var(--gap-xl);padding-top:var(--gap-xl)}.shell>.head{grid-area:head}.shell>.aside{grid-area:aside}.shell>.main{grid-area:main}}.head{display:flex;align-items:center;gap:var(--gap)}.head h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em}.head p{margin:2px 0 0;font-size:13px;color:var(--text-muted)}.mark{flex:0 0 auto;width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--accent-light),var(--accent-deep));box-shadow:var(--shadow-glow),inset 0 0 0 1px #ffffff40}.mark svg{width:30px;height:30px;display:block}.mark--hero{width:108px;height:108px;margin:0 auto}.mark--hero svg{width:64px;height:64px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--gap-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.card+.card{margin-top:var(--gap)}.card h2{margin:0 0 var(--gap-xs);font-size:17px;font-weight:650;letter-spacing:-.01em}.card .hint{margin:0 0 var(--gap);font-size:13px;color:var(--text-muted)}.steps{display:flex;flex-direction:column;gap:var(--gap-sm);list-style:none;margin:0;padding:0}.steps li{display:flex;align-items:center;gap:var(--gap-sm);font-size:14px;color:var(--text-dim);transition:color .25s var(--ease)}.steps .dot{flex:0 0 auto;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-strong);display:grid;place-items:center;font-size:11px;font-weight:700}.steps li[data-state=active]{color:var(--text)}.steps li[data-state=active] .dot{background:var(--accent);border-color:transparent;color:var(--accent-ink);box-shadow:0 0 0 4px var(--accent-wash)}.steps li[data-state=done]{color:var(--text-muted)}.steps li[data-state=done] .dot{background:var(--accent-wash);border-color:var(--accent);color:var(--accent-light)}@media(max-width:899px){.steps{flex-direction:row;justify-content:space-between}.steps li span:last-child{display:none}.steps li[data-state=active] span:last-child{display:inline}}.field{display:flex;flex-direction:column;gap:var(--gap-xs)}.field label{font-size:13px;color:var(--text-muted)}.input-wrap{display:flex;align-items:center;gap:var(--gap-xs);background:var(--bg-lift);border:1px solid var(--border);border-radius:var(--radius);padding:0 14px;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-wash)}.input-wrap[data-invalid=true]{border-color:var(--danger)}.input-wrap .prefix{color:var(--text-dim);font-size:17px}.input-wrap input{flex:1 1 auto;min-width:0;background:none;border:none;outline:none;color:var(--text);font-size:17px;padding:14px 0}.input-wrap input::placeholder{color:var(--text-dim)}.field-note{font-size:13px;min-height:18px}.field-note[data-tone=ok]{color:var(--ok)}.field-note[data-tone=error]{color:var(--danger)}.field-note[data-tone=muted]{color:var(--text-muted)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:var(--radius);padding:15px 20px;font-size:16px;font-weight:600;cursor:pointer;width:100%;transition:transform .15s var(--ease),opacity .2s var(--ease),background .2s var(--ease)}.btn:active:not(:disabled){transform:scale(.985)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:linear-gradient(135deg,var(--accent-light),var(--accent-deep));color:var(--accent-ink);box-shadow:var(--shadow-glow)}.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:var(--gap-sm);margin-bottom:var(--gap)}.plan{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 8px;cursor:pointer;text-align:center;transition:border-color .2s var(--ease),background .2s var(--ease)}.plan:hover:not(:disabled){border-color:var(--border-strong)}.plan[data-selected=true]{border-color:var(--accent);background:var(--accent-wash)}.plan:disabled{opacity:.4;cursor:not-allowed}.plan b{display:block;font-size:17px;font-weight:700}.plan span{display:block;font-size:13px;color:var(--text-muted);margin-top:4px}.chips{display:flex;flex-wrap:wrap;gap:var(--gap-xs);list-style:none;margin:var(--gap) 0 0;padding:0}.chips li{display:inline-flex;align-items:center;gap:6px;background:var(--accent-wash);border:1px solid var(--accent);border-radius:999px;padding:6px 8px 6px 12px;font-size:14px}.chips button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--text-muted);font-size:18px;line-height:1;cursor:pointer;padding:0 4px;border-radius:50%}.chips button:hover{color:var(--danger)}.recipients{list-style:none;margin:var(--gap) 0 0;padding:0;width:100%;display:flex;flex-direction:column;gap:var(--gap-xs)}.recipients li{display:flex;align-items:center;justify-content:space-between;gap:var(--gap);font-size:14px;padding:10px 0;border-bottom:1px solid var(--border);text-align:left}.recipients li:last-child{border-bottom:none}.recipients .field-note{min-height:0}.btn--ghost{background:var(--surface);border-color:var(--border);color:var(--text);box-shadow:none}.btn--quiet{background:none;border:none;color:var(--text-muted);font-size:14px;padding:10px;width:auto}.btn-row{display:flex;align-items:stretch;gap:var(--gap-sm);margin-top:var(--gap)}.btn-row .btn{width:auto;flex:1 1 auto;white-space:nowrap}.btn-row .btn--ghost{flex:0 1 auto;padding-left:18px;padding-right:18px}.presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:var(--gap-sm);margin-bottom:var(--gap)}.preset{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 8px;cursor:pointer;text-align:center;transition:border-color .2s var(--ease),background .2s var(--ease)}.preset:hover{border-color:var(--border-strong)}.preset[data-selected=true]{border-color:var(--accent);background:var(--accent-wash)}.preset b{display:block;font-size:17px;font-weight:700}.preset span{display:block;font-size:12px;color:var(--text-muted);margin-top:2px}.total{display:flex;align-items:baseline;justify-content:space-between;gap:var(--gap);padding:var(--gap) 0 0;border-top:1px solid var(--border);margin-top:var(--gap)}.total .label{font-size:14px;color:var(--text-muted)}.total .value{font-size:26px;font-weight:700;letter-spacing:-.02em}.methods{display:flex;flex-direction:column;gap:var(--gap-sm)}.method{display:flex;align-items:center;justify-content:space-between;gap:var(--gap);width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;cursor:pointer;transition:border-color .2s var(--ease),background .2s var(--ease)}.method:hover{border-color:var(--border-strong);background:var(--surface-strong)}.method[data-selected=true]{border-color:var(--accent);background:var(--accent-wash)}.method .chev{color:var(--text-dim);flex:0 0 auto}.status{text-align:center;display:flex;flex-direction:column;gap:var(--gap);align-items:center}.status h2{margin:0;font-size:21px}.status p{margin:0;color:var(--text-muted);font-size:15px;max-width:34ch}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--accent-wash);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}.btn:active:not(:disabled){transform:none}}.review{width:100%;margin-top:var(--gap);padding:var(--gap);border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent-wash);display:flex;flex-direction:column;gap:var(--gap-sm);text-align:left}.review__body{display:flex;flex-direction:column;gap:4px}.review__body b{font-size:15px;font-weight:650}.review__body span{font-size:13px;color:var(--text-muted);line-height:1.4}.review .btn{margin-top:2px}.banner{border-radius:var(--radius);padding:12px 16px;font-size:14px;border:1px solid}.banner[data-tone=warn]{border-color:#fbbf2459;background:#fbbf2414;color:var(--warn)}.banner[data-tone=error]{border-color:#f8717159;background:#f8717114;color:var(--danger)}.history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--gap-sm)}.history li{display:flex;justify-content:space-between;gap:var(--gap);font-size:14px;padding:12px 0;border-bottom:1px solid var(--border)}.history li:last-child{border-bottom:none}.history .muted{color:var(--text-muted)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.9)}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes breathe{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.68;transform:scale(1.06)}}@keyframes celebrate{0%{opacity:0;transform:scale(.7) rotate(-25deg)}55%{opacity:1;transform:scale(1.08) rotate(4deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes haloFlash{0%{box-shadow:0 0 0 0 var(--accent-glow)}70%{box-shadow:0 0 0 22px #8a7bf800}to{box-shadow:0 0 #8a7bf800}}@keyframes shimmer{0%{background-position:-160% 0}to{background-position:260% 0}}.card,.banner{animation:rise .34s var(--ease) both}.head{animation:fade .5s var(--ease) both}body:before{animation:breathe 9s ease-in-out infinite}.steps li,.presets .preset,.plans .plan,.methods>*,.chips li,.recipients li{animation:rise .28s var(--ease) both;animation-delay:calc(var(--i, 0) * 40ms)}.mark{animation:pop .4s var(--ease) both}.status .mark--hero{animation:celebrate .62s var(--ease) both,haloFlash 1.1s ease-out .5s both}.total .value{animation:pop .3s var(--ease) both}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg,var(--surface) 25%,var(--surface-strong) 45%,var(--surface) 65%);background-size:260% 100%;animation:shimmer 1.5s linear infinite}@media(prefers-reduced-motion:reduce){.card,.banner,.head,.steps li,.presets .preset,.plans .plan,.methods>*,.chips li,.recipients li,.mark,.status .mark--hero,.total .value,body:before,.skeleton{animation:none!important}*{transition-duration:.01ms!important}}
