/* Selected direction 1. Existing calculator styles remain the fallback. */
:root {
  --paper:#fcfcfa; --desk:#fcfcfa; --field:#fff; --ink:#14252c;
  --ink-2:#40535d; --ink-3:#596e77; --rule:#d5dcdd; --rule-mid:#b5c1c5;
  --rule-bold:#b5c1c5; --keep:#205966; --keep-bg:#f0f6f5; --minus:#a33429;
  --w:1280px; --r:3px;
  --f-doc:"Yu Mincho","YuMincho","Hiragino Mincho ProN","MS PMincho",serif;
  --f-body:"Yu Gothic",Meiryo,"Hiragino Kaku Gothic ProN",sans-serif;
  --f-num:"Yu Mincho","YuMincho","MS PMincho",serif;
}
body {background:var(--paper);font-feature-settings:normal;line-height:1.7;}
a {color:var(--keep);}
a:hover {color:#123e49;}
:focus-visible {outline:3px solid var(--keep);outline-offset:3px;}
header.site {background:var(--paper);color:var(--ink);border-bottom:1px solid var(--rule);}
header.site .inner {max-width:var(--w);padding:18px 24px;align-items:center;gap:24px;}
header.site .logo {color:var(--ink);font-size:28px;letter-spacing:.06em;}
header.site .tagline {color:var(--ink-2);font-size:13px;letter-spacing:0;}
.home-nav {margin-left:auto;display:flex;gap:32px;align-self:stretch;align-items:center;}
.home-nav a {font-size:14px;font-weight:700;text-decoration:none;padding:12px 0 10px;border-bottom:2px solid transparent;color:var(--ink);}
.home-nav a[aria-current] {border-color:var(--keep);}
main > .wrap {max-width:var(--w);margin:0 auto 64px;border:0;box-shadow:none;padding:44px 24px;}
.hero {display:flex;flex-direction:column;align-items:flex-start;gap:6px;border:0;margin:0 0 28px;padding:0;}
.hero .home-title {order:0;font-family:var(--f-doc);font-size:clamp(30px,4.1vw,52px);font-weight:700;letter-spacing:.015em;line-height:1.4;}
.home-title span {display:inline-block;white-space:nowrap;}
.hero h1 {order:1;font-family:var(--f-body);font-size:16px;letter-spacing:.025em;text-indent:0;line-height:1.7;}
.hero h1 .accent {font-size:1em;letter-spacing:0;}
.hero .eyebrow {order:2;max-width:none;border:0;padding:0;align-self:auto;text-align:left;font-size:12px;}
.hero .hero-sub {order:3;font-family:var(--f-doc);font-size:21px;font-weight:400;margin:0;line-height:1.6;}
.hero .trust {order:4;font-size:12px;margin:4px 0 0;color:var(--ink-3);line-height:1.7;}
.calculator-layout {display:grid;grid-template-columns:minmax(0,1.58fr) minmax(0,1fr);gap:40px;align-items:start;}
.calculator-layout > .card {margin:0;min-width:0;}
.form-lead {border:0;font-family:var(--f-body);font-size:14px;letter-spacing:.04em;text-indent:0;margin:0 0 12px;padding:0;}
.form-card > .field,.form-card > .row2 {border:0;}
.field {padding:10px 0;}
.row2 {gap:0 24px;}
.row2 > .field {padding:10px 0;}
.row2 > .field > label {flex:1;}
.field > label {font-size:14px;letter-spacing:0;line-height:1.55;margin-bottom:6px;}
.hint {font-size:11.5px;line-height:1.6;color:var(--ink-3);}
.field-lead {padding-top:0;display:grid;grid-template-columns:132px minmax(0,1fr);column-gap:16px;align-items:center;}
.field-lead .form-lead {grid-column:1;grid-row:1;margin:0;}
.field-lead .modeswitch {grid-column:2;grid-row:1;width:100%;margin:0 0 18px;}
.field-lead #grossLabel {grid-column:1;grid-row:2;}
.field-lead #gross {grid-column:2;grid-row:2;}
.field-lead #grossNote,.field-lead #convNote {grid-column:1/-1;}
.modeswitch {max-width:330px;display:flex;border:1px solid var(--rule-mid);margin-bottom:18px;}
.modeswitch .opt {flex:1;}
.modeswitch label {display:block;font-size:14px;padding:9px 12px;line-height:1.7;}
.modeswitch input:checked + label {background:var(--keep);color:white;}
input[type="number"],select {min-height:46px;padding:9px 12px;border-color:var(--rule-mid);border-radius:var(--r);font-size:16px;}
select {appearance:auto;background-image:none;}
input[type="number"] {font-family:var(--f-body);font-size:20px;}
input:focus,select:focus {outline:2px solid var(--keep);}
#gross {min-height:50px;}
#grossHint {display:block;font-size:11.5px;}
.family-row {align-items:stretch;}
.child-row {max-width:calc(50% - 12px);display:block;}
.input-help {font-size:12px;margin:2px 0 8px;color:var(--ink-2);}
.input-help > summary {cursor:pointer;}
.input-help .field {padding:8px 0;}
.details-toggle {padding:14px 0;border-bottom:1px solid var(--rule);}
.details-toggle > summary {font-size:13px;line-height:1.65;list-style:revert;color:var(--ink-2);}
.details-toggle > summary::-webkit-details-marker {display:revert;}
.details-toggle > summary::before {content:none;}
.form-card .btn {position:static;box-shadow:none;margin-top:20px;background:var(--keep);border-color:var(--keep);min-height:54px;padding:12px 16px;font-size:19px;letter-spacing:.08em;}
.form-card .btn:hover {background:#174550;}
#result {border-left:1px solid var(--rule);padding-left:40px;scroll-margin-top:24px;}
#result .form-lead {font-family:var(--f-doc);font-size:25px;letter-spacing:.06em;padding-bottom:16px;border-bottom:1px solid var(--rule);margin-bottom:12px;}
.initial-result,.example-control {display:none;}
.home-enhanced #result[data-state="default"] .initial-result {display:block;text-align:center;}
.home-enhanced #result[data-state="default"] .example-control {display:block;}
.home-enhanced #result[data-state="default"]:not(.show-example) [data-panel="success"] {display:none;}
.home-enhanced #result[data-state="default"].show-example .initial-result {display:none;}
.empty-amount {font-family:var(--f-doc);font-size:60px;line-height:1.4;padding:22px 0 8px;color:var(--ink);}
.empty-amount span {font-size:44px;}
.initial-result > p:not(.empty-amount) {font-size:14px;padding:8px 0 26px;}
.empty-breakdown {margin:8px 0 0;text-align:left;}
.empty-breakdown div {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 4px;border-top:1px solid var(--rule);font-size:14px;}
.empty-breakdown div:last-child {border-bottom:1px solid var(--rule);}
.empty-breakdown dd {margin:0;white-space:nowrap;}
.example-control {margin-top:12px;text-align:right;}
#exampleToggle {border:0;background:transparent;color:var(--keep);font-family:var(--f-body);font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:8px;cursor:pointer;}
.takehome {display:block;background:transparent;border:0;padding:12px 0;margin:8px 0;text-align:left;}
.takehome .label {letter-spacing:.02em;text-indent:0;font-size:13px;}
.takehome .value {font-size:clamp(34px,3.4vw,48px);padding:12px 0;text-align:left;}
.takehome .ratio {font-size:12px;}
.comp {margin:16px 0;}
.complegend {display:block;}
.complegend li {justify-content:space-between;padding:6px 0;}
.breakdown-head {font-size:14px;letter-spacing:0;text-indent:0;margin-top:28px;}
.breakdown th {font-size:12px;}
.breakdown td {font-size:14px;white-space:normal;}
.breakdown .sub {font-size:11px;}
.sidejob-entry {display:flex;align-items:baseline;gap:20px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:22px 0;margin:28px 0 18px;}
.sidejob-entry a {font-weight:700;font-size:16px;text-underline-offset:5px;flex-shrink:0;}
.sidejob-entry p {font-size:12px;color:var(--ink-3);}
.calculator-notes .note {font-size:12px;background:none;padding:0;border:0;margin:0;line-height:1.85;}
.home-guide {border-bottom:1px solid var(--rule);padding:20px 0 24px;color:var(--ink-3);font-size:12px;}
.home-guide .steps {margin:6px 0 0;padding:0;border:0;}
.card.wide,.wrap > .card {margin-top:44px;}
.section-title {font-size:20px;letter-spacing:.05em;text-indent:0;border-bottom:1px solid var(--rule);padding-bottom:14px;}
.toolgrid {gap:0 28px;}
.toolgrid a {border:0;border-bottom:1px solid var(--rule);padding:14px 0;}
.toolgrid a::after {content:none;}
.toolgrid .em {display:none;}
footer.site {background:var(--paper);border-top:1px solid var(--rule);}
footer.site .inner {max-width:var(--w);}
@media(max-width:1000px) {
  header.site .tagline {display:none;}
  .calculator-layout {gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);}
  #result {padding-left:24px;}
  .hero .home-title {font-size:40px;}
  .hero .hero-sub {font-size:18px;}
  .row2 {gap:0 16px;}
  .sidejob-entry {display:block;}
  .sidejob-entry p {margin-top:8px;}
}
@media(max-width:800px) {
  .calculator-layout {display:block;}
  #result {border-left:0;border-top:1px solid var(--rule);padding:24px 0 0;margin-top:28px;}
  .initial-result {max-width:520px;margin:0 auto;}
  .home-nav {gap:22px;}
  .hero .home-title {font-size:36px;}
}
@media(max-width:480px) {
  header.site .inner {padding:14px 20px 0;gap:4px;display:block;}
  header.site .logo {font-size:25px;}
  .home-nav {gap:28px;margin-top:2px;}
  .home-nav a {font-size:13px;padding:10px 0;}
  main > .wrap {padding:28px 20px;margin:0 auto 40px;}
  .hero {gap:6px;margin-bottom:24px;}
  .hero .home-title {font-size:29px;line-height:1.5;letter-spacing:0;}
  .hero h1 {font-size:13px;letter-spacing:0;}
  .hero .hero-sub {font-family:var(--f-body);font-size:14px;line-height:1.75;}
  .hero .eyebrow {font-size:11px;}
  .hero .trust {font-size:11px;}
  .row2 {grid-template-columns:1fr 1fr;gap:0 12px;align-items:stretch;}
  .family-row {display:block;}
  .child-row {max-width:100%;}
  .field > label {font-size:13px;}
  .field-lead {display:flex;}
  .field-lead .form-lead {align-self:flex-start;margin-bottom:10px;}
  .field-lead .modeswitch {margin-bottom:12px;max-width:none;}
  .field-lead #grossLabel {align-self:flex-start;}
  #grossHint {display:block;}
  .hint {font-size:11px;}
  .input-help > summary {min-height:44px;padding:10px 0;}
  .form-card .btn {font-size:17px;min-height:54px;}
  .empty-amount {font-size:52px;}
  .section-title {font-size:18px;}
  .toolgrid {grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {scroll-behavior:auto!important;animation:none!important;transition:none!important;}}
