/* White and blue surfaces inspired by the main Hanschke website. */
.pool-configurator{--brand-blue:#304c81;--brand-hover:#24406f;--brand-soft:#e9eef7;background:linear-gradient(145deg,#fff 0%,#f0f5fc 52%,#e4edf9 100%);background-attachment:fixed}
.pool-configurator .intro h1 em{color:#4569a3}
.pool-configurator .workspace{gap:26px;padding-bottom:32px}
.pool-configurator .viewer{background:radial-gradient(ellipse at 38% 22%,#fff 0%,#f4f8ff 32%,#dbe7fa 70%,#b9cfe9 100%);border:1px solid #c8d8ee;border-radius:24px;box-shadow:0 18px 55px #304c8110,inset 0 1px 0 #fff}
.pool-configurator .viewer.light-preview-on{background:radial-gradient(ellipse at 40% 20%,#2b456c,#0d1c32 85%);border-color:#425f85}
.pool-configurator :is(.view-pill,.icon-button){background:#ffffffeb;border:1px solid #d7e3f2;box-shadow:0 4px 16px #304c810b;color:#304c81}
.pool-configurator .view-pill i,.pool-configurator .cad-dot{background:#5d82be}
.pool-configurator .configuration{border:1px solid #d3dfef;border-radius:22px;box-shadow:0 15px 45px #304c810b;background:linear-gradient(180deg,#fff,#f8fbff)}
.pool-configurator .steps{background:linear-gradient(110deg,#fff,#edf3fc);border-bottom-color:#d7e3f2;padding:0 14px}
.pool-configurator .step{min-height:66px;color:#596d88}
.pool-configurator .step.active{color:#304c81;border-bottom-color:#304c81}
.pool-configurator .step span{background:#e3ebf7;color:#526b92}
.pool-configurator .step.active span{background:linear-gradient(135deg,#557bb7,#304c81);color:white;box-shadow:0 3px 8px #304c8126}
.pool-configurator .panel{padding:26px 24px 18px}
.pool-configurator .panel-heading h2{font-weight:600;letter-spacing:-.035em}
.pool-configurator :is(.choice,.swatch){border-radius:12px;border-color:#cfdaeb;background:linear-gradient(130deg,#fff,#f8fbff);box-shadow:0 2px 5px #304c8105;transition:background-color .22s,border-color .22s,box-shadow .22s,transform .22s}
.pool-configurator :is(.choice,.swatch):hover:not(:disabled){background:linear-gradient(130deg,#fff,#e2ecfb);border-color:#8ca8d1;box-shadow:0 5px 16px #304c8112}
.pool-configurator :is(.choice,.swatch).selected{background:linear-gradient(130deg,#fff 0%,#e4edfb 58%,#d4e2f7 100%);border-color:#426aa5;box-shadow:inset 0 0 0 1px #426aa5,0 5px 14px #304c8110;color:#203f70}
.pool-configurator .segments .choice.selected{background:linear-gradient(125deg,#4b70aa,#304c81);border-color:#304c81;color:#fff;box-shadow:0 4px 12px #304c8124}
.pool-configurator .choice:disabled{box-shadow:none;transform:none}
.pool-configurator .selected .choice-dot{border-color:#426aa5;background:white}
.pool-configurator :is(.type-illustration,.choice-illustration,.cover-product-illustration,.product-choice img){background:#fff}
.pool-configurator :is(.info-box,.custom-stairs-note,.binder-included,.automatic-count,.light-preview-controls,.binder-light-choice,.quote-additional){background:linear-gradient(120deg,#f4f8ff,#e8f0fb);border-color:#cdddf0}
.pool-configurator .info-box.geometry-warning,.pool-configurator .info-box.on-request{background:#faf5e8;border-color:#e8d7b2}
.pool-configurator .gutter-cost-card{background:linear-gradient(120deg,#fff,#edf4ff);border-color:#c8d9ef}
.pool-configurator .model-price-bar{background:linear-gradient(115deg,#fff,#edf4ff);border-color:#c8d9ef;border-radius:16px;box-shadow:0 7px 22px #304c810b}
.pool-configurator .model-price-bar.has-open-items{background:#fffbf2;border-color:#e8d7b2}
.pool-configurator .tool{background:linear-gradient(120deg,#fff,#eef4fc);border:1px solid #c6d7ee;color:#304c81;min-height:40px;box-shadow:0 3px 12px #304c8110}
.pool-configurator .tool.active{background:linear-gradient(125deg,#4b70aa,#304c81);border-color:#304c81;color:#fff}
.pool-configurator .tool:hover:not(:disabled):not(.active){background:#dce8fa;border-color:#7395c4}
.pool-configurator .measure-step{background:linear-gradient(135deg,#fff,#e2ecfb);border-color:#c5d6ed;color:#304c81}
.pool-configurator .measure-range{accent-color:#304c81}
.pool-configurator .measure-range::-webkit-slider-runnable-track{background:linear-gradient(to right,#426aa5 var(--range-fill,50%),#dce6f4 var(--range-fill,50%))}
.pool-configurator .measure-range::-webkit-slider-thumb{background:#426aa5;box-shadow:0 0 0 1px #426aa5}
.pool-configurator :is(.drag-hint,.concept-note>span){color:#526987}
.pool-configurator .light-preview-on .drag-hint{color:#d4e4f7}
.pool-configurator :is(select,input[type=number]){border-radius:9px;border-color:#bfd0e7;background-color:#fff;color:#203f70}
.pool-configurator :is(button,a,select,input):focus-visible{outline:3px solid #5284cc;outline-offset:3px}
@media(max-width:760px){.pool-configurator{background-attachment:scroll}.pool-configurator .viewer,.pool-configurator .configuration{border-radius:18px}.pool-configurator .panel{padding:24px 19px 16px}.pool-configurator .workspace{gap:18px}.pool-configurator .steps{padding:0 9px}}
@media(prefers-reduced-motion:reduce){.pool-configurator *{transition:none!important}}

.pool-configurator .cover-section-preview{margin:18px 0;border:1px solid #cbddea;border-radius:14px;overflow:hidden;background:#f1f7fc}
.pool-configurator .cover-section-preview img{display:block;width:100%;height:auto;object-fit:contain}

.pool-configurator .cover-section-preview a{display:block;color:#245e8a;text-decoration:none}.pool-configurator .cover-section-preview a span{display:block;padding:8px 14px 12px;font-size:12px;text-decoration:underline}.pool-configurator .cover-section-preview a:focus-visible{outline:3px solid #245e8a;outline-offset:-3px}

.pool-configurator .cover-section-preview .cover-section-link{border-top:1px solid #d6e4ef;background:#fff}
