/* CalculatorAnything shared styles */
:root{--bg-canvas:#FFFFFF;--bg-surface:#FAFAFC;--surface-card:#FFFFFF;--text-primary:#14131F;--text-secondary:#55536B;--text-muted:#66647A;--accent:#6D5EF8;--accent-hover:#5947E8;--border-subtle:rgba(20,19,31,.09);--border-strong:rgba(20,19,31,.18)}*{box-sizing:border-box}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}select:focus,textarea:focus,input:focus{outline:none;border-color:rgba(109,94,248,.5);box-shadow:0 0 0 3px rgba(109,94,248,.22)}.ca-hero-bg{background:radial-gradient(1000px 520px at 12% -15%,rgba(109,94,248,.16),transparent 60%),radial-gradient(800px 460px at 92% -10%,rgba(236,72,153,.13),transparent 55%),radial-gradient(700px 400px at 50% 110%,rgba(16,185,129,.10),transparent 60%);border-radius:28px}.ca-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;text-decoration:none !important;display:block}.ca-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(20,19,31,.10);border-color:rgba(109,94,248,.35) !important}.ca-badge{transition:transform .18s ease}.ca-card:hover .ca-badge{transform:scale(1.08) rotate(-4deg)}.ca-pill{text-decoration:none !important;display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 6px;border:1px solid var(--border-subtle);border-radius:999px;font-size:13px;color:var(--text-secondary)}.ca-pill:hover{background:rgba(109,94,248,.06)}.ca-link-row{text-decoration:none !important;display:flex;align-items:center;gap:8px;padding:3px 4px;border-radius:6px;margin:0 -4px;font-size:13px;color:var(--text-secondary)}.ca-link-row:hover{background:rgba(109,94,248,.07)}@keyframes caFadeSlide{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}#ca-rotate-word{display:inline-block;animation:caFadeSlide .45s cubic-bezier(0.16,1,0.3,1);color:var(--accent)}.ca-nav-dropdown{position:relative}.ca-nav-dropdown-panel{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 18px 40px rgba(20,19,31,.14);padding:10px;min-width:230px;z-index:40;grid-template-columns:1fr 1fr;grid-gap:2px}.ca-nav-dropdown:hover .ca-nav-dropdown-panel{display:grid}.ca-nav-dropdown-panel a{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;color:var(--text-primary);font-size:13.5px;font-weight:500;text-decoration:none}.ca-nav-dropdown-panel a:hover{background:rgba(109,94,248,.06)}#ca-search-results{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 12px 30px rgba(20,19,31,.12);z-index:41;max-height:340px;overflow-y:auto;margin-top:4px}@media (max-width:760px){.ca-header-search{display:none !important}}.ca-mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px;margin-left:auto;color:var(--text-primary)}@media (max-width:760px){.ca-nav-dropdown,.ca-desktop-nav{display:none !important}.ca-mobile-toggle{display:flex !important;align-items:center;justify-content:center}}.ca-mobile-menu{position:fixed;inset:0;background:rgba(20,19,31,.45);z-index:100;display:none}.ca-mobile-menu.ca-mobile-open{display:block}.ca-mobile-panel{position:absolute;top:0;right:0;height:100%;width:84%;max-width:340px;background:#fff;box-shadow:-12px 0 40px rgba(20,19,31,.18);padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;box-sizing:border-box}.ca-mobile-panel a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:10px;color:var(--text-primary);font-size:15px;font-weight:600;text-decoration:none}.ca-mobile-panel a:hover{background:rgba(109,94,248,.06);text-decoration:none}.ca-mobile-close{align-self:flex-end;background:none;border:none;cursor:pointer;padding:6px;color:var(--text-primary)}.ca-mobile-divider{height:1px;background:var(--border-subtle);margin:4px 0}#ca-search-results-mobile{display:none;border:1px solid var(--border-subtle);border-radius:10px;margin-top:4px;max-height:240px;overflow-y:auto}
.ca-nav-trigger{font:inherit;font-size:14px;font-weight:600;color:var(--text-primary);background:transparent;border:0;padding:8px 4px;cursor:pointer;display:flex;align-items:center;gap:4px}.ca-nav-dropdown:focus-within .ca-nav-dropdown-panel,.ca-nav-dropdown.is-open .ca-nav-dropdown-panel{display:grid}.ca-nav-dropdown.is-closed .ca-nav-dropdown-panel,.ca-cat-menu.is-closed .ca-cat-panel{display:none!important}.ca-cat-menu.is-open .ca-cat-panel{display:block}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #6D5EF8;outline-offset:2px}.ca-breadcrumb a{display:inline-block;padding:4px 0}footer a[href$="/"][style*="margin-top:2px"]{display:inline-block;padding:5px 0}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Unified site header (all pages) */
.ca-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.ca-category-nav{display:flex;align-items:center;gap:2px;margin-left:auto;white-space:nowrap}
.ca-cat-menu{position:relative}
.ca-cat-trigger{border:0;background:transparent;color:var(--text-primary);font:inherit;font-size:13px;font-weight:700;padding:10px 7px;cursor:pointer;display:flex;align-items:center;gap:4px}
.ca-cat-trigger:after{content:"▾";font-size:9px;color:var(--text-muted)}
.ca-cat-panel{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 18px 40px rgba(20,19,31,.14);padding:8px;min-width:250px;max-height:420px;overflow:auto;z-index:60}
.ca-cat-menu:hover .ca-cat-panel,.ca-cat-menu:focus-within .ca-cat-panel,.ca-cat-menu.is-open .ca-cat-panel{display:block}
.ca-cat-menu.is-closed .ca-cat-panel{display:none!important}
.ca-category-nav .ca-cat-menu:nth-last-child(-n+3) .ca-cat-panel{left:auto;right:0}
.ca-cat-panel a{display:block;padding:8px 10px;border-radius:8px;color:var(--text-primary);font-size:13px;font-weight:500;text-decoration:none}
.ca-cat-panel a:hover,.ca-cat-panel a:focus{background:rgba(109,94,248,.06);text-decoration:none}
.ca-cat-panel .ca-cat-all{font-weight:800;color:var(--accent);border-bottom:1px solid var(--border-subtle);border-radius:0;margin-bottom:4px}
.ca-top-tools{display:flex;align-items:center;gap:8px}
.ca-all-link{font-size:12.5px;font-weight:700;white-space:nowrap}
.ca-search-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border:1px solid var(--border-subtle);border-radius:8px;background:#fff;color:var(--text-primary);cursor:pointer}
.ca-search-btn:hover,.ca-search-btn[aria-expanded="true"]{border-color:var(--accent);color:var(--accent)}
.ca-search-pop{border-top:1px solid var(--border-subtle);background:#fff}
.ca-search-pop[hidden]{display:none}
.ca-search-pop-inner{max-width:1200px;margin:0 auto;padding:12px 24px;position:relative;box-sizing:border-box}
#ca-search-input-header{width:100%;box-sizing:border-box;padding:11px 14px;border:1px solid var(--border-subtle);border-radius:10px;font-size:15px;color:var(--text-primary);background:#fff}
#ca-search-results-header{display:none;position:absolute;top:100%;left:24px;right:24px;background:#fff;border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 12px 30px rgba(20,19,31,.12);z-index:41;max-height:340px;overflow-y:auto;margin-top:-6px}
@media(max-width:1100px){.ca-category-nav{gap:0}.ca-cat-trigger{font-size:12px;padding:10px 5px}.ca-all-link{display:none}}
@media(max-width:1023px){.ca-category-nav,.ca-top-tools,.ca-search-pop{display:none!important}.ca-mobile-toggle{display:flex!important;align-items:center;justify-content:center}}

/* Result extras: chart, actions, related tools, history */
.ca-extras{display:flex;flex-direction:column;gap:18px;margin-top:18px}
.ca-extras:empty{display:none}
.ca-chart{border:1px solid var(--border-subtle);border-radius:12px;padding:14px;background:#fff}
.ca-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ca-act-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:13px;font-weight:600;color:var(--text-primary);background:#fff;border:1px solid var(--border-subtle);border-radius:8px;padding:8px 12px;min-height:36px;cursor:pointer}
.ca-act-btn:hover{border-color:var(--accent);color:var(--accent)}
.ca-act-status{font-size:13px;color:#047857;font-weight:600}
.ca-extras-h{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:8px}
.ca-next-row{display:flex;flex-wrap:wrap;gap:8px}
.ca-next-link{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(109,94,248,.08);color:var(--accent);font-size:13.5px;font-weight:700;text-decoration:none}
.ca-next-link:hover{background:rgba(109,94,248,.16);text-decoration:none}
.ca-hist{border:1px solid var(--border-subtle);border-radius:12px;padding:12px 14px;background:var(--bg-surface)}
.ca-hist summary{cursor:pointer;font-weight:700;font-size:14px;color:var(--text-primary)}
.ca-hist ul{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:8px}
.ca-hist-item{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid var(--border-subtle);border-radius:10px;padding:10px 12px}
.ca-hist-res{font-weight:700;font-size:14px;color:var(--text-primary)}
.ca-hist-in{font-size:12.5px;color:var(--text-secondary);margin-top:2px;overflow-wrap:anywhere}
.ca-hist-when,.ca-hist-note{font-size:12px;color:var(--text-muted);margin:2px 0 0}
.ca-link-btn{font:inherit;font-size:13px;background:none;border:0;padding:6px 0;color:var(--accent);cursor:pointer;text-decoration:underline}
#ca-print-summary{display:none}
@media print{
  header,footer,.ca-mobile-menu,#ca-search-pop,.ca-actions,.ca-next,.ca-hist,#calc-run,main section,nav.ca-breadcrumb,ins.adsbygoogle,.ca-prime-mode-wrap{display:none!important}
  body{background:#fff!important;color:#000}
  #calc-form{border:0!important;padding:0!important;box-shadow:none!important;background:none!important}
  #calc-form > div:first-child,#calc-form label,#calc-form input,#calc-form select,#calc-form textarea{display:none!important}
  #ca-print-summary{display:block!important;margin:0 0 12px}
  #ca-print-summary h2{font-size:15px;margin:0 0 6px}
  #ca-print-summary ul{margin:0 0 8px;padding-left:18px;font-size:13px}
  .ca-print-meta{font-size:11px;color:#444}
  .ca-chart{break-inside:avoid;border-color:#ccc}
  a{color:#000!important;text-decoration:none!important}
  @page{margin:16mm}
}

.ca-skip-link{position:absolute;top:-100px;left:12px;z-index:9999;background:#fff;padding:12px;border:2px solid #4231B8;color:#30209A}.ca-skip-link:focus{top:8px}.ca-cat-panel{visibility:hidden!important;pointer-events:none!important}.ca-cat-menu.is-open .ca-cat-panel,.ca-cat-menu:focus-within .ca-cat-panel,.ca-cat-menu:hover .ca-cat-panel{visibility:visible!important;pointer-events:auto!important}:root{--accent:#5947D8;--border-subtle:rgba(20,19,31,.32)}a:not([class]){text-decoration:underline}input:focus-visible,button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #5947D8;outline-offset:2px}

/* Audited keyboard navigation: dropdowns open on activation, not focus alone. */
.ca-cat-menu:focus-within:not(.is-open) .ca-cat-panel,
.ca-nav-dropdown:focus-within:not(.is-open) .ca-nav-dropdown-panel{display:none!important;visibility:hidden!important;pointer-events:none!important}
.ca-cat-menu.is-open .ca-cat-panel{display:block!important;visibility:visible!important;pointer-events:auto!important}
.ca-nav-dropdown.is-open .ca-nav-dropdown-panel{display:grid!important;visibility:visible!important;pointer-events:auto!important}
/* Improve form boundary contrast; keep design language unchanged. */
:root{--border-subtle:rgba(20,19,31,.55)}
/* Include calculation explanation in print output. */
@media print{main section.ca-result-explanation,.ca-result-explanation,#calc-result .ca-result-explanation{display:block!important}}

/* Hide closed dropdowns even when hovered by pointer while focus is elsewhere. */
.ca-cat-menu.is-closed .ca-cat-panel,.ca-nav-dropdown.is-closed .ca-nav-dropdown-panel{display:none!important;visibility:hidden!important;pointer-events:none!important}

/* ===== Oct 2026 usability update ===== */
header a,header a:hover,.ca-cat-panel a,footer a.ca-link-row,.ca-mobile-panel a{text-decoration:none!important}
footer a{display:inline-flex;align-items:center;min-height:24px}
.ca-cat-trigger{min-height:32px}
/* search is reachable on phones too */
@media(max-width:1023px){header .ca-header-top .ca-top-tools{display:flex!important;margin-left:auto}header .ca-top-tools .ca-all-link{display:none}header .ca-header-top .ca-mobile-toggle{margin-left:4px!important}}
.ca-mm-search input{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid var(--border-subtle);border-radius:10px;font-size:16px}
.ca-mm-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:700;padding:4px 12px 0}
.ca-mobile-panel a.ca-mm-pop{padding:8px 12px;font-weight:500;font-size:14.5px}
/* calculator form */
details.ca-more{border:1px dashed var(--border-strong);border-radius:12px;padding:0 14px}
details.ca-more>summary{cursor:pointer;font-weight:700;font-size:14px;padding:12px 0;color:var(--text-primary);min-height:24px}
details.ca-more[open]>summary{margin-bottom:6px}
.ca-more-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;padding-bottom:14px}
.ca-adorn{position:relative;display:block}
.ca-adorn-sym{position:absolute;top:50%;transform:translateY(-50%);font-size:14px;color:var(--text-muted);pointer-events:none;font-weight:600}
.ca-adorn.ca-pre .ca-adorn-sym{left:12px}.ca-adorn.ca-pre input{padding-left:44px!important}
.ca-adorn.ca-post .ca-adorn-sym{right:12px}.ca-adorn.ca-post input{padding-right:34px!important}
.ca-cur-row{display:flex;align-items:center;gap:8px;justify-content:flex-end;font-size:13px;color:var(--text-secondary);margin-bottom:-8px}
.ca-cur-row select{border:1px solid var(--border-subtle);border-radius:8px;padding:6px 8px;font-size:13px;background:#fff}
.ca-rows{display:flex;flex-direction:column;gap:8px}
.ca-rows-head,.ca-row{display:grid;grid-template-columns:1fr 1fr 1.4fr 36px;gap:8px;align-items:center}
.ca-rows-ts .ca-rows-head,.ca-rows-ts .ca-row{grid-template-columns:44px 1fr 1fr 1fr 74px}
.ca-rows-head{font-size:12px;font-weight:700;color:var(--text-muted)}
.ca-row select,.ca-row input{width:100%;box-sizing:border-box;padding:9px 8px;border:1px solid var(--border-subtle);border-radius:8px;font-size:15px;background:#fff;min-width:0}
.ca-row-del{border:1px solid var(--border-subtle);background:#fff;border-radius:8px;height:38px;font-size:18px;cursor:pointer}
.ca-row-add{align-self:flex-start}
.ca-row-out{font-size:13px;font-weight:700;color:var(--text-primary)}
.ca-day{font-weight:700;font-size:13px}
.ca-rows-note{font-size:12.5px;color:var(--text-muted);margin:2px 0 0}
@media(max-width:480px){.ca-rows-ts .ca-rows-head,.ca-rows-ts .ca-row{grid-template-columns:34px 1fr 1fr 52px;gap:6px}.ca-rows-ts .ca-rows-head span:last-child,.ca-rows-ts .ca-row-out{grid-column:2/-1;font-weight:600}.ca-rows-ts .ca-rows-head span:last-child{display:none}.ca-rows-head,.ca-row{grid-template-columns:1fr .8fr 1.5fr 34px}}
.ca-sticky-result{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:50;display:flex;align-items:center;gap:10px;max-width:min(560px,calc(100% - 24px));width:max-content;background:#14131F;color:#fff;border:0;border-radius:999px;padding:10px 16px;font:inherit;font-size:13px;box-shadow:0 10px 30px rgba(20,19,31,.3);cursor:pointer}
.ca-sticky-result strong{font-size:16px}.ca-sticky-go{opacity:.75;white-space:nowrap}
.ca-sticky-result span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media print{.ca-sticky-result,.ca-cur-row{display:none!important}}
/* home */
.ca-h1-sub{display:block;font-size:.42em;font-weight:700;color:var(--text-secondary);margin-top:12px;line-height:1.3}
#ca-continue{margin:8px 0 34px}
.ca-continue-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.ca-continue-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:12px}
.ca-continue-item{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:12px;background:#fff;text-decoration:none!important}
.ca-continue-t{font-weight:700;color:var(--text-primary);font-size:14px}.ca-continue-r{font-size:12.5px;color:var(--text-muted)}
.ca-top-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
@media(max-width:640px){
  .ca-cat-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .ca-cat-grid .ca-card{padding:14px!important}
  .ca-cat-grid .ca-card>div:nth-child(3){display:none}
  .ca-top-grid{grid-template-columns:1fr 1fr;gap:8px}
  .ca-top-grid .ca-card{padding:12px!important}
  .ca-top-grid .ca-card span span:last-child{display:none!important}
  #quick-calculator{grid-template-columns:1fr!important}
  footer .ca-link-row{display:none!important}
  footer{padding-top:36px!important}
}
.ca-cat-sep{display:block;height:1px;background:var(--border-subtle);margin:6px 4px}

.ca-data-table{border-collapse:collapse;font-size:14px;min-width:100%}.ca-data-table th,.ca-data-table td{padding:8px 10px;border-bottom:1px solid var(--border-subtle);text-align:left;white-space:nowrap}.ca-data-table th{color:var(--text-primary);font-weight:700;background:var(--bg-surface)}
main h2 a{display:inline-block;min-height:24px}.ca-link-btn{min-height:24px}
@media(max-width:1023px){header .ca-search-pop:not([hidden]){display:block!important}#ca-search-input-header{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid var(--border-subtle);border-radius:10px;font-size:16px}}
@media(max-width:640px){footer div[style*="minmax(160px"]{grid-template-columns:1fr 1fr!important;gap:14px 18px!important}}
.ca-sticky-result strong{white-space:nowrap}
.ca-sticky-result[hidden]{display:none!important}
/* tool icons */
.ca-ic{width:16px;height:16px;flex:none;vertical-align:-3px}
.ca-ic-lg{width:20px;height:20px}
.ca-ic-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;flex:none}
.ca-card>.ca-ic-badge{margin-right:0}.ca-top-grid .ca-card{gap:12px}
.ca-card{align-items:flex-start}
.ca-cat-panel a{display:flex!important;align-items:center;gap:8px}
.ca-h1-ic{width:44px;height:44px;border-radius:12px;margin-right:12px;vertical-align:middle;position:relative;top:-3px}
.ca-h1-ic .ca-ic-lg{width:24px;height:24px}
.ca-mm-pop .ca-ic,.ca-link-row .ca-ic{margin-right:2px}
.cat-finance{color:#4532B0}.ca-ic-badge.cat-finance{background:rgba(109,94,248,.12)}
.cat-business{color:#B45309}.ca-ic-badge.cat-business{background:rgba(245,158,11,.14)}
.cat-percentage{color:#BE185D}.ca-ic-badge.cat-percentage{background:rgba(236,72,153,.12)}
.cat-date-time{color:#0E7490}.ca-ic-badge.cat-date-time{background:rgba(6,182,212,.13)}
.cat-health{color:#B91C1C}.ca-ic-badge.cat-health{background:rgba(239,68,68,.11)}
.cat-math{color:#6D28D9}.ca-ic-badge.cat-math{background:rgba(139,92,246,.12)}
.cat-everyday{color:#047857}.ca-ic-badge.cat-everyday{background:rgba(16,185,129,.12)}
.cat-construction{color:#C2410C}.ca-ic-badge.cat-construction{background:rgba(249,115,22,.12)}
@media(max-width:640px){.ca-top-grid .ca-ic-badge{width:30px;height:30px;margin-right:8px}.ca-h1-ic{width:36px;height:36px}}
