.market-panel{margin:0 0 1.5rem;border:1px solid var(--line,#d8e0dc);border-radius:18px;background:var(--surface,#fff);color:var(--text,#203a30);overflow:hidden}
.market-panel>details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem}
.market-panel>details>summary::-webkit-details-marker{display:none}.market-panel summary:focus-visible,.market-presets button:focus-visible{outline:3px solid var(--accent,#25765e);outline-offset:3px}
.market-panel>details>summary strong{display:block;font-size:1rem;margin-top:.3rem}.market-kicker{font-size:.75rem;letter-spacing:.12em;font-weight:700;color:var(--muted,#637b70);margin:0 0 .4rem}.market-summary-currency{font-size:.875rem;border:1px solid var(--line,#d8e0dc);border-radius:999px;padding:.4rem .7rem;white-space:nowrap}.market-summary-currency:after{content:'⌄';margin-left:.65rem}
.market-settings-body{padding:0 1.25rem 1.25rem;border-top:1px solid var(--line,#d8e0dc)}.market-settings-body>.hint{margin:1rem 0}.market-presets{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.market-presets button{border:1px solid var(--line,#d8e0dc);border-radius:999px;padding:.65rem 1rem;background:transparent;color:inherit;font:inherit;cursor:pointer}
.market-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.2rem}.market-rate-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:end;margin-top:.8rem}.market-rate-row button{margin-bottom:.5rem}.market-source{font-size:.875rem;line-height:1.6;color:var(--muted,#637b70);margin:.7rem 0}.market-source span{display:block}.market-household-settings{margin-top:1rem}.market-household-settings>summary{cursor:pointer;padding:.7rem 0;font-weight:600}.market-household-settings .market-grid{margin-top:.8rem}
.market-bridge{padding:1.25rem;background:color-mix(in srgb,var(--accent,#28785f) 7%,var(--surface,#fff));border-top:1px solid var(--line,#d8e0dc)}.market-bridge-heading{display:flex;gap:1rem;align-items:center;justify-content:space-between}.market-bridge-heading h2{font-size:1.35rem;margin:.2rem 0 .8rem}.market-bridge-heading>strong{font-size:1rem;white-space:nowrap}.market-bridge-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:.7rem 0}.market-bridge-values>div{background:var(--surface,#fff);border:1px solid var(--line,#d8e0dc);border-radius:12px;padding:.9rem}.market-bridge-values span{display:block;font-size:.875rem;line-height:1.4;color:var(--muted,#637b70)}.market-bridge-values strong{display:block;margin-top:.5rem;font-size:1.25rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.market-fx-table{max-width:100%;overflow:auto;margin:1rem 0}.market-fx-table table{width:100%;border-collapse:collapse;font-size:.875rem;min-width:31rem}.market-fx-table caption{text-align:left;font-weight:600;margin-bottom:.7rem}.market-fx-table th,.market-fx-table td{text-align:right;padding:.7rem;border-bottom:1px solid var(--line,#d8e0dc);font-variant-numeric:tabular-nums}.market-fx-table th:first-child{text-align:left}.market-current-scenario{background:color-mix(in srgb,var(--accent,#28785f) 9%,transparent)}
.sg-reference-card{border:1px solid var(--line,#d8e0dc);border-radius:18px;padding:1.4rem;margin:1.25rem 0;background:var(--surface,#fff);color:var(--text,#203a30)}.sg-reference-card h2{font-size:1.55rem;line-height:1.25;margin:.3rem 0 .8rem}.sg-reference-card h3{font-size:1.1rem}.sg-reference-top{display:flex;gap:1rem;justify-content:space-between;align-items:start}.sg-reference-badge{border-radius:999px;padding:.4rem .7rem;background:color-mix(in srgb,var(--accent,#28785f) 12%,transparent);font-size:.8rem;white-space:nowrap}.sg-reference-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1rem 0}.sg-reference-values>div{padding:.9rem;border-radius:12px;border:1px solid var(--line,#d8e0dc)}.sg-reference-values span{display:block;font-size:.875rem;color:var(--muted,#637b70);line-height:1.5}.sg-reference-values strong{display:block;font-size:1.35rem;margin:.4rem 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.sg-reference-values small{font-size:.8rem;line-height:1.5;display:block}.sg-reference-card details{font-size:.875rem;line-height:1.65;margin-top:1rem}.sg-reference-card details summary{cursor:pointer;font-weight:600}.sg-income-bars{display:grid;gap:1rem;margin:1.2rem 0}.sg-income-bar>div{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;margin-bottom:.4rem}.sg-income-track{height:.65rem;border-radius:999px;background:color-mix(in srgb,var(--muted,#637b70) 15%,transparent);overflow:hidden}.sg-income-track i{display:block;height:100%;border-radius:inherit;background:var(--accent,#28785f)}.sg-income-bar[data-reference] i{background:#8faeb7}.sg-cpf-payroll{border:1px solid var(--line,#d8e0dc);border-radius:12px;padding:1rem;margin:1rem 0}.sg-cpf-payroll dl{display:grid;grid-template-columns:1fr auto;gap:.6rem;font-size:.95rem}.sg-cpf-payroll dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.sg-cpf-payout{border-left:3px solid var(--accent,#28785f);padding:.2rem 0 .2rem 1rem;margin:1rem 0;font-size:.95rem;line-height:1.65}.sg-scheme-note{font-size:.9rem;line-height:1.6;margin:1rem 0}.sg-reference-card .income-parts{padding:0}
@media(max-width:700px){.market-panel>details>summary{align-items:start;padding:1rem}.market-summary-currency{font-size:.75rem}.market-grid,.market-rate-row,.market-bridge-values,.sg-reference-values{grid-template-columns:1fr}.market-bridge-heading,.sg-reference-top{flex-wrap:wrap}.market-rate-row button{justify-self:start}.market-settings-body,.market-bridge,.sg-reference-card{padding:1rem}.market-bridge-values>div{display:flex;gap:.75rem;align-items:center;justify-content:space-between}.market-bridge-values strong{margin:0}.market-panel>details>summary strong{font-size:.95rem}.market-presets button{font-size:.875rem}.sg-reference-values>div{padding:.85rem}}
@media(prefers-reduced-motion:reduce){.market-panel *,.sg-reference-card *{scroll-behavior:auto}}

/* These cards also live inside a narrow desktop outcome rail. */
.sg-reference-card,.sg-cpf-payroll{container-name:sg-reference;container-type:inline-size;min-width:0}
.calculator-outcomes .sg-reference-card{margin:0;padding:0;border:0;border-radius:0}
.sg-reference-top{flex-wrap:wrap}
.sg-reference-badge{max-width:100%;white-space:normal}
.sg-reference-values>div{min-width:0}
.sg-reference-values strong{overflow-wrap:normal;word-break:normal;white-space:nowrap;font-size:clamp(1rem,5cqi,1.35rem)}
.sg-reference-values.sg-cpf-tiers{grid-template-columns:minmax(0,1fr);gap:.65rem}
.sg-reference-values.sg-cpf-tiers>div{padding:0;border:0;border-radius:12px}
.sg-cpf-tier{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2rem 1rem;width:100%;min-width:0;background:var(--surface,#fff);border:1px solid var(--control-line,var(--line,#d8e0dc));border-radius:12px;color:var(--text,#203a30);text-align:left;padding:.85rem 1rem;cursor:pointer;font:inherit}
.sg-cpf-tier strong{margin:0;text-align:right;font-size:1.15rem;white-space:nowrap}
.sg-cpf-tier small{grid-column:1/-1}
.sg-cpf-tier:hover{background:var(--soft,#f0f4f1);border-color:var(--accent,#28785f)}
.sg-cpf-tier[aria-pressed="true"],.sg-cpf-tier[aria-pressed="true"]:hover{background:var(--accent,#28785f);color:var(--on-accent,#fff);border-color:var(--accent,#28785f);box-shadow:inset 0 0 0 1px var(--accent,#28785f)}
.sg-cpf-tier[aria-pressed="true"] span,.sg-cpf-tier[aria-pressed="true"] strong,.sg-cpf-tier[aria-pressed="true"] small{color:inherit}
.sg-cpf-tier:focus-visible{outline:3px solid var(--focus,var(--accent,#28785f));outline-offset:4px}
.sg-income-bar>div{flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem}
.sg-income-bar strong{white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums}
/* SVG geometry keeps bar widths compatible with the external-styles-only CSP. */
svg.sg-income-track{display:block;width:100%;height:.65rem;background:none;overflow:hidden}
.sg-income-track-background{fill:color-mix(in srgb,var(--muted,#637b70) 15%,transparent)}
.sg-income-track-value{fill:var(--accent,#28785f)}
.sg-income-bar[data-reference] .sg-income-track-value{fill:#8faeb7}
@container sg-reference (max-width:42rem){
  .sg-reference-values{grid-template-columns:minmax(0,1fr)}
  .sg-reference-values:not(.sg-cpf-tiers)>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem 1rem}
  .sg-reference-values:not(.sg-cpf-tiers) strong{margin:0;text-align:right}
  .sg-reference-values:not(.sg-cpf-tiers) small{grid-column:1/-1}
}
@container sg-reference (max-width:24rem){
  .sg-reference-values:not(.sg-cpf-tiers)>div,.sg-cpf-tier{grid-template-columns:minmax(0,1fr)}
  .sg-reference-values:not(.sg-cpf-tiers) strong,.sg-cpf-tier strong{text-align:left}
}
@container sg-reference (min-width:42.001rem){
  .sg-reference-values.sg-cpf-tiers{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sg-cpf-tier{grid-template-columns:minmax(0,1fr);height:100%;align-content:start}
  .sg-cpf-tier strong{text-align:left;margin:.3rem 0}
}

/* A full-width route label keeps country names readable on narrow phones. */
@media(max-width:540px){.market-panel>details>summary{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;padding:.75rem;line-height:1.4}.market-panel>details>summary>span:first-child{min-width:0}.market-summary-currency{justify-self:start}.market-panel>details>summary strong{margin-top:.15rem}}
