/* =====================================================================
   asys-refine.css  ·  ads-system.com visual refinement layer
   Loads AFTER asys.css and asys-blog.css. Visual layer only.
   ===================================================================== */
:root{
 --ink30:#6B7079;
 --r-s:6px; --r-m:10px; --r-l:16px;
 --fs-12:12px; --fs-14:14px; --fs-16:16px; --fs-20:20px;
 --fs-25:25px; --fs-31:31px; --fs-39:39px; --fs-49:49px;
 --s-1:8px; --s-2:16px; --s-3:24px; --s-4:32px;
 --s-5:48px; --s-6:64px; --s-7:80px; --s-8:96px;
 --sec:var(--s-7);
 --tap:44px;
}
@media(max-width:820px){ :root{--sec:var(--s-5)} }
html,body.asys-page{overflow-x:clip}
body.asys-page h1.dsp,
body.asys-page .elementor .elementor-element.elementor-widget-heading h1.elementor-heading-title{
 font-size:clamp(var(--fs-31),4.4vw,46px);line-height:1.1;letter-spacing:-.04em}
body.asys-page .elementor .elementor-element.elementor-widget-heading h2.elementor-heading-title{
 font-size:var(--fs-25);line-height:1.2;letter-spacing:-.03em}
@media(max-width:820px){
 body.asys-page .elementor .elementor-element.elementor-widget-heading h2.elementor-heading-title,
 .cat__h h2,.art h2,.trust h2{font-size:var(--fs-20)}
}
body.asys-page h1.dsp{margin-bottom:var(--s-2)}
.lede{font-size:clamp(var(--fs-16),1.7vw,var(--fs-20));line-height:1.6;max-width:62ch}
.crumb{font-size:var(--fs-14)}
body.asys-page .elementor-widget-heading h2,.cat__h h2,.art h2{font-size:var(--fs-25);line-height:1.2;letter-spacing:-.03em}
.trust h2{font-size:var(--fs-25);line-height:1.2}
.aud__c h3,.split h3{font-size:var(--fs-20);line-height:1.25}
body.asys-page .elementor-widget-text-editor,
body.asys-page .elementor-widget-text-editor p,
.art p,.art ul.pts li,.split p,.tldr p,
body.asys-page .elementor-toggle .elementor-tab-content,
.trust>p{font-size:var(--fs-16);line-height:1.65}
.aud__c p,.cat__h p,.stats span,.mc__d,.chain__s span,.gl__d,
.trust__g p,.f small,.gfind__n,.out__row,.out__n,
.ft,.ft ul a,.ft__brand p,.ft__b,.ft__more{font-size:var(--fs-14);line-height:1.55}
.mc__n,.gl__t,.chain__s b,.catgrid b{font-size:var(--fs-16)}
body.asys-page .elementor-toggle .elementor-tab-title,
body.asys-page .elementor-widget-nested-accordion summary{font-size:var(--fs-16)}
.aud__c li a,.chain__s a,.split a.go,.gl__c,.jump a,.pag__r a,.pag__r span{font-size:var(--fs-14)}
.f label,.out__l,.bench th,.tldr__l,.pag__l,.ft h4,.trust__g h4,
.ft__meta,.gsec__n,.cat__n,.az a,.az span,.catgrid span,.tick__t em{font-size:var(--fs-12)}
.f label{letter-spacing:.06em}
.stats b{font-size:var(--fs-25);font-weight:700}
.out__v{font-size:var(--fs-39)}
.gsec__l{font-size:var(--fs-25)}
.f__p,.f__s{font-size:var(--fs-14)}
.hd__in .hnav .drop__t,.hd__in .hnav>a.all{font-size:var(--fs-14)}
.hd__in .hnav .drop__m a{font-size:var(--fs-14)}
.hd__in .hnav .drop__m a span{font-size:var(--fs-12)}
.ft__meta,.ft__b{color:#8A9099}
.gfind input::placeholder{color:var(--ink30)}
.cat{margin-top:var(--sec)}
.trust{margin-top:var(--sec);padding:var(--s-4)}
.split{margin-top:var(--sec);gap:var(--s-4)}
.chain{gap:var(--s-2);margin-top:var(--s-2)}
.aud{gap:var(--s-2);margin-top:var(--s-2)}
.more{gap:var(--s-2);margin-top:var(--s-4)}
.gl,.catgrid{gap:var(--s-2)}
.trust__g{gap:var(--s-3);margin-top:var(--s-2)}
.stats{gap:var(--s-4);margin-top:var(--s-3);padding-top:var(--s-3)}
.cat__h{margin-bottom:var(--s-2);gap:var(--s-2)}
.gsec{margin-top:var(--s-5)}
.gsec__h{margin-bottom:var(--s-2)}
.pag{margin-top:var(--s-5);padding-top:var(--s-3)}
.ft{margin-top:var(--sec);padding:var(--s-6) 0 var(--s-3)}
.ft__g{gap:var(--s-4) var(--s-3);padding-bottom:var(--s-3)}
.ft__b{padding-top:var(--s-2)}
body.asys-page .e-con-inner>.elementor-widget-heading:has(h2){margin-top:var(--s-6)}
body.asys-page .elementor-widget-heading h2{margin-bottom:var(--s-2)}
.mc,.gl__i,.catgrid a,.chain__s{padding:var(--s-2)}
.aud__c{padding:var(--s-3)}
.tldr{padding:var(--s-2) var(--s-3);margin:0 0 var(--s-3)}
.calc__b{gap:var(--s-3);padding:var(--s-3)}
.fields{gap:var(--s-2)}
.f{gap:var(--s-1)}
.out{padding:var(--s-3)}
.out__row{padding:var(--s-1) 0}
.jump{gap:var(--s-1);margin:0 0 var(--s-3)}
.az{gap:var(--s-1)}
.jump a{border-radius:var(--r-m)}
.az a,.az span,.cat__n,.mc__i,.gfind__c{border-radius:var(--r-s)}
.pag__r a,.pag__r span,.ico,.burger,.navx,
.hd__in .hnav .drop__t,.hd__in .hnav>a.all,.hd__in .hnav .drop__m a{border-radius:var(--r-m)}
.hd__in .hnav .drop__m{border-radius:var(--r-l)}
.aud__c li a,.chain__s a,.split a.go,.gl__c,.crumb a,.ft ul a,.ft__more,.gfind__n a{
 display:inline-flex;align-items:center;min-height:var(--tap)}
.aud__c ul,.ft ul{gap:0}
.ft ul a{min-width:var(--tap)}
.chain__s a{margin-top:0}
.gl__c{margin-top:0}
.jump a{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--s-2)}
.pag__r a,.pag__r span{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--s-2)}
.lg{min-height:var(--tap)}
.hd__in .hnav .drop__t,.hd__in .hnav>a.all{min-height:var(--tap)}
.burger{min-width:var(--tap);min-height:var(--tap);display:none;place-items:center;padding:0}
.az a,.az span{width:32px;height:32px}
@media(max-width:900px){
 .burger{display:grid}
 .burger span+span{margin-top:0}
 .burger{grid-auto-rows:min-content;row-gap:5px;align-content:center;justify-items:center}
 body.nav-open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 body.nav-open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .navx{min-width:var(--tap);min-height:var(--tap)}
 .az a,.az span{width:var(--tap);height:var(--tap)}
}
body.asys-page .gfind input{font-size:var(--fs-16)}
@media(max-width:900px){
 .az{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
 .az::-webkit-scrollbar{display:none}
 .az a,.az span{flex:none}
}
@media(max-width:820px){
 body.asys-page .e-con-inner>.elementor-widget-html:has(.jump){order:1}
 body.asys-page .e-con-inner>.elementor-widget-html:has(.calc)~*{order:2}
 body.asys-page .e-con-inner>.elementor-widget-html:has(.calc){margin-bottom:var(--s-3)}
 .calc__b{padding:var(--s-2);gap:var(--s-2)}
 .stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-3)}
 .trust{padding:var(--s-3)}
 .ft{padding:var(--s-5) 0 var(--s-3)}
 .viz{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
      border-radius:var(--r-l);scrollbar-width:thin;scroll-snap-type:x proximity}
 .viz svg[viewBox^="0 0 1600"]{min-width:1184px}
 .viz svg[viewBox^="0 0 1200"]{min-width:888px}
}
.tick__t em{font-size:var(--fs-12)}
/* ---------- 11. Static calculator strip (replaces looping ticker) ---------- */
.tick--static{overflow:visible;padding:var(--s-2)}
.tick--static .tick__t{animation:none!important;transform:none!important;width:auto;white-space:normal;flex-wrap:wrap;gap:var(--s-1) var(--s-3);padding:0 var(--s-2)}
.tick--static .tick__t a{display:inline-flex;align-items:center;min-height:var(--tap);text-decoration:none}
.tick--static .tick__t a:hover b,.tick--static .tick__t a:focus-visible b{text-decoration:underline}
/* ---------- 12. Home: jump to the calculator list on small screens ---------- */
.hjump{display:none}
@media(max-width:820px){.hjump{display:block;margin-top:var(--s-2)}.hjump a{display:inline-flex;align-items:center;min-height:var(--tap);font-weight:600}}
#calculators{scroll-margin-top:96px}

/* jump-chip wrap 20261016 */
.jump a{white-space:normal;max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}

/* asys-svg-mobile-20261018: keep inline chart text >= ~9px on phones; chart scrolls sideways inside .viz */
@media (max-width:600px){
 .viz svg[viewBox^="0 0 5"]{min-width:440px}
 .viz svg[viewBox^="0 0 6"],.viz svg[viewBox^="0 0 7"]{min-width:560px}
 .viz svg{height:auto}
}
