/* Styles the EA4FSI Tools hub and tool interfaces, including the shared dark application theme and Tools hero. */
:root{--bg:#edf2f5;--panel:#fff;--panel-soft:#eef5f8;--text:#183247;--muted:#6f818e;--accent:#1b668f;--accent-strong:#124c6d;--accent-blue:#2e84b8;--border:#cfdae1;--line:rgba(23,54,76,.16);--shadow:0 18px 48px rgba(8,30,46,.12);--tools-navy:#071523;--tools-panel:#0d2032;--tools-panel-soft:#112a40;--tools-blue:#1f638f;--tools-blue-bright:#4aa7df;--tools-gold:#ffc531;--tools-text:#eef5fa;--tools-muted:#9fb2c1;--tools-line:rgba(174,207,228,.18);--tools-shadow:0 20px 55px rgba(0,8,16,.28)}
.tools-hero{position:relative;min-height:330px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(112deg,#071522 0%,#0d2d48 55%,#13567e 100%);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}
.tools-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(80,170,220,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(80,170,220,.055) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,transparent,black 42%,black)}
.tools-hero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,197,49,.2);border-radius:50%;right:8%;top:50%;transform:translateY(-50%);box-shadow:0 0 0 46px rgba(68,164,218,.045),0 0 0 92px rgba(68,164,218,.025)}
.tools-hero__inner{position:relative;z-index:1;width:min(100% - 7vw,1744px);margin:auto;display:grid;grid-template-columns:minmax(0,760px) 1fr;align-items:center;gap:4rem}
.tools-kicker,.tool-page__eyebrow{color:var(--tools-gold);font-family:"IBM Plex Sans Condensed",sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.tools-hero h1{margin:.45rem 0 .7rem;font-family:"IBM Plex Sans Condensed",sans-serif;font-size:clamp(2.65rem,5vw,5rem);font-weight:600;line-height:.95;letter-spacing:-.035em}
.tools-hero p{max-width:690px;margin:0;color:#c3d2dc;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.55}
.tools-hero__mark{justify-self:end;width:118px;height:118px;display:grid;place-items:center;border:1px solid rgba(255,197,49,.38);border-radius:24px;color:var(--tools-gold);background:rgba(3,17,29,.3);box-shadow:0 18px 55px rgba(0,0,0,.2);transform:rotate(3deg)}
.tools-hero__mark svg{width:64px;height:64px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.tools-hub{width:min(100% - 7vw,1380px);margin:0 auto;padding:4rem 0 5rem}.tools-section{margin:0 0 3.4rem}.tools-section__head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.1rem;padding-bottom:.65rem;border-bottom:1px solid #d8e0e6}.tools-section__head h2{margin:0;color:#17364c;font-family:"IBM Plex Sans Condensed",sans-serif;font-size:1.15rem;letter-spacing:.09em;text-transform:uppercase}.tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tool-card{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:1.15rem;min-height:126px;padding:1.35rem 1.45rem;border:1px solid #d7e0e6;border-radius:4px;background:#fff;color:#17364c;text-decoration:none;box-shadow:0 7px 24px rgba(14,42,60,.06);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.tool-card:hover,.tool-card:focus-visible{transform:translateY(-2px);border-color:#8ab8d3;box-shadow:0 12px 30px rgba(14,42,60,.11);outline:3px solid rgba(255,197,49,.42);outline-offset:2px}.tool-card__icon{width:64px;height:64px;display:grid;place-items:center;border:1px solid #bfd3df;border-radius:4px;color:#236b98;background:linear-gradient(145deg,#f3f8fb,#e8f2f7)}.tool-card__icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tool-card h3{margin:0 0 .3rem;font-family:"IBM Plex Sans Condensed",sans-serif;font-size:1.28rem;font-weight:600}.tool-card p{margin:0;color:#607482;font-size:.92rem;line-height:1.45}.tool-card__arrow{color:#c28d00;font-size:1.45rem}.tool-card__external{display:inline-block;margin-top:.45rem;color:#8b6a10;font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.tool-page{min-height:calc(100vh - 180px);background:linear-gradient(180deg,#071522 0,#0a1d2d 430px,#edf2f5 430px,#edf2f5 100%);padding-bottom:4.5rem}.tool-page__hero{width:min(100% - 7vw,1180px);margin:auto;padding:3.2rem 0 2.4rem;display:grid;grid-template-columns:82px minmax(0,1fr);gap:1.5rem;align-items:center;color:#fff}.tool-page__icon{width:78px;height:78px;display:grid;place-items:center;border:1px solid rgba(255,197,49,.36);border-radius:4px;color:var(--tools-gold);background:rgba(22,70,102,.34)}.tool-page__icon svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.tool-page__hero h1{margin:.3rem 0 .35rem;font-family:"IBM Plex Sans Condensed",sans-serif;font-size:clamp(2.1rem,4vw,3.65rem);line-height:1;font-weight:600;letter-spacing:-.025em}.tool-page__hero p{margin:0;max-width:760px;color:#b9cbd8;font-size:1rem;line-height:1.5}.site-main{width:min(100% - 7vw,980px);margin:0 auto}.site-main>.card{position:relative;padding:clamp(22px,4vw,38px);border:1px solid #cfdae1;border-radius:5px;background:#fff;color:#183247;box-shadow:0 18px 48px rgba(8,30,46,.12)}
.site-main label{color:#183247}.site-main input,.site-main select,.site-main textarea{width:100%;max-width:100%;border:1px solid #b8c8d2;border-radius:4px;background:#f9fbfc;color:#142d40;box-shadow:inset 0 1px 2px rgba(0,0,0,.03)}.site-main input:focus,.site-main select:focus,.site-main textarea:focus{border-color:#347fae;outline:3px solid rgba(52,127,174,.16)}.site-main button,.site-main input[type=submit]{border:0;border-radius:4px;background:#164f75!important;color:#fff!important;font-family:"IBM Plex Sans Condensed",sans-serif;font-weight:600;letter-spacing:.02em;box-shadow:0 6px 16px rgba(9,48,74,.16)}.site-main button:hover,.site-main input[type=submit]:hover{background:#0e3f61!important}.site-main a:focus-visible,.site-main button:focus-visible{outline:3px solid rgba(255,197,49,.7);outline-offset:3px}.site-main .hint,.site-main .method-note{color:#6f818e}.site-main .result,.site-main .results,.site-main .result-box{border-color:#b8d0de!important;background:#eef6fa!important}.site-main .result-label{color:#5b7484!important}.site-main .result-value,.site-main .locator{color:#154f74!important}.site-main .error{border-color:#e1b3b3!important;background:#fff1f1!important;color:#8a3030!important}
.tools-back{width:min(100% - 7vw,980px);margin:1.25rem auto 0}.tools-back a{display:inline-flex;align-items:center;gap:.45rem;color:#4e6575;text-decoration:none;font-size:.82rem;font-weight:600}.tools-back a:hover,.tools-back a:focus-visible{color:#17364c;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.tools-hero{min-height:310px}.tools-hero__inner{grid-template-columns:1fr}.tools-hero__mark{display:none}.tools-grid{grid-template-columns:1fr}.tool-page__hero{grid-template-columns:62px minmax(0,1fr);gap:1rem;padding-top:2.4rem}.tool-page__icon{width:58px;height:58px}.tool-page__icon svg{width:32px;height:32px}.tool-page{background:linear-gradient(180deg,#071522 0,#0a1d2d 360px,#edf2f5 360px,#edf2f5 100%)}}
@media(max-width:520px){.tools-hub{padding-top:2.7rem}.tool-card{grid-template-columns:52px minmax(0,1fr);min-height:0;padding:1rem}.tool-card__icon{width:50px;height:50px}.tool-card__icon svg{width:28px;height:28px}.tool-card__arrow{display:none}.tool-page__hero{grid-template-columns:1fr}.tool-page__icon{margin-bottom:.25rem}.site-main{width:min(100% - 2rem,980px)}}

.tools-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* v155 dark application surfaces; shared site chrome and existing hero treatments remain unchanged. */
.tools-hub,.tool-page{--panel:#0d2032;--panel-soft:#112a40;--text:#eef5fa;--muted:#9fb2c1;--accent:#ffc531;--accent-strong:#e6a900;--border:rgba(174,207,228,.2);--line:rgba(174,207,228,.18);--shadow:0 20px 55px rgba(0,8,16,.28)}
.tools-hub{background:linear-gradient(180deg,#081827 0%,#0a2032 48%,#071523 100%);box-shadow:0 0 0 100vmax #071523;clip-path:inset(0 -100vmax);color:var(--tools-text)}
.tools-section__head{border-bottom-color:var(--tools-line)}
.tools-section__head h2{color:#d9e6ee}
.tool-card{border-color:rgba(92,166,210,.28);background:linear-gradient(145deg,#0d2235,#0a1b2b);color:var(--tools-text);box-shadow:0 10px 28px rgba(0,8,16,.2)}
.tool-card:hover,.tool-card:focus-visible{border-color:rgba(74,167,223,.72);box-shadow:0 15px 34px rgba(0,8,16,.34),inset 0 1px 0 rgba(255,255,255,.035)}
.tool-card__icon{border-color:rgba(90,177,226,.32);color:#69bcec;background:linear-gradient(145deg,#12314a,#0d263b)}
.tool-card p{color:#a9bbc8}
.tool-card__arrow,.tool-card__external{color:var(--tools-gold)}
.tool-page{background:linear-gradient(180deg,#071522 0,#0a1d2d 430px,#081827 430px,#071523 100%)}
.site-main>.card{border-color:rgba(108,178,218,.28);background:linear-gradient(145deg,#0e2438,#0a1d2e);color:var(--tools-text);box-shadow:var(--tools-shadow)}
.site-main label{color:#e9f1f6}
.site-main input,.site-main select,.site-main textarea{border-color:rgba(126,187,222,.3);background:#132c43;color:#f2f7fa;box-shadow:inset 0 1px 2px rgba(0,0,0,.2)}
.site-main input::placeholder,.site-main textarea::placeholder{color:#7892a5}
.site-main input:focus,.site-main select:focus,.site-main textarea:focus{border-color:#4aa7df;outline:3px solid rgba(74,167,223,.18)}
.site-main button,.site-main input[type=submit]{background:linear-gradient(180deg,#ffd04d,#e9ad13)!important;color:#102638!important;box-shadow:0 7px 18px rgba(0,0,0,.24)}
.site-main button:hover,.site-main input[type=submit]:hover{background:linear-gradient(180deg,#ffda6d,#f0b91f)!important}
.site-main .hint,.site-main .method-note{color:var(--tools-muted)}
.site-main .result,.site-main .results,.site-main .result-box{border-color:rgba(84,164,210,.3)!important;background:#0a1b2b!important;color:var(--tools-text)!important}
.site-main .result-label{color:#9fb2c1!important}
.site-main .result-value,.site-main .locator{color:var(--tools-gold)!important}
.tools-back a{color:#9fb2c1}
.tools-back a:hover,.tools-back a:focus-visible{color:#fff}
@media(max-width:760px){.tool-page{background:linear-gradient(180deg,#071522 0,#0a1d2d 360px,#081827 360px,#071523 100%)}}

/* v156 aligns Tools spacing, typography and section headings with the shared EA4FSI site system. */
html,body{margin:0;padding:0}body{font-family:"Source Sans 3",Arial,sans-serif;background:#071523}.tools-hero p,.tool-page__hero p,.tool-card p,.tool-card__external,.site-main,.site-main input,.site-main select,.site-main textarea,.site-main label,.site-main .hint,.site-main .method-note,.site-main .result,.site-main .results,.site-main .result-box{font-family:"Source Sans 3",Arial,sans-serif}.tools-section,.tools-section__head{background:transparent!important}.tools-section__head{padding-left:0;padding-right:0}.tools-section__head h2{background:transparent!important;color:#d9e6ee}

/* v157 unifies the Tools content canvas and aligns hero introductory copy with the REMER typography. */
.tools-hub{background:#071523;box-shadow:0 0 0 100vmax #071523;clip-path:inset(0 -100vmax)}
.tools-section,.tools-section__head{background:transparent!important}
.tools-hero p,.tool-page__hero p{font-family:"Source Sans 3",Arial,sans-serif;font-size:17px;line-height:1.55;font-weight:400;color:#aab8c1}
@media(max-width:760px){.tools-hero p,.tool-page__hero p{font-size:15px}}

/* v161 unifies legacy-inspired tool geometry, dark surfaces, readable results and responsive form controls. */
.tool-page .site-main,.tool-page .site-main *,.tool-page .site-main *::before,.tool-page .site-main *::after{box-sizing:border-box}
.tool-page .site-main{color:var(--tools-text)}
.tool-page .site-main>.card,.tool-page .site-main .card,.tool-page .site-main .section-card{border-color:rgba(108,178,218,.28);border-radius:24px;background:linear-gradient(145deg,#0e2438,#0a1d2e);color:var(--tools-text);box-shadow:var(--tools-shadow)}
.tool-page .site-main h2,.tool-page .site-main h3,.tool-page .site-main h4,.tool-page .site-main p,.tool-page .site-main td,.tool-page .site-main strong{color:inherit}
.tool-page .site-main label{color:#e9f1f6}
.tool-page .site-main input,.tool-page .site-main select,.tool-page .site-main textarea{min-width:0;max-width:100%;border-color:rgba(126,187,222,.3);border-radius:13px;background:#112a40;color:#f2f7fa}
.tool-page .site-main input:focus,.tool-page .site-main select:focus,.tool-page .site-main textarea:focus{border-color:#4aa7df;outline:0;box-shadow:0 0 0 4px rgba(74,167,223,.16)}
.tool-page .site-main button,.tool-page .site-main input[type=submit]{border-radius:13px}
.tool-page .site-main .section-card,.tool-page .site-main .summary-group,.tool-page .site-main .meta-item,.tool-page .site-main .secondary-item,.tool-page .site-main .address-step,.tool-page .site-main .result,.tool-page .site-main .results,.tool-page .site-main .result-box,.tool-page .site-main .empty{color:var(--tools-text)}
.tool-page .site-main .section-card{background:linear-gradient(145deg,#0d2235,#0a1b2b)}
.tool-page .site-main .summary-group{border-color:rgba(108,178,218,.22);background:rgba(10,27,43,.72)}
.tool-page .site-main .meta-item,.tool-page .site-main .secondary-item,.tool-page .site-main .address-step{border-color:rgba(126,187,222,.18);background:#112a40}
.tool-page .site-main .meta-value,.tool-page .site-main .secondary-value,.tool-page .site-main .address-step-value,.tool-page .site-main .result-sub{color:#e8f1f6}
.tool-page .site-main .meta-label,.tool-page .site-main .secondary-label,.tool-page .site-main .address-step-label,.tool-page .site-main .summary-sub,.tool-page .site-main .viewpoint-title,.tool-page .site-main .section-note,.tool-page .site-main .source-note{color:#9fb2c1}
.tool-page .site-main .table-wrap{border-color:rgba(126,187,222,.22);background:#0a1b2b}
.tool-page .site-main table{color:#e8f1f6}
.tool-page .site-main th{color:#a9bbc8;background:#10283d}
.tool-page .site-main td{border-bottom-color:rgba(174,207,228,.14)}
.tool-page .site-main tbody tr:hover{background:rgba(74,167,223,.06)}
.tool-page .site-main .form-grid,.tool-page .site-main .grid{min-width:0}
.tool-page .site-main .form-grid>*,.tool-page .site-main .grid>*{min-width:0}
.tool-page .site-main .summary-group-collector{border-color:rgba(74,167,223,.28);background:linear-gradient(145deg,rgba(18,49,74,.82),rgba(10,27,43,.9))}
.tool-page .site-main .summary-group-collector .meta-item{background:#102b42}
.tool-page .site-main .summary-group-collector .meta-value{color:#eef6fb}
@media(max-width:760px){.tool-page .site-main .form-grid,.tool-page .site-main .grid{grid-template-columns:minmax(0,1fr)!important}.tool-page .site-main>.card,.tool-page .site-main .card,.tool-page .site-main .section-card{border-radius:19px}}

/* v162 restores legacy control accents and aligns result/clock cards consistently across Tools. */
.tool-page .site-main input[type="number"]{color-scheme:dark;accent-color:#52d6a2}
.tool-page .site-main input[type="number"]::-webkit-inner-spin-button,.tool-page .site-main input[type="number"]::-webkit-outer-spin-button{opacity:1;cursor:pointer}
.tool-page .site-main .result-box,.tool-page .site-main .result{text-align:center!important}
.tool-page .site-main .result-box .result-label,.tool-page .site-main .result-box .result-value,.tool-page .site-main .result-box .result-sub,.tool-page .site-main .result .result-label,.tool-page .site-main .result .result-value{width:100%;text-align:center!important}
.tool-page .site-main .clock.primary{border-color:rgba(82,214,162,.28)!important;background:rgba(82,214,162,.075)!important}
.tool-page .site-main .clock.primary .zone{color:#52d6a2!important}


/* v163 restores left-aligned calculator result cards after the v162 alignment trial. */
.tool-page .site-main .result-box,.tool-page .site-main .result{text-align:left!important}
.tool-page .site-main .result-box .result-label,.tool-page .site-main .result-box .result-value,.tool-page .site-main .result-box .result-sub,.tool-page .site-main .result .result-label,.tool-page .site-main .result .result-value{text-align:left!important}
.tool-page .site-main .clock.primary,.tool-page .site-main .clock.primary *{text-align:center!important}

/* Canonical Tools hub hero: approved artwork with REMER-matched copy geometry. */
.tools-hero{
  min-height:360px;
  background-color:#061522;
  background-image:linear-gradient(90deg,rgba(5,18,30,.96) 0%,rgba(5,18,30,.88) 34%,rgba(5,18,30,.34) 62%,rgba(5,18,30,.08) 100%),url("../images/tools/tools-hero.png");
  background-size:contain;
  background-position:center center;
  background-repeat:no-repeat;
}
.tools-hero:before,.tools-hero:after{display:none}
.tools-hero__inner{box-sizing:border-box;width:100%;max-width:1744px;min-height:360px;margin:0 auto;padding:58px 72px;display:flex;align-items:center;justify-content:flex-start;gap:0}
.tools-hero__inner>div{max-width:760px;margin:0;padding:0;position:relative;z-index:1}
@media(min-width:761px){.tools-hero__inner{align-items:flex-start;padding-top:72px}}
@media(max-width:760px){
  .tools-hero{min-height:auto;background-size:auto 100%;background-position:68% center}
  .tools-hero__inner{min-height:auto;padding:38px 20px;align-items:center}
  .tools-hero__inner>div{max-width:760px}
  .tools-kicker{margin:0 0 9px}
  .tools-hero h1{margin:0;font-size:39px;line-height:.96;letter-spacing:.015em}
  .tools-hero p{margin:23px 0 0;font-size:15px;line-height:1.55}
}
