#installationFlowDialog { width:min(1000px,calc(100vw - 24px)); max-height:calc(100dvh - 24px); padding:0; overflow:hidden; border-color:#8293ad; background:#1c222d; color:#f3f6fc; }
#installationFlowDialog form { display:flex; flex-direction:column; max-height:calc(100dvh - 26px); overflow:hidden; }
#installationFlowDialog .dialog-heading,#installationFlowDialog .dialog-actions { flex:0 0 auto; background:#242c3a; border-color:#71839f; }
#installationFlowDialog .dialog-heading p { margin:4px 0; color:#d4deec; font-size:12px; }
#installationFlowDialog .dialog-heading h2 { margin:4px 0; color:#f4f7fc; font-size:20px; }
#installationFlowDialog .installation-flow-body { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; padding:16px 20px; display:flex; flex-direction:column; gap:14px; }
#installationFlowDialog .installation-flow-steps { display:flex; flex-wrap:wrap; gap:6px; }
#installationFlowDialog .installation-flow-steps span { padding:6px 9px; border:1px solid #697a93; border-radius:7px; color:#ced9e9; font-size:11px; }
#installationFlowDialog .installation-flow-steps .active { background:#4c607e; border-color:#bfd5f6; color:#fff; font-weight:750; }
#installationFlowDialog .installation-flow-section { padding:14px; border:1px solid #697a93; border-radius:12px; background:#252d3b; }
#installationFlowDialog .installation-flow-section[hidden],#installationFlowDialog [hidden] { display:none !important; }
#installationFlowDialog h3 { margin:0 0 10px; color:#f4f7fc; font-size:16px; }
#installationFlowDialog p,#installationFlowDialog small,#installationFlowDialog li { color:#ced9e9; font-size:12px; line-height:1.5; }
#installationFlowDialog .installation-flow-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:12px; }
#installationFlowDialog label { display:grid; align-content:start; gap:5px; color:#edf3fc; font-size:12px; font-weight:650; }
#installationFlowDialog .if-wide { grid-column:1/-1; }
#installationFlowDialog :is(input,select,textarea) { min-width:0; width:100%; border:1px solid #8b9bb4; border-radius:8px; padding:9px 10px; background:#303a4b; color:#f4f7fc; font:inherit; font-size:13px; color-scheme:dark; opacity:1; -webkit-text-fill-color:currentColor; }
#installationFlowDialog :is(input,textarea)::placeholder { color:#c1cee2; opacity:1; }
#installationFlowDialog :is(input,select,textarea):disabled { color:#d4deec; background:#343c4b; border-style:dashed; opacity:1; }
#installationFlowDialog :is(input,select,textarea):focus { outline:2px solid #c5dafa; outline-offset:1px; background:#394960; }
#installationFlowDialog select option { background:#303a4b; color:#f4f7fc; }
#installationFlowDialog .button-primary { background:#415c83; border-color:#aec5e8; color:#fff; }
#installationFlowDialog .button-primary:hover:not(:disabled) { background:#526c93; color:#fff; }
#installationFlowDialog .button-secondary { background:#343e50; border-color:#8b9bb4; color:#f1f6ff; }
#installationFlowDialog .button-secondary:hover:not(:disabled) { background:#415069; color:#fff; border-color:#b6cae9; }
#installationFlowDialog button:disabled { background:#343c4b; color:#cbd5e5; border-style:dashed; opacity:1; cursor:wait; }
#installationFlowDialog .dialog-actions { display:flex; flex-wrap:wrap; gap:8px; padding:12px 18px; }
#installationFlowDialog .dialog-actions .button { padding:9px 12px; font-size:12px; }
#installationFlowDialog .installation-flow-map-heading { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
#installationFlowDialog .installation-flow-map-heading h3 { margin:0 auto 0 0; }
#installationFlowDialog .installation-flow-map { height:320px; border:1px solid #8293ad; border-radius:9px; margin-top:10px; }
#installationFlowDialog .installation-flow-notice { margin:0; padding:12px; border:1px solid #d8b680; background:#443a2a; color:#ffe1af; border-radius:9px; }
#installationFlowDialog .form-error { background:#492b37; border-color:#d493a7; color:#ffd4e0; padding:12px; }
#installationFlowDialog summary { color:#e6efff; font-size:12px; cursor:pointer; }
#installationFlowDialog li { margin-block:7px; overflow-wrap:anywhere; }
.installation-batch-actions { display:flex; flex:0 0 auto; align-items:center; flex-wrap:wrap; gap:8px; padding:8px 14px; background:#252e3d; color:#d3dff1; border-bottom:1px solid #6e7e96; }
.installation-batch-actions[hidden] { display:none; }
.installation-batch-actions span { font-size:11px; }
.installation-row-select { float:left; margin:5px 10px 0 0; width:19px; height:19px; accent-color:#b1c9ed; }
.installation-phase-badge { color:#e5eeff; border:1px solid #889cbf; background:#344660; border-radius:7px; padding:4px 7px; display:inline-block; font-size:11px; }
#installationFlowDialog .leaflet-control-layers label,#maintenanceDialog .leaflet-control-layers label { display:block; font-size:12px; line-height:1.6; color:#eaf1fc; }
#installationFlowDialog .leaflet-control-layers input,#maintenanceDialog .leaflet-control-layers input { width:auto; height:auto; min-height:0; padding:0; margin:3px 5px 3px 0; display:inline-block; accent-color:#adc5e9; }
@media(max-width:760px) { #installationFlowDialog .installation-flow-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) {
 #installationFlowDialog { width:calc(100vw - 10px); max-height:calc(100dvh - 10px); }
 #installationFlowDialog form { max-height:calc(100dvh - 12px); }
 #installationFlowDialog .dialog-heading { padding:14px; } #installationFlowDialog .dialog-heading h2 { font-size:18px; }
 #installationFlowDialog .installation-flow-body { padding:10px; gap:10px; }
 #installationFlowDialog .installation-flow-grid { grid-template-columns:1fr; }
 #installationFlowDialog .dialog-actions { padding:10px; }
 #installationFlowDialog .dialog-actions .button { flex:1 1 44%; min-height:44px; }
 #installationFlowDialog .installation-flow-map { height:280px; }
}
