.panel-page{padding-top:30px;padding-bottom:80px}.back-link{font-size:12px;color:var(--muted);text-decoration:none}.back-link:hover{color:var(--accent)}.panel-page-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-top:35px;margin-bottom:40px}.panel-page h1{font-size:clamp(40px,4.6vw,66px);line-height:1.08}.panel-page h1 span{color:var(--accent)}.panel-page-head p{font-size:15px;color:var(--muted);margin-top:24px}.demo-label{font-size:11px;padding:14px 20px;background:var(--accent-soft);color:var(--green);line-height:1.8;margin-bottom:4px}.demo-label span{font-size:10px;color:var(--muted)}.panel-toolbar{display:flex;align-items:center;gap:10px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:36px}.panel-toolbar>span{font-size:12px;color:var(--muted);margin-right:10px}.preset-button,.clear-button{background:white;border:1px solid var(--line);font-size:12px;padding:9px 16px;min-height:40px}.preset-button:hover{border-color:var(--accent);background:var(--accent-soft)}.clear-button{margin-left:auto;border:0;color:var(--muted);text-decoration:underline}.shield-layout{display:grid;grid-template-columns:365px minmax(0,1fr);gap:64px;align-items:start}.shield-form{min-width:0}.shield-form h2,.shield-result h2{font-size:23px;letter-spacing:-.025em;line-height:1.2}.config-section{padding-bottom:28px;border-bottom:1px solid var(--line);margin-bottom:28px}.config-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;margin:22px 0}.config-grid label{font-size:11px;color:var(--muted)}.config-grid input,.config-grid select,.length-label input{display:block;width:100%;margin-top:6px;padding:11px 9px;border:1px solid var(--line-2);background:white;color:var(--text);font-size:12px;height:44px}.check-row{display:flex;align-items:center;gap:9px;font-size:12px;cursor:pointer;line-height:1.5;margin:12px 0}.check-row input{margin:0}.config-hint{font-size:10px;color:var(--muted);margin-top:12px;line-height:1.7}.load-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.load-heading>span{font-size:10px;color:var(--muted)}.load-group{border-bottom:1px solid var(--line)}.load-group summary{cursor:pointer;display:flex;align-items:center;font-size:14px;padding:18px 0;gap:10px;font-weight:550;list-style:none}.load-group summary:before{content:'+';font-size:18px;color:var(--accent);font-weight:400;width:14px}.load-group[open] summary:before{content:'−'}.load-group summary::-webkit-details-marker{display:none}.group-count{font-size:11px;font-weight:400;color:var(--muted);margin-left:auto}.load-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-top:1px solid var(--line)}.load-name{display:flex;align-items:center;gap:10px;min-width:0}.load-name .ic{width:18px;height:18px;color:var(--accent)}.load-name label{font-size:12px;display:block;cursor:text;line-height:1.4;max-width:170px}.load-name small{font-size:9px;display:block;color:var(--muted);margin-top:5px}.stepper{display:flex;align-items:center;flex-shrink:0;border:1px solid var(--line)}.stepper button{border:0;background:var(--bg-2);height:35px;width:27px;padding:0;font-size:16px}.stepper button:hover:enabled{background:var(--accent-soft)}.stepper input{border:0;border-inline:1px solid var(--line);background:white;width:40px;height:35px;padding:4px 0;text-align:center;font-size:13px;appearance:textfield;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button{appearance:none}.assembly-options{margin-top:32px;margin-bottom:0}.assembly-options h2{margin-bottom:22px}.length-label{display:block;margin-top:20px;font-size:12px}.length-label input{max-width:100px}.shield-result{min-width:0}.shield-section-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.live-indicator{font-size:9px;display:flex;align-items:center;gap:7px;color:var(--accent);white-space:nowrap}.live-indicator:before{content:'';width:5px;height:5px;background:var(--accent)}.shield-stats{display:flex;gap:35px;padding:24px 0 26px}.shield-stats>div{display:flex;flex-direction:column;gap:4px}.shield-stats strong{font-size:28px;font-weight:500;line-height:1.2;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.shield-stats small{font-size:15px;font-weight:400;color:var(--muted)}.shield-stats span{font-size:10px;color:var(--muted)}.shield-stats>p{font-size:13px;color:var(--muted)}.cabinet{background:#e8ede5;border:1px solid #c4cec0;padding:20px 22px}.cabinet-head,.cabinet-footer{display:flex;justify-content:space-between;font-size:10px;gap:15px;color:#435340}.cabinet-head{padding-bottom:14px;border-bottom:1px solid #bcc9b7;letter-spacing:.04em}.cabinet-footer{border-top:1px solid #bcc9b7;margin-top:22px;padding-top:14px;font-size:9px}.rail-label{font-size:8px;color:#60705b;letter-spacing:.1em;margin:16px 0 6px}.din-rail{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));min-height:125px;background:#c6cec1;position:relative;gap:0;border-block:10px solid #dde3d8}.din-device{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:4px;border:1px solid #b3bcaf;background:#fbfcf9;color:#293728;padding:8px 2px 3px;min-width:0;min-height:132px;text-align:center;box-shadow:2px 3px 5px #46504119}.din-device:hover{background:#f0f7e9}.din-device.selected{outline:2px solid var(--accent);outline-offset:-2px;z-index:3}.din-code{font-size:8px;color:#516149;line-height:1}.din-brand{font-size:6px;letter-spacing:.09em;color:#687961;font-weight:600}.din-device strong{font-size:16px;line-height:1.2;letter-spacing:-.03em;font-weight:650}.din-kind{font-size:7px;color:#44553c;white-space:nowrap}.din-toggle{width:55%;height:24px;background:#273725;border-top:5px solid #52664b;border-bottom:4px solid #152012;margin:3px 0}.din-device.relay .din-toggle{background:#253d22;width:70%;border:0;position:relative}.din-device.relay .din-toggle:after{content:'OK';font-size:10px;color:#c8ed99;position:absolute;inset:4px 0}.din-device.main .din-toggle{background:var(--accent);border-color:#4a8552 #000 #234c29}.din-terminal{font-size:11px;line-height:1;color:#84907e;white-space:pre;letter-spacing:6px;margin-left:6px}.din-blank{border:1px solid #d2d9cd;background:#e9ede5;min-height:132px}.device-detail{min-height:76px;display:flex;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}.device-detail>span{background:var(--green);color:var(--lime);padding:8px;font-size:10px}.device-detail b{font-size:12px;font-weight:550}.device-detail p{font-size:10px;color:var(--muted);margin-top:3px}.device-detail>strong{font-size:13px;white-space:nowrap;margin-left:auto;font-weight:500}.drawing-note{font-size:10px;color:var(--muted);margin-top:12px}.estimate-section{margin-top:38px}.estimate-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.estimate-heading>span{font-size:10px;color:var(--muted)}.table-scroll{overflow:auto}.estimate-table{width:100%;border-collapse:collapse;font-size:11px}.estimate-table th{background:var(--bg-2);padding:12px 8px;text-align:left;color:var(--muted);font-size:10px;font-weight:500}.estimate-table td{padding:13px 8px;border-bottom:1px solid var(--line);vertical-align:top}.estimate-table td:first-child{width:50%;line-height:1.55}.estimate-table td small{display:block;font-size:9px;color:var(--muted)}.estimate-table td:not(:first-child){white-space:nowrap;font-variant-numeric:tabular-nums}.estimate-table th:last-child,.estimate-table td:last-child{text-align:right}.estimate-totals{padding:22px 0 0}.estimate-totals>div{display:flex;justify-content:space-between;gap:20px;margin-bottom:12px;font-size:12px}.estimate-totals b{font-weight:500}.estimate-totals .grand-total{background:var(--green);color:white;padding:25px 20px;align-items:center;margin-top:22px;font-size:12px}.grand-total strong{color:var(--lime);font-size:29px;font-weight:500;letter-spacing:-.035em;white-space:nowrap;font-variant-numeric:tabular-nums}.estimate-actions{display:flex;gap:10px;margin-top:18px}.estimate-actions .btn{font-size:12px;min-height:47px;justify-content:center}.estimate-actions .btn:first-child{flex:1}.estimate-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:16px}.panel-warnings{display:grid;gap:10px;margin-top:22px}.panel-warnings p{font-size:11px;line-height:1.6;background:var(--accent-soft);padding:14px;color:var(--green);border:1px solid #ccdbc5}.engineering-notes{margin-top:30px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}.engineering-notes summary{cursor:pointer;font-weight:500}.engineering-notes>div{margin-top:18px;font-size:11px;line-height:1.8;color:var(--muted)}.engineering-notes ul{padding-left:18px}.engineering-notes li+li{margin-top:10px}.engineering-notes a{color:var(--accent)}.empty-cabinet{padding:45px 20px;text-align:center;color:var(--muted);min-height:330px;display:flex;align-items:center;justify-content:center;flex-direction:column}.empty-cabinet .ic{width:50px;height:50px;margin-bottom:20px;color:var(--accent)}.empty-cabinet h3{font-size:25px}.empty-cabinet p{font-size:12px;margin-top:15px}.empty-table{color:var(--muted);padding-block:30px!important}.calculation-error{font-size:12px;padding:15px;background:var(--accent-soft);border:1px solid var(--accent);margin-bottom:24px}.has-error .shield-visual,.has-error .estimate-totals{opacity:.4}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}input[aria-invalid=true]{border-color:var(--danger)!important;outline:1px solid var(--danger)}[aria-current=page]{color:var(--accent);text-decoration:underline!important}
@media(max-width:1150px){.shield-layout{grid-template-columns:320px minmax(0,1fr);gap:32px}.live-indicator{display:none}.cabinet{padding:16px}.shield-stats{gap:20px}.estimate-table{font-size:10px}.estimate-table th{font-size:9px}.estimate-table td{padding:12px 5px}.shield-form h2,.shield-result h2{font-size:21px}.stepper button{width:24px}.stepper input{width:34px}.load-name label{font-size:11px}.load-name .ic{width:16px}.load-name{gap:7px}}
@media(max-width:850px){.shield-layout{grid-template-columns:270px minmax(0,1fr);gap:24px}.panel-page-head p{font-size:13px}.demo-label{font-size:10px;padding:12px}.config-grid{gap:12px 8px}.config-grid label{font-size:10px}.config-grid input,.config-grid select{font-size:11px;padding-inline:6px}.load-name .ic{display:none}.load-name label{font-size:11px}.load-name small{font-size:8px}.load-row{gap:8px}.shield-stats{gap:16px}.shield-stats strong{font-size:24px}.shield-stats span{font-size:8px}.cabinet{padding:12px}.din-device{min-height:116px;padding-top:6px}.din-blank{min-height:116px}.din-device strong{font-size:14px}.din-kind{font-size:6px}.din-brand{font-size:5px}.device-detail{gap:9px;flex-wrap:wrap}.device-detail p{font-size:9px}.device-detail b{font-size:11px}.estimate-heading>span{display:none}.estimate-table{min-width:390px}.estimate-totals .grand-total{padding:20px 14px;flex-wrap:wrap;gap:12px}.grand-total strong{font-size:27px}.estimate-actions{flex-wrap:wrap}.estimate-actions .btn{width:100%}.panel-toolbar>span{font-size:11px}}
@media(max-width:680px){.shield-layout{grid-template-columns:1fr;gap:36px}.panel-page{padding-top:22px;padding-bottom:45px}.panel-page-head{display:block;margin-top:25px;margin-bottom:26px}.panel-page h1{font-size:42px}.panel-page-head p{font-size:13px;margin-top:20px}.demo-label{display:inline-block;margin-top:20px;padding:10px 14px}.panel-toolbar{gap:8px;flex-wrap:wrap;padding:16px 0;margin-bottom:28px}.panel-toolbar>span{width:100%;margin-bottom:4px}.preset-button{font-size:11px;padding:8px 12px}.clear-button{font-size:11px;padding-inline:7px}.config-grid{gap:15px}.config-grid label{font-size:11px}.config-grid input,.config-grid select{font-size:12px;padding:10px}.shield-form h2,.shield-result h2{font-size:23px}.load-name .ic{display:block;width:18px}.load-name label{font-size:12px;max-width:190px}.load-name small{font-size:9px}.stepper button{width:31px;height:40px}.stepper input{width:40px;height:40px}.check-row{font-size:12px}.load-row{padding:13px 0}.config-hint{font-size:11px}.assembly-options{padding-bottom:25px}.shield-stats{gap:30px}.shield-stats strong{font-size:28px}.shield-stats span{font-size:10px}.cabinet{padding:16px 12px}.cabinet-head{font-size:9px}.din-device{min-height:120px}.din-blank{min-height:120px}.din-code{font-size:7px}.din-kind{font-size:6px}.device-detail b{font-size:12px}.device-detail p{font-size:10px}.device-detail>strong{font-size:12px}.drawing-note{font-size:10px}.estimate-table{font-size:10px;min-width:0}.estimate-table th{font-size:8px}.estimate-table td{padding:11px 4px}.estimate-table td:first-child{width:44%;min-width:112px;font-size:10px}.estimate-table td:not(:first-child){font-size:9px}.estimate-totals .grand-total{flex-wrap:nowrap;font-size:11px;padding:22px 15px}.grand-total strong{font-size:27px}.estimate-actions{flex-wrap:nowrap}.estimate-actions .btn{width:auto;padding:13px;font-size:11px}.engineering-notes{font-size:12px}.engineering-notes>div{font-size:11px}}
@media print{.panel-page-head{margin:0 0 20px}.panel-page h1{font-size:26px}.panel-page-head p,.demo-label,.back-link,.panel-toolbar,.shield-form,.drawing-note,.device-detail{display:none}.shield-layout{display:block}.shield-result{width:100%}.cabinet{max-width:500px;margin:auto;break-inside:avoid}.shield-visual{break-after:page}.shield-stats{justify-content:center}.estimate-table{font-size:10px}.estimate-table tr{break-inside:avoid}.table-scroll{overflow:visible}.estimate-totals{break-inside:avoid}.estimate-totals .grand-total{background:white;color:#000;border:1px solid #000}.grand-total strong{color:#000}.engineering-notes>div{display:block}.engineering-notes{break-inside:avoid}.panel-warnings p{background:transparent;border:1px solid #777}.shield-section-top h2{font-size:23px}.din-device{box-shadow:none}}

.mobile-result-link{display:none}
@media(max-width:680px){body:has(.panel-page){padding-bottom:60px}.mobile-result-link{position:fixed;bottom:0;left:0;right:0;background:var(--green);color:white;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;text-decoration:none;z-index:45;border-top:1px solid #42634e}.mobile-result-link b{font-size:11px;color:var(--lime);font-weight:500}.save-toast{bottom:74px}}
@media print{.mobile-result-link{display:none!important}}

/* Product catalog and the photographed DIN composition. */
.config-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:28px;position:sticky;top:90px;z-index:5;background:white;padding-top:8px}
.config-tabs button{flex:1;border:0;border-bottom:3px solid transparent;background:white;padding:14px 10px;font-size:14px;color:var(--muted)}
.config-tabs button[aria-selected=true]{color:var(--accent);border-color:var(--accent);font-weight:600}
.config-tabs button span{margin-left:5px;font-size:11px}
.smart-preset{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}
.smart-intro p{font-size:12px;line-height:1.7;color:var(--muted);margin-top:14px}
.smart-helper{border:1px solid var(--line);padding:14px;margin:20px 0}
.smart-helper summary{cursor:pointer;font-size:12px;font-weight:500;line-height:1.5}
.smart-helper p{font-size:10px;color:var(--muted);margin-top:12px;line-height:1.7}
.helper-grid{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:10px;margin:16px 0}
.helper-grid label{font-size:10px;line-height:1.5;color:var(--muted)}
.helper-grid input{width:100%;display:block;height:40px;padding:8px;border:1px solid var(--line-2);margin-top:6px;background:white;font-size:13px}
.smart-base{margin:18px 0 10px}
.smart-base>div{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:12px;margin-top:-1px}
.smart-base img{width:46px;height:46px;object-fit:contain}
.smart-base b{display:block;font-size:11px;font-weight:550}
.smart-base small{display:block;font-size:10px;color:var(--muted);margin-top:3px}
.smart-base em{margin-left:auto;font-size:9px;font-style:normal;color:var(--accent)}
.smart-product{display:grid;grid-template-columns:45px 1fr auto;gap:10px;align-items:center;border-top:1px solid var(--line);padding:17px 0}
.product-thumb{height:72px;display:flex;align-items:center;justify-content:center}
.product-thumb img{max-height:72px;width:100%;object-fit:contain}
.product-copy label{display:block;font-size:12px;font-weight:600;line-height:1.4;cursor:text}
.product-copy p{font-size:10px;color:var(--muted);line-height:1.5;margin-top:5px}
.product-copy small{display:block;font-size:10px;color:var(--accent);margin-top:7px}
.product-source{grid-column:2/4;font-size:10px;color:var(--muted);text-decoration:none;justify-self:start}
.product-source:hover{color:var(--accent);text-decoration:underline}
.smart-product .stepper input{width:32px}
.smart-product .stepper button{width:24px}
.smart-summary{padding:18px;background:var(--accent-soft);border:1px solid #cfddc8;margin-bottom:20px}
.smart-summary>div{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:12px}
.smart-summary b{font-weight:550}
.smart-summary>div>span{font-size:11px;color:var(--accent)}
.smart-summary p{font-size:12px;line-height:1.7;margin-top:9px}
.smart-summary small{display:block;margin-top:7px;font-size:10px;line-height:1.7;color:var(--muted)}
.rail-label{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.04em}
.rail-label span{font-size:8px}
.din-rail{background:#c4cec1;border-block:6px solid #d5dfd0;min-height:182px}
.photo-device{background:#fff;min-height:182px;padding:8px 4px 7px;gap:6px;box-shadow:none;border:1px solid #c8cec4}
.photo-device:hover{background:#f6f9f3}
.photo-device .din-code{font-size:9px}
.din-photo{display:flex;align-items:center;justify-content:center;height:133px;width:100%;min-width:0}
.din-photo img{height:100%;min-width:0;max-width:100%;object-fit:contain;flex:1}
.din-caption{font-size:10px;line-height:1.2;letter-spacing:-.02em;font-weight:600;overflow-wrap:anywhere}
.photo-device .din-kind{font-size:8px}
.din-blank{min-height:182px}
.device-detail{padding:22px 0;align-items:start;gap:20px}
.detail-photo{width:85px;flex:0 0 85px;height:125px;background:white;display:flex;align-items:center;justify-content:center}
.detail-photo img{width:100%;height:100%;object-fit:contain}
.detail-copy{flex:1;min-width:0}
.detail-code{font-size:9px;color:var(--accent)}
.detail-copy h3{font-size:17px;line-height:1.3;margin-top:5px}
.detail-copy p{font-size:11px;line-height:1.65;margin-top:8px}
.detail-copy a{display:inline-block;margin-top:10px;font-size:11px;color:var(--accent)}
.device-detail>strong{margin-top:20px;font-size:15px}
.external-devices{padding:24px 0 18px;border-bottom:1px solid var(--line)}
.external-devices h3{font-size:16px}
.external-devices>p{font-size:11px;color:var(--muted);margin-top:5px}
.external-devices>div{display:flex;gap:12px;flex-wrap:wrap;margin-top:15px}
.external-device{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);background:white;text-align:left}
.external-device:hover,.external-device[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}
.external-device img{width:45px;height:50px;object-fit:contain}
.external-device b{font-size:11px;display:block;font-weight:550}
.external-device small{font-size:10px;display:block;margin-top:3px;color:var(--muted)}
.interface-preview{margin-top:30px;border-block:1px solid var(--line);padding:18px 0}
.interface-preview summary{font-size:12px;cursor:pointer;font-weight:500}
.interface-preview figure{margin-top:18px}
.interface-preview img{width:100%;height:auto;max-width:600px;border:1px solid var(--line)}
.interface-preview figcaption{font-size:11px;line-height:1.7;color:var(--muted);margin-top:12px;max-width:540px}
.estimate-note a{color:var(--accent)}
@media(min-width:1151px){.shield-layout{grid-template-columns:395px minmax(0,1fr);gap:44px}}
@media(max-width:1150px){.smart-product{grid-template-columns:35px 1fr auto;gap:8px}.product-copy label{font-size:11px}.product-copy p{font-size:9px}.product-copy small{font-size:9px}.smart-product .stepper button{width:22px}.smart-product .stepper input{width:28px}.detail-photo{width:65px;flex-basis:65px}.device-detail{gap:14px}.smart-summary>div{flex-wrap:wrap;gap:5px}.din-caption{font-size:9px}}
@media(min-width:681px) and (max-width:850px){.smart-product{grid-template-columns:40px 1fr}.smart-product .stepper{grid-column:2;justify-self:start}.product-source{grid-column:2}.device-detail>strong{margin:0 0 0 auto}.din-caption{font-size:8px}.config-tabs{top:76px}}
@media(max-width:680px){.config-tabs{top:70px}.smart-product{grid-template-columns:46px 1fr auto;gap:10px}.product-copy label{font-size:12px}.product-copy p{font-size:10px}.product-copy small{font-size:10px}.smart-product .stepper button{width:28px;height:40px}.smart-product .stepper input{width:32px;height:40px}.smart-intro p{font-size:12px}.smart-summary{padding:15px}.photo-device,.din-blank{min-height:154px}.din-photo{height:105px}.photo-device .din-code{font-size:8px}.photo-device .din-kind{font-size:6px}.din-caption{font-size:8px}.detail-photo{width:65px;flex-basis:65px;height:105px}.detail-copy h3{font-size:16px}.device-detail{position:relative;padding-bottom:45px}.device-detail>strong{position:absolute;bottom:12px;right:0;margin:0}.external-devices>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.external-device{padding:8px;gap:8px}.external-device img{width:32px;height:40px}.external-device b{font-size:10px}.external-device small{font-size:9px}.smart-preset{order:2}.clear-button{order:3}.smart-helper p{font-size:11px}}
@media print{.config-tabs,.interface-preview{display:none}.smart-summary,.external-devices{break-inside:avoid}.external-devices{margin-top:16px}.photo-device{print-color-adjust:exact;-webkit-print-color-adjust:exact}.cabinet{max-width:600px}.photo-device,.din-blank{min-height:130px}.din-photo{height:90px}.shield-visual{break-after:auto}.estimate-section{break-before:page}.engineering-notes{break-inside:auto}}
