.reactEasyCrop_Container{-webkit-user-select:none;user-select:none;touch-action:none;cursor:move;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.reactEasyCrop_Image,.reactEasyCrop_Video{will-change:transform}.reactEasyCrop_Contain{max-width:100%;max-height:100%;margin:auto;position:absolute;inset:0}.reactEasyCrop_Cover_Horizontal{width:100%;height:auto}.reactEasyCrop_Cover_Vertical{width:auto;height:100%}.reactEasyCrop_CropArea{box-sizing:border-box;color:#00000080;border:1px solid #ffffff80;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 0 0 9999em}.reactEasyCrop_CropAreaRound{border-radius:50%}.reactEasyCrop_CropAreaGrid:before{content:" ";box-sizing:border-box;border:0;border-left:1px solid #ffffff80;border-right:1px solid #ffffff80;position:absolute;inset:0 33.33%}.reactEasyCrop_CropAreaGrid:after{content:" ";box-sizing:border-box;border:1px solid #ffffff80;border-left:0;border-right:0;position:absolute;inset:33.33% 0}:root{color:#ebe7dc;font-synthesis:none;text-rendering:optimizelegibility;--bg:#11120f;--panel:#191a16;--raised:#20211c;--line:#33342c;--soft-line:#292a24;--text:#ebe7dc;--muted:#96978c;--dim:#6c6e64;--ember:#df9d57;--light-ember:#f0bc7d;--red:#c46653;--green:#96b99b;--mono:ui-monospace, SFMono-Regular, Consolas, monospace;background:#11120f;font-family:system-ui,Noto Sans KR,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--ember);outline-offset:2px}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}::selection{color:#15120e;background:var(--light-ember)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--soft-line);background:#11120ff5;align-items:center;gap:42px;height:76px;padding:0 clamp(20px,4vw,64px);display:flex}.brand{align-items:center;gap:11px;min-width:236px;display:flex}.brand-mark{color:#19140d;background:var(--ember);border-radius:8px 2px;place-items:center;width:34px;height:34px;font:700 18px Georgia,serif;display:grid;box-shadow:inset 0 0 0 1px #f5c78d}.brand>span:last-child{gap:3px;display:grid}.brand strong{letter-spacing:.16em;font-size:11px}.brand small{color:var(--dim);font:9px var(--mono);letter-spacing:.08em}.main-nav{align-self:stretch;align-items:center;gap:5px;display:flex}.nav-button{height:100%;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px 14px 0;font-size:12px;transition:color .16s;position:relative}.nav-button:hover,.nav-button.active{color:var(--text)}.nav-button.active:after{content:"";background:var(--ember);height:2px;position:absolute;bottom:-1px;left:14px;right:14px}.account{color:var(--muted);align-items:center;gap:8px;margin-left:auto;font-size:11px;display:flex}.account a{border-left:1px solid var(--line);color:#c5a37d;margin-left:9px;padding-left:12px}.status-dot{background:#9bbd96;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #9bbd9650}.main-content{flex:1;width:min(1440px,100%);margin:0 auto;padding:38px clamp(20px,4vw,64px) 72px}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 26px;display:flex}.section-heading h1{color:var(--text);letter-spacing:-.04em;margin:8px 0 6px;font-size:clamp(25px,3vw,34px);font-weight:600}.section-heading p{color:var(--muted);margin:0;font-size:12px}.eyebrow{color:#c18f5c;font:500 9px var(--mono);letter-spacing:.17em}.eyebrow i,.data-count i,.trigger-card i,.app-footer i{color:#626257;font-style:normal}.primary-button,.quiet-button,.icon-button{cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:9px;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.primary-button{color:#21180f;background:var(--ember);border:1px solid #d79b5a;padding:10px 15px;font-size:11px;font-weight:700}.primary-button:hover{background:#efb36f;border-color:#efb36f}.quiet-button{border:1px solid var(--line);color:#c5c3b8;background:#1d1e19;padding:8px 11px;font-size:10px}.quiet-button:hover{color:var(--text);background:#24241e;border-color:#5b5445}.icon-button{width:28px;height:28px;color:var(--muted);background:0 0;border:1px solid #0000;padding:0;font-size:13px}.icon-button:hover{border-color:var(--line);color:var(--text);background:#292a24}.danger-quiet:hover{color:#e0937d;border-color:#694239}.mono{font-family:var(--mono)}.subtle,.muted{color:var(--muted)}.mini-count{border:1px solid var(--line);color:#d4b184;min-width:24px;height:22px;font:10px var(--mono);border-radius:4px;place-items:center;padding:0 6px;display:grid}.data-count{color:var(--muted);font:10px var(--mono);letter-spacing:.04em}.simulation-heading{align-items:center}.sim-header-actions{align-items:center;gap:14px;display:flex}.run-count{border-right:1px solid var(--line);align-items:center;gap:8px;padding-right:15px;display:flex}.run-count small{color:var(--dim);font:9px var(--mono);letter-spacing:.15em}.run-count strong{color:#e2b174;font:500 17px var(--mono)}.simulation-grid{grid-template-columns:minmax(0,1fr) 272px;align-items:start;gap:18px;display:grid}.simulation-main,.simulation-aside{gap:15px;min-width:0;display:grid}.simulation-aside{gap:14px}.aside-card,.menu-card,.linear-card,.candidate-panel,.game-state-panel,.conversation-list-panel,.metadata-panel,.requirements-card{border:1px solid var(--soft-line);background:var(--panel);border-radius:8px}.menu-card{padding:23px}.menu-card-header,.aside-title,.state-panel-heading,.choice-editor-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.menu-card-header h2,.state-panel-heading h2,.choice-editor-head h2,.aside-title h2{margin:5px 0 0;font-size:16px;font-weight:500}.state-fields select,.state-fields input,.location-editor-card select,.location-editor-card input,.requirement-row select{border:1px solid var(--line);min-width:0;color:var(--text);background:#151612;border-radius:4px;padding:8px 10px;font-size:10px}.menu-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px;display:grid}.menu-choice{text-align:left;cursor:pointer;background:#1d1e19;border:1px solid #32332b;border-radius:6px;align-items:center;gap:11px;min-height:70px;padding:11px;transition:all .15s;display:flex}.menu-choice:hover{background:#24231e;border-color:#816244;transform:translateY(-1px)}.choice-portrait{color:#d7ad79;background:#28231d;border:1px solid #5b4c3c;border-radius:4px 4px 2px 2px;flex:0 0 39px;place-items:center;width:39px;height:45px;font-family:Georgia,serif;display:grid;position:relative;overflow:hidden}.choice-portrait img{object-fit:cover;object-position:top center;width:100%;height:100%;position:absolute}.choice-copy{flex:1;gap:5px;min-width:0;display:grid}.choice-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.choice-copy small{text-overflow:ellipsis;color:var(--muted);font:9px var(--mono);white-space:nowrap;overflow:hidden}.candidate-count{color:var(--dim);flex:none;font-size:9px}.candidate-count.has-candidate{color:var(--green)}.choice-arrow{color:#716957;font-size:13px}.new-badge,.missing-badge,.reason-badge,.eligible-badge,.catalog-state{border-radius:3px;flex:none;padding:4px 6px;font-size:9px}.new-badge{color:#212016;background:#d4b76f}.missing-badge{color:#df9c82;white-space:nowrap;background:#442d27}.catalog-state{color:#9eb69a;background:#293229}.linear-card{align-items:center;gap:15px;padding:20px;display:flex}.linear-icon{height:42px;color:var(--ember);background:#282118;border:1px solid #594533;border-radius:6px;flex:0 0 42px;place-items:center;font-size:19px;display:grid}.linear-card>div:nth-child(2){flex:1}.linear-card h2{margin:4px 0;font-size:14px;font-weight:500}.linear-card p{color:var(--muted);margin:0;font-size:10px}.aside-card{padding:16px}.aside-title{margin-bottom:12px}.trigger-card{gap:8px;display:grid}.trigger-card strong{color:#ded9cb;font-size:12px;font-weight:500}.trigger-card small{color:var(--muted);font-size:10px}.trigger-card button{border:0;border-top:1px solid var(--soft-line);color:#d3a775;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;margin-top:5px;padding:9px 0 0;font-size:10px;display:flex}.candidate-panel{padding:18px}.candidate-heading{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:13px;display:flex}.candidate-heading h2{margin:5px 0 4px;font-size:15px;font-weight:500}.candidate-heading small{color:var(--muted);font-size:9px}.candidate-heading .mono{color:#a59884}.candidate-list{display:grid}.candidate-row{border-bottom:1px solid #292a24;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:60px;display:grid}.candidate-row:last-child{border-bottom:0}.candidate-row.is-excluded{opacity:.62}.candidate-row.is-playing{opacity:1;background:#201f19}.priority-mark{color:#d8b17f;width:25px;height:25px;font:10px var(--mono);background:#30281e;border-radius:4px;place-items:center;display:grid}.candidate-copy{gap:5px;min-width:0;display:grid}.candidate-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.candidate-copy small{color:var(--muted);font:9px var(--mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reason-badge{color:#c39786;white-space:nowrap;background:#372a25}.eligible-badge{color:#a3bf9e;white-space:nowrap;background:#263026}.candidate-play{border:1px solid var(--line);color:#d3c8b8;cursor:pointer;background:#22231e;border-radius:4px;min-width:48px;padding:6px 8px;font-size:9px}.candidate-play:hover{color:var(--light-ember);border-color:#8c6e4c}.no-candidates{min-height:132px;color:var(--muted);align-content:center;justify-items:center;gap:6px;display:grid}.no-candidates>span{color:#aa8054;font:22px Georgia,serif}.no-candidates strong{color:#d6d0c4;font-size:12px;font-weight:500}.no-candidates small{font-size:10px}.game-state-panel{padding:17px}.state-panel-heading{align-items:flex-start}.state-panel-heading>span{color:var(--muted);font-size:9px}.state-fields{grid-template-columns:1fr 1fr 1fr;gap:8px;margin:14px 0;display:grid}.state-fields label,.state-fields>div{color:var(--muted);gap:6px;font-size:9px;display:grid}.state-fields strong{color:#d8d1c4;font-size:10px;font-weight:500}.condition-toggles{border-top:1px solid var(--soft-line);padding-top:10px}.condition-toggles summary{color:#c4c0b3;cursor:pointer;font-size:10px}.condition-toggles summary small{color:var(--dim);margin-left:7px;font-size:9px}.condition-toggle{border-bottom:1px solid #272821;justify-content:space-between;align-items:center;gap:12px;min-height:41px;display:flex}.condition-toggle span{gap:3px;min-width:0;display:grid}.condition-toggle strong{color:#c7c3b8;font:10px var(--mono)}.condition-toggle code{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}input[type=checkbox]{accent-color:var(--ember)}.playback{background:#171713;border:1px solid #474034;border-radius:8px;overflow:hidden}.playback-stage{background:radial-gradient(at 50% 15%,#302a20 0,#202019 35%,#151612 76%);justify-content:center;align-items:flex-end;min-height:368px;padding:24px;display:flex;position:relative}.playback-stage:before{content:"";opacity:.14;pointer-events:none;background-image:linear-gradient(90deg,#0000 49.8%,#b48b53 50%,#0000 50.2%),linear-gradient(#b48b53 1px,#0000 1px);background-size:100% 100%,100% 54px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 70%);mask-image:linear-gradient(#000,#0000 70%)}.portrait-stage{pointer-events:none;justify-content:center;align-items:flex-end;width:49%;display:flex;position:absolute;inset:0 auto 0 5%}.portrait-stage.portrait-right{left:auto;right:5%}.portrait-window{width:min(100%,355px);height:91%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 72%,#0000);mask-image:linear-gradient(#000 72%,#0000)}.portrait-window img{position:absolute;bottom:0;left:0}.portrait-window .portrait-image-full{object-fit:contain;object-position:bottom center;width:100%;max-width:100%;height:100%}.portrait-window .portrait-image-cropped{object-fit:fill;max-width:none}.dialogue-card{z-index:1;background:linear-gradient(135deg,#1f1d18f7,#141512f5);border:1px solid #65543d;border-radius:7px;width:min(760px,100%);min-height:183px;padding:17px 20px 15px;position:relative;box-shadow:0 10px 34px #0007}.dialogue-bark{background:#29241c;border-color:#806043;border-radius:18px 18px 7px;width:min(610px,90%);min-height:128px;margin:0 auto 22px}.dialogue-kicker{color:#8c806d;font:9px var(--mono);letter-spacing:.11em;justify-content:space-between;display:flex}.dialogue-speaker{margin-top:12px;font-size:12px;font-weight:700}.dialogue-copy{align-content:center;gap:4px;min-height:55px;padding:9px 0;display:grid}.dialogue-copy p{color:#eee9df;margin:0;font-size:14px;line-height:1.75}.dialogue-copy p[lang=en]{color:#c4c0b6;font-size:12px}.dialogue-copy .muted{font-size:11px}.dialogue-controls{border-top:1px solid #37352d;justify-content:space-between;align-items:center;gap:10px;padding-top:10px;display:flex}.button-group{background:#171814;border:1px solid #34352e;border-radius:5px;padding:2px;display:inline-flex}.button-group button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:3px;padding:5px 8px;font-size:9px}.button-group button.active{color:#f0cd9f;background:#393022}.playback-actions{align-items:center;gap:7px;display:flex}.playback-actions audio{display:none}.playback-actions .quiet-button{padding:6px 8px}.playback-actions .primary-button{padding:7px 11px}.no-voice{color:#8f7c62;padding:0 7px;font-size:9px}.voice-status{color:#988d76;font:8px var(--mono);white-space:nowrap}.voice-status.playing{color:#aec1a3}kbd{color:#a69781;font:8px var(--mono);margin-left:2px}.playback-title{border-top:1px solid var(--soft-line);color:#b5b0a3;justify-content:space-between;align-items:center;min-height:38px;padding:0 16px;font-size:10px;display:flex}.playback-title span{color:var(--dim);font:9px var(--mono)}.empty-playback{color:var(--muted);text-align:center;padding:30px}.explorer-layout{grid-template-columns:290px minmax(0,1fr);align-items:start;gap:16px;display:grid}.file-browser{border:1px solid var(--soft-line);background:var(--panel);border-radius:7px;min-height:520px;max-height:calc(100vh - 116px);position:sticky;top:14px;overflow:auto}.search-field{z-index:2;border-bottom:1px solid var(--soft-line);color:#99896d;background:var(--panel);align-items:center;gap:9px;height:43px;padding:0 12px;display:flex;position:sticky;top:0}.search-field input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:10px}.search-field input::placeholder{color:#6f7066}.tree-list{padding:6px 0 14px}.tree-folder summary,.tree-file{color:#aaa99e;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;height:30px;padding-right:10px;font-size:10px;list-style:none;display:flex}.tree-folder summary::-webkit-details-marker{display:none}.tree-folder summary:hover,.tree-file:hover{color:var(--text);background:#24251f}.folder-glyph{color:#b08957;font-size:10px}.file-glyph{color:#77796b;font-size:10px}.tree-file{width:100%}.tree-file.selected{color:#efbd7c;background:#2d271e}.tree-file small{color:#6f7066;font:8px var(--mono);margin-left:auto}.explorer-content{gap:14px;min-width:0;display:grid}.conversation-list-panel{padding:17px;overflow:hidden}.conversation-list-panel .aside-title{align-items:flex-start}.conversation-list-panel h2{text-overflow:ellipsis;white-space:nowrap;max-width:600px;overflow:hidden}.conversation-list-item{border:0;border-top:1px solid var(--soft-line);color:#aaa99e;text-align:left;cursor:pointer;background:0 0;grid-template-columns:26px minmax(100px,1fr) auto 17px;align-items:center;gap:9px;width:100%;min-height:60px;padding:9px;display:grid}.conversation-list-item:hover,.conversation-list-item.selected{background:#22231e}.conversation-index{color:#7c705e;font:9px var(--mono)}.conversation-list-copy{gap:5px;min-width:0;display:grid}.conversation-list-copy strong{color:#d4d0c5;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.conversation-list-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font:8px var(--mono);overflow:hidden}.tag-list{gap:4px;display:flex}.tag-list i{border:1px solid var(--line);color:#a49a85;font:normal 8px var(--mono);border-radius:3px;padding:3px 5px}.metadata-panel{padding:13px 16px}.metadata-panel summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;list-style:none;display:grid}.metadata-panel summary::-webkit-details-marker{display:none}.metadata-panel summary strong{color:#d5d0c4;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.metadata-panel summary .mono{color:#8d806b;font-size:8px}.metadata-panel dl{border-top:1px solid var(--soft-line);margin:13px 0 0;display:grid}.metadata-panel dl div{border-bottom:1px solid #282923;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:7px 0;display:grid}.metadata-panel dt{color:#be9566;font:9px var(--mono)}.metadata-panel dd{color:#c0bcb0;overflow-wrap:anywhere;min-width:0;margin:0}.metadata-panel code{font:9px var(--mono)}.loading-inline{color:var(--muted);align-items:center;gap:9px;padding:12px;font-size:10px;display:flex}.spinner{border:1px solid #514637;border-top-color:var(--ember);border-radius:50%;width:12px;height:12px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.characters-page,.editor-page{gap:5px;display:grid}.character-layout{grid-template-columns:240px minmax(0,1fr);gap:15px;display:grid}.character-list{border:1px solid var(--soft-line);background:var(--panel);border-radius:7px;max-height:690px;padding:6px;overflow:auto}.character-list-item{color:#c3c0b5;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;width:100%;min-height:42px;padding:5px 7px;font-size:10px;display:grid}.character-list-item:hover{background:#24251f}.character-list-item.selected{color:var(--light-ember);background:#29231d;border-color:#5b4731}.character-list-item small{color:#79796f;font:8px var(--mono)}.character-avatar-small{background:#25231e;border:1px solid #4b4438;border-radius:4px;place-items:center;width:28px;height:31px;font-family:Georgia,serif;display:grid}.character-editor{min-width:0}.character-editor-main{grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);gap:14px;display:grid}.cropper-panel,.preview-panel{border:1px solid var(--soft-line);background:var(--panel);border-radius:7px;overflow:hidden}.cropper-header{border-bottom:1px solid var(--soft-line);justify-content:space-between;align-items:center;height:48px;padding:0 14px;font-size:11px;display:flex}.cropper-header small{color:var(--muted);font-size:9px}.cropper-canvas{background:radial-gradient(at 50% 40%,#302b23,#1b1b17 67%);height:430px;position:relative}.cropper-canvas .reactEasyCrop_CropArea{border:1px solid #efbb75;box-shadow:0 0 0 9999em #0809078c}.zoom-slider{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:10px;display:flex}.zoom-slider input{accent-color:var(--ember);flex:1}.portrait-missing{color:#b3a48d;text-align:center;background:#1b1b17;place-content:center;height:430px;font-size:11px;line-height:1.8;display:grid}.preview-panel{padding:17px}.preview-panel h2{margin:5px 0 16px;font-size:13px;font-weight:500}.portrait-preview{background:radial-gradient(at 50% 15%,#383025,#201f1a 75%);border:1px solid #39382f;border-radius:5px;align-items:flex-end;min-height:210px;padding:12px;display:flex;position:relative;overflow:hidden}.portrait-preview-right{flex-direction:row-reverse}.preview-window,.preview-full{width:45%;height:100%;position:absolute;inset:0 auto 0 4%;overflow:hidden;-webkit-mask-image:linear-gradient(#000 76%,#0000);mask-image:linear-gradient(#000 76%,#0000)}.portrait-preview-right .preview-window,.portrait-preview-right .preview-full{left:auto;right:4%}.preview-window img{object-fit:cover;max-width:none;position:absolute}.preview-full{object-fit:contain;object-position:bottom center}.preview-full.flipped{transform:scaleX(-1)}.name-chip{color:#e0bd8c;background:#25231e;border:1px solid #61513b;border-radius:4px;align-self:flex-end;margin:0 0 25px 12px;padding:7px 9px;font-size:10px}.preview-dialogue{z-index:1;background:#171814ed;border:1px solid #574d3d;border-radius:5px;gap:6px;width:100%;padding:11px;display:grid;position:relative}.preview-dialogue strong{font-size:10px}.preview-dialogue span{color:#d0cbc0;font-size:10px}.side-control{color:var(--muted);justify-content:space-between;align-items:center;margin-top:17px;font-size:10px;display:flex}.toggle-row{border-top:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line);color:#c4c0b4;justify-content:space-between;align-items:center;margin-top:13px;padding:12px 0;font-size:10px;display:flex}.saved-note{color:#8c887d;margin-top:11px;font-size:9px}.editor-heading{align-items:center}.editor-toolbar{color:var(--muted);align-items:center;gap:9px;margin-bottom:12px;font-size:10px;display:flex}.editor-toolbar span:first-child{color:#d7b27f}.editor-toolbar .quiet-button{margin-left:auto}.location-editor-list{gap:12px;display:grid}.location-editor-card{border:1px solid var(--soft-line);background:var(--panel);border-radius:7px;padding:15px}.location-editor-top{border-bottom:1px solid var(--soft-line);align-items:center;gap:11px;padding-bottom:12px;display:flex}.location-number{color:#936f49;font:11px var(--mono)}.location-heading-inputs{flex:1;gap:4px;min-width:0;display:grid}.location-heading-inputs input{width:100%;font-weight:600;color:var(--text)!important;background:0 0!important;border:0!important;padding:0!important;font-size:12px!important}.location-heading-inputs .mono{color:var(--dim);font-size:8px}.small-actions{gap:1px;display:flex}.form-grid{grid-template-columns:repeat(3,minmax(130px,1fr));gap:10px;margin:13px 0;display:grid}.form-grid label{color:var(--muted);align-content:start;gap:5px;font-size:9px;display:grid}.form-grid .wide-field{grid-column:span 2}.form-grid textarea{border:1px solid var(--line);min-height:56px;color:var(--text);background:#151612;border-radius:4px;padding:8px;font-size:9px}.trigger-field{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.trigger-field select{width:100%}.choice-editor-head{margin:14px 0 7px}.choice-editor-head h3{color:#c6c1b5;margin:0;font-size:10px;font-weight:600}.choice-editor-head h2{margin-top:4px}.choice-editor-list{display:grid}.choice-editor-row{border-top:1px solid #292a24;grid-template-columns:minmax(105px,1fr) 104px minmax(110px,1fr) minmax(110px,1fr) auto;align-items:center;gap:6px;padding:7px 0;display:grid}.choice-editor-row>input{width:100%}.choice-editor-row .trigger-field{min-width:0}.empty-inline{color:var(--dim);text-align:center;padding:14px;font-size:10px}.requirements-card{margin-top:14px;padding:17px}.requirements-card>p{color:var(--muted);margin:3px 0 13px;font-size:10px}.requirement-row{border-top:1px solid var(--soft-line);grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr) 28px;align-items:center;gap:9px;padding:8px 0;display:grid}.arrow-word{color:#bb986c;white-space:nowrap;font-size:9px}.error-banner,.notice-banner{z-index:8;justify-content:space-between;gap:15px;padding:10px clamp(20px,4vw,64px);font-size:11px;display:flex;position:sticky;top:0}.error-banner{color:#efb7a3;background:#39251f}.notice-banner{color:#c5d4b8;background:#263125}.error-banner button,.notice-banner button{color:inherit;cursor:pointer;background:0 0;border:0}.loading-screen,.error-screen,.empty-state{min-height:220px;color:var(--muted);align-content:center;justify-items:center;gap:12px;font-size:11px;display:grid}.loading-screen{min-height:100vh}.error-screen{text-align:center;min-height:100vh;padding:24px}.error-screen h1{color:var(--text);font-size:22px}.error-screen a{color:var(--light-ember)}.app-footer{border-top:1px solid var(--soft-line);color:#66675e;font:8px var(--mono);letter-spacing:.08em;justify-content:space-between;gap:15px;padding:17px clamp(20px,4vw,64px);display:flex}@media (width<=1050px){.topbar{gap:20px;padding-inline:22px}.brand{min-width:auto}.brand small{display:none}.main-nav{gap:0}.nav-button{padding-inline:9px;font-size:10px}.account>span:not(.status-dot){display:none}.main-content{padding-inline:22px}.simulation-grid{grid-template-columns:minmax(0,1fr) 230px}.explorer-layout{grid-template-columns:240px minmax(0,1fr)}.character-editor-main{grid-template-columns:minmax(0,1fr) minmax(240px,.8fr)}.choice-editor-row{grid-template-columns:minmax(95px,1fr) 90px minmax(95px,1fr) minmax(95px,1fr) auto}}@media (width<=760px){.topbar{flex-wrap:wrap;gap:0;height:auto;min-height:64px;padding:10px 16px 0}.brand{flex:1;padding-bottom:9px}.brand strong{font-size:10px}.account{margin-left:0;padding-bottom:9px;font-size:9px}.account a{margin-left:5px;padding-left:8px}.main-nav{border-top:1px solid var(--soft-line);order:3;width:calc(100% + 32px);margin-inline:-16px;overflow-x:auto}.nav-button{flex:1 0 auto;height:40px;padding-inline:11px;font-size:10px}.main-content{padding:24px 14px 45px}.section-heading{align-items:flex-start}.section-heading p{max-width:260px;line-height:1.55}.simulation-grid,.simulation-aside{grid-template-columns:1fr}.menu-card{padding:16px}.menu-choices{grid-template-columns:1fr}.candidate-panel{padding:13px}.candidate-row{grid-template-columns:25px minmax(0,1fr) auto;gap:7px;padding:7px 0}.candidate-play{grid-column:2/-1;justify-self:end}.reason-badge,.eligible-badge{justify-self:end}.playback-stage{min-height:430px;padding:14px}.portrait-stage{width:75%;left:0}.portrait-stage.portrait-right{left:auto;right:0}.portrait-window{height:87%}.dialogue-card{min-height:190px;padding:13px}.dialogue-copy p{font-size:12px}.dialogue-copy p[lang=en]{font-size:10px}.dialogue-controls{flex-direction:column;align-items:flex-start}.playback-actions{justify-content:flex-end;width:100%}.dialogue-controls>.button-group{align-self:flex-start}.explorer-layout{grid-template-columns:1fr}.file-browser{min-height:160px;max-height:245px;position:static}.tree-list{max-height:194px;overflow:auto}.conversation-list-panel{padding:12px}.tag-list{display:none}.conversation-list-item{grid-template-columns:25px minmax(0,1fr) 17px}.metadata-panel summary{grid-template-columns:1fr;gap:5px}.metadata-panel dl div{grid-template-columns:85px minmax(0,1fr)}.character-layout{grid-template-columns:1fr}.character-list{max-height:112px;display:flex;overflow:auto}.character-list-item{flex:0 0 140px;grid-template-columns:28px 1fr}.character-list-item small{display:none}.character-editor-main{grid-template-columns:1fr}.cropper-canvas,.portrait-missing{height:370px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .wide-field{grid-column:span 2}.location-editor-card{padding:11px}.location-editor-top{flex-wrap:wrap}.location-heading-inputs{min-width:140px}.choice-editor-row{grid-template-columns:minmax(100px,1fr) minmax(90px,110px) auto}.choice-editor-row>:nth-child(n+3):not(.small-actions){grid-column:1/3}.choice-editor-row .small-actions{grid-area:1/3}.requirement-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 28px;gap:5px}.requirement-row select{font-size:8px}.app-footer{padding-inline:14px;font-size:7px}.app-footer span:last-child{text-align:right}}.playback-stage-portrait-left{justify-content:flex-end}.playback-stage-portrait-left .dialogue-card{width:min(68%,760px);margin-left:auto}.playback-stage-portrait-right{justify-content:flex-start}.playback-stage-portrait-right .dialogue-card{width:min(68%,760px);margin-right:auto}@media (width<=760px){.playback-stage-portrait-left .portrait-stage{justify-content:flex-start;width:100%;left:0}.playback-stage-portrait-right .portrait-stage{justify-content:flex-end;width:100%;left:auto;right:0}.playback-stage-portrait-left .portrait-window,.playback-stage-portrait-right .portrait-window{width:min(45%,180px);height:100%}.playback-stage-portrait-left .dialogue-card,.playback-stage-portrait-right .dialogue-card{width:100%;margin:0}}.state-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.conversation-choice-fields{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6px;min-width:0;display:grid}@media (width<=760px){.state-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.conversation-choice-fields{grid-template-columns:minmax(0,1fr)}}
