:root{font-family:Malgun Gothic,Noto Sans KR,sans-serif;color:#f8fafc;background:#070a12;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,textarea,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh;padding:48px 20px 80px;background:#070a12}.panel{width:min(100%,1040px);margin:0 auto}.hero{margin-bottom:28px}.eyebrow{color:#22d3ee;font-size:13px;font-weight:800;letter-spacing:.18em}h1{margin:10px 0 8px;font-size:clamp(34px,6vw,58px);letter-spacing:-.04em}.description{margin:0;color:#a8b0c0;line-height:1.65}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px;padding:6px;border-radius:15px;background:#111725}.mode-switch button{min-height:48px;padding:11px 16px;border:1px solid transparent;border-radius:11px;color:#94a3b8;background:transparent;cursor:pointer;font-weight:800}.mode-switch button.active{color:#071018;background:#22d3ee}.mode-switch button:disabled{cursor:wait;opacity:.55}.workflow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.workflow-step{width:100%;padding:14px 12px;border:1px solid #252e41;border-radius:12px;color:#657087;background:#0e1320;text-align:center;font-size:14px;font-weight:800;cursor:pointer}.workflow-step:focus-visible{outline:3px solid rgba(34,211,238,.55);outline-offset:3px}.workflow-step.ready{color:#5eead4;border-color:#2dd4bf73}.workflow-step.warning{color:#fde68a;border-color:#facc1566}.workflow-step.error{color:#fda4af;border-color:#fb718580}.scroll-target{scroll-margin-top:20px}.workflow-card{margin-top:18px;padding:clamp(20px,4vw,34px);border:1px solid #273047;border-radius:20px;background:#101624;box-shadow:0 22px 60px #0003}.card-heading{display:flex;gap:15px;align-items:flex-start;margin-bottom:26px}.card-heading h2,.subsection-title{margin:0;font-size:24px}.card-heading p{margin:5px 0 0;color:#94a3b8;line-height:1.5}.step-number{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:12px;color:#071018;background:#22d3ee;font-weight:900}.subsection-title{margin-bottom:22px}.field-label{display:block;margin:20px 0 9px;color:#e2e8f0;font-weight:800}.text-input{width:100%;border:1px solid #34405a;border-radius:12px;padding:15px;color:#f8fafc;background:#090e19;line-height:1.55;resize:vertical}.text-input:focus,.file-input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid rgba(34,211,238,.35);outline-offset:2px}.text-input:disabled,.file-input:disabled{opacity:.55;cursor:wait}.script-input{min-height:190px}.prompt-preview{min-height:250px;color:#cbd5e1}.json-input{min-height:240px;font-family:Consolas,monospace;font-size:14px}.field-meta{display:flex;justify-content:space-between;gap:14px;margin-top:8px;color:#94a3b8;font-size:13px}.file-input{width:100%;padding:13px;border:1px dashed #40506d;border-radius:12px;color:#cbd5e1;background:#0a101d}.segment-preview{margin-top:18px;padding:16px;border:1px solid #2c3850;border-radius:12px;background:#0b111e}.segment-preview-heading{display:flex;justify-content:space-between;gap:12px;color:#cbd5e1}.segment-preview-heading span{color:#22d3ee;font-weight:800}.segment-preview ol{max-height:300px;margin:14px 0 0;padding:0;overflow:auto;list-style:none}.segment-preview li{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:9px 0;border-top:1px solid rgba(148,163,184,.1);line-height:1.5}.segment-preview code{color:#22d3ee;font-weight:800}.segment-preview li span{min-width:0;overflow-wrap:anywhere;color:#d8e0ec}.file-details{display:grid;grid-template-columns:repeat(2,1fr);gap:9px 20px;margin:16px 0 0;padding:15px;border-radius:12px;background:#0b111e}.file-details div{min-width:0}.file-details dt{color:#7f8ba1;font-size:12px}.file-details dd{margin:4px 0 0;overflow-wrap:anywhere;color:#e2e8f0}.status-text,.status-line,.helper-text,.disabled-reason,.render-message{line-height:1.55}.status-line{margin:12px 0 0}.status-text.ready,.status-line.ready,.split-status .ready{color:#5eead4}.status-text.warning,.status-line.warning,.split-status .warning{color:#fde68a}.status-text.error,.status-line.error{color:#fda4af}.status-text.waiting,.status-line.waiting,.split-status .waiting,.helper-text{color:#94a3b8}.status-line.reading,.status-line.decoding,.status-line.analyzing{color:#67e8f9}.audio-analysis-panel{margin-top:16px;padding:15px;border:1px solid #263247;border-radius:14px;background:#101827}.audio-analysis-panel.ready{border-color:#1f766f}.audio-analysis-panel.warning{border-color:#8a6d1d}.audio-analysis-panel.error{border-color:#8d3548}.audio-analysis-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.audio-analysis-heading span{color:#94a3b8;text-align:right;line-height:1.5}.audio-analysis-details{margin-top:12px}.privacy-notice{margin:22px 0 0;padding:13px 15px;border-radius:10px;color:#fde68a;background:#facc1514;line-height:1.55}.disabled-reason{margin:9px 0 0;color:#c4b5fd;font-size:14px}.helper-text{margin-bottom:0;font-size:14px}.button-row{display:flex;gap:10px;margin-top:16px}.primary-button,.secondary-action,.secondary-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 18px;border-radius:11px;font-weight:850;text-decoration:none;cursor:pointer}.primary-button{flex:1;border:0;color:#071018;background:#22d3ee}.secondary-action,.secondary-button{flex:1;border:1px solid #40506d;color:#f8fafc;background:#171e2d}.full-button{width:100%}.primary-button:disabled,.secondary-action:disabled,.disabled-link{color:#8d93a7;background:#2b3040;cursor:not-allowed;opacity:.72;pointer-events:none}.json-section{margin-top:-8px}.input-hint{margin:-3px 0 10px;color:#94a3b8;font-size:13px}.split-status{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:12px;font-size:14px;font-weight:750}.layer-statuses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.layer-statuses span{padding:10px 12px;border-radius:9px;color:#94a3b8;background:#171e2d;font-size:13px;font-weight:800}.layer-statuses .complete{color:#5eead4;background:#2dd4bf17}.layer-statuses .error{color:#fda4af;background:#fb718517}.issue-list{display:grid;gap:9px;margin:16px 0 0;padding:0;list-style:none}.issue-list li{display:grid;gap:5px;padding:12px 14px;border-left:4px solid #fb7185;border-radius:9px;background:#fb718514}.issue-list li.warning{border-left-color:#facc15;background:#facc1514}.issue-list strong{color:#f8fafc;font-family:Consolas,monospace;font-size:13px;overflow-wrap:anywhere}.issue-list span{color:#e2e8f0}.issue-list small{color:#a8b0c0;line-height:1.5}.validation-list{display:grid;gap:10px}.validation-row{display:flex;gap:12px;padding:13px;border-radius:11px;background:#0b111e}.validation-row strong{color:#e2e8f0}.validation-row p{margin:4px 0 0;color:#94a3b8}.status-mark{display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border-radius:50%;background:#252e41;font-weight:900}.validation-row.ready .status-mark,.validation-row.valid .status-mark,.validation-row.basic-valid .status-mark,.validation-row.complete .status-mark{color:#071018;background:#2dd4bf}.validation-row.error .status-mark,.validation-row.syntax-error .status-mark,.validation-row.basic-error .status-mark{color:#fff;background:#fb7185}.validation-row.warning .status-mark,.validation-row.fallback .status-mark{color:#071018;background:#facc15}.validation-row.complete .status-mark{color:#071018;background:#2dd4bf}.validation-row.calculating .status-mark,.validation-row.reading .status-mark,.validation-row.decoding .status-mark,.validation-row.analyzing .status-mark{color:#071018;background:#67e8f9}.runtime-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 18px}.runtime-summary div{min-width:0;padding:13px;border-radius:11px;background:#0b111e}.runtime-summary dt{color:#7f8ba1;font-size:12px}.runtime-summary dd{margin:5px 0 0;color:#e2e8f0;font-weight:700;overflow-wrap:anywhere}.render-readiness-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.render-readiness-list div{display:flex;justify-content:space-between;gap:12px;padding:13px;border-radius:11px;background:#0b111e}.render-readiness-list strong{color:#e2e8f0}.render-readiness-list span{color:#94a3b8;text-align:right}.player-frame{overflow:hidden;border:1px solid #283147;border-radius:16px;background:#0b0f19}.preview-placeholder{display:grid;min-height:280px;place-content:center;padding:30px;border:1px dashed #40506d;border-radius:16px;color:#cbd5e1;background:#0b101b;text-align:center}.preview-placeholder strong{font-size:22px}.preview-placeholder p{color:#94a3b8}.render-notice{margin:12px 0 0;color:#94a3b8;text-align:center;font-size:14px}.progress-row{display:flex;align-items:center;gap:14px;margin-top:18px;color:#cbd5e1;font-variant-numeric:tabular-nums}.progress-track{flex:1;height:8px;overflow:hidden;border-radius:999px;background:#283147}.progress-value{height:100%;border-radius:999px;background:#22d3ee}.render-message{margin:16px 0 0;padding:13px;border-radius:10px;color:#cbd5e1;background:#0b111e}.render-message.success{color:#5eead4}.render-message.error{color:#fda4af}@media(max-width:720px){.app-shell{padding:28px 14px 56px}.mode-switch,.workflow-steps{grid-template-columns:1fr}.workflow-step{text-align:left}.button-row,.field-meta{flex-direction:column}.file-details{grid-template-columns:1fr}.audio-analysis-heading{flex-direction:column}.audio-analysis-heading span{text-align:left}.runtime-summary{grid-template-columns:1fr 1fr}.render-readiness-list,.layer-statuses{grid-template-columns:1fr}.workflow-card{border-radius:16px}}
