:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#233849;background:#f5f3ed;font-size:14px;--line:#e2e6df;--amber:#e99b22;--teal:#2b8e81}*{box-sizing:border-box}body{margin:0;height:100dvh;display:grid;grid-template-rows:82px minmax(0,1fr) 102px;overflow:hidden}button,select,input{font:inherit}button{border:1px solid var(--line);background:#fffefa;color:#314550;border-radius:11px;padding:10px 15px;cursor:pointer;font-weight:650;transition:.15s}button:hover{background:#f3e9d9;border-color:#cbbd9f}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #cf9e50;outline-offset:2px}header{display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line);gap:20px;background:#fffcf5}.brand b{font-size:27px;letter-spacing:-1.2px}.brand em{font-style:normal;color:#dc921b}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:3px;color:#849089}.project{font-weight:650;font-size:15px}.project span{display:block;color:#8c9890;font-size:11px;margin-top:3px}.actions{display:flex;gap:8px}main{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:16px;padding:16px;min-height:0}.stage{border-radius:20px;overflow:hidden;position:relative;background:#c4d8d0;box-shadow:0 8px 24px #263e3b0b}#scene{position:absolute;inset:0}#scene canvas{display:block;width:100%;height:100%;touch-action:none}.scene-top{position:absolute;left:20px;right:20px;top:20px;display:flex;justify-content:space-between;gap:10px;pointer-events:none}.scene-top button{pointer-events:auto;background:#fffaf2db}.pill{padding:12px 15px;background:#fffaf2d9;border-radius:12px;font-size:10px;letter-spacing:1.5px;font-weight:800}.pill span{display:block;letter-spacing:0;font-size:10px;margin-top:5px;color:#75857b;font-weight:500}.compass{position:absolute;top:102px;left:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;width:72px;height:72px;background:#fffaf2c9;font-size:11px;color:#4c665c;line-height:19px}.scene-caption{position:absolute;left:25px;bottom:55px;pointer-events:none;text-shadow:0 1px 16px #fff}.scene-caption>span{font-size:9px;letter-spacing:2px;font-weight:700}.scene-caption h1{font-family:Georgia,serif;font-size:40px;letter-spacing:-1.5px;font-weight:400;margin:6px 0}.scene-caption p{font-size:12px;margin:0;max-width:350px}.scene-bottom{position:absolute;bottom:0;left:0;right:0;background:#fffdf0dc;display:flex;justify-content:space-between;padding:12px 20px;font-size:11px;font-weight:650}aside{display:flex;min-height:0;flex-direction:column;background:#fffdf8;border:1px solid #fff;border-radius:19px;padding:19px;box-shadow:0 8px 22px #263e3b06}.aside-head{display:flex;align-items:center;justify-content:space-between}.aside-head small{font-size:8px;letter-spacing:1.8px;color:#87948b}h2{margin:5px 0 16px;font-size:24px;letter-spacing:-.6px}.status{font-size:9px;background:#edf1e8;padding:6px 9px;border-radius:20px;color:#788575}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metrics>div{border-radius:13px;padding:13px}.metrics span{font-size:11px}.metrics strong{display:block;margin-top:5px;font-size:27px;letter-spacing:-1px}.solar{background:#fff0d8;color:#a86916}.battery{background:#e2f2eb;color:#2b796e}nav{display:flex;gap:3px;padding:5px;background:#f0f2eb;border-radius:12px;margin:17px 0 8px}nav button{padding:9px 5px;flex:1;background:transparent;border-color:transparent;font-size:11px;color:#859185}nav button.active{background:#fffefa;color:#394f40;box-shadow:0 2px 5px #42583610}.pane{display:none;min-height:0;flex:1}.pane.active{display:block}.pane h3{font-size:16px;font-weight:650;margin:11px 0 8px;letter-spacing:-.3px}.pane p{font-size:11px;line-height:1.55;color:#7a877d;margin:0 0 15px}label{display:block;font-size:11px;font-weight:600;color:#617164;margin:12px 0}label output{float:right;color:#c68922}input[type=range]{display:block;width:100%;accent-color:#d69c38;margin:12px 0 4px;cursor:pointer}input[type=number],input[type=date],select{width:100%;border:1px solid #dfe4d9;border-radius:8px;padding:9px;background:#fffefa;color:#3b5144;margin-top:7px;min-width:0;font-size:11px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pair button{font-size:10px;padding:9px 6px}.card{border-radius:12px;padding:13px;font-size:11px;line-height:1.5;margin:14px 0}.card p{margin:6px 0 0;font-size:10px}.violet{background:#eee9f7;color:#78618e}.amber{background:#fff2db;color:#9d742d}.check{display:flex;align-items:center;gap:8px;font-size:10px}.check input{accent-color:#8b70a8}.wire-diagram{min-height:39px;display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}.wire-diagram span{padding:5px 7px;border:1px solid #e8cc90;border-radius:5px;background:#fff4da;font-size:9px}.aside-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eef0e9;padding-top:10px;flex-shrink:0}.aside-footer button{border:0;background:none;padding:0;font-size:10px;color:#718474}.aside-footer span{font-size:9px;color:#9ba49c}footer{background:#fffcf6;display:flex;align-items:center;gap:25px;padding:16px 30px;border-top:1px solid var(--line)}.run{background:#e7a02e;color:white;border:0;padding:18px 24px;box-shadow:0 5px 12px #d6982422;white-space:nowrap}.run:hover{background:#ce8d24}.time{width:240px}.time label{font-size:9px;letter-spacing:1px;margin:0}.time b{float:right;font-size:16px;letter-spacing:0;color:#31493a}.weather{margin:0;width:125px}.weather select{margin-top:5px;padding:8px}.spark{flex:1;min-width:0}.spark>span{display:block;font-size:8px;letter-spacing:1px;color:#87968a}.spark b{float:right;letter-spacing:0;color:#9a792c}.spark svg{height:45px;width:100%;margin-top:4px}dialog{max-width:560px;border:0;border-radius:18px;padding:28px;background:#fffdf5;color:#394e43;max-height:80dvh}dialog::backdrop{background:#17382b80}dialog p{line-height:1.6;font-size:13px}#toast{position:fixed;bottom:118px;left:50%;transform:translateX(-50%);background:#344b3a;color:white;padding:12px 20px;border-radius:10px;display:none;z-index:10;font-size:12px}
@media(max-height:760px) and (min-width:801px){body{grid-template-rows:65px minmax(0,1fr) 82px}header{padding:0 20px}main{padding:10px;gap:10px}aside{padding:13px}.brand b{font-size:24px}.metrics>div{padding:9px}.metrics strong{font-size:22px}.aside-head small{display:none}h2{font-size:20px;margin:0 0 9px}nav{margin:10px 0 3px}label{margin:7px 0}input[type=range]{margin:8px 0 2px}.pane p{margin-bottom:8px;font-size:10px}.pane h3{margin:6px 0;font-size:14px}.card{margin:8px 0;padding:9px}.pair button{padding:7px 5px}input[type=number],input[type=date],select{padding:6px;margin-top:5px}.check{margin:6px 0}.wire-diagram{margin:8px 0;min-height:26px}.scene-caption h1{font-size:34px}footer{padding:12px 20px}.run{padding:14px 20px}}
@media(max-width:800px){body{grid-template-rows:60px minmax(0,1fr) 80px}header{padding:0 12px;gap:8px}.brand b{font-size:22px}.brand small{font-size:7px;letter-spacing:1px}.project{display:none}.actions{gap:4px}.actions button{padding:7px;font-size:10px}main{grid-template-columns:1fr;grid-template-rows: minmax(140px,42%) minmax(0,1fr);gap:8px;padding:8px}.stage{border-radius:13px}.scene-top{top:10px;left:10px;right:10px}.pill{padding:8px;font-size:8px}.pill span{display:none}.scene-top button{font-size:9px;padding:7px}.compass{top:48px;left:12px;width:47px;height:47px;font-size:8px;line-height:12px}.scene-caption{display:none}.scene-bottom{font-size:9px;padding:7px 12px}aside{padding:10px 13px;border-radius:13px;position:relative}.aside-head,.metrics,.aside-footer{display:none}nav{margin:0 0 3px;padding:3px}nav button{padding:7px}.pane h3{margin:6px 0;font-size:13px}.pane>p{display:none}label{margin:5px 0;font-size:10px}input[type=number],input[type=date],select{padding:6px;margin-top:4px}input[type=range]{margin:6px 0}.card{padding:7px;margin:5px 0;font-size:10px}.card p{font-size:9px;margin:3px 0}.pair button{padding:6px;font-size:9px}.check{font-size:9px}.wire-diagram{margin:5px 0;min-height:20px}.wire-diagram span{font-size:8px;padding:3px 5px}footer{padding:10px;gap:12px}.run{font-size:11px;padding:13px 10px}.time{flex:1;width:auto}.time label{font-size:8px}.time b{font-size:13px}.weather{width:88px;font-size:9px}.weather select{font-size:10px;padding:6px}.spark{display:none}#toast{bottom:90px;width:85%;text-align:center}}
@media(max-height:650px) and (max-width:800px){main{grid-template-rows:minmax(100px,32%) minmax(0,1fr)}.pane h3{display:none}.pane .card{font-size:9px;padding:5px}.pane .card p{display:none}}
#mobileView{display:none}#livePower{font-weight:750;font-size:16px;color:#b77a23;white-space:nowrap}
@media(max-height:760px) and (min-width:801px){.aside-head,.metrics{display:none}.pane>p{display:none}.pane h3{margin:9px 0}aside nav{margin-top:0}.aside-footer{margin-top:auto}.pane{flex:1}.compass b{font-size:8px}}
@media(max-width:800px){#mobileView{display:block}.actions button{font-size:9px;padding:7px 6px}.brand b{font-size:18px}.brand small{font-size:6px}main{display:block;position:relative}.stage{height:100%;width:100%}aside{display:none;height:100%;width:100%}main.design-mode .stage{display:none}main.design-mode aside{display:flex}.aside-head{display:flex}.metrics{display:grid}.aside-footer{display:flex;margin-top:auto}.pane>p{display:block;font-size:11px;margin:8px 0}.pane h3{display:block}.pane .card{padding:10px;margin:10px 0}.metrics>div{padding:10px}.metrics strong{font-size:24px}nav{margin:10px 0}.pane label{margin:10px 0}.pair button{padding:9px}.scene-caption{display:block;bottom:45px;left:18px}.scene-caption h1{font-size:34px}.scene-caption p{font-size:10px}.compass b{font-size:7px}.compass span{font-size:8px}#livePower{font-size:12px}.weather{width:78px}footer{gap:9px}.run{padding:13px 9px;font-size:10px}.time b{font-size:12px}}
@media(max-width:800px) and (max-height:720px){.aside-head,.metrics,.pane>p{display:none}nav{margin:0 0 5px}.pane label{margin:7px 0}.pane .card{margin:7px 0;padding:8px}.pane h3{font-size:13px;display:block}.scene-caption h1{font-size:28px}}

/* Overlay settings are contextual and outside the scene toolbar/compass lanes. */
#overlayControls{position:absolute;right:12px;top:65px;z-index:2;width:154px;background:#fffdf2ed;border:1px solid #b6c6b9;border-radius:10px;padding:8px}
#overlayControls[hidden],#liveMetricControl[hidden]{display:none!important}
#overlayControls label{font-size:10px;display:block;margin:0 0 6px}#overlayControls select{font-size:11px;margin:3px 0 0;padding:5px;width:100%}
.stage:has(#wireToolbar:not([hidden])) #overlayControls,.stage:has(#placementToolbar:not([hidden])) #overlayControls,.stage:has(#optimizerToolbar:not([hidden])) #overlayControls{display:none}
#optimizerToolbar{max-height:calc(100% - 170px);overflow:auto}#optimizerToolbar button{margin:4px 0;padding:7px}#applyOptimizerScope{display:block;width:100%}
/* The run/load group occupies the same fixed track regardless of text or switch state. */
footer .run-load{width:100%;min-width:0;display:grid;grid-template-rows:32px 22px 22px;overflow:hidden}
footer .run-load #run{height:32px;padding:5px}footer .load-switch{display:flex;align-items:center;gap:4px;margin:0;font-size:11px;white-space:nowrap;overflow:hidden}
footer .load-switch input{width:14px;margin:0;flex:none}footer #loadSettings{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px;width:100%;min-width:0;height:22px}footer #loadWatts{font-variant-numeric:tabular-nums}
#liveLoadSummary,#loadSchedule{font-size:11px;line-height:1.5}#liveLoadSummary{padding:8px;background:#e5efe7}
@media(max-width:800px){#overlayControls{right:8px;top:60px;width:138px}footer .load-switch{font-size:9px}}

/* Fixed footer height accommodates controls without time-dependent reflow. */
body{grid-template-rows:82px minmax(0,1fr) 110px}footer{padding-top:8px;padding-bottom:8px}
@media(max-height:760px) and (min-width:801px){body{grid-template-rows:65px minmax(0,1fr) 100px}}
@media(max-width:800px){body{grid-template-rows:60px minmax(0,1fr) 100px}}

/* App 0.11: compact legend, combined results, and stable calendar footer. */
.scene-caption{display:none!important}
#heatmapLegend{bottom:70px;left:16px;width:245px;max-width:calc(100% - 32px);padding:9px 38px 9px 10px;pointer-events:auto;z-index:2;max-height:calc(100% - 190px);overflow:auto}
#heatmapTitle{font-size:9px}#heatmapScale{font-variant-numeric:tabular-nums}.energy-gradient{margin:5px 0;height:8px}
#legendInfo{position:absolute;right:6px;top:6px;padding:0;width:25px;height:25px;border-radius:50%;font-family:Georgia,serif;font-style:italic;font-size:16px}
#heatmapStatus[hidden]{display:none!important}#heatmapStatus{margin:8px -25px 0 0;line-height:1.4}
button:disabled,input:disabled,select:disabled{opacity:.45;cursor:not-allowed}
#resultsSidebar h2{font-size:19px;margin:0 0 4px}#resultsStatus,#resultScale{margin:4px 0;font-size:10px;line-height:1.3}
.result-card{margin:6px 0;padding:7px}.chart-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}.chart-heading h3{font-size:12px;margin:0}.chart-heading button{width:auto;font-size:10px;padding:5px 7px}
#miniPower,#miniSOC{height:clamp(85px,16vh,130px)}#powerToggles{display:flex;flex-wrap:wrap;gap:4px 9px;margin:0;padding:4px;border:0}#powerToggles legend{font-size:9px}#powerToggles label{display:flex;gap:3px;align-items:center;font-size:9px;margin:0}#powerToggles input{margin:0}
.results-load{display:flex;align-items:center;justify-content:space-between;gap:6px;border-top:1px solid #d4dfd6;padding-top:6px}.results-load label{display:flex;gap:5px;align-items:center;margin:0;font-size:11px}.results-load button{width:auto;font-size:10px;padding:5px}.results-load #loadWatts{font-variant-numeric:tabular-nums}#resultsLoadHint{font-size:9px;line-height:1.3;margin:5px 0 0}
footer{grid-template-columns:110px minmax(150px,1fr) 110px 138px minmax(120px,1fr);gap:16px}footer .run-load{display:block}footer .run-load #run{height:42px}footer .date-control{margin:0;width:100%}footer .date-control input{margin-top:5px;padding:8px;width:100%}
@media(max-width:1000px){footer{grid-template-columns:100px minmax(120px,1fr) 95px 138px}.spark{display:none}}
@media(max-width:600px){body{grid-template-rows:60px minmax(0,1fr) 128px}footer{grid-template-columns:82px minmax(0,1fr) 130px;grid-template-rows:48px 40px;gap:4px 10px}footer .time{grid-column:2/4}footer .weather{grid-column:2;grid-row:2}footer .date-control{grid-column:3;grid-row:2}footer .date-control input,footer .weather select{padding:5px;margin:2px 0}#heatmapLegend{left:8px;bottom:75px;width:220px}#miniPower,#miniSOC{height:105px}}

#powerToggles label:has(#mini_total){border-left:3px solid #267e66;padding-left:4px}
#powerToggles label:has(#mini_mppt1in){border-left:3px solid #cd8b22;padding-left:4px}
#powerToggles label:has(#mini_mppt2in){border-left:3px solid #915eb5;padding-left:4px}
#powerToggles label:has(#mini_mppt1out){border-left:3px solid #b65e25;padding-left:4px}
#powerToggles label:has(#mini_mppt2out){border-left:3px solid #4e6fb5;padding-left:4px}
#powerToggles label:has(#mini_charge){border-left:3px solid #2196a4;padding-left:4px}
#powerToggles label:has(#mini_discharge){border-left:3px solid #c15064;padding-left:4px}

/* App 0.12: read-only chart inspection; no layout shift from hover output. */
.chart-wrap{position:relative}.chart-wrap svg{touch-action:pan-y;outline-offset:1px}.chart-readout{position:absolute;right:8px;top:8px;max-width:min(310px,92%);padding:8px 10px;background:#17382bf2;color:#fffdf4;border-radius:7px;white-space:pre-line;font:10px/1.4 ui-sans-serif,system-ui;pointer-events:none;z-index:4;box-shadow:0 2px 8px #0003}.chart-readout[hidden]{display:none!important}
#chartInteractionHelp{font-size:9px;line-height:1.3;margin:3px 0;color:#64776c}
.results-load{display:grid;grid-template-columns:1fr;gap:5px}.results-load .appliance-button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;padding:10px 13px;font-size:14px;border:2px solid transparent;border-radius:10px;color:white}.appliance-button span{font-size:11px}.appliance-button[data-on=false]{background:#247447;border-color:#1e603c}.appliance-button[data-on=true]{background:#b43e3e;border-color:#8e2929}.appliance-button:hover{filter:brightness(1.08)}.results-load #loadSettings{justify-self:end;font-size:11px;padding:5px 8px}
#resultsSidebar .aside-head{display:flex}#resultsSidebar .aside-head h2{font-size:16px;margin:0}#resultsSidebar .aside-head small,#resultsSidebar .status{display:none}#resultsSidebar .metrics{display:grid;gap:6px;margin:5px 0}#resultsSidebar .metrics>div{padding:6px 9px}#resultsSidebar .metrics strong{font-size:20px;margin:2px 0 0}#resultsSidebar .metrics span{font-size:9px}#resultsSidebar .results-title{font-size:13px;margin-top:5px}
#designSidebar nav{margin:0 0 5px}#designSidebar .pane h3{font-size:14px;margin:6px 0}#designSidebar label{margin:6px 0;font-size:10px}#designSidebar input[type=range]{margin:5px 0 2px}#designSidebar input[type=number],#designSidebar select{padding:6px;margin-top:4px}#designSidebar button{padding:7px 9px;font-size:11px}#designSidebar .pair{gap:7px}.design-help,.energy-details{font-size:10px;margin:5px 0;border:1px solid #dce4da;border-radius:7px;padding:5px 7px}.design-help summary,.energy-details summary{cursor:pointer;font-weight:650}.design-help p,.design-help .equipment-help{font-size:10px!important;margin:5px 0!important;line-height:1.4!important}.design-help .card{margin:5px 0;padding:7px}#designSidebar .mode-help{font-size:10px;line-height:1.35;padding:6px}#compatibilityWarnings{max-height:none;font-size:10px;line-height:1.35}#compatibilityStatus{font-size:11px}#resultsSidebar .energy-details svg{height:75px}

#compatibilityWarnings,#compatibilityStatus,#wiringModeHelp,#panelModeHelp,#controllerStatus,#selectedStringScope{display:block!important}
.design-help[open]>p{display:block!important}

/* App 0.13: shared responsive editor, first-run setup and playback-only switch. */
#applianceSwitch{position:absolute;right:16px;bottom:52px;z-index:5;display:grid;grid-template-columns:30px 1fr;gap:3px 10px;min-height:74px;width:235px;padding:10px;border:2px solid #9cab9d;border-radius:10px;color:white;box-shadow:0 3px 9px #0004;text-align:left}
#applianceSwitch[hidden]{display:none!important}#applianceSwitch .rocker{grid-row:1/4;width:25px;height:45px;border-radius:4px;background:linear-gradient(#f7f5ee 48%,#bbbdb4 52%);border:2px solid #e3e4da;box-shadow:inset 0 2px 5px #0005}#applianceSwitch[data-on=true] .rocker{transform:rotate(180deg)}#applianceSwitch strong{font-size:13px}#applianceSwitch small{font-size:10px}#switchContext{grid-column:2}#loadModeStatus{font-size:11px;line-height:1.4}
#inspector{width:min(920px,95vw);max-height:92vh}#inspectorForm>h2{margin:8px 0}#inspectPanelFields,#inspectControllerFields,#inspectBatteryFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;align-items:start}#inspectPanelFields[hidden],#inspectControllerFields[hidden],#inspectBatteryFields[hidden]{display:none!important}#inspectorForm label{margin:4px 0}#inspectorForm input:not([type=checkbox]),#inspectorForm select{width:100%;min-width:0}#inspectorForm p,#inspectorForm .load-program-fields{grid-column:1/-1}#inspectorForm .pair{display:contents}#inspectorForm>div.pair{display:flex;margin-top:10px}#inspectorForm .load-program-fields{margin:6px 0;padding:8px;border:1px solid #cbd6c9}#inspectorForm p{font-size:11px;line-height:1.4}textarea{width:100%;min-width:0;resize:vertical;padding:8px;border:1px solid #c6d0c2;border-radius:6px;font:12px/1.5 ui-monospace,monospace;background:#fffef8;color:#253b30}#inlineEditor{padding:8px;border:2px solid #739582;margin:8px 0;border-radius:9px}#inlineEditor[hidden]{display:none!important}#inlineEditor #inspectorForm h2{font-size:17px}#inlineEditor #inspectPanelFields,#inlineEditor #inspectControllerFields,#inlineEditor #inspectBatteryFields{grid-template-columns:1fr}#dockInspector{font-size:11px;padding:5px 8px}#sidePanel:disabled{opacity:.45}
#setupWizard{width:min(800px,95vw);max-height:92vh}#setupWizard h2{margin-top:0}#setupWizard p{font-size:12px;line-height:1.45}.setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.setup-grid input,.setup-grid select{width:100%}.wizard-actions{display:flex;flex-wrap:wrap;gap:7px;position:sticky;bottom:0;background:#fffdf4;padding:10px 0}.wizard-actions button{width:auto}#setupSummary{white-space:pre-wrap;font:12px/1.5 system-ui}#setupWarnings{font-size:11px;white-space:pre-line;max-height:190px;overflow:auto;border:1px solid #cba56e;padding:8px}#setupError{color:#a32929}#setupWizard [hidden]{display:none!important}
@media(max-width:600px){#inspectPanelFields,#inspectControllerFields,#inspectBatteryFields,.setup-grid{grid-template-columns:1fr}#applianceSwitch{right:8px;bottom:40px;width:205px;min-height:68px}#inspector,#setupWizard{padding:14px}}

/* App 0.13.1: header setup entry shares the Save/Open/Reset action group. */
header .actions{flex-wrap:wrap;justify-content:flex-end}header .actions button{white-space:nowrap}
@media(max-width:800px){header .brand{min-width:0;flex:0 1 42%}header .actions{flex:1 1 58%;gap:3px}header .actions button{padding:5px 6px}header .brand small{letter-spacing:.5px}}

/* Catalog product confirmation */
.product-card{padding:12px;border:1px solid #b5cec3;border-radius:10px;background:#f2f6ed;margin:10px 0;font-size:12px;overflow-wrap:anywhere}
.product-card[hidden]{display:none}.product-card-heading{display:flex;gap:12px;align-items:center}.product-photo,.product-photo-placeholder{width:80px;height:80px;flex:0 0 80px;object-fit:contain;border-radius:8px;background:#e1eae3}.product-photo-placeholder{display:flex;align-items:center;text-align:center;padding:8px;color:#52685e;font-size:11px;box-sizing:border-box}.product-photo-placeholder[hidden]{display:none}.product-status{font-weight:700}.product-card a{display:block;margin:8px 0;color:#205e50}.product-card dd{margin:0 0 8px}.product-card dt{font-weight:600}.product-card details{margin-top:8px}#balconyTiltField{padding:8px 0}#balconyTiltField p{font-size:12px}#panelRailTilt{max-width:120px}

.product-photo-frame{position:relative;width:80px;height:80px;flex:0 0 80px}.product-photo-frame .product-photo{position:absolute;inset:0;background:#fff}.product-photo[hidden]{display:none}
