#familySignInline{margin:14px 0 0;padding:16px;border:1px solid #2d526d;border-radius:14px;background:#0a1f30;color:#eef7ff}
#familySignInline[hidden]{display:none!important}.fse-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.fse-head h3{margin:3px 0 0;font-size:19px}.fse-kicker{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;color:#86c9fa}.fse-badge{border:1px solid #3f708f;background:#102c42;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.fse-help,.fse-warning{color:#a9bdcc;font-size:12px;line-height:1.45}.fse-body{display:grid;gap:12px}.fse-field{display:grid;gap:6px}.fse-field span{font-size:11px;font-weight:850;color:#b9d0df}.fse-field input{height:44px;border:1px solid #3b6079;background:#071522;color:#fff;border-radius:10px;padding:0 12px;outline:none}.fse-field input:focus{border-color:#72c3ff;box-shadow:0 0 0 3px rgba(114,195,255,.13)}.fse-meta{font-size:12px;line-height:1.45;color:#c3d5e1}.fse-meta span{color:#8ea8bb}.fse-actions{display:flex;gap:8px;flex-wrap:wrap}.fse-btn{border:1px solid #40617a;background:#10283a;color:#e9f4fb;border-radius:10px;padding:10px 12px;font-weight:850;font-size:12px;cursor:pointer}.fse-btn.primary{background:#dff1ff;color:#082035;border-color:#dff1ff}.fse-btn:disabled{opacity:.45;cursor:not-allowed}.fse-warning{margin:0;padding-top:2px}.fse-hero-active{display:grid!important;place-items:center}.fse-sign-svg{display:block;max-width:min(100%,680px);max-height:420px;width:auto;height:auto}.fse-invalid-preview{display:grid;place-items:center;min-height:180px;width:100%;padding:24px;text-align:center;color:#5c6f7d;font-weight:800;line-height:1.45}
@media(max-width:640px){#familySignInline{padding:13px}.fse-actions{display:grid;grid-template-columns:1fr}.fse-btn{width:100%}}

#officialExitInline,#officialGuideInline{padding:16px;border:1px solid #2d526d;border-radius:14px;margin:14px 0 0;background:#0a1f30;color:#eef7ff}
#officialExitInline[hidden],#officialExitInline [hidden],#officialGuideInline[hidden],#officialGuideInline [hidden]{display:none!important}
.official-exit-editor form,.official-exit-actions,.official-guide-editor form,.official-guide-actions{display:flex;gap:12px;flex-wrap:wrap}
.official-exit-editor label,.official-guide-editor label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#b9d0df}
.official-exit-editor input,.official-exit-editor select,.official-guide-editor input,.official-guide-editor select{font:inherit;padding:9px;border:1px solid #3b6079;border-radius:10px;box-sizing:border-box;max-width:100%;background:#071522;color:#fff;outline:none}
.official-exit-editor input:focus,.official-exit-editor select:focus,.official-guide-editor input:focus,.official-guide-editor select:focus{border-color:#72c3ff;box-shadow:0 0 0 3px rgba(114,195,255,.13)}
.official-exit-editor button,.official-guide-editor button{font:inherit;padding:9px 11px;border:1px solid #40617a;border-radius:10px;box-sizing:border-box;max-width:100%;background:#10283a;color:#e9f4fb;font-weight:800;cursor:pointer}
.official-exit-actions button:first-child,.official-guide-actions button:first-child{background:#dff1ff;color:#082035;border-color:#dff1ff}
.official-exit-editor button:disabled,.official-guide-editor button:disabled{opacity:.45;cursor:not-allowed}
.official-exit-editor input{width:120px}
.official-guide-editor form{display:grid;gap:12px}.official-guide-editor [data-fields]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;min-width:0}
/* Word-pair fieldsets must shrink inside D1-3a's narrow Studio workbench. */
.official-guide-editor [data-fields]>fieldset{min-width:0;max-width:100%;box-sizing:border-box;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:9px;border:1px solid #3b6079;border-radius:10px}
.official-guide-editor [data-fields] label{min-width:0;max-width:100%}
.official-guide-editor [data-fields] input{min-width:0;max-width:100%;width:100%}
.official-exit-dimensioned,.official-exit-dimensioned [data-layout-preview],.official-guide-dimensioned,.official-guide-dimensioned [data-layout-preview]{min-width:0;max-width:100%;overflow-wrap:anywhere}
.official-exit-dimensioned [data-layout-preview] svg,.official-guide-dimensioned [data-layout-preview] svg{display:block;max-width:100%;height:auto}.official-guide-editor [data-context]{min-width:190px}.official-guide-editor [data-slot-key]{width:100%;min-width:0}
.official-exit-editor [data-status],.official-guide-editor [data-status]{margin:10px 0 4px;font-size:12px;font-weight:800;color:#c3d5e1}.official-exit-editor>p:last-child,.official-guide-editor>p:last-child{margin:10px 0 0;font-size:12px;color:#a9bdcc}
.official-exit-editor [data-error],.official-guide-editor [data-error]{color:#ff9a9a;min-height:1.2em}
.official-exit-actions,.official-guide-actions{margin-top:10px}
#modalImage svg{max-width:100%;height:auto}
@media(max-width:640px){
  #officialExitInline,#officialGuideInline{padding:8px;margin:8px 0}
  .official-guide-editor form{gap:6px}
  .official-guide-editor [data-fields]{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .official-guide-editor [data-fields]>fieldset{grid-template-columns:minmax(0,1fr);gap:5px;padding:6px}
  .official-exit-editor label,.official-guide-editor label{gap:3px;font-size:10px}
  .official-exit-editor input,.official-exit-editor select,.official-exit-editor button,.official-guide-editor input,.official-guide-editor select,.official-guide-editor button{padding:6px;font-size:11px}
  .official-guide-editor [data-context]{min-width:0;width:100%}
  .official-exit-editor [data-error],.official-guide-editor [data-error]{min-height:.9em;margin:4px 0;font-size:10px}
  .official-exit-editor [data-status],.official-guide-editor [data-status]{margin:4px 0 2px;font-size:10px}
  .official-exit-actions,.official-guide-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:6px}
  .official-exit-actions button,.official-guide-actions button{width:100%}
  .official-exit-editor>p:last-child,.official-guide-editor>p:last-child{margin:6px 0 0;font-size:10px}
}

/* Design Studio visual contract.
   Every published renderer uses the same application chrome. This layer is
   Studio-only: sign artwork, exact colors, geometry, route-shield rendering,
   source bindings, certification badges, and fabrication gates are untouched. */
body[data-usrs-app-surface="design-studio"]{
  --usrs-editor-bg:#0a1f30;
  --usrs-editor-panel:#071522;
  --usrs-editor-panel-2:#10283a;
  --usrs-editor-border:#2d526d;
  --usrs-editor-control-border:#3b6079;
  --usrs-editor-text:#eef7ff;
  --usrs-editor-muted:#a9bdcc;
  --usrs-editor-label:#b9d0df;
  --usrs-editor-accent:#72c3ff;
  --usrs-editor-primary:#dff1ff;
  --usrs-editor-primary-text:#082035;
}
body[data-usrs-app-surface="design-studio"] :is(#variableSignInline,#vseGeneratedLayout,#routeAssemblyInline,#stateRouteBlock,#familySignInline,#officialExitInline,#officialGuideInline){
  margin:14px 0 0!important;
  padding:16px!important;
  border:1px solid var(--usrs-editor-border)!important;
  border-radius:14px!important;
  background:var(--usrs-editor-bg)!important;
  color:var(--usrs-editor-text)!important;
  box-sizing:border-box;
}
body[data-usrs-app-surface="design-studio"] :is(.vse-head h3,.vse-layout-head h3,.rab-inline-head h3,.rab-card h3,.state-route-head h3){color:var(--usrs-editor-text)!important}
body[data-usrs-app-surface="design-studio"] :is(.vse-help,.vse-layout-help,.vse-layout-note,.vse-layout-source,.rab-inline-help,.rab-empty-state,.rab-basis ul,.rab-validity,.state-route-help,.state-route-status-text,.fse-help,.fse-warning){color:var(--usrs-editor-muted)!important}
body[data-usrs-app-surface="design-studio"] :is(.vse-field>span,.rab-field>span,.state-route-field label,.fse-field span,.official-exit-editor label,.official-guide-editor label){color:var(--usrs-editor-label)!important}
body[data-usrs-app-surface="design-studio"] :is(.vse-field input,.vse-field select,.rab-field input,.rab-field select,#stateRouteState,#stateRouteNumber,.fse-field input,.official-exit-editor input,.official-exit-editor select,.official-guide-editor input,.official-guide-editor select){
  border:1px solid var(--usrs-editor-control-border)!important;
  border-radius:10px!important;
  background:var(--usrs-editor-panel)!important;
  color:#fff!important;
  box-sizing:border-box;
  outline:none;
}
body[data-usrs-app-surface="design-studio"] :is(.vse-field input,.vse-field select,.rab-field input,.rab-field select,#stateRouteState,#stateRouteNumber,.fse-field input,.official-exit-editor input,.official-exit-editor select,.official-guide-editor input,.official-guide-editor select):focus{
  border-color:var(--usrs-editor-accent)!important;
  box-shadow:0 0 0 3px rgba(114,195,255,.13)!important;
}
body[data-usrs-app-surface="design-studio"] :is(.vse-btn,.rab-btn,.state-route-reset,.fse-btn,.official-exit-editor button,.official-guide-editor button){
  border:1px solid #40617a!important;
  border-radius:10px!important;
  background:var(--usrs-editor-panel-2)!important;
  color:#e9f4fb!important;
  font-weight:850;
}
body[data-usrs-app-surface="design-studio"] :is(.vse-btn.primary,.rab-btn.primary,.fse-btn.primary,.official-exit-actions button:first-child,.official-guide-actions button:first-child){
  background:var(--usrs-editor-primary)!important;
  color:var(--usrs-editor-primary-text)!important;
  border-color:var(--usrs-editor-primary)!important;
}
body[data-usrs-app-surface="design-studio"] :is(.vse-btn,.rab-btn,.state-route-reset,.fse-btn,.official-exit-editor button,.official-guide-editor button):focus-visible{outline:3px solid #87c7ed;outline-offset:2px}
body[data-usrs-app-surface="design-studio"] :is(.vse-meta,.official-exit-editor [data-status],.official-guide-editor [data-status]){color:#c3d5e1!important}
body[data-usrs-app-surface="design-studio"] :is(.vse-meta span,.official-exit-editor>p:last-child,.official-guide-editor>p:last-child){color:var(--usrs-editor-muted)!important}
body[data-usrs-app-surface="design-studio"] :is(.rab-card,.rab-preview-stage,.rab-source-row,.rab-validity){background:var(--usrs-editor-panel)!important;border-color:var(--usrs-editor-border)!important}
body[data-usrs-app-surface="design-studio"] .rab-context-note{background:#102a3d;border-color:#2b607e;color:#c5e8ff}
body[data-usrs-app-surface="design-studio"] .rab-context-note.warn{background:#34270b;border-color:#765f1c;color:#ffe5a0}

/* R2-1 / D10 / W13 measured drawing uses the same dark Studio surface even
   when the operating system is in light mode. The sign face itself stays white. */
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout{background:var(--usrs-editor-bg)!important;border-color:var(--usrs-editor-border)!important;color:var(--usrs-editor-text)!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout :is(.vse-layout-help,.vse-layout-note,.vse-layout-source){color:var(--usrs-editor-muted)!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout .vse-layout-sign{background:#fff!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout :is(.vse-layout-width,.vse-layout-height){border-color:#9fb4c8!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout :is(.vse-layout-width:before,.vse-layout-width:after,.vse-layout-height:before,.vse-layout-height:after){background:#9fb4c8!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout :is(.vse-layout-width span,.vse-layout-height span){background:var(--usrs-editor-bg)!important;color:#d6e2ed!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout .vse-layout-metrics>div{background:var(--usrs-editor-panel)!important;border-color:var(--usrs-editor-border)!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout .vse-layout-metrics dt{color:#91a8bd!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout .vse-layout-metrics dd{color:var(--usrs-editor-text)!important}
body[data-usrs-app-surface="design-studio"] #vseGeneratedLayout .vse-layout-source{border-color:var(--usrs-editor-border)!important}

@media(max-width:640px){
  body[data-usrs-app-surface="design-studio"] :is(#variableSignInline,#vseGeneratedLayout,#routeAssemblyInline,#stateRouteBlock,#familySignInline,#officialExitInline,#officialGuideInline){margin:8px 0 0!important;padding:10px!important}
}

.fse-dimensioned,#fseLayoutPreview{min-width:0;max-width:100%;overflow-wrap:anywhere}
#fseLayoutPreview>svg{display:block;max-width:100%;height:auto}
.usrs-shared-layout,.usrs-shared-layout [data-shared-layout-preview]{min-width:0;max-width:100%;overflow-wrap:anywhere}
.usrs-shared-layout [data-shared-layout-preview]>svg{display:block;width:100%;max-width:100%;height:auto}
.usrs-shared-layout-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.usrs-shared-layout button{font:inherit;max-width:100%;padding:8px 10px;border:1px solid #71869a;border-radius:8px;cursor:pointer}
.usrs-shared-layout button:disabled{opacity:.45;cursor:not-allowed}
