:root{--ink: #f2f0f7;--muted: #a5a0b5;--panel: rgba(18, 16, 26, .82);--line: rgba(255, 255, 255, .1);--accent: #a78bfa;--warn: #fbbf24;font-family:ui-sans-serif,system-ui,Segoe UI,Noto Sans KR,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:transparent;overflow:hidden}body:not(.obs){background-color:#14121c;background-image:linear-gradient(45deg,#1b1826 25%,transparent 25%,transparent 75%,#1b1826 75%),linear-gradient(45deg,#1b1826 25%,transparent 25%,transparent 75%,#1b1826 75%);background-size:32px 32px;background-position:0 0,16px 16px}#stage{position:fixed;inset:0}#stage canvas{display:block;width:100%;height:100%}body.obs #ui{display:none}#scene-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}#scene-layer.editable .scene-text,#scene-layer.editable .scene-image{pointer-events:auto}.scene-text,.scene-image{position:absolute;transform:translate(-50%,-50%);user-select:none;max-width:96%}.scene-text{white-space:pre-wrap;text-align:center;line-height:1.25;font-family:inherit}#scene-layer.editable .scene-text,#scene-layer.editable .scene-image{cursor:move}#scene-layer.editable .selected{outline:2px dashed var(--accent);outline-offset:4px}.panel{position:fixed;top:16px;left:16px;width:268px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);backdrop-filter:blur(12px);color:var(--ink);font-size:12px;line-height:1.5;max-height:calc(100vh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}.panel::-webkit-scrollbar{width:9px}.panel::-webkit-scrollbar-track{background:transparent}.panel::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:6px;background-clip:content-box;background-color:#ffffff38}.panel::-webkit-scrollbar-thumb:hover{background-color:#ffffff5c}.panel h1{margin:0 0 2px;font-size:13px;font-weight:650;letter-spacing:.02em}.panel .tagline{margin:0 0 12px;color:var(--muted);font-size:11px}.panel section{padding-top:10px;margin-top:10px;border-top:1px solid var(--line)}.panel h2{margin:0 0 8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:24px}.row+.row{margin-top:3px}button{font:inherit;color:var(--ink);background:#ffffff12;border:1px solid var(--line);border-radius:7px;padding:6px 10px;cursor:pointer}button:hover{background:#ffffff21}button.primary{background:var(--accent);border-color:transparent;color:#17121f;font-weight:600}button.primary:hover{filter:brightness(1.08)}button.wide{width:100%}.inspector:not(:empty){margin-top:8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#ffffff0a}.text-input{font:inherit;width:100%;color:var(--ink);background:#ffffff12;border:1px solid var(--line);border-radius:6px;padding:5px 7px}input[type=color]{width:36px;height:24px;padding:0;border:1px solid var(--line);border-radius:5px;background:none;cursor:pointer}.chips{display:flex;flex-wrap:wrap;gap:4px}.chips button{padding:4px 8px;font-size:11px}.chips button.on{background:var(--accent);border-color:transparent;color:#17121f;font-weight:600}label.toggle{display:flex;align-items:center;gap:7px;cursor:pointer;user-select:none}input[type=checkbox]{accent-color:var(--accent);margin:0}input[type=range]{accent-color:var(--accent);width:104px}select{font:inherit;font-size:11px;color:var(--ink);background:#ffffff12;border:1px solid var(--line);border-radius:6px;padding:4px 6px;max-width:130px}.hint{margin:6px 0 0;color:var(--muted);font-size:10.5px;line-height:1.45}.num{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.debug{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;font-variant-numeric:tabular-nums;font-size:11px;color:var(--muted)}.debug b{color:var(--ink);font-weight:500}.status{display:inline-flex;align-items:center;gap:5px}.dot{width:6px;height:6px;border-radius:50%;background:#6b6478}.dot.live{background:#34d399}.dropzone{position:fixed;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;text-align:center;color:var(--ink);pointer-events:none}.dropzone.hidden{display:none}.dropzone .big{font-size:19px;font-weight:600}.dropzone .sub{max-width:380px;color:var(--muted);font-size:12.5px;line-height:1.6}.dropzone .actions{display:flex;gap:8px;pointer-events:auto}body.dragging .dropzone{outline:2px dashed var(--accent);outline-offset:-18px}.license{display:none;position:fixed;bottom:14px;right:16px;max-width:320px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--muted);font-size:11px;line-height:1.5}.license strong{color:var(--ink);font-weight:600}.license .flag{color:var(--warn)}.license.visible{display:block}body.obs .license{left:16px;right:auto}body.obs .license.visible:not(.required){display:none}.license.suppressed{display:none!important}.error{position:fixed;top:16px;right:16px;max-width:360px;padding:10px 13px;border:1px solid rgba(248,113,113,.4);border-radius:10px;background:#3c1418e6;color:#fecaca;font-size:11.5px}.error.hidden{display:none}
