/* Helium UI v1.9.0 — Harmony / focus geometry / concentric squircle carousel.
   Overrides are loaded LAST. Original Aurora/brand tokens remain unchanged. */
:root{
 --he-header-bg:var(--he-p-EEF4F8);
 --he-page-bg:var(--he-p-D8E6F0);
 --he-card-bg:var(--he-p-FFFFFFCC);
 --he-field-bg:var(--he-p-E0E7F0);
 --he-field-focus-border:var(--he-p-2C4A70);
 --he-field-focus-width:2px;
 --he-carousel-ease:cubic-bezier(.22,.86,.24,1);
}
/* Finance shell: distinct but harmonious header and canvas; no textured overlay. */
html body.finance-page .finance-main{background:var(--he-p-D8E6F0)!important;background-color:var(--he-page-bg)!important;background-image:none!important;}
html body.finance-page .finance-main::before{display:none!important;content:none!important;}
html body.finance-page .finance-main>.topbar{
 background:var(--he-header-bg)!important;background-image:none!important;
 border-bottom:1px solid var(--he-p-192D4811);
}
/* White porcelain: translucent paint ONLY; no optical or CSS glass. */
html body.finance-page :is(.stat-card,.forecast-card,.lower-card:not(.dark-lower)){
 background:var(--he-card-bg)!important;background-image:none!important;
 -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
 border:1px solid var(--he-p-FFFFFF38)!important;
 box-shadow:0 16px 42px -36px var(--he-p-0E1C2F45)!important;
}
html body.finance-page :is(.stat-card,.forecast-card,.lower-card:not(.dark-lower))::before,
html body.finance-page :is(.stat-card,.forecast-card,.lower-card:not(.dark-lower))::after{
 /* Explicitly eliminate optical faux glass edge effects on standard cards */
 background-image:none!important;
}
/* Preserve intentional expressive gradients, particularly the Challenge card. */
html body.finance-page .challenge-card{background-color:transparent;}
/* Global focus geometry: transparent 2px border reserves space in resting mode.
   Focus is a full 4-sided outline inside the same border-box. */
html body :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],
 input[type="number"],input[type="search"],input[type="tel"],input[type="url"],textarea):not([readonly]){
 box-sizing:border-box;
 border:var(--he-field-focus-width) solid transparent!important;
 border-block-end:var(--he-field-focus-width) solid transparent!important;
 box-shadow:none!important;
 background-clip:padding-box;
 transition:border-color .16s ease,background-color .16s ease!important;
}
html body :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],
 input[type="number"],input[type="search"],input[type="tel"],input[type="url"],textarea):not([readonly]):focus{
 border:var(--he-field-focus-width) solid var(--he-field-focus-border)!important;
 border-block-end:var(--he-field-focus-width) solid var(--he-field-focus-border)!important;
 outline:none!important;outline-offset:0!important;box-shadow:none!important;
}
html body :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],
 input[type="number"],input[type="search"],input[type="tel"],input[type="url"],textarea):not([readonly]):focus-visible{
 outline:none!important;box-shadow:none!important;
}
/* Component explorer: same field background in both states, no inset underline. */
html body .he-demo-input,
html body .he-otp input{background-color:var(--he-field-bg)!important;}
html body .he-demo-input:focus,
html body .he-otp input:focus{background-color:var(--he-field-bg)!important;}
/* Do not recolour checked input controls or the carousel arrows. */
/* Circular squircle carousel V2: measured centre anchoring; cards do not rely on %-transforms. */
html body .hm-carousel{
 height:clamp(230px,22vw,284px)!important;min-height:0!important;
 width:100%;max-width:100%;position:relative;overflow:hidden!important;
 touch-action:pan-y;overscroll-behavior-x:contain;isolation:isolate;
 border-radius:30px;corner-shape:squircle;
}
html body .hm-cards-track{
 position:relative!important;width:100%!important;height:100%!important;
 overflow:visible!important;isolation:isolate;
}
html body .hm-float-card{
 position:absolute!important;inset:auto!important;
 top:50%!important;left:50%!important;
 width:clamp(194px,68%,340px)!important;
 height:clamp(178px,79%,224px)!important;
 padding:clamp(20px,2.5vw,30px)!important;
 display:flex;flex-direction:column;justify-content:space-between;
 border-radius:clamp(28px,5vw,42px)!important;corner-shape:squircle!important;
 border:1px solid var(--he-p-FFFFFFAD)!important;
 box-shadow:0 16px 36px -24px var(--he-p-0A172A3D)!important;
 transform:translate3d(calc(-50% + var(--hm-orbit-x,0px)),calc(-50% + var(--hm-orbit-y,0px)),0) scale(var(--hm-orbit-scale,1))!important;
 opacity:var(--hm-orbit-opacity,1)!important;
 filter:saturate(var(--hm-orbit-saturation,1))!important;
 will-change:transform,opacity;
 transition:transform .52s var(--he-carousel-ease),opacity .32s ease,filter .35s ease!important;
 cursor:pointer;
}
html body .hm-float-card:is(:hover,:focus-visible){box-shadow:0 18px 38px -23px var(--he-p-0A172A4C)!important;}
html body .hm-float-card:focus-visible{outline:3px solid var(--he-p-2C4A70)!important;outline-offset:-5px!important;}
html body .hm-float-card[aria-current="true"]{color:var(--he-p-0E213B)!important;}
html body .hm-float-card:nth-child(1){background:var(--he-p-DDE5EF)!important;}
html body .hm-float-card:nth-child(2){background:var(--he-p-E4E5F8)!important;}
html body .hm-float-card:nth-child(3){background:var(--he-p-F6E5EA)!important;}
html body .hm-float-card:nth-child(4){background:var(--he-p-E4EEF2)!important;}
html body .hm-float-card strong{font-size:clamp(28px,4vw,40px)!important;white-space:nowrap;}
html body #hm-car-count{min-width:70px;display:inline-block;text-align:center;font-variant-numeric:tabular-nums;}
html body #hm-car-prev,html body #hm-car-next{min-height:44px;min-width:44px;}
@media(max-width:520px){
 html body .hm-carousel{height:238px!important;border-radius:26px;}
 html body .hm-float-card{width:clamp(182px,70%,270px)!important;height:184px!important;padding:22px!important;}
}
@media(prefers-reduced-motion:reduce){
 html body .hm-float-card{transition:none!important;will-change:auto;}
 html body :is(input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],textarea){transition:none!important;}
}

/* Higher specificity than legacy glass-era card selectors. */
html body.finance-page .finance-main .finance-content .stats-grid .stat-card,
html body.finance-page .finance-main .finance-content .feature-grid .forecast-card,
html body.finance-page .finance-main .finance-content .lower-grid .lower-card:not(.dark-lower){
 background:var(--he-card-bg,var(--he-p-FFFFFFCC))!important;
 background-color:var(--he-p-FFFFFFCC)!important;
 background-image:none!important;
 backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
