.calculator-access{position:relative;isolation:isolate;min-height:100svh;overflow:hidden;background:#050505;color:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:88px 24px 40px}
.access-gradient{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(130deg,#050505 20%,#162c42 43%,#66b3ff 56%,#050505 62%,#274c6b 78%,#66b3ff)}
.access-gradient canvas{display:block;width:100%;height:100%;opacity:.9}
.access-gradient canvas[hidden]{display:none}
.access-gradient.gradient-fallback{overflow:hidden}
.access-gradient.gradient-fallback:before{content:"";position:absolute;inset:-12%;background:linear-gradient(130deg,#050505 20%,#162c42 43%,#66b3ff 56%,#050505 62%,#274c6b 78%,#66b3ff);animation:access-fallback-drift 18s ease-in-out infinite alternate!important;animation-play-state:inherit!important}
@keyframes access-fallback-drift{from{transform:translate3d(-5%,-3%,0)}to{transform:translate3d(5%,3%,0)}}
.calculator-access:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#02080e9c,transparent 72%)}
.calculator-access__links{position:absolute;top:20px;left:32px;right:32px;display:flex;justify-content:space-between;gap:20px}
.calculator-access__links a{color:#edf6ff;text-decoration:none;font-size:14px;padding:12px 0;text-shadow:0 1px 8px #000}
.calculator-access__links a:hover{text-decoration:underline;text-underline-offset:5px}
.access-layout{display:grid;grid-template-columns:minmax(0,1fr);place-items:center;min-height:calc(100svh - 128px)}
.calculator-access .calculator{width:100%;max-width:400px;min-width:0;padding:24px;border-radius:40px;border:1px solid #ffffff24;background:#000;box-shadow:0 24px 80px #0007;transform:none}
.calculator-brand{display:flex;align-items:center;gap:8px;height:38px}
.calculator-brand svg{width:32px;height:32px;flex-shrink:0;border-radius:50%;overflow:hidden}
.calculator-brand .approved-wordmark{width:128px}
.calculator-toolbar{justify-content:space-between}
.calculator-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}
.calculator-tool{display:grid;place-items:center;width:42px;height:42px;padding:8px;border:1px solid #344766;border-radius:12px;background:#111c2c;color:#c5defa;cursor:pointer}
.calculator-brand .calculator-tool svg{width:24px;height:24px;border-radius:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.calculator-tool[aria-pressed=true]{color:#fff;background:#245bff;border-color:#245bff}
.calculator-access[data-theme=light] .calculator-tool{background:#fff;color:#234367;border-color:#d7e0eb}
.calculator-access[data-theme=light] .calculator-tool[aria-pressed=true]{background:#245bff;color:#fff;border-color:#245bff}
.calculator-history{width:min(440px,calc(100vw - 32px));max-height:80dvh;padding:0;border:1px solid #344766;border-radius:20px;background:#111c2c;color:#edf6ff;box-shadow:0 18px 64px #0005;font-family:inherit}
.calculator-history::backdrop{background:#081a365c}
.calculator-history header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #344766}
.calculator-history h2{font-family:inherit;font-weight:600;font-size:19px;line-height:1.3;margin:0}
.calculator-history button{font:inherit;cursor:pointer;color:inherit;background:transparent;border:1px solid #52647f;border-radius:10px;padding:8px 12px}
.calculator-history [data-history-close]{width:38px;height:38px;font-size:25px;line-height:1;padding:4px}
.calculator-history-list{overflow-y:auto;max-height:48dvh;padding:6px 20px}
.calculator-history-list p{font-size:14px;line-height:1.6;margin:16px 0}
.calculator-history-list article{display:grid;gap:5px;padding:14px 0;border-bottom:1px solid #344766;overflow-wrap:anywhere}
.calculator-history-list article:last-child{border-bottom:0}
.calculator-history-list strong{font-size:23px;text-align:right;font-variant-numeric:tabular-nums}
.calculator-history footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-top:1px solid #344766}
.calculator-history footer small{font-size:12px;max-width:180px;color:inherit}
.calculator-access[data-theme=light] .calculator-history{background:#fff;color:#17345d;border-color:#d7e0eb}
.calculator-access[data-theme=light] .calculator-history :is(header,footer,article,button){border-color:#d7e0eb}
.calculator-theme-toggle{margin-left:auto;width:72px;height:34px;padding:4px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3px;border:1px solid #ffffff2b;border-radius:18px;background:#111c2c;box-shadow:inset 0 1px 2px #0008;cursor:pointer}
.theme-swatch{display:block;width:25px;height:25px;border-radius:50%;border:1px solid #ffffff26;transition:transform .15s,box-shadow .15s}
.theme-swatch--dark{background:#050505;box-shadow:0 0 0 2px #39c8f3}
.theme-swatch--light{background:#fff;border-color:#b9c5d5}
.calculator-access[data-theme=light] .theme-swatch--dark{box-shadow:none}
.calculator-access[data-theme=light] .theme-swatch--light{box-shadow:0 0 0 2px #245bff}
.calculator-access .calc-screen{display:flex;flex-direction:column;justify-content:flex-end;min-height:170px;padding:24px 4px 8px;margin:0 0 16px;border:0;border-radius:0;background:#000;box-shadow:none;color:#fff;text-align:right}
.screen-status{min-height:22px;margin-bottom:16px;color:#929297;font-size:17px;line-height:1.3;text-align:right}
.screen-caption{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.calculator-access .calc-screen input{display:block;width:100%;min-width:0;height:76px;padding:0;background:transparent;border:0;border-radius:0;color:#fff;font:300 66px/1.1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-2px;text-align:right;box-shadow:none;caret-color:#22d3ee}
.calculator-access .calc-screen input[data-length=medium]{font-size:39px;letter-spacing:-1px}
.calculator-access .calc-screen input[data-length=long]{font-size:25px;letter-spacing:0}
.calculator-access .calc-screen input::placeholder{color:#fff;opacity:1}
.calculator-access .calc-screen input[name=password]::placeholder{font-size:30px;letter-spacing:-.5px;color:#929297}
.calculator-access .calc-screen input:focus-visible{outline:1px solid #22d3ee66;outline-offset:5px;border-radius:5px}
.calculator-access .calc-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.calculator-access .calc-key{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;min-height:0;width:100%;height:auto;padding:0;border-radius:50%;border:0;background:#17325f;color:#fff;box-shadow:inset 0 1px 0 #ffffff14;font:400 38px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;transition:background-color .15s,transform .1s;touch-action:manipulation;cursor:pointer;-webkit-tap-highlight-color:transparent}
.calculator-access .calc-key svg{width:35px;height:30px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.calculator-access .calc-key.utility{background:#21477f;color:#fff}
.calculator-access .calc-key.access-indicator{font-size:32px;font-weight:400;min-width:0}
.calculator-access .calc-key.operator,.calculator-access .calc-key.equals,.calculator-access .calc-key.access-indicator{background:#245bff;color:#fff}
.calculator-access .calc-key.operator,.calculator-access .calc-key.equals{font-size:47px;grid-column:auto}
.calculator-access .calc-key.sign{font-size:33px}
@media(hover:hover){.calculator-access .calc-key:hover{background:#21477f}.calculator-access .calc-key.utility:hover{background:#2a5796}.calculator-access .calc-key.operator:hover,.calculator-access .calc-key.equals:hover,.calculator-access .calc-key.access-indicator:hover{background:#4174ff}}
.calculator-access .calc-key:active{transform:scale(.94);filter:brightness(1.25)}
.calculator-access .access-indicator.awaiting-password{background:#37c8f3;color:#001725;box-shadow:0 0 18px #22d3ee45}
.calculator-access .access-error{color:#ffb9b5;font-size:13px;line-height:1.5;margin:16px 4px 0}
.calculator-access .access-error:empty{display:none}
.calculator-access :focus-visible{outline:3px solid #79dfff;outline-offset:4px}
.calculator-access button:disabled{cursor:default;opacity:.5}
.calculator-access .access-sr-only{position:absolute;width:1px;height:1px;min-height:0;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.calculator-access[data-theme=light] .calculator{background:#f8fafc;border-color:#d7e0eb;color:#132847;box-shadow:0 24px 80px #0005}
.calculator-access[data-theme=light] .approved-wordmark{mix-blend-mode:multiply}
.calculator-access[data-theme=light] .calc-screen{background:#f8fafc;color:#132847}
.calculator-access[data-theme=light] .screen-status{color:#65758b}
.calculator-access[data-theme=light] .calc-screen input{color:#132847;caret-color:#245bff}
.calculator-access[data-theme=light] .calc-screen input::placeholder{color:#132847}
.calculator-access[data-theme=light] .calc-screen input[name=password]::placeholder{color:#65758b}
.calculator-access[data-theme=light] .calc-key{background:#e8edf4;color:#17345d;box-shadow:inset 0 1px 0 #fff}
.calculator-access[data-theme=light] .calc-key.utility{background:#dce5f1;color:#17345d}
.calculator-access[data-theme=light] .calc-key.operator,.calculator-access[data-theme=light] .calc-key.equals,.calculator-access[data-theme=light] .calc-key.access-indicator{background:#245bff;color:#fff}
.calculator-access[data-theme=light] .access-indicator.awaiting-password{background:#37c8f3;color:#001725}
.calculator-access[data-theme=light] .access-error{color:#a32932}
.calculator-access[data-theme=light] .calculator-theme-toggle{background:#e6ebf2;border-color:#c6d0dc;box-shadow:inset 0 1px 2px #7e8ba329}
@media(hover:hover){.calculator-access[data-theme=light] .calc-key:hover{background:#dce5f1}.calculator-access[data-theme=light] .calc-key.operator:hover,.calculator-access[data-theme=light] .calc-key.equals:hover,.calculator-access[data-theme=light] .calc-key.access-indicator:hover{background:#174bd7}}
@media(max-width:480px){.calculator-access{padding:76px 12px 24px}.calculator-access__links{top:14px;left:22px;right:22px}.calculator-access__links a{font-size:12px}.calculator-access .calculator{padding:20px 16px;border-radius:32px}.calculator-access .calc-screen{min-height:150px;padding-top:18px}.calculator-access .calc-key{font-size:35px}.calculator-access .calc-key.operator,.calculator-access .calc-key.equals{font-size:44px}.access-layout{min-height:calc(100svh - 100px)}}
@media(max-width:350px){.calculator-access .calc-keys{gap:8px}.calculator-access .calc-key{font-size:30px}.calculator-access .calc-key.operator,.calculator-access .calc-key.equals{font-size:38px}.calculator-access .calc-screen input{font-size:56px}.calculator-access .calc-screen input[data-length=medium]{font-size:32px}.calculator-access .calc-screen input[data-length=long]{font-size:23px}.calculator-access .calc-screen{min-height:130px}}
@media(prefers-reduced-motion:reduce){.calculator-access .calc-key{transition:none}}
.calculator-access__links{justify-content:flex-end}
.access-profile-choice{padding:28px;background:#fff;color:#17345d;border-color:#d7e0eb}
.access-profile-choice h2{font-size:24px;margin:0 0 24px}
.access-profile-choice>button{display:block;width:100%;min-height:48px;margin-top:12px;background:#245bff;color:#fff;border:0;font-weight:600}
.access-profile-choice>button:last-child{background:#edf3fa;color:#17345d}
.access-profile-choice>p{font-size:14px;line-height:1.5;color:#a32932}
.calculator-access,.calculator-access *{box-sizing:border-box}
.calculator-access :is(.access-layout,.calculator-form,.calculator-tools,.calc-screen,.calc-keys){min-width:0;max-width:100%}
.calculator-access .calculator-form{width:100%}
.calculator-access .calc-key{min-width:0;max-width:100%}
.calculator-access .screen-status{overflow-wrap:anywhere}
.calculator-access .calc-screen input[name=password]::placeholder{font-size:inherit;color:inherit}
@media(max-width:600px){
 .calculator-access{padding:0;min-height:100dvh;background:#000}
 .calculator-access[data-theme=light]{background:#f8fafc;color:#132847}
 .calculator-access .access-gradient,.calculator-access:after{display:none}
 .calculator-access__links{top:env(safe-area-inset-top,0px);left:20px;right:20px;z-index:2;height:44px;align-items:center}
 .calculator-access[data-theme=light] .calculator-access__links a{color:#234367;text-shadow:none}
 .calculator-access .access-layout{display:block;min-height:100dvh;width:100%}
 .calculator-access .calculator{width:100%;max-width:none;min-height:100dvh;border:0;border-radius:0;padding:54px 20px max(18px,env(safe-area-inset-bottom));box-shadow:none;display:flex;flex-direction:column}
 .calculator-access .calculator-brand{flex-shrink:0}
 .calculator-access .calculator-form{flex:1;display:flex;flex-direction:column}
 .calculator-access .calc-screen{flex:1;min-height:100px;display:flex;flex-direction:column;justify-content:flex-end;padding:20px 2px}
 .calculator-access .calc-keys{gap:clamp(8px,2.5vw,16px);width:100%;margin-top:auto}
 .calculator-access .calc-key{max-height:12dvh;font-size:clamp(30px,8vw,46px)}
 .calculator-access .screen-status{min-height:0}
}
