/* Native scenario workspace: no modal shade, no global pointer interception. */
.scenario-layer{position:fixed;z-index:55;pointer-events:none;overflow:hidden;isolation:isolate}
.scenario-window{position:absolute;display:flex;flex-direction:column;pointer-events:auto;box-sizing:border-box;background:var(--panel,#1d1f22);color:var(--text,#e7e8eb);border:1px solid var(--line,#41444b);border-radius:12px;box-shadow:0 14px 40px #0007;overflow:hidden;min-width:0;min-height:0}
.scenario-window[hidden],.scenario-window [hidden]{display:none!important}
.scenario-window-header{display:flex;align-items:center;gap:9px;flex-shrink:0;min-height:42px;padding:5px 8px 5px 12px;border-bottom:1px solid var(--line,#41444b);cursor:move;touch-action:none;user-select:none;min-width:0}
.scenario-window-title{font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:25px;flex:1}
.scenario-window-status{color:var(--muted,#9fa6b5);font-size:11px;max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.scenario-window-status[data-state=error],.scenario-window-status[data-state=conflict]{color:var(--warn,#efc56a)}
.scenario-window-controls{display:flex;gap:3px;flex:none}
.scenario-window-controls button{min-height:28px;min-width:28px;padding:2px 6px;border-radius:7px;font-size:17px;line-height:1;cursor:pointer}
.scenario-icon{width:20px;height:20px;display:inline-block;flex:none;vertical-align:middle;pointer-events:none}
[data-action-id="game.notes"] .scenario-icon{width:16px;height:16px;margin-right:6px}
.scenario-window-controls button{display:inline-flex;align-items:center;justify-content:center;transition:background-color .12s ease,color .12s ease,transform .1s ease,border-color .12s ease}
.scenario-window-controls button:hover{background:var(--hover,#34373d);border-color:var(--accent,#bac5d9);color:var(--text,#e7e8eb)}
.scenario-window-controls button:active{transform:translateY(1px) scale(.95);background:var(--accent,#bac5d9);color:var(--panel,#1d1f22)}
.scenario-window-content{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0;overflow:hidden}
.scenario-window[data-mode=pill]{border-radius:10px}
.scenario-window[data-mode=pill]{border-color:var(--warn,#e4bd68);box-shadow:0 0 0 1px #e4bd6838,0 8px 24px #0005}
.scenario-window[data-mode=pill] .scenario-window-header{border-bottom:0;min-height:40px;gap:6px;padding-left:10px}
.scenario-window[data-mode=pill] .scenario-window-title{font-size:12px}
.scenario-window[data-mode=pill] .scenario-window-status{max-width:36%;font-size:10px}
.scenario-window[data-mode=pill] [data-scenario-window-action=maximize]{display:none}
.scenario-window-gesturing{outline:2px solid var(--accent,#bac5d9)}
.scenario-window-gesturing .scenario-window-content{pointer-events:none}
.scenario-resize{position:absolute;z-index:3;touch-action:none}
.scenario-resize-n,.scenario-resize-s{left:12px;right:12px;height:7px;cursor:ns-resize}
.scenario-resize-n{top:0}.scenario-resize-s{bottom:0}
.scenario-resize-e,.scenario-resize-w{top:12px;bottom:12px;width:7px;cursor:ew-resize}
.scenario-resize-e{right:0}.scenario-resize-w{left:0}
.scenario-resize-ne,.scenario-resize-nw,.scenario-resize-se,.scenario-resize-sw{width:12px;height:12px}
.scenario-resize-ne{right:0;top:0;cursor:nesw-resize}.scenario-resize-nw{left:0;top:0;cursor:nwse-resize}
.scenario-resize-se{right:0;bottom:0;cursor:nwse-resize}.scenario-resize-sw{left:0;bottom:0;cursor:nesw-resize}
.scenario-window :focus-visible:not(.ProseMirror){outline:2px solid var(--accent,#bac5d9);outline-offset:-2px}
.scenario-window[data-mode=maximized]{border-radius:8px}
@media(prefers-reduced-motion:reduce){.scenario-window,.scenario-window *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.scenario-workspace-library,.scenario-workspace-editor{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}
.scenario-workspace-library{overflow:auto;padding:10px}
.scenario-file-tools,.scenario-library-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:7px;border-bottom:1px solid var(--line,#41444b);flex:none}
.scenario-file-tools button,.scenario-library-toolbar button,.scenario-library-actions button{font-size:12px;min-height:31px;padding:5px 9px}
.scenario-library-toolbar{padding:0 0 8px}.scenario-library-toolbar input{flex:1;min-width:155px}.scenario-library-toolbar select{max-width:155px}
.scenario-library-status{display:block;padding:7px 1px;font-size:11px;color:var(--muted,#9fa6b5);overflow-wrap:anywhere}
.scenario-library-card{padding:11px 0;border-bottom:1px solid var(--line,#41444b);display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.scenario-library-info{flex:1;min-width:180px}.scenario-library-info h3{font-size:16px;line-height:1.3;margin:0 0 5px;overflow-wrap:anywhere}.scenario-library-info h3 small{font-size:11px;color:var(--muted,#9fa6b5)}
.scenario-file-detail{font-size:11px;color:var(--muted,#9fa6b5);overflow-wrap:anywhere}.scenario-library-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px}.scenario-library-tags .badge{font-size:10px}
.scenario-library-actions{display:flex;gap:4px;flex-wrap:wrap;align-content:flex-start;max-width:100%}.scenario-danger{color:var(--error,#ffc1b8)}
.scenario-workspace-message{flex:none;margin:5px 9px;padding:7px;border-left:2px solid var(--warn,#ffe0a1);font-size:12px;overflow-wrap:anywhere}
[data-scenario-editor-host]{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden}
.scenario-workspace-panel{position:absolute;inset:43px 0 0;z-index:8;overflow:auto;padding:14px;background:var(--panel,#1d1f22);border-radius:0 0 10px 10px}
.scenario-workspace-panel h3{font-size:17px;margin:0 0 10px}.scenario-workspace-panel form{display:grid;gap:11px}.scenario-workspace-panel output{color:var(--warn,#ffe0a1);font-size:12px}
.scenario-metadata-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(105px,.4fr);gap:9px}.scenario-metadata-grid label{display:grid;gap:4px;font-size:12px;min-width:0}.scenario-metadata-grid input,.scenario-metadata-grid select{width:100%;min-width:0}.scenario-metadata-tags{grid-column:1/-1}
.scenario-references{font-size:12px;border-top:1px solid var(--line,#41444b);padding-top:8px}.scenario-references summary{cursor:pointer;margin-bottom:8px}.scenario-missing-reference{display:flex;align-items:center;gap:6px;margin-top:7px;overflow-wrap:anywhere}
.scenario-conflict-columns{display:grid;grid-template-columns:1fr 1fr;gap:9px}.scenario-conflict-columns label{display:grid;gap:5px;font-size:12px}.scenario-conflict-columns textarea{width:100%;min-height:250px;resize:vertical;font:12px/1.5 Consolas,monospace}
.scenario-history-list,.scenario-recovery-choices,.scenario-trash-list{display:grid;gap:7px;margin-bottom:11px}.scenario-trash-list>div{display:flex;gap:9px;align-items:center;justify-content:space-between}.scenario-history-preview{white-space:pre-wrap;overflow-wrap:anywhere;max-height:55vh;overflow:auto;font:12px/1.6 Consolas,monospace}
.scenario-window-menu{position:absolute;top:39px;right:7px;z-index:12;display:grid;gap:3px;padding:5px;max-width:calc(100% - 14px);max-height:calc(100% - 45px);overflow:auto;background:var(--panel,#1d1f22);border:1px solid var(--line,#41444b);border-radius:8px;box-shadow:0 7px 20px #0007}.scenario-window-menu button{font-size:12px;text-align:left;padding:7px 10px;min-height:33px}
.scenario-preparation-summary{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.scenario-preparation-summary h3{margin:0 0 4px}
.scenario-workspace-editor:has(.scenario-reading)>.scenario-file-tools{display:none}
.scenario-window-menu{pointer-events:auto}
@media(max-width:560px){.scenario-metadata-grid,.scenario-conflict-columns{grid-template-columns:1fr}.scenario-metadata-tags{grid-column:auto}.scenario-library-actions button{font-size:11px}}
.scenario-library-scopes{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0 10px;border-bottom:1px solid var(--line,#41444b);margin-bottom:10px}
.scenario-library-scopes>button{min-height:44px;min-width:88px;padding:8px 16px;margin:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted,#b7b9be);font:inherit;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
.scenario-library-scopes>button[aria-selected=true]{background:var(--raised,#2b2e33);border-color:var(--accent,#b7b9be);color:var(--text,#f1f2f3)}
.scenario-library-scopes>button:focus-visible{outline:2px solid var(--accent,#b7b9be);outline-offset:2px}
@media(max-width:560px){.scenario-library-scopes>button{flex:1 1 88px;min-width:0}}
