
/* PiscinFlux Centro de Cálculos — design responsivo V10 */
:root{--pc-ink:#153947;--pc-teal:#069f9e;--pc-muted:#5c7884;--pc-line:#dbe9e9}
html{scroll-behavior:smooth;scroll-padding-top:106px}
.calc-hero{background:radial-gradient(ellipse at 92% 20%,#d0f8ee 0%,transparent 46%),linear-gradient(145deg,#f3fcfb,#fff 65%);padding:92px 0 74px;border-bottom:1px solid #dfefed}
.calc-hero .wrap{max-width:1160px}.calc-hero h1{font-size:clamp(38px,5.3vw,66px);line-height:1.09;letter-spacing:-.045em;color:#123846;max-width:900px;margin:22px 0}.calc-hero p{font-size:17px;line-height:1.75;color:#4f737e;max-width:690px}.hero-badges{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}.hero-badges span{font-size:12px;border:1px solid #ccece7;color:#23736e;border-radius:100px;background:#fff;padding:9px 14px;font-weight:650}
.calc-layout{display:grid;grid-template-columns:248px minmax(0,1fr);gap:30px;align-items:start;padding-top:45px;padding-bottom:90px;max-width:1200px}.calc-aside{position:sticky;top:112px}.calc-aside-inner{padding:22px 16px;background:#f3faf9;border:1px solid #dbeeea;border-radius:21px}.aside-title{padding:0 12px;font-size:10px;letter-spacing:.14em;font-weight:800;color:#79969f}.side-link{display:flex;gap:11px;align-items:center;padding:14px 12px;border-radius:11px;color:#31545f;font-weight:650;font-size:13px;text-decoration:none;transition:background .15s}.side-link:hover,.side-link:focus-visible{background:#e2f4f1;color:#006e76}.aside-note{font-size:11px;line-height:1.6;margin:18px 12px 5px;color:#63808a}.calc-main{display:grid;gap:26px;min-width:0}.calc-panel{border:1px solid #dbe7e7;border-radius:24px;background:white;padding:clamp(23px,3.5vw,38px);box-shadow:0 12px 34px #153c4708;min-width:0;scroll-margin-top:110px}.calc-panel-top{display:flex;align-items:flex-start;gap:18px;margin-bottom:28px}.calc-number{min-width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#e1f8f3;color:#058e94;font-weight:850;font-size:15px}.calc-panel h2{font-size:clamp(23px,3.1vw,30px);letter-spacing:-.025em;margin:7px 0 9px;color:#153b48}.calc-panel-top p{font-size:14px;line-height:1.7;color:#5b7984;max-width:630px;margin:0}.calc-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 18px}.calc-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:740;color:#355864;min-width:0}.calc-form input,.calc-form select{width:100%;height:48px;background:#fbfefd;border:1px solid #ccdfde;color:#1d4651;border-radius:11px;padding:0 13px;outline:none;font:inherit;font-size:15px;transition:border .15s,box-shadow .15s}.calc-form input:focus-visible,.calc-form select:focus-visible{border-color:#00999e;box-shadow:0 0 0 3px #00a9a526}.calc-form label[hidden]{display:none}.result-band{background:linear-gradient(115deg,#066d79,#0b9b99);padding:23px 26px;border-radius:17px;color:#fff;margin-top:23px;display:flex;flex-direction:column;gap:6px}.result-band span,.result-band small{font-size:12px;color:#d0f6f3}.result-band strong{font-size:clamp(28px,4vw,41px);line-height:1.2;letter-spacing:-.035em}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:23px}.mini-metric{display:flex;flex-direction:column;gap:11px;border:1px solid #d8eae7;background:#f2faf8;padding:18px;border-radius:15px;min-width:0}.mini-metric span{font-size:11px;color:#557983;line-height:1.5}.mini-metric strong{font-size:clamp(17px,2.2vw,25px);color:#0c6572;overflow-wrap:anywhere}.small-note{font-size:11px!important;line-height:1.75!important;color:#627e86!important;margin:19px 0 0}.small-note a{color:#067e88;text-underline-offset:3px}.notice-box{background:#fffaf0;border:1px solid #f1dbad;color:#755925;border-radius:13px;padding:14px 18px;margin:0 0 22px;font-size:12px;line-height:1.75}.calc-primary{border:0;display:inline-flex;align-items:center;justify-content:center;gap:15px;margin-top:21px;min-height:49px;padding:13px 24px;border-radius:12px;background:#078e94;color:#fff;font-size:13px;font-weight:770;cursor:pointer;text-decoration:none;box-shadow:0 12px 24px #05778322}.calc-primary:hover{background:#006e79;color:#fff}.calc-primary:focus-visible{outline:3px solid #14c8bd;outline-offset:3px}.water-results{margin-top:21px;display:grid;gap:12px}.empty-state{padding:24px;border:1px dashed #bedbd7;border-radius:13px;color:#64808a;background:#f7fbfa;font-size:13px;line-height:1.6}.water-summary{padding:18px 20px;border-radius:15px;background:#e9f7f5;color:#185b63;border:1px solid #c7e9e4;font-weight:720;font-size:14px}.water-alert{border:1px solid #deebe8;border-left:4px solid #0a9797;border-radius:13px;padding:16px 18px;background:#fff}.water-alert.warning{border-left-color:#c68a25;background:#fffdf8}.water-alert.danger{border-left-color:#c85d48;background:#fff9f8}.water-alert h3{font-size:15px;color:#224b55;margin:0 0 7px}.water-alert p{font-size:12px;color:#4e707b;margin:0;line-height:1.75}.water-alert .product-tip{font-size:12px;color:#156e73;font-weight:700;margin-top:9px}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-card{border:1px solid #d9e8e6;padding:22px;border-radius:17px;background:linear-gradient(130deg,#fff,#f7fcfb)}.product-icon{display:grid;place-items:center;background:#e8f7f5;color:#05888f;border-radius:12px;width:39px;height:39px;font-size:21px}.product-card h3{font-size:15px;margin:15px 0 7px;color:#244c58}.product-card p{font-size:12px;color:#587680;line-height:1.7;margin:0 0 11px}.product-card small{font-size:10px;color:#739098;line-height:1.65;display:block}.calc-final{display:flex;align-items:center;justify-content:space-between;gap:25px;border-radius:22px;padding:34px;background:linear-gradient(125deg,#103d50,#097b7c);color:#fff}.calc-final .kicker{color:#b7f5e8}.calc-final h2{font-size:clamp(21px,3vw,30px);line-height:1.25;max-width:440px;margin:9px 0}.calc-final p{color:#d0e9ed;font-size:13px;max-width:520px;line-height:1.6}.calc-final .calc-primary{flex-shrink:0;margin:0;background:#fff;color:#086d76}.calc-final .calc-primary:hover{background:#dcfaf5}
@media(max-width:900px){.calc-layout{grid-template-columns:1fr;padding-top:27px}.calc-aside{position:static}.calc-aside-inner{padding:14px;display:flex;flex-wrap:wrap;align-items:center;gap:3px}.aside-title,.aside-note{display:none}.side-link{padding:9px 11px;border:1px solid #d8eeea;background:#fff}.calc-hero{padding:60px 0 50px}.calc-final{flex-direction:column;align-items:flex-start}}
@media(max-width:580px){.calc-layout{padding-bottom:50px}.calc-form{grid-template-columns:1fr}.metric-grid,.product-grid{grid-template-columns:1fr}.calc-panel-top{gap:12px}.calc-number{min-width:39px;height:39px}.calc-panel{padding:23px 19px;border-radius:20px}.calc-hero p{font-size:15px}.calc-aside-inner{flex-wrap:nowrap;overflow:auto;scrollbar-width:thin}.side-link{white-space:nowrap}.side-link span{white-space:nowrap}.calc-final{padding:25px}.hero-badges span{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* PiscinFlux V11: análise contextual, recomendações justificadas e relatório imprimível */
.field-hint{font-size:10px;font-weight:500;color:#65838c}
.calc-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.calc-action-hint{font-size:11px;color:#62808b;max-width:320px;line-height:1.6}
.product-context{display:grid;gap:13px;margin-top:10px}.product-dynamic{padding:19px 20px;border-radius:17px;border:1px solid #d8e9e7;background:#fbfefd}
.product-dynamic .product-priority{font-size:10px;font-weight:850;letter-spacing:.075em;color:#147b7c;text-transform:uppercase}
.product-dynamic h3{font-size:17px;color:#194953;margin:7px 0 10px}.product-dynamic dl{display:grid;gap:10px;margin:0}
.product-dynamic dl div{border-top:1px solid #e2eeee;padding-top:9px}.product-dynamic dt{font-size:11px;font-weight:800;color:#32717b}.product-dynamic dd{margin:3px 0 0;font-size:12px;color:#50717b;line-height:1.7}
.product-dynamic.warning{border-left:4px solid #bd8e2c}.product-dynamic.danger{border-left:4px solid #c45f4e}
.product-standards{margin-top:18px;border:1px solid #cfebe5;border-radius:15px;padding:16px 18px;background:#f2faf8}
.product-standards summary{cursor:pointer;font-size:13px;font-weight:780;color:#135964}.product-standards ul{font-size:12px;line-height:1.85;color:#527680;padding-left:19px;margin:12px 0 0}
.calc-form textarea{width:100%;border:1px solid #ccdfde;border-radius:11px;padding:12px;background:#fbfefd;color:#1d4651;outline:none;font:inherit;font-size:14px;resize:vertical;min-height:108px}
.calc-form textarea:focus-visible{border-color:#00999e;box-shadow:0 0 0 3px #00a9a526}.report-notes-label{grid-column:1/-1}
.report-actions{display:flex;flex-wrap:wrap;gap:10px;margin:21px 0 8px}.report-actions button{margin-top:0;min-height:46px}
.calc-secondary{border:1px solid #9bc9c7;border-radius:12px;background:#eff9f7;color:#0a6470;font-weight:750;padding:12px 16px;font-size:13px;cursor:pointer}
.calc-secondary:hover{background:#dff2ef}.calc-secondary:focus-visible{outline:3px solid #14c8bd;outline-offset:3px}
.report-feedback{min-height:18px;font-size:12px;font-weight:700;color:#0d7378;line-height:1.5}
.printable-report{border:1px solid #d5e6e4;border-radius:17px;padding:26px;background:#fff;color:#183b49}
.report-preview-header{display:flex;justify-content:space-between;gap:12px;border-bottom:2px solid #149999;padding-bottom:15px;align-items:center}
.report-preview-header strong{font-size:25px;letter-spacing:-.04em;color:#087b86}.report-preview-header span{font-size:10px;letter-spacing:.13em;color:#537784;font-weight:800}
.report-body{font-size:12px;line-height:1.8;color:#3b5b64;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:15px}
.report-body strong{color:#1c4853}.report-disclaimer{border-top:1px solid #dbece8;margin:20px 0 0;padding-top:13px;font-size:10px;color:#667f87;line-height:1.6}
.calc-references{padding:24px 26px;background:#f5fbfa;border:1px solid #d9ece8;border-radius:19px}
.calc-references h2{font-size:16px;color:#1b4d57}.calc-references p{font-size:12px;color:#547581;line-height:1.7}.calc-references ul{display:grid;gap:8px;margin:14px 0 0;padding-left:18px}
.calc-references a{font-size:12px;color:#087b85;text-decoration:underline;text-underline-offset:3px}
.water-summary.danger{background:#fff1ed;border-color:#edc4b9;color:#8e3c35}.water-summary.warning{background:#fff9ea;border-color:#efdba8;color:#7b6126}
.water-alert.info{border-left-color:#0c9a9c}.water-alert.danger{border-left-color:#c85d48}.water-alert.warning{border-left-color:#c68a25}
@media(max-width:700px){.report-actions{flex-direction:column}.report-actions button{width:100%}.printable-report{padding:18px}.report-preview-header{align-items:flex-start;flex-direction:column}}
@page{size:A4;margin:16mm}
@media print{
 body{background:white!important;color:#111!important}
 header.site-header,footer,.skip-link,.calc-hero,.calc-aside,.calc-main>.calc-panel:not(.report-panel),.calc-main>.calc-final,.calc-main>.calc-references,.report-panel>.calc-panel-top,.report-form,.report-actions,.report-feedback,.report-panel>.small-note,.mobile-contact-fab,.cookie-banner{display:none!important}
 .calc-layout,.calc-main,.report-panel{display:block!important;max-width:100%!important;width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;border:0!important}
 .calc-panel.report-panel{box-shadow:none!important;border:0!important;padding:0!important}
 .printable-report{border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important;break-inside:avoid}
 .report-body{font-size:10pt;line-height:1.55;white-space:pre-wrap}.report-disclaimer{font-size:9pt}
 .report-preview-header strong{color:#087b86!important}
 a[href]:after{content:none!important}
}
/* V11 responsividade: o menu horizontal não pode impor largura mínima ao grid. */
@media(max-width:900px){.calc-layout{grid-template-columns:minmax(0,1fr)}.calc-aside,.calc-main,.calc-aside-inner{min-width:0;max-width:100%}.calc-aside-inner{overflow-x:auto}}

/* V11.1: permitir paginação natural do relatório. */
@media print{.printable-report{break-inside:auto!important}.report-preview-header{break-after:avoid-page}}

/* V12 — legibilidade, navegação por toque, segurança editorial. */
.calc-panel{scroll-margin-top:115px}
.calc-action-hint{max-width:550px}
.calc-form select,.calc-form input{min-height:45px}
.calc-references a:focus-visible,.side-link:focus-visible{outline:3px solid #058a8a;outline-offset:3px}
@media (max-width:650px){.calc-hero{padding:50px 0 38px}.calc-hero h1{font-size:clamp(32px,8.3vw,43px)}.calc-panel{scroll-margin-top:90px}.calc-aside-inner{overscroll-behavior-x:contain}.calc-actions .calc-primary{width:100%}}
