﻿:root{
 --navy:#061b35;--navy-soft:#18324f;--blue:#4b97ee;--blue-bright:#69b5ff;
 --blue-pale:#edf7ff;--page:#f5faff;--line:#d5e3ef;--muted:#60758e;
 --green:#0ea875;--amber:#df9311;--red:#d95757;--white:#fff;
 --shadow:0 22px 55px rgba(18,64,104,.10)
}
.is-auth-loading .site-header,.is-auth-loading main,.is-auth-loading footer{visibility:hidden}
.app-header-actions{display:flex;align-items:center;gap:16px}.app-header-actions>a,.app-header-actions>button{border:0;background:transparent;color:#526477;font:inherit;font-size:12px;font-weight:750;text-decoration:none;cursor:pointer}.app-header-actions>a:hover,.app-header-actions>button:hover{color:#1766af}
.save-analysis-row{display:flex;align-items:center;gap:10px;margin-top:18px;flex-wrap:wrap}.save-analysis-row .primary-button{width:auto;margin:0;padding:12px 18px}.save-analysis-row>span{color:#0b8d69;font-size:12px;font-weight:700}.analysis-note-toggle{min-height:41px;padding:10px 15px;border:1px solid #bfd7e9;border-radius:8px;color:#1766af;background:#f5faff;cursor:pointer;font:inherit;font-size:10px;font-weight:800}.analysis-note-toggle:hover{border-color:#83bce8;background:#edf7ff}.analysis-note-editor{margin-top:11px;padding:14px;border:1px solid #dce8f1;border-radius:9px;background:#f8fbfe}.analysis-note-editor[hidden]{display:none}.analysis-note-editor label{display:block;margin-bottom:8px;color:#263f57;font-size:10px;font-weight:800}.analysis-note-editor textarea{width:100%;min-height:105px;padding:11px;border:1px solid #cbdce9;border-radius:7px;outline:0;resize:vertical;color:#17324d;background:#fff;font:inherit;font-size:11px;line-height:1.55}.analysis-note-editor textarea:focus{border-color:#62a9e8;box-shadow:0 0 0 3px rgba(75,151,238,.12)}.analysis-note-editor small{display:block;margin-top:7px;color:#768a9d;font-size:9px}.result-scroll-save{display:flex;width:100%;align-items:center;justify-content:center;gap:9px;margin:0 0 18px;padding:9px 12px;border:1px solid #d9e7f1;border-radius:8px;color:#1766af;background:#f5faff;cursor:pointer;font:inherit;font-size:10px;font-weight:800;transition:.18s ease}.result-scroll-save span{font-size:16px;line-height:1}.result-scroll-save:hover,.result-scroll-save:focus-visible{border-color:#a9d0ec;color:#0d5595;background:#edf7ff;outline:0}.result-scroll-save:focus-visible{box-shadow:0 0 0 3px rgba(75,151,238,.16)}
@media(max-width:680px){.app-header-actions{gap:9px}.app-header-actions .header-meta{display:none}.save-analysis-row{align-items:stretch;flex-direction:column}.save-analysis-row .primary-button{width:100%}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--navy);background:#fff;font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}
.site-header{height:88px;background:rgba(255,255,255,.97);border-bottom:1px solid #e1ebf3;position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}
.header-inner{width:min(1136px,calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--navy);text-decoration:none;font-size:16px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.brand-logo,.tool-logo{display:block;flex:none;background-image:url("../assets/logo-new-v2.png");background-repeat:no-repeat;background-position:center;background-size:contain;border-radius:8px}
.brand-logo{width:40px;height:40px;box-shadow:0 4px 12px rgba(6,27,53,.12)}
.main-nav{display:flex;align-items:center;gap:32px;margin-left:auto}.main-nav a{color:#5b6f87;text-decoration:none;font-size:14px;font-weight:650;transition:color .18s ease}.main-nav a:hover,.main-nav .nav-current{color:#1766af}
.language-toggle{display:flex;gap:2px;padding:4px;border:1px solid #cfe0ee;border-radius:10px;background:#f5faff;box-shadow:0 5px 13px rgba(18,64,104,.08)}.language-toggle button{min-width:30px;padding:8px 7px;border:0;border-radius:7px;background:transparent;color:#637790;text-align:center;font:800 11px/1 Inter,sans-serif;cursor:pointer}.language-toggle button.is-active{color:#0c60ab;background:#fff;box-shadow:0 2px 7px rgba(18,64,104,.12)}
.hero{position:relative;overflow:hidden;padding:78px 24px 88px;background:linear-gradient(118deg,#f4f9ff 0%,#edf7ff 52%,#f7fbff 100%);border-bottom:1px solid #e5eff7}.hero:before{content:"";position:absolute;width:570px;height:570px;right:-180px;top:-280px;border-radius:50%;background:rgba(174,224,255,.21);filter:blur(10px)}
.hero-inner{width:min(1136px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.72fr);gap:80px;align-items:center;position:relative;z-index:1}
.hero-content{max-width:650px}.eyebrow{margin:0 0 18px;color:#1462aa;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero h1{margin:0;color:var(--navy);font-size:clamp(46px,5.1vw,68px);line-height:.98;letter-spacing:-.055em}.hero-copy{max-width:650px;margin:24px 0 26px;color:var(--muted);font-size:17px;line-height:1.75}.hero-benefits,.hero-tool-card ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}.hero-benefits li,.hero-tool-card li{display:flex;align-items:center;gap:11px;color:#172a42;font-size:14px;font-weight:700}.hero-benefits li>span,.hero-tool-card li>span{width:22px;height:22px;display:grid;place-items:center;flex:none;border-radius:50%;color:#fff;background:var(--blue);font-size:12px;box-shadow:0 5px 12px rgba(50,140,240,.25)}
.hero-button{width:max-content;margin-top:28px;padding:15px 22px;display:flex;align-items:center;gap:20px;border-radius:8px;color:#fff;text-decoration:none;background:linear-gradient(135deg,#2f84e7,#58a6fa);box-shadow:0 12px 25px rgba(50,140,240,.23);font-size:14px;font-weight:800;transition:transform .18s ease,box-shadow .18s ease}.hero-button:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(50,140,240,.29)}
.hero-tool-card{padding:32px 28px 26px;border:1px solid #cbdfee;border-radius:8px;background:rgba(255,255,255,.95);box-shadow:0 25px 55px rgba(37,87,126,.14)}.tool-card-label{margin:0 0 23px;color:#1562a9;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.tool-card-brand{display:flex;align-items:center;gap:15px}.tool-logo{width:56px;height:56px;box-shadow:0 5px 15px rgba(6,27,53,.13)}.tool-card-brand strong{display:block;font-size:20px;letter-spacing:-.025em}.tool-card-brand small{display:block;margin-top:6px;color:var(--muted);font-size:13px}.tool-score-preview{display:flex;align-items:center;gap:12px;margin-top:24px}.tool-score-preview>strong{font-size:38px;letter-spacing:-.045em}.tool-score-preview>span{font-size:12px;font-weight:800;line-height:1.2}.tool-score-preview small{color:var(--muted);font-weight:500}.tool-divider{height:1px;margin:18px 0;background:var(--line)}.hero-tool-card ul{gap:10px}.hero-tool-card li{font-size:12px}.hero-tool-card li>span{width:19px;height:19px;font-size:10px}.tool-card-button{margin-top:22px;padding:14px 16px;display:flex;justify-content:center;gap:18px;border-radius:7px;color:#fff;background:linear-gradient(135deg,#2f84e7,#58a6fa);font-size:13px;font-weight:800}.tool-disclaimer{margin:13px 0 0;color:#71849a;text-align:center;font-size:10px;line-height:1.5}
.calculator-intro{width:min(1136px,calc(100% - 40px));margin:76px auto 28px}.calculator-intro .eyebrow{margin-bottom:14px}.calculator-intro h2{max-width:700px;margin:0 0 12px;font-size:clamp(32px,4vw,46px);line-height:1.08;letter-spacing:-.04em}.calculator-intro>p:last-child{margin:0;color:var(--muted);font-size:16px}
.calculator-shell{width:min(1136px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.82fr);gap:20px;align-items:start}.form-column{display:grid;gap:16px}.form-card,.result-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 38px rgba(18,64,104,.07)}.form-card{padding:28px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.section-heading{display:flex;gap:15px;align-items:flex-start;margin-bottom:25px}.step{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:9px;color:#fff;background:linear-gradient(145deg,var(--blue-bright),var(--blue));font-size:11px;font-weight:800;box-shadow:0 8px 17px rgba(50,140,240,.2)}h2,h3,h4,p{margin-top:0}.section-heading h2{margin:1px 0 5px;font-size:19px;letter-spacing:-.025em}.section-heading p{margin:0;color:var(--muted);font-size:12px}
.field-grid{display:grid;gap:16px}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.field label{display:block;margin-bottom:8px;color:#1d3047;font-size:11px;font-weight:750}input,select{width:100%;height:48px;border:1px solid #d4e2ed;border-radius:8px;outline:none;color:var(--navy);background:#fbfdff;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}input{padding:0 56px 0 13px}select{appearance:none;padding:0 38px 0 13px;background-image:linear-gradient(45deg,transparent 50%,#71869b 50%),linear-gradient(135deg,#71869b 50%,transparent 50%);background-position:calc(100% - 17px) 20px,calc(100% - 12px) 20px;background-size:5px 5px;background-repeat:no-repeat}input:focus,select:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px rgba(50,140,240,.10)}.field.invalid input,select.invalid{border-color:var(--red);box-shadow:0 0 0 3px rgba(217,87,87,.08)}.input-wrap{position:relative}.input-wrap>span{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#8193a5;font-size:10px;font-weight:700;pointer-events:none}fieldset{margin:0 0 23px;padding:0;border:0}fieldset:last-child{margin-bottom:0}legend{margin-bottom:12px;color:#4e667f;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.quality-field{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:end}.metric-toggle{height:48px;display:flex;padding:4px;border-radius:8px;background:#eef5fa}.toggle-button{padding:0 11px;border:0;border-radius:6px;color:#71869a;background:transparent;font-size:10px;font-weight:800}.toggle-button.active{color:#1668b4;background:#fff;box-shadow:0 3px 9px rgba(18,64,104,.1)}.field-note{margin:13px 0 0;color:var(--muted);font-size:10px;line-height:1.6}
.form-actions{display:flex;align-items:center;gap:20px;padding:8px 2px 4px}.primary-button{min-height:52px;padding:0 23px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;color:#fff;background:linear-gradient(135deg,#2e83e7,#58a6fa);box-shadow:0 12px 24px rgba(50,140,240,.22);font-size:13px;font-weight:800;text-align:center;transition:transform .18s ease,box-shadow .18s ease}.primary-button:hover{transform:translateY(-2px);box-shadow:0 15px 28px rgba(50,140,240,.28)}.text-button{padding:10px 0;border:0;color:#1766af;background:none;font-size:12px;font-weight:800}.text-button:hover{text-decoration:underline}.form-message{padding:14px 16px;border:1px solid #f0c9c9;border-radius:9px;color:#a63d3d;background:#fff7f7;font-size:12px;line-height:1.5}.form-message strong{display:block;margin-bottom:2px}.form-message span{color:#b05252}
.input-wrap>.money-unit-label{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;border-radius:5px;padding:3px 4px;color:#8193a5;background:transparent;font:inherit;font-size:10px;font-weight:700;line-height:1;cursor:pointer;user-select:none;transition:color .15s ease,background .15s ease}.input-wrap>.money-unit-label:hover,.input-wrap>.money-unit-label:focus{color:#1766af;background:#eaf5ff;outline:none}
.result-column{position:sticky;top:108px;align-self:start}.result-card{padding:26px;scrollbar-width:thin;scrollbar-color:#c9dce9 transparent}.result-column .result-card{max-height:calc(100vh - 126px);overflow-y:auto}.result-empty{min-height:455px;text-align:center}.empty-score{width:112px;height:112px;margin:10px auto 23px;display:grid;place-items:center;border:9px solid #e4f2fc;border-radius:50%;color:#86a0b7;font-size:34px;font-weight:800}.result-empty h2{margin-bottom:9px;font-size:19px}.result-empty>p{color:var(--muted);font-size:12px;line-height:1.65}.category-preview{margin-top:26px;padding-top:17px;border-top:1px solid var(--line);display:grid;gap:9px;text-align:left}.category-preview span{display:flex;justify-content:space-between;color:#6f8297;font-size:10px}.category-preview b{color:#8ca1b5}.result-topline{display:flex;justify-content:space-between;color:#1766af;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.overall-title{margin:17px 0 -8px;text-align:center;font-size:20px;letter-spacing:-.025em}
.score-ring{--score:0%;--ring-color:var(--blue);width:148px;height:148px;margin:22px auto 17px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--ring-color) var(--score),#e7f1f8 0);position:relative}.score-ring:after{content:"";position:absolute;inset:11px;border-radius:50%;background:#fff}.score-ring>div{display:flex;align-items:baseline;position:relative;z-index:1}.score-ring strong{font-size:44px;letter-spacing:-.055em;font-variant-numeric:tabular-nums}.score-ring span{margin-left:4px;color:#8498aa;font-size:10px;font-weight:700}.signal-badge{width:max-content;margin:0 auto 11px;padding:7px 11px;border-radius:999px;font-size:10px;font-weight:800}.signal-badge.strong{color:#087654;background:#e5f8f1}.signal-badge.watch{color:#99620a;background:#fff4da}.signal-badge.weak{color:#a53e49;background:#ffedef}.signal-copy{margin-bottom:24px;color:var(--muted);text-align:center;font-size:11px;line-height:1.55}.category-results{display:grid;gap:14px;padding-top:20px;border-top:1px solid var(--line)}.category-result-head{display:flex;justify-content:space-between;margin-bottom:7px;gap:12px;font-size:10px;font-weight:750}.category-result-head span:last-child{color:#567086;white-space:nowrap}.bar{height:6px;overflow:hidden;border-radius:999px;background:#e7f1f8}.bar span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue-bright),var(--blue));transition:width .9s cubic-bezier(.2,.8,.2,1);will-change:width}
.analysis-card{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.analysis-card h3{margin-bottom:15px;font-size:12px}.analysis-columns{display:grid;gap:16px}.analysis-columns h4{margin:0 0 8px;font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.strength-title{color:#087654}.potential-title{color:#99620a}.analysis-columns ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.analysis-columns li{display:flex;align-items:flex-start;gap:8px;color:#5f7489;font-size:10px;line-height:1.45}.analysis-icon{width:16px;height:16px;display:grid;place-items:center;flex:none;border-radius:50%;font-size:9px;font-weight:900}.analysis-icon.positive{color:#087654;background:#e5f8f1}.analysis-icon.warning{color:#99620a;background:#fff4da}.metrics-card{margin-top:22px;padding:17px;border:1px solid #e0ebf3;border-radius:9px;background:#f6fbff}.metrics-card h3{margin-bottom:14px;font-size:11px}.metrics-card dl{margin:0;display:grid;grid-template-columns:1fr auto;gap:8px 14px}.metrics-card dt,.metrics-card dd{margin:0;font-size:9px}.metrics-card dt{color:#71869a}.metrics-card dd{color:var(--navy);font-weight:800}.export-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.export-button{min-height:38px;padding:7px 8px;border:1px solid var(--line);border-radius:8px;color:#54708a;background:#fff;font-size:9px;font-weight:800;line-height:1.3;transition:.18s ease}.export-button:hover{border-color:#a9d0ec;color:#1766af;background:#f5fbff;transform:translateY(-1px)}.export-button span{margin-right:3px;color:var(--blue);font-size:12px}.export-note{margin:8px 0 0;padding:8px 9px;border-radius:7px;color:#41627c;background:var(--blue-pale);font-size:9px;line-height:1.45}
.info-tip{position:relative;display:inline-grid;place-items:center;width:16px;height:16px;margin-left:3px;border:1px solid #c6dce9;border-radius:50%;color:#5880a1;background:#fff;font-size:9px;font-weight:800;line-height:1;text-transform:none;letter-spacing:0;cursor:help;vertical-align:middle}.info-tip:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 10px);z-index:30;width:225px;padding:10px 11px;border-radius:7px;color:#fff;background:var(--navy);box-shadow:0 10px 24px rgba(6,27,53,.2);font-size:10px;font-weight:500;line-height:1.5;letter-spacing:0;text-transform:none;opacity:0;visibility:hidden;transform:translate(-50%,4px);transition:.16s ease;pointer-events:none}.info-tip:hover:after,.info-tip:focus:after{opacity:1;visibility:visible;transform:translate(-50%,0)}.info-tip:focus{outline:2px solid rgba(50,140,240,.25);outline-offset:2px}
.disclaimer{width:min(1136px,calc(100% - 40px));margin:48px auto 0;padding:20px 23px;display:flex;gap:13px;align-items:flex-start;border:1px solid #cae1f1;border-radius:10px;background:#edf7ff}.disclaimer>span{width:22px;height:22px;display:grid;place-items:center;flex:none;border-radius:50%;color:#fff;background:var(--blue);font-size:11px;font-weight:800}.disclaimer p{margin:1px 0 0;color:#45637e;font-size:10px;line-height:1.7}footer{width:min(1136px,calc(100% - 40px));margin:52px auto 0;padding:23px 0 32px;display:flex;justify-content:space-between;border-top:1px solid var(--line);color:#8295a6;font-size:9px}
@media(hover:hover){.form-card:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(18,64,104,.1);border-color:#c4dceb}}
@media(max-width:1000px){.main-nav{gap:18px}.main-nav a{font-size:12px}.hero-inner{gap:45px}.hero h1{font-size:52px}}
@media(max-width:820px){.main-nav{display:none}.hero{padding:62px 20px 70px}.hero-inner{grid-template-columns:1fr;gap:38px}.hero-content{max-width:690px}.hero h1 br{display:none}.hero-tool-card{max-width:520px}.calculator-shell{grid-template-columns:1fr;max-width:700px}.result-column{position:static;grid-row:1}.result-column .result-card{max-height:none;overflow:visible}.result-empty{min-height:0;padding:24px}.empty-score{width:88px;height:88px;margin:0 auto 15px;border-width:7px;font-size:27px}.category-preview{display:none}.analysis-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.site-header{height:70px}.header-inner{width:calc(100% - 28px)}.brand{font-size:14px}.brand-logo{width:35px;height:35px}.language-toggle button{min-width:27px;padding:7px 5px}.header-meta{display:none}.hero{padding:50px 17px 58px}.hero h1{font-size:42px;line-height:1.02}.hero-copy{font-size:15px}.hero-benefits li{align-items:flex-start;font-size:12px}.hero-tool-card{padding:25px 19px 21px}.calculator-intro{width:calc(100% - 24px);margin-top:52px}.calculator-intro h2{font-size:32px}.calculator-shell{width:calc(100% - 24px);gap:13px}.form-card,.result-card{border-radius:10px}.form-card{padding:22px 17px}.result-card{padding:21px}.section-heading{margin-bottom:21px}.two-columns,.three-columns{grid-template-columns:1fr}.three-columns{gap:11px}.quality-field{grid-template-columns:1fr}.metric-toggle{width:max-content}.form-actions{align-items:stretch;flex-direction:column;gap:7px}.primary-button{width:100%;justify-content:center}.text-button{padding:9px}.analysis-columns{grid-template-columns:1fr}.export-actions{grid-template-columns:1fr}.info-tip:after{width:185px;left:auto;right:-16px;transform:translateY(4px)}.info-tip:hover:after,.info-tip:focus:after{transform:translateY(0)}.disclaimer,footer{width:calc(100% - 24px)}footer{flex-direction:column;gap:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.form-card,.primary-button,.bar span,.info-tip:after,.hero-button{transition:none!important}}
@media print{@page{margin:14mm;size:A4}body{background:#fff}.site-header,.hero,.calculator-intro,.form-column,.disclaimer,footer,.result-scroll-save{display:none!important}.calculator-shell{display:block;width:100%;margin:0}.result-column{position:static!important}.result-card{max-height:none!important;overflow:visible!important;border:0;box-shadow:none;padding:0}.export-actions,.export-note{display:none!important}.score-ring,.bar span,.analysis-icon{-webkit-print-color-adjust:exact;print-color-adjust:exact}}


/* Formal calculator revision */
body{background:#f7f9fb}
.site-header{height:74px;position:sticky;top:0;background:rgba(255,255,255,.98);border-bottom:1px solid #dde4ea;box-shadow:0 2px 10px rgba(18,42,66,.035)}
.header-inner{width:min(1136px,calc(100% - 48px))}
.header-meta{display:flex;align-items:center;gap:12px;color:#526477}.header-meta strong{font-size:13px;font-weight:700}.header-meta>span{padding:5px 8px;border:1px solid #d8e0e7;border-radius:6px;background:#f6f8fa;color:#71808f;font-size:10px;font-weight:800}
.calculator-intro.formal-intro{width:min(1136px,calc(100% - 40px));margin:48px auto 28px;padding:0 0 28px;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;border-bottom:1px solid #dce4ea}
.formal-intro>div:first-child{max-width:740px}.page-kicker{margin:0 0 10px;color:#667789;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.formal-intro h1{margin:0 0 11px;color:var(--navy);font-size:40px;line-height:1.05;letter-spacing:-.04em}.formal-intro>div:first-child>p:last-child{margin:0;color:#617286;font-size:14px;line-height:1.65}.method-note{min-width:225px;padding:14px 16px;border:1px solid #d9e1e7;border-radius:8px;background:#fff;text-align:left}.method-note strong,.method-note span{display:block}.method-note strong{margin-bottom:5px;color:#26394d;font-size:12px}.method-note span{color:#748392;font-size:10px}
.calculator-shell{margin-bottom:0}.form-card,.result-card{border-color:#d9e1e7;border-radius:10px;box-shadow:0 8px 22px rgba(24,48,72,.045)}.form-card{transition:border-color .18s ease,box-shadow .18s ease}.step{color:#257fd1;background:#eaf5ff;border:0;border-radius:10px;box-shadow:none;font-size:.68rem;font-weight:850}.section-heading h2{color:#1b2d40}.section-heading p{color:#748392}
input,select{border-color:#d7dfe6;background:#fff}input:focus,select:focus{border-color:#8799aa;box-shadow:0 0 0 3px rgba(75,96,117,.09)}
.metric-toggle{background:#edf0f2}.toggle-button.active{color:#24384c;box-shadow:0 2px 7px rgba(31,51,72,.09)}
.single-column{grid-template-columns:minmax(0,320px)}.quality-field-wide{grid-template-columns:auto minmax(0,320px);max-width:470px}
.primary-button{background:#22384e;box-shadow:0 10px 20px rgba(20,43,66,.16)}.primary-button:hover{box-shadow:0 13px 24px rgba(20,43,66,.2)}.text-button{color:#50657a}.text-button:hover{color:#22384e}
.result-column{top:92px}.result-topline{color:#697b8c}.empty-score{border-color:#e5e9ed;color:#82909d}.category-preview b{color:#405369}.bar{background:#e7ebee}.bar span{background:linear-gradient(90deg,#69b5ff,#438de7)}
.info-tip{border-color:#cdd5dc;color:#657687}.info-tip:focus{outline-color:rgba(62,82,102,.2)}
.export-button span{color:#445a6f}.disclaimer{border-color:#d9e1e7;background:#f1f4f6}.disclaimer>span{background:#445a6f}
@media(hover:hover){.form-card:hover{transform:none;border-color:#c8d2da;box-shadow:0 10px 26px rgba(24,48,72,.065)}}
@media(max-width:820px){.calculator-intro.formal-intro{margin-top:36px;align-items:flex-start;flex-direction:column}.method-note{min-width:0;width:100%;max-width:360px}.result-column{top:auto}}
@media(max-width:620px){.site-header{height:66px}.header-inner{width:calc(100% - 28px)}.header-meta strong{display:none}.calculator-intro.formal-intro{width:calc(100% - 24px);margin:30px auto 20px;padding-bottom:20px}.formal-intro h1{font-size:33px}.single-column{grid-template-columns:1fr}.quality-field-wide{grid-template-columns:1fr;max-width:none}}


/* Logo-S accent color */
.primary-button{background:linear-gradient(135deg,#438de7,#69b5ff);box-shadow:0 10px 20px rgba(67,141,231,.20)}
.primary-button:hover{box-shadow:0 13px 25px rgba(67,141,231,.27)}
.text-button{color:#438de7}.text-button:hover{color:#337dce}
input:focus,select:focus{border-color:#4b97ee;box-shadow:0 0 0 3px rgba(75,151,238,.10)}
.info-tip:focus{outline-color:rgba(75,151,238,.24)}
.disclaimer>span{background:#4b97ee}


/* Reference-page background only */
body{
 background:
  radial-gradient(ellipse 46% 38% at 7% 7%,rgba(151,199,255,.42) 0%,rgba(196,222,255,.22) 42%,transparent 74%),
  radial-gradient(ellipse 48% 38% at 94% 8%,rgba(174,232,255,.38) 0%,rgba(215,244,255,.18) 45%,transparent 76%),
  linear-gradient(180deg,#e8f4ff 0%,#f1f8ff 54%,#f8fbff 100%);
 background-attachment:fixed;
}


/* Subtle card tone and aligned quality field */
.form-card,.result-card{background:rgba(251,253,255,.96)}
input,select{background:#fdfefe}
input:focus,select:focus{background:#fff}
.quality-field-wide{grid-template-columns:1fr;max-width:320px;gap:10px}
.quality-field-wide .metric-toggle{width:max-content}


/* Five-step completion and calculation state */
.completion-card{padding:17px 20px;border:1px solid #d9e1e7;border-radius:10px;background:rgba(251,253,255,.96);box-shadow:0 8px 22px rgba(24,48,72,.04)}
.completion-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:11px}.completion-head>span{color:#748392;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.completion-head strong{color:#31465a;font-size:11px}.completion-track{height:5px;overflow:hidden;border-radius:999px;background:#e4e9ed}.completion-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#69b5ff,#438de7);transition:width .35s ease}.completion-card.is-complete .completion-head strong{color:#337dce}
.result-loading{min-height:455px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.result-loading[hidden]{display:none}.result-loading h2{margin:20px 0 8px;font-size:19px}.result-loading p{margin:0;color:#718293;font-size:11px}.calculation-spinner{width:64px;height:64px;border:6px solid #e3e8ec;border-top-color:#4b97ee;border-radius:50%;animation:score-spin .85s linear infinite}.loading-dots{display:flex;gap:5px;margin-top:18px}.loading-dots span{width:6px;height:6px;border-radius:50%;background:#4b97ee;animation:score-pulse 1s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.15s}.loading-dots span:nth-child(3){animation-delay:.3s}.is-calculating{cursor:wait}.is-calculating input,.is-calculating select,.is-calculating .toggle-button,.is-calculating .text-button{opacity:.68}.is-calculating .primary-button{cursor:wait}.button-loading-dots{display:inline-block;min-width:24px;letter-spacing:2px;animation:button-pulse 1s ease-in-out infinite}
@keyframes score-spin{to{transform:rotate(360deg)}}@keyframes score-pulse{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@keyframes button-pulse{0%,100%{opacity:.35}50%{opacity:1}}
@media(max-width:620px){.completion-card{padding:15px 16px}.completion-head{align-items:flex-start;flex-direction:column;gap:4px}.result-loading{min-height:310px}}
@media(prefers-reduced-motion:reduce){.completion-track span{transition:none}.calculation-spinner,.loading-dots span,.button-loading-dots{animation:none}}


/* Compact sticky completion indicator */
.completion-card{position:sticky;top:88px;z-index:18;padding:11px 15px;background:rgba(251,253,255,.93);box-shadow:0 7px 18px rgba(24,48,72,.08);backdrop-filter:blur(12px)}
.completion-head{margin-bottom:7px}.completion-track{height:4px}
@media(max-width:620px){.completion-card{top:76px;padding:10px 13px}.completion-head{align-items:center;flex-direction:row;gap:12px;margin-bottom:6px}.completion-head>span{font-size:9px}.completion-head strong{font-size:10px}}


/* Premium input interactions */
input,select{transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
@media(hover:hover){.field:not(.invalid) input:hover,.field:not(.invalid) select:hover{border-color:#9ebbd3;box-shadow:0 4px 12px rgba(54,103,145,.075);background:#fff}}
.field input:focus,.field select:focus{border-color:#4b97ee;box-shadow:0 0 0 3px rgba(75,151,238,.12),0 5px 15px rgba(54,103,145,.08);background:#fff}
.field.is-valid label:after{content:"✓";display:inline-grid;place-items:center;width:15px;height:15px;margin-left:6px;border:1px solid #b9c8d4;border-radius:50%;color:#526b80;background:#f6f9fb;font-size:9px;font-weight:900;vertical-align:middle}
.field.invalid input,.field.invalid select{border-color:#d48d8d;box-shadow:0 0 0 3px rgba(201,93,93,.07);background:#fffdfd}
.field.invalid input:focus,.field.invalid select:focus{border-color:#cb7777;box-shadow:0 0 0 3px rgba(201,93,93,.10)}
.field-error{display:block;margin-top:6px;color:#a45d5d;font-size:9px;font-weight:600;line-height:1.4;animation:field-error-in .16s ease-out}
@keyframes field-error-in{from{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:620px){input,select{min-height:48px}.field-error{font-size:10px;margin-top:7px}}
@media(prefers-reduced-motion:reduce){input,select,.field-error{transition:none;animation:none}}


/* Company identity field and result label */
.company-name-field{grid-column:1/-1}.company-name-field input{max-width:none;padding-right:13px}
.result-company{margin:13px 0 -7px;color:#52677b;text-align:center;font-size:13px;font-weight:750;letter-spacing:.01em;word-break:break-word}


/* Align sticky progress and result panels */
#save-note{color:#526b80;font-size:11px;font-weight:650;line-height:1.45}
#save-note:not(:empty){display:inline-block;padding:8px 10px;border-radius:8px;background:#f2f7fb}
@media(min-width:821px){.completion-card,.result-column{top:88px}}

/* Match the calculator header to the main PointerScore navigation */
@media(min-width:681px){
  .site-header{height:76px;background:rgba(255,255,255,.9);border-bottom:1px solid rgba(74,119,156,.18);box-shadow:0 8px 24px rgba(15,72,115,.07);backdrop-filter:blur(18px)}
  .header-inner{width:min(1120px,calc(100% - 40px));gap:24px}
  .brand{gap:12px;font-size:16px;font-weight:760;letter-spacing:0}
  .brand-logo{width:42px;height:42px;border-radius:8px;box-shadow:none}
  .app-header-actions{gap:6px}
  .app-header-actions>a{padding:10px 13px;border-radius:8px;color:#5f7186;font-size:.95rem;font-weight:600;transition:color .18s ease,background .18s ease}
  .app-header-actions>a + a{margin-left:-13px}
  .app-header-actions>a:hover{color:#175a9e;background:rgba(47,130,232,.09)}
  .app-header-actions>a{position:relative}
  .app-header-actions>a::after{content:"";position:absolute;right:13px;bottom:7px;left:13px;height:2px;border-radius:999px;background:#2f82e8;transform:scaleX(0);transform-origin:left;transition:transform 220ms ease}
  .app-header-actions>a:hover::after,.app-header-actions>a:focus-visible::after{transform:scaleX(1)}
  .app-header-actions>a:focus-visible{outline:2px solid rgba(47,130,232,.28);outline-offset:2px}
  .language-toggle{margin:0 5px;padding:3px;border-color:rgba(74,119,156,.18);border-radius:8px;background:rgba(238,246,255,.88)}
  .language-toggle button{min-width:34px;height:30px;padding:0 8px;border-radius:6px;font-size:.72rem}
  .header-meta{margin:0 5px;gap:9px}
  .header-meta strong{font-size:.82rem}
  .app-header-actions>button[data-logout]{min-height:40px;padding:0 14px;border:1px solid #d6e3ef;border-radius:8px;color:#175a9e;background:#fff;font-size:.88rem;font-weight:750}
  .app-header-actions>button[data-logout]:hover{color:#0f4f87;background:#f7fbff}
}

/* Mobile-only refinement for the calculator app */
@media (max-width: 620px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  .site-header {
    height: 64px;
  }

  .header-inner {
    width: calc(100% - 22px);
    gap: 10px;
  }

  .brand {
    gap: 8px;
    font-size: 13px;
  }

  .brand-logo {
    width: 32px;
    height: 32px;
    border-radius: 8px;
  }

  .app-header-actions {
    gap: 6px;
  }

  .app-header-actions > a,
  .app-header-actions > button {
    font-size: 11px;
  }

  .language-toggle {
    padding: 2px;
    border-radius: 8px;
  }

  .language-toggle button {
    min-width: 25px;
    height: 28px;
    padding: 0 5px;
    font-size: 10px;
  }

  .calculator-intro.formal-intro {
    width: calc(100% - 22px);
    margin-top: 28px;
    margin-bottom: 18px;
    padding-bottom: 18px;
    gap: 16px;
  }

  .formal-intro h1 {
    font-size: clamp(2rem, 10vw, 2.7rem);
    line-height: 1.06;
  }

  .formal-intro > div:first-child > p:last-child {
    font-size: 13px;
    line-height: 1.55;
  }

  .method-note {
    padding: 12px 13px;
  }

  .calculator-shell {
    width: calc(100% - 22px);
    gap: 10px;
  }

  .form-column {
    gap: 12px;
  }

  .form-card,
  .result-card,
  .completion-card,
  .disclaimer {
    border-radius: 10px;
  }

  .form-card {
    padding: 18px 14px;
  }

  .result-card {
    padding: 18px 14px;
  }

  .section-heading {
    gap: 10px;
    margin-bottom: 17px;
  }

  .step {
    width: 34px;
    height: 34px;
    border-radius: 9px;
  }

  .section-heading h2 {
    font-size: 17px;
    line-height: 1.2;
  }

  .section-heading p {
    font-size: 11px;
    line-height: 1.45;
  }

  .field-grid {
    gap: 12px;
  }

  fieldset {
    margin-bottom: 18px;
  }

  legend {
    margin-bottom: 10px;
  }

  input,
  select {
    height: 44px;
    min-height: 44px;
    border-radius: 8px;
  }

  input {
    padding-left: 12px;
  }

  .input-wrap > span {
    right: 10px;
  }

  .completion-card {
    top: 72px;
    padding: 10px 12px;
  }

  .completion-head {
    align-items: center;
    flex-direction: row;
    gap: 10px;
  }

  .score-ring {
    width: 124px;
    height: 124px;
    margin-top: 18px;
  }

  .score-ring strong {
    font-size: 38px;
  }

  .analysis-card,
  .metrics-card {
    margin-top: 18px;
  }

  .metrics-card {
    padding: 14px;
  }

  .metrics-card dl {
    gap: 7px 10px;
  }

  .save-analysis-row,
  .export-actions {
    gap: 8px;
  }

  .save-analysis-row .primary-button,
  .analysis-note-toggle,
  .export-button,
  .primary-button {
    min-height: 46px;
  }

  .analysis-note-editor {
    padding: 12px;
  }

  .analysis-note-editor textarea {
    min-height: 92px;
  }

  .disclaimer,
  footer {
    width: calc(100% - 22px);
  }
}

@media (max-width: 420px) {
  .calculator-intro.formal-intro,
  .calculator-shell,
  .disclaimer,
  footer {
    width: calc(100% - 20px);
  }

  .formal-intro h1 {
    font-size: clamp(1.9rem, 10.5vw, 2.45rem);
  }

  .form-card,
  .result-card {
    padding-inline: 13px;
  }
}

/* Strong phone zoom-out pass for the calculator only */
@media (max-width: 620px) {
  body {
    font-size: 13px;
  }

  .site-header {
    height: 58px;
  }

  .header-inner {
    width: calc(100% - 18px);
    gap: 7px;
  }

  .brand {
    gap: 7px;
    font-size: 12px;
  }

  .brand-logo {
    width: 28px;
    height: 28px;
  }

  .app-header-actions {
    gap: 4px;
  }

  .app-header-actions > a,
  .app-header-actions > button {
    font-size: 10px;
  }

  .language-toggle {
    transform: scale(.86);
    transform-origin: right center;
  }

  .calculator-intro.formal-intro {
    width: calc(100% - 18px);
    margin-top: 21px;
    margin-bottom: 13px;
    padding-bottom: 14px;
    gap: 12px;
  }

  .page-kicker {
    margin-bottom: 6px;
    font-size: 9px;
  }

  .formal-intro h1 {
    margin-bottom: 7px;
    font-size: clamp(1.65rem, 8.6vw, 2.18rem);
    line-height: 1.05;
  }

  .formal-intro > div:first-child > p:last-child {
    font-size: 11px;
    line-height: 1.45;
  }

  .method-note {
    padding: 9px 10px;
    border-radius: 7px;
  }

  .method-note strong {
    margin-bottom: 3px;
    font-size: 10px;
  }

  .method-note span {
    font-size: 9px;
  }

  .calculator-shell {
    width: calc(100% - 18px);
    gap: 8px;
  }

  .form-column {
    gap: 9px;
  }

  .form-card,
  .result-card {
    padding: 14px 11px;
    border-radius: 9px;
  }

  .section-heading {
    gap: 8px;
    margin-bottom: 13px;
  }

  .step {
    width: 29px;
    height: 29px;
    border-radius: 8px;
    font-size: 9px;
  }

  .section-heading h2 {
    margin-bottom: 3px;
    font-size: 15px;
  }

  .section-heading p {
    font-size: 10px;
    line-height: 1.35;
  }

  .field-grid {
    gap: 9px;
  }

  .field label {
    margin-bottom: 6px;
    font-size: 10px;
  }

  fieldset {
    margin-bottom: 14px;
  }

  legend {
    margin-bottom: 8px;
    font-size: 9px;
  }

  input,
  select {
    height: 39px;
    min-height: 39px;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 12px;
  }

  input {
    padding-left: 10px;
    padding-right: 46px;
  }

  .input-wrap > span {
    right: 9px;
    font-size: 9px;
  }

  .completion-card {
    top: 65px;
    padding: 8px 10px;
  }

  .completion-head > span,
  .completion-head strong {
    font-size: 9px;
  }

  .result-empty {
    padding: 16px;
  }

  .empty-score {
    width: 72px;
    height: 72px;
    font-size: 23px;
  }

  .overall-title {
    font-size: 17px;
  }

  .score-ring {
    width: 108px;
    height: 108px;
    margin: 14px auto 13px;
  }

  .score-ring:after {
    inset: 9px;
  }

  .score-ring strong {
    font-size: 32px;
  }

  .signal-copy,
  .analysis-columns li {
    font-size: 10px;
  }

  .category-results {
    gap: 10px;
    padding-top: 15px;
  }

  .analysis-card,
  .metrics-card {
    margin-top: 14px;
  }

  .metrics-card {
    padding: 11px;
  }

  .save-analysis-row .primary-button,
  .analysis-note-toggle,
  .export-button,
  .primary-button {
    min-height: 40px;
    font-size: 11px;
  }

  .analysis-note-editor {
    padding: 10px;
  }

  .analysis-note-editor textarea {
    min-height: 78px;
    font-size: 10px;
  }

  .disclaimer,
  footer {
    width: calc(100% - 18px);
  }
}

@media (max-width: 420px) {
  .calculator-intro.formal-intro,
  .calculator-shell,
  .disclaimer,
  footer {
    width: calc(100% - 16px);
  }

  .form-card,
  .result-card {
    padding-inline: 10px;
  }
}

/* Ultra-compact phone-only calculator layout */
@media (max-width: 620px) {
  body {
    font-size: 11.5px;
  }

  .site-header {
    height: 52px;
  }

  .header-inner {
    width: calc(100% - 14px);
    gap: 5px;
  }

  .brand {
    gap: 5px;
    font-size: 10px;
  }

  .brand-logo {
    width: 24px;
    height: 24px;
    border-radius: 6px;
  }

  .app-header-actions {
    gap: 3px;
  }

  .app-header-actions > a,
  .app-header-actions > button {
    font-size: 9px;
  }

  .language-toggle {
    transform: scale(.74);
    transform-origin: right center;
  }

  .calculator-intro.formal-intro {
    width: calc(100% - 14px);
    margin-top: 15px;
    margin-bottom: 9px;
    padding-bottom: 10px;
    gap: 8px;
  }

  .page-kicker {
    margin-bottom: 4px;
    font-size: 8px;
  }

  .formal-intro h1 {
    margin-bottom: 5px;
    font-size: clamp(1.35rem, 7.2vw, 1.82rem);
  }

  .formal-intro > div:first-child > p:last-child {
    font-size: 9.5px;
    line-height: 1.35;
  }

  .method-note {
    padding: 7px 8px;
  }

  .method-note strong {
    font-size: 9px;
  }

  .method-note span {
    font-size: 8px;
  }

  .calculator-shell {
    width: calc(100% - 14px);
    gap: 6px;
  }

  .form-column {
    gap: 7px;
  }

  .form-card,
  .result-card {
    padding: 10px 8px;
    border-radius: 8px;
  }

  .section-heading {
    gap: 6px;
    margin-bottom: 9px;
  }

  .step {
    width: 24px;
    height: 24px;
    border-radius: 7px;
    font-size: 8px;
  }

  .section-heading h2 {
    margin-bottom: 2px;
    font-size: 13px;
  }

  .section-heading p {
    font-size: 8.8px;
    line-height: 1.28;
  }

  .field-grid {
    gap: 7px;
  }

  .field label {
    margin-bottom: 4px;
    font-size: 8.8px;
  }

  fieldset {
    margin-bottom: 10px;
  }

  legend {
    margin-bottom: 6px;
    font-size: 8px;
  }

  input,
  select {
    height: 33px;
    min-height: 33px;
    border-radius: 7px;
    font-size: 10px;
  }

  input {
    padding-left: 8px;
    padding-right: 38px;
  }

  .input-wrap > span {
    right: 7px;
    font-size: 8px;
  }

  .metric-toggle {
    height: 34px;
  }

  .toggle-button {
    padding-inline: 8px;
    font-size: 8px;
  }

  .completion-card {
    top: 58px;
    padding: 7px 8px;
    border-radius: 8px;
  }

  .completion-head {
    margin-bottom: 5px;
  }

  .completion-head > span,
  .completion-head strong {
    font-size: 8px;
  }

  .result-empty {
    padding: 12px;
  }

  .empty-score {
    width: 60px;
    height: 60px;
    margin-bottom: 10px;
    border-width: 5px;
    font-size: 19px;
  }

  .result-empty h2,
  .overall-title {
    font-size: 14px;
  }

  .score-ring {
    width: 92px;
    height: 92px;
    margin: 10px auto 10px;
  }

  .score-ring:after {
    inset: 8px;
  }

  .score-ring strong {
    font-size: 27px;
  }

  .signal-badge {
    padding: 5px 8px;
    font-size: 8px;
  }

  .signal-copy,
  .analysis-columns li {
    font-size: 8.8px;
  }

  .category-results {
    gap: 8px;
    padding-top: 11px;
  }

  .category-result-head {
    margin-bottom: 5px;
    font-size: 8.8px;
  }

  .analysis-card,
  .metrics-card {
    margin-top: 11px;
    padding-top: 11px;
  }

  .metrics-card {
    padding: 9px;
  }

  .metrics-card h3,
  .analysis-card h3 {
    margin-bottom: 9px;
    font-size: 9px;
  }

  .save-analysis-row .primary-button,
  .analysis-note-toggle,
  .export-button,
  .primary-button {
    min-height: 34px;
    font-size: 9.5px;
  }

  .analysis-note-editor {
    padding: 8px;
  }

  .analysis-note-editor textarea {
    min-height: 66px;
    font-size: 9px;
  }

  .disclaimer,
  footer {
    width: calc(100% - 14px);
  }
}

@media (max-width: 420px) {
  .calculator-intro.formal-intro,
  .calculator-shell,
  .disclaimer,
  footer {
    width: calc(100% - 12px);
  }
}

/* Final unified mobile app header: match Dashboard/Profile/Compare */
@media (max-width: 620px) {
  .site-header {
    height: 58px;
    min-height: 58px;
  }

  .header-inner {
    width: calc(100% - 14px);
    gap: 6px;
    justify-content: space-between;
  }

  .brand {
    flex: 0 0 auto;
    gap: 6px;
    color: #06192d;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: -.02em;
  }

  .brand-logo {
    width: 28px;
    height: 28px;
    border-radius: 7px;
  }

  .app-header-actions {
    flex: 1 1 auto;
    justify-content: flex-end;
    gap: 3px;
    min-width: 0;
    overflow: visible;
  }

  .app-header-actions > a,
  .app-header-actions > button {
    position: relative;
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    padding: 6px 6px;
    border: 1px solid transparent;
    border-radius: 8px;
    color: #5f7186;
    background: transparent;
    font: inherit;
    font-size: .62rem;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    transition: color .18s ease, background .18s ease, transform .18s ease, border-color .18s ease;
  }

  .app-header-actions > button[data-logout] {
    border-color: #d6e3ef;
    background: #fff;
    cursor: pointer;
  }

  .app-header-actions > a::after,
  .app-header-actions > button::after {
    content: "";
    position: absolute;
    right: 7px;
    bottom: 4px;
    left: 7px;
    height: 2px;
    border-radius: 999px;
    background: #2f82e8;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 220ms ease;
  }

  .app-header-actions > a:hover,
  .app-header-actions > a:focus-visible,
  .app-header-actions > button:hover,
  .app-header-actions > button:focus-visible {
    color: #175a9e;
    background: rgba(47, 130, 232, .09);
    transform: translateY(-1px);
    outline: none;
  }

  .app-header-actions > a:hover::after,
  .app-header-actions > a:focus-visible::after,
  .app-header-actions > button:hover::after,
  .app-header-actions > button:focus-visible::after {
    transform: scaleX(1);
  }

  .language-toggle {
    transform: none;
    flex: 0 0 auto;
    gap: 1px;
    padding: 2px;
    border-radius: 8px;
  }

  .language-toggle button {
    min-width: 24px;
    height: 26px;
    padding: 0 5px;
    border-radius: 6px;
    font-size: .55rem;
  }
}

/* Final app-header spacing: first two links grouped, logout separated, language at the end */
@media (max-width: 620px) {
  .app-header-actions {
    gap: 1px;
  }

  .app-header-actions a + a {
    margin-left: -2px;
  }

  .app-header-actions > button[data-logout] {
    margin-left: 9px;
  }

  .app-header-actions > button[data-logout] + .language-toggle {
    margin-left: 3px;
  }
}

/* Match mobile calculator header exactly to Dashboard/Profile sizing */
@media (max-width: 620px) {
  .site-header {
    height: 62px;
    min-height: 62px;
  }

  .header-inner {
    width: calc(100% - 14px);
    min-height: 62px;
    gap: 6px;
    justify-content: space-between;
  }

  .brand {
    gap: 6px;
    font-size: .8rem;
  }

  .brand-logo {
    width: 30px;
    height: 30px;
    border-radius: 7px;
  }

  .app-header-actions {
    gap: 1px;
  }

  .app-header-actions > a,
  .app-header-actions > button {
    min-height: 34px;
    padding: 7px 7px;
    font-size: .68rem;
  }

  .app-header-actions a + a {
    margin-left: -2px;
  }

  .app-header-actions > button[data-logout] {
    margin-left: 9px;
  }

  .language-toggle {
    gap: 1px;
    margin-left: 3px;
    padding: 3px;
    border-radius: 8px;
  }

  .language-toggle button {
    min-width: 28px;
    height: 28px;
    padding: 0 5px;
    font-size: .62rem;
  }
}
