:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141833;--surface:#1d2247;--surface-soft:#262c5c;--ink:#fff6e6;--ink-soft:#cfc8e8;--muted:#9e98be;--line:#363c70;--accent:#f5c24b;--accent-dark:#e3a92f;--accent-soft:#f5c24b24;--on-accent:#141833;--coral:#ff8a73;--danger:#ff9c8a;--ok:#5fd39a;--radius:16px;--shadow:0 10px 30px #00000059;--font:"Pretendard Variable", Pretendard, -apple-system, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--serif:"Nanum Myeongjo", "AppleMyungjo", "Noto Serif KR", serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;word-break:keep-all;margin:0;padding:0;line-height:1.6}a{color:inherit}button,input,textarea{font:inherit;color:inherit}.container{width:100%;max-width:960px;margin:0 auto;padding:0 16px}.narrow{max-width:600px}.muted{color:var(--muted)}.proto-banner{color:var(--ink-soft);text-align:center;background:#0d1026;padding:6px 12px;font-size:13px}.site-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#141833e0;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:60px;display:flex}.logo{letter-spacing:-.02em;align-items:center;gap:8px;font-size:20px;font-weight:800;text-decoration:none;display:flex}.logo-mark{width:36px;height:36px;display:inline-block}.header-nav{align-items:center;gap:16px;font-size:15px;display:flex}.header-nav a{text-decoration:none}.site-footer{border-top:1px solid var(--line);color:var(--ink-soft);margin-top:80px;padding:40px 0 56px;font-size:14px}.footer-brand{color:var(--ink);font-weight:700}.btn{background:var(--accent);min-height:52px;color:var(--on-accent);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:17px;font-weight:800;text-decoration:none;transition:background .15s;display:inline-flex}.btn:hover{background:var(--accent-dark)}.btn:disabled{color:#8a86a8;cursor:not-allowed;background:#3a3f6a}.btn:focus-visible,.choice:focus-visible,.btn-ghost:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.btn-small{min-height:38px;padding:0 16px;font-size:14px}.btn-block{width:100%}.btn-ghost{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn-ghost:disabled{color:var(--muted);cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.hero{text-align:center;padding:56px 0 40px}.eyebrow{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-block}.hero h1{letter-spacing:-.03em;margin:16px 0 12px;font-size:clamp(30px,7vw,48px);line-height:1.25}.hero h1 em{color:var(--accent);font-style:normal}.hero p{color:var(--ink-soft);max-width:520px;margin:0 auto 28px;font-size:17px}.hero-meta{color:var(--muted);margin-top:14px;font-size:14px}.section{padding:48px 0}.section h2{letter-spacing:-.02em;text-align:center;margin:0 0 8px;font-size:clamp(22px,5vw,30px)}.section-lead{text-align:center;color:var(--ink-soft);margin:0 0 28px}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.sample{flex-direction:column;gap:12px;display:flex}.sample-cover{aspect-ratio:1;border-radius:12px;place-items:center;font-size:56px;display:grid}.sample h3{margin:0;font-size:17px}.sample .tag{color:var(--ink-soft);font-size:13px}.play-row{align-items:center;gap:12px;display:flex}.play-btn{background:var(--accent);width:44px;height:44px;color:var(--on-accent);cursor:pointer;border:none;border-radius:50%;flex:none;font-size:16px}.progress{background:var(--surface-soft);border-radius:3px;flex:1;height:6px;overflow:hidden}.progress>span{background:var(--accent);height:100%;transition:width .25s linear;display:block}.how-step{text-align:left}.how-num{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-dark);border-radius:50%;place-items:center;margin-bottom:8px;font-weight:800;display:inline-grid}.how-step h3{margin:0 0 4px;font-size:17px}.how-step p{color:var(--ink-soft);margin:0;font-size:15px}.price-card{text-align:center;max-width:480px;margin:0 auto}.price{letter-spacing:-.02em;font-size:40px;font-weight:800}.check-list{text-align:left;margin:20px 0 24px;padding:0;list-style:none}.check-list li{border-bottom:1px dashed var(--line);padding:8px 0 8px 28px;position:relative}.check-list li:before{content:"✓";color:var(--ok);font-weight:800;position:absolute;left:4px}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:16px 20px}.faq summary{cursor:pointer;font-weight:700}.faq p{color:var(--ink-soft);margin:10px 0 0}.wizard{padding-top:24px;padding-bottom:120px}.progress-wrap{margin-bottom:28px}.progress-label{color:var(--ink-soft);justify-content:space-between;margin-bottom:6px;font-size:13px;display:flex}.step-title{letter-spacing:-.02em;margin:0 0 6px;font-size:clamp(22px,5.5vw,28px);line-height:1.35}.step-help{color:var(--ink-soft);margin:0 0 22px}.choices{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.choices.wide{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.choice{border:2px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;padding:14px 16px;font-weight:600;transition:border-color .12s,background .12s;display:flex}.choice:hover{border-color:#5a6098}.choice[aria-pressed=true],.choice[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.choice[aria-pressed=true]:after,.choice[aria-checked=true]:after{content:"선택됨";color:var(--accent-dark);font-size:12px;font-weight:700}.choice small{color:var(--ink-soft);font-weight:400}.field{margin-bottom:20px;display:block}.field-label{margin-bottom:6px;font-weight:700;display:block}.req{color:var(--accent-dark);margin-left:4px;font-size:13px}.input,.textarea{border:2px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;border-radius:12px;padding:14px 16px;font-size:16px}.textarea{resize:vertical;min-height:140px}.input:focus,.textarea:focus{border-color:var(--accent);outline:none}.field-meta{color:var(--muted);justify-content:space-between;margin-top:4px;font-size:13px;display:flex}.field-error{color:var(--danger)}.tip{background:var(--surface-soft);color:var(--ink-soft);border-radius:12px;margin-bottom:16px;padding:12px 16px;font-size:14px}.preview-line{border-left:4px solid var(--accent);background:var(--surface);font-family:var(--serif);border-radius:0 12px 12px 0;margin-top:12px;padding:14px 16px}.wizard-nav{border-top:1px solid var(--line);padding:12px 0 calc(12px + env(safe-area-inset-bottom));background:#141833f5;position:fixed;bottom:0;left:0;right:0}.wizard-nav .container{gap:10px;display:flex}.wizard-nav .btn{flex:1}.summary-list{margin:0;padding:0;list-style:none}.summary-list li{border-bottom:1px solid var(--line);grid-template-columns:96px 1fr auto;align-items:start;gap:8px;padding:12px 0;font-size:15px;display:grid}.summary-list dt,.summary-key{color:var(--ink-soft)}.summary-val{white-space:pre-wrap;overflow-wrap:anywhere}.link-btn{color:var(--accent-dark);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:700}.checkbox{align-items:flex-start;gap:10px;margin:12px 0;font-size:15px;display:flex}.checkbox input{width:20px;height:20px;accent-color:var(--accent);margin-top:2px}.lyrics-sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);font-family:var(--serif);padding:28px 24px}.lyrics-title{font-family:var(--font);text-align:center;margin:0 0 4px;font-size:24px;font-weight:800}.lyrics-meta{font-family:var(--font);text-align:center;color:var(--ink-soft);margin:0 0 24px;font-size:14px}.lyrics-section{margin-bottom:22px}.lyrics-label{font-family:var(--font);color:var(--accent-dark);background:var(--accent-soft);border-radius:6px;margin-bottom:6px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.lyrics-section p{margin:0;font-size:17px;line-height:1.9}.mark{background:linear-gradient(#0000 60%,#f5c24b59 60%)}.actions-row{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}.notice{color:#cfd8ff;background:#8296ff1f;border-radius:12px;margin:16px 0;padding:14px 16px;font-size:14px}.status-steps{margin:24px 0;padding:0;list-style:none}.status-steps li{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:12px;padding:14px 0;display:flex}.status-steps li.done{color:var(--ink)}.status-steps li.current{color:var(--accent-dark);font-weight:700}.status-dot{border:2px solid;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:13px;display:grid}.status-steps li.done .status-dot{background:var(--ok);border-color:var(--ok);color:var(--on-accent)}.player{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.cover{aspect-ratio:1;color:#fff;width:min(280px,80vw);box-shadow:var(--shadow);background:radial-gradient(70% 60% at 50% 0,#f5c24b8c,#0000 70%),linear-gradient(160deg,#3a2c6e,#1b2147);border-radius:20px;place-items:center;padding:24px;font-size:22px;font-weight:800;display:grid}.time-row{width:100%;color:var(--muted);justify-content:space-between;font-size:13px;display:flex}.gift-page{place-items:center;min-height:70vh;padding:40px 0;display:grid}.envelope{aspect-ratio:4/3;width:min(340px,86vw);color:var(--ink);box-shadow:var(--shadow);cursor:pointer;background:linear-gradient(160deg,#2b3166,#1d2247);border:none;border-radius:16px;place-items:center;font-size:18px;font-weight:700;display:grid;position:relative}.envelope:before{content:"";background:var(--accent-soft);clip-path:polygon(0 0,100% 0,50% 100%);border-radius:16px 16px 0 0;position:absolute;inset:0 0 45%}.envelope-label{margin-top:40%;position:relative}.seal{background:var(--accent);width:52px;height:52px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:22px;display:grid;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.fade-in{animation:.6s both fade}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.fade-in{animation:none}}.page-head{padding:32px 0 8px}.page-head h1{letter-spacing:-.02em;margin:0 0 6px;font-size:clamp(24px,6vw,32px)}.page-head p{color:var(--ink-soft);margin:0}.row-between{justify-content:space-between;gap:12px;padding:10px 0;display:flex}.total{border-top:2px solid var(--ink);margin-top:8px;padding-top:14px;font-size:22px;font-weight:800}.stack{flex-direction:column;gap:16px;display:flex}.legal{padding-bottom:40px;line-height:1.75}.legal h2{margin:32px 0 8px;font-size:18px}.legal p,.legal li{color:var(--ink-soft);font-size:15px}.legal ol,.legal ul{margin:0;padding-left:20px}.legal table{border-collapse:collapse;width:100%;font-size:14px}.legal th,.legal td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}.legal .table-wrap{overflow-x:auto}.legal-meta{margin-top:32px;font-size:14px}.footer-links{flex-wrap:wrap;gap:4px 16px;display:flex}.poster{text-align:center;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);background:radial-gradient(55% 60% at 50% 0,#f5c24b52,#0000 70%),linear-gradient(#232a5c,#1a1f45);border-radius:24px;padding:40px 28px;position:relative;overflow:hidden}.poster-kicker{letter-spacing:.04em;opacity:.9;margin:0;font-weight:700}.poster-big{letter-spacing:-.04em;margin:4px 0 8px;font-size:clamp(38px,10vw,64px);font-weight:800;line-height:1.1}.poster-num{font-size:1.5em}.poster-sub{opacity:.92;max-width:440px;margin:0 auto 24px}.poster-facts{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;max-width:640px;margin:0 auto 28px;padding:0;list-style:none;display:grid}.poster-facts li{border:1px solid var(--line);background:#ffffff0f;border-radius:14px;flex-direction:column;gap:2px;padding:14px 12px;display:flex}.poster-facts strong,.poster-num{color:var(--accent)}.poster-facts strong{font-size:22px}.poster-facts span{opacity:.9;font-size:14px}.poster .btn{box-shadow:0 0 24px #f5c24b73}.plans{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;max-width:760px;margin:0 auto;display:grid}.plan{text-align:center;position:relative}.plan h3{margin:0;font-size:18px}.plan .check-list{text-align:left}.plan-best{border:2px solid var(--accent)}.plan-badge{background:var(--accent);color:var(--on-accent);white-space:nowrap;border-radius:999px;padding:2px 12px;font-size:12px;font-weight:700;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.plan-save{margin:0;font-size:14px}.addons-table{max-width:760px;margin:16px auto 0}.addons-table h3{margin:0 0 4px;font-size:16px}.addon-row{margin:8px 0}.bundle-note{color:var(--accent-dark);font-weight:700}.revise-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.lyrics-card{flex-direction:column;align-items:center;gap:12px;display:flex}.lyrics-card canvas{width:100%;max-width:320px;height:auto;box-shadow:var(--shadow);border-radius:12px}.theme-picker{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.theme-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-size:14px;display:inline-flex}.theme-chip.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);font-weight:700}.theme-swatch{border:1px solid #ffffff2e;border-radius:50%;width:24px;height:24px}.admin{padding-bottom:40px}.admin-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0;display:grid}.stat{text-align:left;font:inherit;color:inherit;flex-direction:column;gap:2px;display:flex}button.stat{cursor:pointer}.stat span{color:var(--ink-soft);font-size:13px}.stat strong{font-variant-numeric:tabular-nums;font-size:24px}.stat.warn{border:2px solid var(--accent)}.admin-filter{align-items:center;gap:12px;margin-bottom:12px;display:flex}.admin-filter .input{flex:1;min-width:0}.admin-grid{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (min-width:900px){.admin-grid{grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start}}.admin-list{flex-direction:column;gap:4px;max-height:75vh;padding:8px;display:flex;overflow-y:auto}.admin-row{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;flex-direction:column;gap:4px;padding:10px 12px;font-size:14px;display:flex}.admin-row:hover,.admin-row.selected{background:var(--surface-soft)}.admin-row.selected{border-color:var(--accent)}.admin-row-top,.admin-row-bottom{justify-content:space-between;gap:8px;min-width:0;display:flex}.admin-row-bottom span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chips{flex-wrap:wrap;gap:4px;display:flex}.chip{background:var(--accent-soft);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.chip-muted,.song-none,.song-disabled,.pay-cancelled{color:var(--ink-soft);background:#2b3060}.song-ready,.pay-paid{color:var(--ok);background:#5fd39a26}.song-failed{color:var(--danger);background:#ff786426}.song-generating,.pay-ready{color:#b8c4ff;background:#8296ff26}.admin-dl{grid-template-columns:96px minmax(0,1fr);gap:6px 12px;margin:0;font-size:14px;display:grid}.admin-dl dt{color:var(--ink-soft)}.admin-dl dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.admin-pay{border-bottom:1px dashed var(--line);justify-content:space-between;gap:12px;padding-bottom:8px;font-size:14px;display:flex}.admin-pay-right{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.admin-revisions{color:var(--ink-soft);margin:0;padding-left:18px;font-size:14px}.mascot{max-width:100%;height:auto;display:block}.mascot-live .mascot-body{transform-box:fill-box;transform-origin:50% 100%;animation:1.6s ease-in-out infinite mascot-sway}.mascot-live .mascot-mouth{transform-box:fill-box;transform-origin:50%;animation:.8s ease-in-out infinite mascot-sing}.mascot-live .mascot-note{animation:2.4s ease-in infinite mascot-note}.mascot-live .n2{animation-delay:.8s}.mascot-live .n3{animation-delay:1.6s}@keyframes mascot-sway{0%,to{transform:translate(20px,22px)rotate(-3deg)}50%{transform:translate(20px,18px)rotate(3deg)}}@keyframes mascot-sing{0%,to{transform:scaleY(.75)}50%{transform:scaleY(1.1)}}@keyframes mascot-note{0%{opacity:0;transform:translateY(10px)}25%{opacity:1}to{opacity:0;transform:translateY(-24px)}}@media (prefers-reduced-motion:reduce){.mascot-live .mascot-body,.mascot-live .mascot-mouth,.mascot-live .mascot-note{animation:none}}.stage-hero{text-align:center;background:radial-gradient(ellipse 50% 70% at 50% 0, #f5c24b61, transparent 72%), linear-gradient(#1b2147, var(--bg));padding:20px 0 64px;position:relative;overflow:hidden}.stage-hero:after{content:"";opacity:.6;background:repeating-linear-gradient(90deg,#3a2c5c 0 18px,#33274f 18px 36px);height:36px;position:absolute;bottom:0;left:0;right:0}.stage-tag{border:1px solid var(--accent);color:var(--accent);letter-spacing:.08em;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-block}.stage-hero .mascot{filter:drop-shadow(0 10px 30px #f5c24b59);margin:8px auto 4px}.stage-hero h1{letter-spacing:-.03em;margin:0 0 12px;font-size:clamp(30px,7vw,48px);line-height:1.25}.stage-hero h1 em{color:var(--accent);font-style:normal}.stage-hero p{color:var(--ink-soft);max-width:520px;margin:0 auto 28px;font-size:17px}.stage-hero .btn{box-shadow:0 0 24px #f5c24b80}.empty-mascot{margin:0 0 8px}.orders-mascot,.gift-mascot{margin:8px auto}.step-title:focus{outline:none}
