.configurator,.photo-tool{--cfg-blue:#009ee3;--cfg-ink:#202222;--cfg-panel:#2e3333;--cfg-line:rgba(255,255,255,.15);color:#fff;font-family:inherit;width:100%}.configurator *, .photo-tool *{box-sizing:border-box}.configurator [hidden],.photo-tool [hidden]{display:none!important}.cfg-layout,.photo-layout{display:grid;gap:24px;align-items:start}.cfg-controls{display:grid;gap:20px}.cfg-step,.cfg-summary,.photo-controls{background:var(--cfg-panel);border:1px solid var(--cfg-line);padding:24px;border-radius:3px}.cfg-step-heading{display:flex;gap:15px;align-items:flex-start;margin-bottom:24px}.cfg-step-heading>span{color:#009ee3;font-size:13px;font-weight:750;border:1px solid #009ee366;width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:50%}.cfg-step-heading h2,.cfg-summary h2{font-size:22px;letter-spacing:-.03em;line-height:1.2;color:#fff;margin:2px 0 6px}.cfg-step-heading p{font-size:13px;color:#c2cdcd;margin:0;line-height:1.6}.cfg-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-size:13px;line-height:1.4;font-weight:600;color:#eef3f3;position:relative}.cfg-field>span{font-size:11px;color:#bdc8c8;font-weight:400}.cfg-field input,.cfg-field select,.cfg-point-row input{width:100%;min-width:0;min-height:46px;padding:11px 12px;background:#202222;border:1px solid #7b8989;color:#fff;border-radius:2px;font-family:inherit;font-size:16px;font-weight:400;line-height:1.4;accent-color:#009ee3;color-scheme:dark}.cfg-field input::placeholder{color:#a5b4b4}.cfg-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cfg-pair .cfg-field>span{margin-top:-5px}.cfg-shapes{border:0;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:8px}.cfg-shapes legend{font-size:13px;font-weight:600;margin-bottom:9px}.cfg-shapes label{padding:9px 8px;border:1px solid #718080;border-radius:2px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:5px;min-height:44px;flex:1;justify-content:center;white-space:nowrap}.cfg-shapes label:has(input:checked){border-color:#009ee3;background:#009ee31a}.cfg-shapes input{accent-color:#009ee3;width:14px;height:14px;margin:0}.cfg-systems{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.cfg-systems button{padding:14px 10px;border:1px solid #718080;background:transparent;color:#fff;font-family:inherit;font-size:13px;font-weight:600;line-height:1.4;cursor:pointer;min-height:90px;text-align:left;display:flex;flex-direction:column;gap:12px}.cfg-systems button[aria-pressed=true]{border-color:#009ee3;background:#009ee31a;box-shadow:inset 0 -2px #009ee3}.cfg-swatch{display:block;height:30px;width:100%;border-left:3px solid #c7d3d3;border-right:3px solid #c7d3d3;background-color:#3c4545}.cfg-swatch-panel{background-image:repeating-linear-gradient(90deg,transparent 0 9px,#bbc9c9 9px 10px),repeating-linear-gradient(0deg,transparent 0 9px,#bbc9c9 9px 10px)}.cfg-swatch-mesh{background-image:repeating-linear-gradient(45deg,transparent 0 7px,#bbc9c9 7px 8px),repeating-linear-gradient(-45deg,transparent 0 7px,#bbc9c9 7px 8px)}.cfg-swatch-grass{background:#4b7355;background-image:repeating-linear-gradient(100deg,transparent 0 3px,#31563f 3px 5px)}.cfg-swatch-wall{background:repeating-linear-gradient(0deg,#c0c1ba 0 8px,#94988e 8px 9px)}.cfg-help{font-size:12px;line-height:1.7;color:#c3cccc;margin:0 0 16px}.cfg-help:last-child{margin-bottom:0}.cfg-preview{background:#eff3f2;color:#202222;border-radius:3px;overflow:hidden}.cfg-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:20px 20px 0}.cfg-eyebrow{font-size:10px;font-weight:750;letter-spacing:.13em;line-height:1.5}.cfg-live{font-size:11px;color:#52615b;display:flex;align-items:center;gap:5px}.cfg-live:before{content:'';width:5px;height:5px;background:#009ee3;border-radius:50%}.cfg-view{height:340px;position:relative;isolation:isolate}.cfg-view>canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.cfg-view>canvas:active{cursor:grabbing}.cfg-view-loading{display:grid;place-items:center;height:100%;font-size:14px;color:#52615b}.cfg-camera{padding:0 18px 14px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center}.cfg-camera p{font-size:11px;line-height:1.7;margin:0;color:#43524c}.cfg-camera p span{font-size:10px}.cfg-camera>div{display:flex;gap:5px}.cfg-camera button{min-width:38px;min-height:40px;border:1px solid #9fb2a8;background:#fff;color:#202222;border-radius:2px;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:5px 10px}.cfg-camera button:first-child,.cfg-camera button:nth-child(2){font-size:20px}.cfg-preview-note{margin:0!important;padding:13px 20px;border-top:1px solid #c9d3cd;font-size:11px!important;line-height:1.6;color:#43524c!important}.cfg-summary{margin-top:18px}.cfg-summary-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.cfg-summary-heading>span{font-size:10px;padding:5px 8px;border:1px solid #859d9d;color:#dbe7e7;white-space:nowrap}.cfg-totals{display:grid;grid-template-columns:1fr 1fr;gap:20px 14px;margin:24px 0}.cfg-totals strong{display:block;font-size:30px;line-height:1.1;letter-spacing:-.04em;font-weight:600;color:#fff}.cfg-totals small{font-size:12px;letter-spacing:0;margin-left:5px;font-weight:400;color:#b4c6c6}.cfg-totals div>span{font-size:11px;color:#c3cccc;display:block;margin-top:6px}.cfg-totals>p{font-size:13px;grid-column:1/-1}.cfg-summary table{border-collapse:collapse;width:100%;font-size:12px;color:#e2eaea;margin:0 0 20px}.cfg-summary caption{text-align:left;font-weight:600;color:#fff;margin-bottom:10px}.cfg-summary th{text-align:left;border-bottom:1px solid #879797;padding:10px 0;font-weight:500;color:#b7c7c7;font-size:11px}.cfg-summary th:last-child,.cfg-summary td:last-child{text-align:right}.cfg-summary td{padding:11px 0;border-bottom:1px solid #ffffff1a;line-height:1.5}.cfg-summary td:first-child{padding-right:16px}.cfg-summary td:last-child{white-space:nowrap;font-weight:600}.cfg-summary td span{font-weight:400;color:#b7c7c7}.cfg-summary details{border:0;border-bottom:1px solid #ffffff1a;padding-bottom:18px;margin-bottom:20px}.cfg-summary summary{font-size:12px;cursor:pointer;min-height:32px;line-height:1.6;display:list-item}.cfg-assumptions{padding-left:16px;font-size:11px;line-height:1.7;color:#c5d0d0;margin:12px 0 0}.cfg-assumptions li+li{margin-top:9px}.cfg-actions{display:grid;gap:10px}.cfg-primary,.cfg-secondary{width:100%;min-height:48px;padding:13px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5;cursor:pointer;text-decoration:none;border-radius:2px;border:1px solid transparent}.cfg-primary{background:#009ee3;color:#122329}.cfg-secondary{background:transparent;border-color:#879898;color:#fff}.cfg-primary:hover{background:#25b4ef}.cfg-secondary:hover{background:#ffffff0b}.cfg-primary:disabled,.cfg-secondary:disabled,[aria-disabled=true]{opacity:.5;cursor:not-allowed}.cfg-reset{display:block;border:0;background:transparent;color:#c9d5d5;text-decoration:underline;text-underline-offset:4px;font-family:inherit;font-size:11px;font-weight:400;line-height:1.5;padding:10px 0;margin:5px auto 0;cursor:pointer;min-height:38px}.cfg-action-status,.photo-status{font-size:12px;line-height:1.65;color:#bde2ed;margin:12px 0 0;min-height:0}.cfg-action-status:empty,.photo-status:empty{display:none}.is-error{color:#ffb8ab!important}.cfg-error{margin-top:16px;padding:16px;background:#3d2927;border:1px solid #b88275;font-size:13px;line-height:1.65;color:#ffe8e1}.cfg-drawing{background:#eff3f2;width:100%;display:block;aspect-ratio:5/4;cursor:crosshair;border:1px solid #9aafaa;overflow:hidden}.cfg-draw-actions{display:flex;gap:8px;margin:12px 0}.cfg-small{min-height:40px;border:1px solid #879898;color:#fff;background:transparent;font-family:inherit;font-size:11px;font-weight:500;padding:7px 10px;cursor:pointer}.cfg-point-list{display:grid;gap:8px;margin-top:14px;max-height:300px;overflow:auto}.cfg-point-row{display:grid;grid-template-columns:18px 1fr 1fr 32px;gap:8px;align-items:center}.cfg-point-row>span{font-size:12px;color:#b4c5c5}.cfg-point-row label{display:flex;gap:5px;align-items:center;font-size:11px}.cfg-point-row input{font-size:13px;padding:5px;min-height:36px}.cfg-point-row button{height:36px;border:0;background:transparent;color:#fff;cursor:pointer;font-size:20px}.cfg-fallback-note{position:absolute;left:10px;right:10px;bottom:5px;padding:8px;font-size:10px!important;background:#ffffffdf;color:#344b40!important;border:1px solid #a4bcb0}.configurator :focus-visible,.photo-tool :focus-visible{outline:3px solid #70d0ff;outline-offset:3px}.photo-editor{background:#eff3f2;color:#202222;border-radius:3px;overflow:hidden}.photo-heading{display:flex;justify-content:space-between;gap:10px;padding:20px}.photo-heading>span:last-child{font-size:11px;color:#4c5e55}.photo-stage{min-height:340px;position:relative}.photo-empty{padding:40px 20px 50px;display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center;cursor:pointer;color:#607c6e;min-height:340px;justify-content:center}.photo-empty strong{font-size:23px;line-height:1.3;letter-spacing:-.03em;color:#202222}.photo-empty>span{font-size:12px;line-height:1.6;color:#53675c}.photo-empty .cfg-primary{margin-top:12px;width:auto;min-width:200px;color:#122329}.photo-stage canvas{width:100%;height:auto;display:block;cursor:move;touch-action:none}.photo-stage.has-photo{min-height:0}.photo-caption,.photo-warning{padding:15px 20px;margin:0!important;font-size:11px!important;line-height:1.7;color:#42584c!important;border-top:1px solid #b7c9bd}.photo-warning{background:#e1e9e3;font-weight:600}.photo-options{border:0;margin:28px 0 0;padding:0;min-width:0}.photo-options legend{font-size:15px;font-weight:600;padding:0;margin-bottom:20px}.photo-options:disabled{opacity:.4}.photo-controls input[type=file]{padding:8px;width:100%;font-size:11px}.photo-controls input::file-selector-button{background:#3e4b4b;border:0;color:#fff;border-radius:2px;padding:8px 10px;margin-right:10px;cursor:pointer}.photo-range{font-size:12px;display:grid;grid-template-columns:1fr auto;gap:7px;margin:18px 0;color:#e5eeee;line-height:1.5}.photo-range output{color:#c6d7d7;font-size:11px;font-variant-numeric:tabular-nums}.photo-range input{grid-column:1/-1;width:100%;min-height:28px;accent-color:#009ee3;margin:0}.photo-options .cfg-actions{margin-top:28px}.photo-tool canvas:focus-visible{outline-offset:-4px}
@media(min-width:768px){.cfg-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px}.cfg-sticky{position:sticky;top:105px}.cfg-output{align-self:stretch}.cfg-view{height:360px}.cfg-step,.cfg-summary{padding:24px}.photo-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr)}.photo-editor{position:sticky;top:105px}.photo-stage{min-height:440px}.photo-empty{min-height:440px}.photo-controls{padding:26px}}
@media(min-width:1150px){.cfg-layout{gap:36px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.cfg-step,.cfg-summary{padding:30px}.cfg-view{height:420px}.cfg-systems{grid-template-columns:repeat(4,1fr)}.cfg-systems button{font-size:11px;padding:12px 8px}.cfg-totals{grid-template-columns:repeat(4,1fr);gap:16px}.cfg-totals strong{font-size:30px}.cfg-camera{padding:0 24px 20px}.photo-layout{gap:32px;grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr)}}
@media(max-width:389px){.cfg-step,.cfg-summary,.photo-controls{padding:18px}.cfg-shapes{gap:5px}.cfg-shapes label{padding:7px 5px;font-size:10px}.cfg-pair{gap:8px}.cfg-field{font-size:12px}.cfg-view{height:290px}.cfg-summary-heading{align-items:flex-start;flex-direction:column;gap:5px}.cfg-camera p{font-size:10px}.cfg-camera button{padding:5px 8px}.cfg-step-heading h2{font-size:20px}.cfg-primary,.cfg-secondary{font-size:12px}.cfg-preview-head{padding:16px 14px 0}}
@media(prefers-reduced-motion:reduce){.configurator *,.photo-tool *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
