/* All public UI is strictly scoped; no global theme selectors are modified. */
.agl-tool,.agl-directory,.agl-cta-banner{box-sizing:border-box;font-family:inherit;color:#1c3441}
.agl-tool *,.agl-directory *,.agl-cta-banner *{box-sizing:border-box}
.agl-tool{--agl-ink:#1c3441;--agl-muted:#5f7380;--agl-border:#dce8ea;--agl-surface:#fff;--agl-sea:#087d78;--agl-sea-dark:#06615e;--agl-soft:#eff8f7;max-width:1120px;width:100%;margin:26px auto 34px;padding:0;font-size:16px;line-height:1.5}
.agl-tool-header{display:flex;align-items:center;gap:20px;margin-bottom:22px;padding:24px 26px;border:1px solid var(--agl-border);border-radius:20px;background:linear-gradient(110deg,#f1faf9 0%,#fff 70%);box-shadow:0 6px 30px rgba(19,51,58,.035)}
.agl-tool-icon{height:66px;width:66px;min-width:66px;display:flex;align-items:center;justify-content:center;border-radius:18px;background:#def2ef;color:#0a736e}
.agl-tool p,.agl-cta-banner p{margin-top:0}
.agl-tool .agl-eyebrow{font-size:10px;letter-spacing:1.5px;color:#087d78;font-weight:800;margin:0 0 5px}
.agl-eyebrow-dot{font-size:12px;margin:0 4px;color:#85ada8}
.agl-tool h2.agl-tool-title{font-family:inherit;font-weight:800;line-height:1.2;font-size:clamp(22px,2.5vw,31px);letter-spacing:-.6px;margin:0 0 8px;color:#153543}
.agl-tool .agl-tool-summary{font-size:14px;line-height:1.6;margin:0;color:#5a7180;max-width:700px}
.agl-layout{display:grid;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);gap:18px;align-items:start}
.agl-panel{padding:23px 23px 24px;background:#fff;border:1px solid var(--agl-border);border-radius:20px;min-width:0;box-shadow:0 4px 26px rgba(17,53,66,.035)}
.agl-input-panel{background:#fff}
.agl-result-panel{background:linear-gradient(180deg,#f7fcfb 0%,#fff 180px)}
.agl-panel-heading{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e6eef0}
.agl-panel-heading .agl-step{display:inline-flex;align-items:center;justify-content:center;background:#e4f4f1;color:#087d78;font-size:11px;font-weight:800;border-radius:9px;height:29px;width:30px}
.agl-panel-heading .agl-step-alt{background:#e9eef6;color:#557395}
.agl-tool .agl-panel-heading h3{font-family:inherit;color:#243c46;font-size:16px;font-weight:800;margin:0;line-height:1.4}
.agl-form{display:grid;gap:17px}
.agl-field{display:block;min-width:0}
.agl-tool .agl-field>label{font-weight:700;font-size:12.5px;color:#304b58;display:block;margin:0 0 7px}
.agl-input-wrap,.agl-select-wrap{display:flex;min-width:0;align-items:center;border:1px solid #d5e1e6;background:#fff;border-radius:11px;box-shadow:0 1px 2px rgba(12,44,55,.025);transition:border-color .15s ease,box-shadow .15s ease;overflow:hidden}
.agl-input-wrap:focus-within,.agl-select-wrap:focus-within{border-color:#088780;box-shadow:0 0 0 3px rgba(8,125,120,.13)}
.agl-tool .agl-input-wrap input,.agl-tool .agl-select-wrap select{display:block;min-width:0;width:100%;height:43px;border:0!important;outline:none!important;box-shadow:none!important;background:transparent!important;color:#1e3946;font-family:inherit;font-size:16px;font-weight:600;line-height:1.4;margin:0!important;padding:9px 13px!important;border-radius:0!important;appearance:auto}
.agl-tool .agl-select-wrap select{cursor:pointer;appearance:auto}
.agl-input-wrap .agl-unit{display:flex;align-items:center;align-self:stretch;padding:0 11px;flex-shrink:0;background:#f5f9fa;color:#59717d;border-left:1px solid #e6eef0;font-size:11px;font-weight:700;white-space:nowrap}
.agl-tool .agl-field-hint{display:block;margin-top:5px;font-size:11px;color:#6a818b;line-height:1.4}
.agl-group-label{margin:4px 0 -5px;padding-bottom:7px;border-bottom:1px dashed #d4e2e5;color:#0a7872;font-size:11px;letter-spacing:1px;text-transform:uppercase;font-weight:800}
.agl-tool .agl-input-note{margin:0;color:#67808a;font-size:11.5px;line-height:1.6;background:#f4f9fa;border-left:3px solid #c4e5e0;padding:9px 12px;border-radius:5px}
.agl-checkbox{display:flex;gap:9px;align-items:center;color:#304b58;font-size:13px;cursor:pointer;font-weight:600}
.agl-tool .agl-checkbox input{width:16px;height:16px;accent-color:#0d807a;flex:none;margin:0}
.agl-tool .agl-calculate{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:11px;color:#fff;background:linear-gradient(105deg,#087e78,#0b6e73);font-family:inherit;font-size:14px;font-weight:800;min-height:46px;padding:12px 18px;cursor:pointer;transition:filter .18s,transform .18s;box-shadow:0 5px 12px rgba(6,102,98,.16);margin-top:2px}
.agl-tool .agl-calculate:hover{filter:brightness(.93);transform:translateY(-1px)}
.agl-tool .agl-calculate:focus-visible,.agl-cta-banner .agl-cta-button:focus-visible{outline:3px solid #73bdad;outline-offset:3px}
.agl-error,.agl-error-noscript{padding:11px 12px;border-radius:9px;background:#fff3f0;color:#8f3025;border:1px solid #f1d0cb;font-size:12px;line-height:1.5}
.agl-error[hidden],.agl-mode[hidden]{display:none!important}
.agl-output{min-height:160px;min-width:0}
.agl-loading{text-align:center;padding:60px 10px;color:#68808a;font-size:13px}
.agl-featured{display:flex;flex-direction:column;gap:6px;padding:20px 20px;border-radius:15px;color:#fff;background:linear-gradient(110deg,#0d7d7b,#126c78);margin-bottom:17px;overflow-wrap:anywhere}
.agl-featured>span{font-size:11px;opacity:.88;font-weight:700;letter-spacing:.5px}
.agl-featured>strong{font-size:clamp(23px,2.4vw,29px);letter-spacing:-.7px;font-weight:850;line-height:1.17;color:#fff;overflow-wrap:anywhere}
.agl-featured>small{font-size:11px;line-height:1.5;color:#deefee;font-weight:500}
.agl-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.agl-stat{background:#fff;border:1px solid #e2ecee;padding:12px 11px;border-radius:12px;display:flex;flex-direction:column;gap:4px;min-width:0}
.agl-stat-label{font-size:10.5px;line-height:1.45;color:#687e88;font-weight:700}
.agl-stat-value{color:#203d49;font-size:17px;line-height:1.3;letter-spacing:-.2px;font-weight:800;overflow-wrap:anywhere}
.agl-stat-sub{font-size:10px;color:#768e97;line-height:1.4;overflow-wrap:anywhere}
.agl-results-note{color:#758894;font-size:11px;line-height:1.6;border-top:1px solid #e1ebed;padding-top:13px;margin:18px 0 0!important}
.agl-visual{margin:0 0 12px;border:1px solid #e3eef0;background:#f7fafb;border-radius:14px;padding:6px 12px 10px;overflow:hidden;text-align:center}
.agl-tire-graphic{display:block;width:100%;max-width:350px;height:auto;margin:0 auto}
.agl-visual-caption{font-size:12px;font-weight:800;color:#415963;margin-top:-1px}
.agl-visual-caption>span{font-size:10px;color:#8a9aa0;font-weight:500;margin-left:5px}
.agl-compare-visual{padding:8px}
.agl-visual-legend,.agl-mixture-legend{display:flex;align-items:center;justify-content:space-around;flex-wrap:wrap;gap:8px;color:#526b76;font-weight:700;font-size:11px;padding:3px 0}
.agl-legend-dot{display:inline-block;width:10px;height:10px;background:#148d85;border-radius:50%;margin-right:5px}
.agl-legend-dot-new{background:#42617c}
.agl-legend-dot-blue{background:#8dbcdc}
.agl-feedback{font-size:11.5px;color:#446e6d;background:#eef8f6;border-left:3px solid #4fa69f;border-radius:7px;padding:10px 13px;line-height:1.6;margin-top:15px}
.agl-feedback-warning{color:#7a5a2b;border-left-color:#c89e4d;background:#fff8ed}
.agl-status{font-weight:700;font-size:11px;display:inline-flex;padding:5px 9px;border-radius:7px}
.agl-status-good{color:#14533f;background:#d7f6e9}
.agl-status-warning{color:#724a18;background:#ffeec8}
.agl-status-neutral{color:#2b536f;background:#e7f1fc}
.agl-featured .agl-status{width:fit-content}
.agl-meter{height:9px;width:100%;border-radius:20px;background:#edf2f4;overflow:hidden;margin:6px 0 16px}
.agl-meter-fill{height:100%;background:linear-gradient(90deg,#4fc5ad,#14877d);border-radius:20px}
.agl-meter-blue{background:linear-gradient(90deg,#a2c3de,#4d81a9)}
.agl-position-bars{padding:8px 5px 0}
.agl-position-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#516c7a;font-weight:700}
.agl-position-label b{color:#27424f}
.agl-battery-visual{display:flex;align-items:center;justify-content:center;padding:23px 6px 14px}
.agl-battery-shell{height:90px;width:min(250px,90%);border:7px solid #344857;border-radius:16px;padding:4px;position:relative;display:flex;align-items:center;overflow:hidden;background:#e7f0ef}
.agl-battery-terminal{height:26px;width:12px;margin-left:-1px;background:#344857;border-radius:0 4px 4px 0}
.agl-battery-level{height:100%;border-radius:5px;background:linear-gradient(90deg,#56baaa,#0a867d)}
.agl-battery-shell>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:900;font-size:20px;color:#1c3940;background:rgba(255,255,255,.76);padding:1px 6px;border-radius:6px;white-space:nowrap}
.agl-tool .agl-subhead{font-size:13px;margin:18px 0 5px;color:#214b54}
.agl-tool .agl-description{font-size:12px;line-height:1.65;color:#59727c;margin:0}
.agl-mixture{height:35px;border:1px solid #daebeb;border-radius:10px;overflow:hidden;display:flex;margin:15px 0 9px}
.agl-mixture-conc{background:#1b9188}
.agl-mixture-water{background:#9ccde8}
.agl-charge-visual{padding:10px 2px 6px}
.agl-charge-track{height:25px;background:#e8f0f2;border-radius:8px;overflow:hidden;position:relative}
.agl-charge-start{position:absolute;left:0;top:0;bottom:0;background:#bcd7d4}
.agl-charge-target{position:absolute;top:0;bottom:0;background:#13988e}
.agl-charge-label,.agl-tongue-track-label{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:10px;color:#567481;margin-top:7px;font-weight:700}
.agl-windows{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:10px 0 15px}
.agl-window-card{border:1px solid #e2ebee;border-radius:12px;background:#fff;padding:11px;text-align:center;display:flex;flex-direction:column;gap:9px}
.agl-window-card>span{font-size:11px;font-weight:800;color:#415c67}
.agl-window-card>strong{font-size:13px;color:#244e5b}
.agl-window-frame{height:90px;border:5px solid #8f9ea6;border-radius:50% 13% 12% 12%;overflow:hidden;background:#d5edf4;position:relative}
.agl-window-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(130deg,rgba(255,255,255,.5),transparent 45%);z-index:2;pointer-events:none}
.agl-window-glass{position:absolute;inset:0}
.agl-tongue-track{margin:25px 2px 14px}
.agl-tongue-gradient{height:23px;border-radius:9px;background:linear-gradient(90deg,#e1e9ec 0%,#e1e9ec 33%,#2b9c90 35%,#2b9c90 65%,#e1e9ec 67%,#e1e9ec 100%)}
.agl-directory{max-width:1100px;margin:20px auto}
.agl-directory-group{margin-bottom:29px}
.agl-directory-group>h2{font-size:22px;margin-bottom:14px;color:#183744}
.agl-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.agl-directory-tile{display:flex;flex-direction:column;gap:8px;position:relative;padding:17px;border:1px solid #d8e6e8;background:#fff;border-radius:15px;min-width:0;text-decoration:none!important;color:#2b4350!important}
.agl-directory-tile strong{font-size:15px;line-height:1.35}
.agl-directory-tile span{font-size:12px;color:#6b818b;line-height:1.5}
.agl-directory-tile b{align-self:flex-end;color:#087d78}
.agl-directory a.agl-directory-tile:hover{border-color:#5ba99e;background:#f5fbfa}
/* CTA banners */
.agl-cta-banner{margin:28px 0;padding:clamp(20px,3vw,30px);width:100%;background:var(--agl-cta-bg,#eff8f7);border:1px solid rgba(34,90,85,.10);border-radius:16px;display:flex;align-items:center;gap:22px;overflow:hidden;box-shadow:0 3px 18px rgba(18,70,70,.04)}
.agl-cta-content{flex:1;min-width:0}
.agl-cta-banner .agl-cta-eyebrow{font-size:10px;line-height:1.4;color:var(--agl-cta-accent,#0f766e);text-transform:uppercase;letter-spacing:1.15px;font-weight:850}
.agl-cta-banner h3.agl-cta-title{font-family:inherit!important;font-size:clamp(19px,2.4vw,25px)!important;line-height:1.23!important;letter-spacing:-.35px;font-weight:800!important;color:#1d3b42!important;margin:7px 0 9px!important}
.agl-cta-banner p.agl-cta-description{font-size:13px!important;color:#4b6770!important;line-height:1.6!important;margin:0 0 15px!important;max-width:590px}
.agl-cta-banner .agl-cta-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--agl-cta-accent,#0f766e);color:white!important;border:0;border-radius:10px;padding:12px 19px;text-decoration:none!important;min-height:43px;font-size:12px;font-weight:800;line-height:1.3;transition:filter .15s}
.agl-cta-banner .agl-cta-button:hover{filter:brightness(.9)}
.agl-cta-media{width:35%;max-width:250px;min-width:130px;align-self:stretch;display:flex;justify-content:center;align-items:center}
.agl-cta-media img.agl-cta-image{max-width:100%;width:100%;height:100%;max-height:215px;object-fit:cover;border-radius:11px;margin:0}
@media(max-width:800px){.agl-layout{grid-template-columns:minmax(0,1fr)}.agl-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agl-tool{max-width:620px}.agl-result-panel{background:#fafffe}.agl-tool-header{padding:21px}.agl-panel{padding:20px}}
@media(max-width:520px){.agl-tool{margin:16px auto 25px;font-size:14px}.agl-tool-header{padding:16px;gap:13px;align-items:flex-start;border-radius:15px}.agl-tool-icon{height:48px;width:48px;min-width:48px;border-radius:12px}.agl-tool-icon svg{height:26px;width:26px}.agl-tool h2.agl-tool-title{font-size:21px}.agl-tool .agl-tool-summary{font-size:12px}.agl-tool .agl-eyebrow{letter-spacing:.8px;font-size:9px}.agl-panel{padding:16px;border-radius:15px}.agl-layout{gap:13px}.agl-stats{gap:8px}.agl-stat{padding:10px 9px}.agl-stat-value{font-size:15px}.agl-stat-label{font-size:10px}.agl-featured{padding:16px}.agl-featured>strong{font-size:23px}.agl-directory-grid{grid-template-columns:minmax(0,1fr)}.agl-cta-banner{border-radius:13px;padding:18px;flex-direction:column;align-items:stretch;gap:15px}.agl-cta-media{width:100%;max-width:none;min-width:0;height:160px}.agl-cta-media img.agl-cta-image{height:160px}.agl-cta-banner .agl-cta-button{width:100%}}
@media(prefers-reduced-motion:reduce){.agl-tool .agl-calculate,.agl-cta-banner .agl-cta-button{transition:none}.agl-tool .agl-calculate:hover{transform:none}}
