:root{color-scheme:dark;--bg:#0c1017;--panel:#151b25;--line:#303a49;--text:#e9edf3;--muted:#9eaab9;--accent:#e7c67c;--good:#91c9ae;--bad:#f0a49c;font-family:Inter,'Pretendard','Noto Sans KR',system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 60% 0,#25304455,transparent 60%),var(--bg);color:var(--text);font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer;background:#232c3a;border:1px solid #465263;color:var(--text);padding:9px 12px;border-radius:5px;line-height:1.4}button:hover{background:#354153}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.accent{background:var(--accent);border-color:var(--accent);color:#1c2029;font-weight:700}.accent:hover{background:#f6dca4}.top{display:flex;justify-content:space-between;align-items:center;padding:19px 3vw;border-bottom:1px solid var(--line);gap:14px}.brand{font-weight:850;letter-spacing:3px;color:var(--text);text-decoration:none}.brand b{color:var(--accent)}.eyebrow{display:block;letter-spacing:2px;font-size:10px;color:var(--muted);margin:7px 0}.actions,.inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#save-status{font-size:12px;color:var(--muted);margin-right:10px}main{max-width:1700px;margin:auto;padding:0 3vw 30px}.intro{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:29px 0 25px}.intro h1{font-size:27px;font-weight:650;letter-spacing:-1px;margin:9px 0}.intro p{color:var(--muted);margin:8px 0}.draft-badge{font-size:12px;padding:8px 12px;border:1px solid #a28b5755;color:var(--accent);border-radius:4px}.workspace{display:grid;grid-template-columns:245px minmax(320px,1fr) 290px;gap:15px;align-items:start}.panel{border:1px solid var(--line);border-radius:8px;background:linear-gradient(130deg,#1a2230,var(--panel));padding:20px;min-width:0}.panel-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:18px}h2{font-size:17px;margin:0 0 16px}.panel-heading h2{margin:0}h3{font-size:14px;margin:20px 0 12px}.hint{font-size:12px;line-height:1.75;color:var(--muted)}.empty{padding:36px 10px;line-height:1.8;text-align:center;color:var(--muted)}.empty-mark{font-size:36px;color:#536278;display:block;margin-bottom:12px}.event-card{width:100%;display:block;text-align:left;background:transparent;margin:8px 0;padding:12px;overflow-wrap:anywhere}.event-card small{display:block;margin:5px 0 0;font-size:11px;color:var(--muted)}.event-card.selected{border-color:var(--accent);background:#e7c67c10}.event-card.selected b{color:var(--accent)}details{border-top:1px solid var(--line);margin-top:21px;padding-top:17px}summary{cursor:pointer;color:#c4ccd6;font-size:13px;font-weight:650;margin-bottom:12px;line-height:1.5}.card{border:1px solid var(--line);padding:12px;border-radius:5px;margin:12px 0;background:#10151e}.card small{color:var(--muted);overflow-wrap:anywhere}.card img{max-width:100%;max-height:85px;display:block;margin:8px auto}label{display:block;font-size:12px;color:#b8c2cf;line-height:1.55;margin:11px 0}input:not([type=checkbox]),select,textarea{display:block;width:100%;background:#0d131d;color:var(--text);border:1px solid #384455;border-radius:4px;padding:10px;margin-top:6px;min-width:0}input[type=checkbox]{accent-color:var(--accent)}textarea{resize:vertical;line-height:1.7;min-height:120px}code{font-size:11px;color:#8997aa;overflow-wrap:anywhere}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.node-tabs{display:flex;gap:6px;overflow:auto;padding:8px 0 13px;margin-top:15px;border-bottom:1px solid var(--line)}.node-tabs button{white-space:nowrap;flex:none}.node-tabs .selected{border-color:var(--accent);color:var(--accent)}.wide{display:block;width:100%;margin:8px 0;text-align:left}.condition-row,.effect-row{display:grid;grid-template-columns:1fr 1fr 48px;gap:5px;margin:9px 0;align-items:end}.condition-row select,.condition-row input,.effect-row select,.effect-row input{margin:0;padding:8px}.condition-row button,.effect-row button{padding:8px 5px}.condition-row .flag-value{grid-column:1/3}.ok{color:var(--good)}.error{color:var(--bad)}#validation{font-size:12px;line-height:1.8;margin-top:15px;overflow-wrap:anywhere}#simulation-summary{font-size:12px;line-height:1.8;color:#c6cdd7}.history-chip{padding:6px 0;color:var(--good);font-size:12px;overflow-wrap:anywhere}footer{padding:18px 3vw 35px;color:var(--muted);font-size:12px;line-height:1.8;border-top:1px solid var(--line)}#notice{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:99999;max-width:90vw;padding:13px 20px;background:#253043;border:1px solid #65748a;color:white;border-radius:6px;box-shadow:0 10px 40px #0009;display:none}dialog{width:min(600px,92vw);padding:28px;background:var(--panel);color:var(--text);border:1px solid #58677a;border-radius:9px}dialog::backdrop{background:#04060bbd}dialog p{line-height:1.8;color:var(--muted)}
[hidden]{display:none!important}
.mobile-tools{display:none}
@media(max-width:700px){.library{max-height:none!important;overflow:visible!important}.mobile-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;position:fixed;bottom:0;left:0;right:0;padding:9px 10px max(9px,env(safe-area-inset-bottom));background:#0c121ff5;border-top:1px solid var(--line);z-index:2000}.mobile-tools button{padding:9px 4px;font-size:12px}body>footer{padding-bottom:85px}#notice{bottom:75px}.panel{scroll-margin-top:15px}}
/* Override the ported LoopGirl player's theme without changing approved artwork. */
body .gldlg{background:linear-gradient(#05080e70,#080c16ed);color:#e9edf3}body .gldlg.no-scene{background:radial-gradient(ellipse at 50% 25%,#283749,#090f1b)}body .gldlg .box{background:#101925f5;border:1px solid #b79e64;border-radius:8px;box-shadow:0 12px 80px #000b;padding:20px 25px}body .gldlg .who{background:none;border-left:3px solid var(--accent);border-radius:0;color:var(--accent);padding:0 12px;margin-bottom:14px}body .gldlg .bar button,body .gldlg .next,body .gldlg .ch button{background:#202d3e;border:1px solid #53657b;color:var(--text);border-radius:5px}body .gldlg .ch button:hover:not(:disabled){background:#344258;border-color:var(--accent)}body .gldlg .bar button[aria-pressed=true]{background:#74623e;border-color:var(--accent)}body .gldlg .log{background:#121b2af8;color:var(--text)}body .gldlg .log h3,body .gldlg .log .ln b{color:var(--accent)}body .gldlg .txt{max-height:36vh;overflow:auto}body .gldlg .ch{max-height:30vh;overflow:auto}.rift-story-mode{position:absolute;top:17px;left:18px;color:var(--accent);font-size:12px}
@media(max-width:1150px){.workspace{grid-template-columns:205px minmax(310px,1fr)}.inspector{grid-column:1/-1}.inspector>.wide{display:inline-block;width:auto;margin-right:8px}}@media(max-width:700px){.top{align-items:flex-start;flex-direction:column;padding:16px}.top .actions{width:100%;gap:6px}.top button{font-size:12px}#save-status{flex:1}.intro{padding:23px 0;display:block}.intro h1{font-size:25px}.draft-badge{display:inline-block;margin-top:12px}main{padding:0 12px 24px}.workspace{display:flex;flex-direction:column;gap:12px}.panel{width:100%;padding:17px}.library{max-height:420px;overflow:auto}.editor{min-height:300px}.row{grid-template-columns:1fr}.rift-story-mode{top:60px;font-size:11px}body .gldlg .bar{flex-wrap:wrap;left:12px;right:12px;justify-content:flex-end}body .gldlg .bar button{padding:7px 10px;font-size:12px}body .gldlg .box{padding:16px}body .gldlg .txt{font-size:16px;max-height:32vh}.condition-row,.effect-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px}}

/* Playback labels remain legible over bright source artwork. */
.rift-story-mode{padding:7px 11px;border:1px solid #e7c67c55;border-radius:6px;background:#0c1017eb;color:#f5dca5;max-width:calc(100vw - 36px);line-height:1.5;pointer-events:none}
/* The writer can identify the deployed build without disturbing saved drafts. */
.writer-guide{max-width:650px;margin-top:12px;color:#9faebc;font-size:12px}.writer-guide summary{cursor:pointer;color:#d5c38f;padding:5px 0}.writer-guide p{font-size:12px!important;line-height:1.8!important;margin:9px 0!important}.intro #studio-version{letter-spacing:1px}
