:root{--ft-shell-bg:rgba(7,11,20,.94);--ft-shell-line:#24314d;--ft-shell-text:#eef4ff;--ft-shell-muted:#a7b4cf;--ft-shell-accent:#61e7b7}
.ft-shell{position:sticky;top:0;z-index:1000;background:var(--ft-shell-bg);border-bottom:1px solid var(--ft-shell-line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.ft-shell .ft-shell-inner{width:min(1180px,calc(100% - 32px));min-height:68px;margin:auto;display:flex;align-items:center;gap:24px}
.ft-shell .ft-shell-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ft-shell-text);font-weight:800;text-decoration:none;white-space:nowrap}
.ft-shell .ft-shell-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(97,231,183,.55);border-radius:10px;background:rgba(97,231,183,.08);color:var(--ft-shell-accent);font-size:13px}
.ft-shell .ft-shell-brand i{color:var(--ft-shell-accent);font-style:normal}
.ft-shell .ft-shell-nav{margin-left:auto;display:flex;align-items:center;gap:4px}
.ft-shell .ft-shell-link{padding:10px 12px;border-radius:9px;color:var(--ft-shell-muted);font-size:14px;font-weight:650;text-decoration:none;white-space:nowrap}
.ft-shell .ft-shell-link:hover,.ft-shell .ft-shell-link:focus-visible{background:#111b2d;color:var(--ft-shell-text);outline:none}
.ft-shell .ft-shell-langs{display:flex;gap:3px;margin-left:8px;padding:4px;border:1px solid var(--ft-shell-line);border-radius:10px;background:#0b1220}
.ft-shell .ft-shell-lang{min-width:34px;padding:6px 7px;border-radius:7px;color:var(--ft-shell-muted);font-size:12px;font-weight:800;text-align:center;text-decoration:none}
.ft-shell .ft-shell-lang.active{background:#17253b;color:var(--ft-shell-accent)}
.ft-shell .ft-shell-toggle{display:none;margin-left:auto;width:42px;height:42px;border:1px solid var(--ft-shell-line);border-radius:10px;background:#0b1220;color:var(--ft-shell-text);font-size:20px;cursor:pointer}
html.ft-menu-open{overflow:hidden}
@media(max-width:760px){.ft-shell .ft-shell-inner{width:min(100% - 24px,1180px);min-height:62px}.ft-shell .ft-shell-toggle{display:grid;place-items:center}.ft-shell .ft-shell-nav{display:none;position:absolute;left:0;right:0;top:100%;margin:0;padding:12px 16px 18px;background:#080e19;border-bottom:1px solid var(--ft-shell-line);box-shadow:0 18px 32px rgba(0,0,0,.35)}.ft-shell.is-open .ft-shell-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ft-shell .ft-shell-link{padding:12px}.ft-shell .ft-shell-langs{grid-column:1/-1;margin:6px 0 0;justify-content:center}.ft-shell .ft-shell-lang{flex:1;max-width:90px;padding:9px}.ft-shell-brand-text{font-size:15px}}
@media(max-width:380px){.ft-shell .ft-shell-inner{width:calc(100% - 18px)}.ft-shell-brand-text{font-size:14px}}

/* Shared safeguards for calculator layouts. */
body{overflow-x:hidden}
main img,main svg,main canvas{max-width:100%}
.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
input,select,button,textarea{max-width:100%}
.workflow-card.ft-workflow-full{width:100%;margin:18px 0 0;box-sizing:border-box}
@media(max-width:760px){main.container,main .container,.page.container{width:min(100% - 24px,1180px)}.hero{min-width:0}.layout,.metrics,.form-grid{min-width:0}.panel,.card,.chart-card,.table-card,.results{min-width:0}}

/* Standard site footer */
.ft-site-footer{position:relative;z-index:2;margin-top:44px;border-top:1px solid var(--ft-shell-line);background:linear-gradient(180deg,#080e19,#050910);color:var(--ft-shell-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.ft-site-footer *{box-sizing:border-box}.ft-site-footer-inner{width:min(1180px,calc(100% - 32px));margin:auto;padding:42px 0 24px}.ft-footer-intro{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:22px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.08)}
.ft-footer-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ft-shell-text);font-weight:850;text-decoration:none;white-space:nowrap}.ft-footer-brand i{color:var(--ft-shell-accent);font-style:normal}.ft-footer-mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(97,231,183,.55);border-radius:10px;background:rgba(97,231,183,.08);color:var(--ft-shell-accent);font-size:13px}.ft-footer-intro p{max-width:560px;margin:0;color:#98a8c6;font-size:14px;line-height:1.6}.ft-footer-all{padding:10px 13px;border:1px solid #2b3a59;border-radius:10px;color:var(--ft-shell-accent);font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.ft-footer-all:hover,.ft-footer-all:focus-visible{border-color:var(--ft-shell-accent);outline:none}
.ft-footer-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;padding:32px 0}.ft-footer-group h3{margin:0 0 13px;color:#dfe8f8;font-size:13px;letter-spacing:.04em}.ft-footer-group ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.ft-footer-group a{color:#91a2c2;font-size:12px;line-height:1.35;text-decoration:none}.ft-footer-group a:hover,.ft-footer-group a:focus-visible,.ft-footer-group a.active{color:var(--ft-shell-accent);outline:none}
.ft-footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;padding-top:22px;border-top:1px solid rgba(255,255,255,.08)}.ft-footer-bottom strong{display:block;margin-bottom:7px;color:#cbd7ea;font-size:12px}.ft-footer-bottom p{max-width:800px;margin:3px 0;color:#7183a4;font-size:11px;line-height:1.5}.ft-footer-meta{display:grid;justify-items:end;gap:10px;color:#7183a4;font-size:11px;white-space:nowrap}.ft-footer-languages{display:flex;gap:4px}.ft-footer-languages a{min-width:34px;padding:6px;border:1px solid #22304a;border-radius:7px;color:#91a2c2;font-size:11px;font-weight:800;text-align:center;text-decoration:none}.ft-footer-languages a.active{border-color:#315f5a;background:#10241f;color:var(--ft-shell-accent)}
@media(max-width:900px){.ft-footer-intro{grid-template-columns:auto 1fr}.ft-footer-all{grid-column:1/-1;justify-self:start}.ft-footer-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 36px}}
@media(max-width:600px){.ft-site-footer{margin-top:32px}.ft-site-footer-inner{width:min(100% - 24px,1180px);padding-top:32px}.ft-footer-intro{grid-template-columns:1fr;gap:14px}.ft-footer-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px}.ft-footer-bottom{grid-template-columns:1fr;align-items:start}.ft-footer-meta{justify-items:start}.ft-footer-group a{font-size:11px}}
@media(max-width:380px){.ft-footer-tools{grid-template-columns:1fr}.ft-footer-group ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* V22.34 Tool feedback */
.ft-tool-feedback{width:min(1180px,calc(100% - 40px));margin:34px auto;padding:24px;border:1px solid rgba(74,222,190,.22);border-radius:20px;background:linear-gradient(135deg,rgba(14,28,43,.98),rgba(8,17,30,.98));color:#eaf1fb;box-shadow:0 18px 50px rgba(0,0,0,.16)}
.ft-feedback-intro{display:flex;align-items:center;justify-content:space-between;gap:28px}.ft-feedback-intro h2{margin:4px 0 7px;font-size:clamp(20px,2vw,27px);line-height:1.2}.ft-feedback-intro p{max-width:760px;margin:0;color:#aebbd0}.ft-feedback-kicker{color:#58dfbd;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ft-feedback-open,.ft-feedback-submit{flex:0 0 auto;border:0;border-radius:11px;background:linear-gradient(90deg,#59e0be,#4eb9ff);color:#05121b;font:inherit;font-weight:800;padding:12px 17px;cursor:pointer}.ft-feedback-open:hover,.ft-feedback-submit:hover{filter:brightness(1.06)}
.ft-feedback-form{margin-top:22px;padding-top:21px;border-top:1px solid rgba(145,164,193,.18)}.ft-feedback-form[hidden]{display:none}.ft-feedback-form fieldset{margin:0 0 18px;padding:0;border:0}.ft-feedback-form legend,.ft-feedback-message>span,.ft-feedback-email>span{display:block;margin-bottom:8px;color:#dbe6f4;font-weight:750}.ft-feedback-options{display:flex;flex-wrap:wrap;gap:9px}.ft-feedback-options label{cursor:pointer}.ft-feedback-options input{position:absolute;opacity:0;pointer-events:none}.ft-feedback-options span{display:block;padding:9px 12px;border:1px solid #2c405b;border-radius:999px;background:#091523;color:#afbdd0;font-size:13px}.ft-feedback-options input:checked+span,.ft-feedback-options input:focus-visible+span{border-color:#56dcbc;background:rgba(52,211,153,.12);color:#dffff5;box-shadow:0 0 0 2px rgba(86,220,188,.14)}
.ft-feedback-message,.ft-feedback-email{display:block;margin-top:15px}.ft-feedback-message textarea,.ft-feedback-email input{display:block;width:100%;border:1px solid #2b3d57;border-radius:11px;background:#07111e;color:#edf5ff;font:inherit;padding:12px 13px;resize:vertical}.ft-feedback-message textarea:focus,.ft-feedback-email input:focus{outline:2px solid rgba(83,210,184,.34);border-color:#53d2b8}.ft-feedback-email{max-width:440px}.ft-feedback-privacy{margin:11px 0 0;color:#8292aa;font-size:12px}.ft-feedback-actions{display:flex;align-items:center;gap:10px;margin-top:17px}.ft-feedback-close{border:1px solid #2b3d57;border-radius:11px;background:transparent;color:#b6c3d5;font:inherit;padding:11px 15px;cursor:pointer}.ft-feedback-submit:disabled{opacity:.6;cursor:wait}.ft-feedback-status{margin:13px 0 0;min-height:1.4em;color:#aebbd0}.ft-feedback-status.success{color:#75e4c5}.ft-feedback-status.error{color:#fda4af}.ft-feedback-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
@media(max-width:700px){.ft-tool-feedback{width:min(100% - 24px,1180px);margin:24px auto;padding:19px 17px;border-radius:17px}.ft-feedback-intro{align-items:flex-start;flex-direction:column;gap:16px}.ft-feedback-open{width:100%}.ft-feedback-options{display:grid;grid-template-columns:1fr 1fr}.ft-feedback-options span{height:100%;border-radius:10px;padding:9px 10px}.ft-feedback-actions{display:grid;grid-template-columns:1fr 1fr}.ft-feedback-actions button{width:100%}}
@media(max-width:380px){.ft-feedback-options{grid-template-columns:1fr}}
