/* Scenario Visuals workspace. Viewer and presentation styles stay shared. */
.sim-builder .dispatch-header{padding:14px 24px;gap:16px}
.sim-builder .dispatch-header h1{font-size:24px;line-height:1.3}
.sim-builder main{max-width:1920px;padding:18px 24px}
.sim-builder .sim-document-bar{display:flex;align-items:end;gap:16px;flex-wrap:wrap}
.sim-document-name{flex:1 1 260px;min-width:0}
.sim-builder .sim-document-name label{margin:0;font-size:14px}
.sim-builder .sim-document-name input{margin-top:4px;padding:10px 12px;min-height:44px}
.sim-document-actions,.sim-play-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sim-play-actions{padding-left:16px;border-left:1px solid #455360}
.sim-builder .sim-document-bar button{padding:10px 14px;font-size:14px}
.sim-builder #builderStatus{margin:10px 0 16px;color:#c1cdd7;font-size:14px;overflow-wrap:anywhere}
.sim-builder .sim-layout{grid-template-columns:190px minmax(0,1fr) 360px;grid-template-areas:"timeline editor inspector";grid-template-rows:auto;gap:16px}
.sim-builder .sim-timeline{position:sticky;top:16px;padding:14px}
.sim-builder .sim-timeline h2{display:flex;justify-content:space-between;align-items:center;font-size:17px;margin-bottom:12px}
.sim-count{font-size:14px;font-weight:400;color:#bdcbd6;font-variant-numeric:tabular-nums}
.sim-builder .sim-add-slides{margin:0 0 12px;gap:6px}
.sim-builder .sim-add-slides button{font-size:14px;padding:9px 10px}
.sim-builder .sim-scenes{padding:0 3px;max-height:min(42dvh,480px)}
.sim-builder .sim-scenes button{font-size:14px;line-height:1.5;padding:10px;margin:0 0 6px;border:1px solid transparent}
.sim-builder .sim-scenes button[aria-current=true]{border-color:#e9b557;background:#3c4954;box-shadow:inset 3px 0 #ffbf50}
.sim-builder .sim-reorder{border:0;margin:0;padding:0}
.sim-builder .sim-arrange>button{width:100%;font-size:14px;margin-top:8px}
.sim-builder .sim-arrange p{font-size:14px;margin:8px 0}
.sim-builder .sim-editor{position:sticky;top:16px;padding:12px;background:#141d26}
.sim-builder .sim-preview-actions{gap:6px;margin:0 0 12px}
.sim-builder .sim-preview-actions button{font-size:14px;padding:9px 11px}
.sim-builder #openBackgroundLibrary{border-color:#9caebc;background:#3d5263}
.sim-builder .sim-canvas-options{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px;color:#bac8d4}
.sim-builder .sim-canvas-options p{font-size:14px;margin:0;flex:1 1 240px}
.sim-builder .sim-canvas-options label{font-size:14px}
.sim-builder .sim-inspector{grid-area:inspector;padding:0;position:sticky;top:16px;max-height:calc(100dvh - 48px);min-height:360px;overflow:auto;scrollbar-gutter:stable}
.sim-inspector-tabs{display:flex;position:sticky;top:0;z-index:3;background:#1b2530;padding:8px;gap:6px;border-bottom:1px solid #455360}
.sim-builder .sim-inspector-tabs button{flex:1;background:transparent;border:1px solid transparent;color:#c0cbd5;font-size:14px}
.sim-builder .sim-inspector-tabs button[aria-selected=true]{color:#fff;background:#334555;border-color:#718292;box-shadow:inset 0 -2px #ffbf50}
.sim-builder .sim-inspector [role=tabpanel]{padding:14px}
.sim-builder .sim-effect-picker{margin:0;font-size:14px}
.sim-builder .sim-effect-picker select{padding:10px;min-height:44px}
.sim-builder .sim-inspector #effectProperties{padding:0;margin:18px 0 12px;border:0}
.sim-builder .sim-inspector #effectProperties legend{padding:0;margin-bottom:12px;font-size:16px;text-transform:capitalize}
.sim-builder .sim-inspector .sim-effect-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sim-builder .sim-inspector input[type=range]{padding:0;accent-color:#ffbf50;min-height:36px;margin-top:4px}
.sim-builder .sim-inspector output{font-size:13px}
.sim-builder .sim-inspector select,.sim-builder .sim-inspector input[type=number]{font-size:14px;padding:8px;min-height:44px}
.sim-builder .sim-inspector .sim-toggle{margin:10px 0;align-items:flex-start;font-size:14px}
.sim-builder .sim-inspector .sim-toggle input{flex-shrink:0}
.sim-builder .sim-inspector summary,.sim-builder .sim-arrange>summary{min-height:44px;padding:12px 0;cursor:pointer;font-size:14px;font-weight:700}
.sim-builder .sim-control-group{border-top:1px solid #455360;margin-top:12px}
.sim-builder .sim-control-group>p{margin:0 0 12px;font-size:14px;color:#b5c1cc}
.sim-builder .sim-inspector details>button{font-size:14px;margin-top:8px}
.sim-builder .sim-inspector .sim-effect-actions button{flex:1;font-size:14px;padding:8px}
.sim-builder .sim-inspector .sim-mask-tools p{font-size:14px;color:#b5c1cc}
.sim-builder .sim-inspector .sim-mask-tools button{font-size:14px;padding:8px;min-height:44px}
.sim-builder .sim-mask-tools .sim-actions>label:first-child{flex:1 1 100%;min-width:0}
.sim-builder #selectedMask{width:100%}
.sim-builder .sim-slide-settings h2{font-size:17px;margin:0 0 14px}
.sim-builder .sim-slide-settings>label{font-size:14px}
.sim-builder .sim-slide-settings>label:first-of-type{margin-top:0}
.sim-builder #photoTextControls textarea{font-size:16px}
.sim-builder .sim-library-dialog{width:min(1050px,calc(100vw - 32px));padding:24px}
.sim-library-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-24px;background:#14212b;z-index:2;padding:12px 0}
.sim-builder .sim-library-heading h2{margin:0;font-size:22px}
.sim-builder .sim-library-heading button{font-size:14px}
.sim-builder .sim-library-dialog .dispatch-panel{padding:16px;margin:14px 0}
.sim-builder .sim-library-dialog summary{min-height:44px;cursor:pointer;font-size:16px;font-weight:700;padding:10px 0}
.sim-builder .sim-library-dialog>p:empty{display:none}
.sim-builder #savedScenarioControls h3{flex-basis:100%;margin:8px 0 0;font-size:16px}
.sim-builder #savedScenarioControls>select{flex:1 1 320px;min-height:44px}
.sim-builder .sim-library-dialog .sim-building-library{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.sim-builder .sim-library-dialog .sim-building-library button{font-size:14px;line-height:1.4}
.sim-builder .sim-library-dialog .sim-photo-label{margin:12px 0}
.sim-builder .sim-library-dialog .sim-photo-label input{font-size:14px;min-width:0}
.sim-builder .sim-library-dialog .sim-shared-card h3{font-size:16px}
.sim-builder .sim-library-dialog .sim-shared-card p{font-size:14px;color:#b5c1cc}
.sim-builder .sim-library-dialog .sim-shared-card button{font-size:14px}
@media(min-width:1450px){.sim-builder .sim-layout{grid-template-columns:220px minmax(0,1fr) 380px}}
@media(max-width:1179px){
  .sim-builder .sim-layout{grid-template-columns:190px minmax(0,1fr);grid-template-areas:"timeline editor" "timeline inspector"}
  .sim-builder .sim-editor,.sim-builder .sim-inspector{position:static;max-height:none;overflow:visible}
  .sim-builder .sim-inspector [role=tabpanel]{padding:16px}
  .sim-builder .sim-inspector-tabs{position:static}
  .sim-builder .sim-inspector .sim-effect-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .sim-builder .dispatch-header{padding:14px 16px;flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap}
  .sim-builder .dispatch-header h1{font-size:22px}
  .sim-builder .dispatch-header a{font-size:14px}
  .sim-builder main{padding:16px}
  .sim-builder .sim-document-bar{gap:10px}
  .sim-document-name{flex-basis:100%}
  .sim-builder .sim-document-bar button{padding:9px 12px}
  .sim-play-actions{border:0;padding:0}
  .sim-builder .sim-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"editor" "timeline" "inspector";gap:12px}
  .sim-builder .sim-timeline{position:static}
  .sim-builder .sim-add-slides{grid-template-columns:1fr 1fr}
  .sim-builder .sim-add-slides #duplicateScene,.sim-builder .sim-add-slides #openFireProgression{grid-column:1/-1}
  .sim-builder .sim-scenes{max-height:none;padding:3px;display:flex;gap:6px;overflow:auto}
  .sim-builder .sim-scenes button{flex:0 0 160px;min-width:150px}
  .sim-builder .sim-arrange{margin-top:4px}
  .sim-builder .sim-canvas-options{gap:8px}
  .sim-builder .sim-library-dialog{padding:16px}
  .sim-library-heading{top:-16px}
  .sim-builder .sim-library-dialog .sim-building-library{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
}
@media(max-width:380px){.sim-builder .sim-inspector .sim-effect-grid{grid-template-columns:minmax(0,1fr)}.sim-builder .sim-preview-actions{gap:5px}.sim-builder .sim-preview-actions button{padding:8px;font-size:14px}}

.sim-layer-controls{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.sim-layer-controls p,.sim-layer-controls small{flex-basis:100%;margin:0}.sim-layer-controls button{min-height:44px}


/* Selected-layer settings are separate from controls affecting the whole slide. */
.sim-builder .sim-layer-heading{position:sticky;top:66px;z-index:2;background:#1b2530;margin:-14px -14px 12px;padding:12px 14px;border-bottom:1px solid #455360}
.sim-builder .sim-layer-heading #effectCount{margin:6px 0 0;font-size:12px;color:#aabac8}
.sim-builder .sim-layer-quick-actions{display:flex;gap:8px;margin:0 0 16px}
.sim-builder .sim-layer-quick-actions button{flex:1;min-width:0;min-height:44px;padding:8px;font-size:13px}
.sim-builder #removeEffect{background:transparent;border-color:#765358;color:#edbdc3}
.sim-builder .sim-inspector .sim-effect-grid>label{min-width:0;margin:0;font-size:14px;line-height:1.4}
.sim-builder .sim-inspector .sim-effect-grid select{width:100%;max-width:100%;text-overflow:ellipsis}
.sim-builder .sim-inspector .sim-field-wide{grid-column:1/-1}
.sim-builder #commonEffects>label:has(select),.sim-builder #windowSmokeFields>label:has(select){grid-column:1/-1}
.sim-builder #windowIgnitionSettings>.sim-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 10px}
.sim-builder #windowIgnitionSettings>.sim-actions button{padding:9px 8px;min-height:44px;font-size:13px;line-height:1.35}
.sim-builder #effectIgniteNow{border-color:#b99043}
.sim-builder .sim-inspector details .muted{font-size:13px;line-height:1.5;color:#b5c1cc;margin:10px 0}
.sim-builder .sim-slide-tools-label{margin:22px 0 4px;padding-top:18px;border-top:2px solid #455360;color:#bdcbd6;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.sim-builder .sim-layer-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.sim-builder .sim-layer-controls p,.sim-builder .sim-layer-controls small{grid-column:1/-1;line-height:1.4}
.sim-builder .sim-layer-controls small{font-size:12px;color:#b5c1cc}
@media(max-width:1179px){.sim-builder .sim-layer-heading{position:static;margin:-16px -16px 12px;padding:12px 16px}}

.sim-builder .sim-inspector .sim-effect-grid{align-items:end}
/* Keep the effect tools to one row on laptop widths so the photo stays above the fold. */
.sim-builder .sim-preview-actions{gap:6px}
.sim-builder .sim-preview-actions button{min-height:38px;padding:6px 8px;font-size:14px}
.sim-builder .sim-copy-previous{width:100%;margin:0 0 10px;font-size:14px}
.sim-builder .sim-photo-prompt{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;text-align:center;background:#080d13}
.sim-builder .sim-photo-prompt[hidden]{display:none}
.sim-builder .sim-photo-prompt strong{font-size:20px;color:#fff}.sim-builder .sim-photo-prompt span{max-width:420px;color:#b5c1cc;font-size:14px}

/* A building opens a four-view chooser inside the same keyboard-trapped dialog. */
.sim-builder .sim-library-dialog .sim-building-views{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sim-builder .sim-building-view-count{display:block;color:#b5c1cc;font-size:12px;font-weight:400}
.sim-builder .sim-building-views img{aspect-ratio:1672/941;object-fit:contain}
.sim-builder #backToBuildings{min-height:44px;margin-bottom:4px}
.sim-builder .sim-building-library button:focus-visible{outline:3px solid #7dd3fc;outline-offset:3px}
@media(max-width:600px){
  .sim-builder .sim-library-dialog .sim-building-views{grid-template-columns:1fr;gap:12px}
}

/* Guided Scenario Creator context, shown above the slides on every inspector tab. */
.sim-guided-panel{margin:0 0 18px;padding:16px 20px;border-left:4px solid #f2ac38}
.sim-guided-panel[hidden]{display:none}
.sim-guided-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}
.sim-guided-head h2{margin:0;font-size:18px}
.sim-guided-tag{font-size:13px;color:#f2ac38;font-weight:700}
.sim-guided-panel dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 16px;margin:12px 0 0}
.sim-guided-panel dt{font-weight:700;color:#d4dfe9}
.sim-guided-panel dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.sim-guided-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.sim-guided-actions button:not(.secondary){margin-left:auto}
.sim-manual-advance{align-self:center;white-space:nowrap}
@media(max-width:700px){.sim-guided-panel dl{grid-template-columns:1fr}.sim-guided-panel dd{margin-bottom:6px}.sim-guided-actions button:not(.secondary){margin-left:0}}
