:root { color-scheme: dark; --ec-navy: #061b22; --ec-navy-2: #0b2832; --ec-teal: #8edbf2; --ec-teal-deep: #8edbf2; --ec-mint: #63f59a; --ec-mint-soft: #123d34; --ec-sky: #0b2832; --ec-canvas: #061b22; --ec-paper: #0d303b; --ec-ink: #f5f7f7; --ec-copy: #c5d2d5; --ec-line: #245264; --ec-line-strong: #47788a; --ec-warning: #ffd184; --ec-warning-soft: #3b301c; --ec-danger: #ff625b; --ec-danger-soft: #321e25; --ec-focus: #8edbf2; --ec-shadow: 0 12px 36px rgba(0,0,0,.24); --ec-radius: 18px; --ec-rail: 264px; --ec-rail-collapsed: 78px; font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; background: var(--ec-canvas); color: var(--ec-ink); }
* { box-sizing: border-box; min-width: 0px; }
html { scroll-behavior: smooth; background: var(--ec-canvas) !important; }
body, body.ec-theme { min-height: 100vh; line-height: 1.58; text-rendering: optimizelegibility; margin: 0px !important; background: var(--ec-canvas) !important; color: var(--ec-ink) !important; font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif !important; }
body :where(p, li, label, small, summary, a, strong, span) { overflow-wrap: anywhere; }
[hidden] { display: none !important; }
@media (min-width: 1001px) {
  body:not([data-embedded-job="true"]) { padding-left: var(--ec-rail-collapsed) !important; }
}
.ec-sidebar { position: fixed; z-index: 900; inset: 0px auto 0px 0px; display: flex; width: var(--ec-rail); flex-direction: column; overflow-y: auto; padding: 22px 16px 18px; background: linear-gradient(180deg,var(--ec-navy) 0%,#092932 100%); color: rgb(247, 251, 251); border-right: 1px solid rgba(255, 255, 255, 0.1); box-shadow: rgba(7, 37, 45, 0.12) 8px 0px 30px; }
.ec-sidebar-brand { display: flex; align-items: center; gap: 11px; margin: 0px 4px 24px; text-decoration: none; color: rgb(255, 255, 255) !important; }
.ec-sidebar-brand img { width: 46px; height: 40px; object-fit: contain; flex: 0 0 auto; }
.ec-sidebar-brand span { display: flex; flex-direction: column; gap: 2px; line-height: 1.15; }
.ec-sidebar-brand strong { font-size: 0.98rem; color: rgb(255, 255, 255) !important; }
.ec-sidebar-brand small { font-size: 0.72rem; color: rgb(199, 218, 221) !important; }
.ec-sidebar .ec-account-nav { margin: 0 0 22px; }
body.ec-theme .ec-sidebar .ec-account-nav a.ec-account-link { min-height: 48px; background: #63f59a !important; border-color: #8af8b3 !important; color: #09202b !important; box-shadow: inset 0 1px 0 rgba(255,255,255,.38), 0 4px 14px rgba(0,0,0,.14); }
body.ec-theme .ec-sidebar .ec-account-nav a.ec-account-link:hover { background: #92fac0 !important; border-color: #b7ffd7 !important; color: #09202b !important; }
body.ec-theme .ec-sidebar .ec-account-nav a.ec-account-link[aria-current="page"] { background: #92fac0 !important; border-color: #b7ffd7 !important; color: #09202b !important; box-shadow: inset 3px 0 0 #0d6150, 0 4px 14px rgba(0,0,0,.14); }
body.ec-theme .ec-sidebar .ec-account-nav a.ec-account-link .ec-nav-icon { color: #09202b !important; }
.ec-nav-group { margin: 0px 0px 18px; }
.ec-nav-label { margin: 0px 10px 7px; color: rgb(159, 188, 194); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.ec-sidebar nav { display: grid; gap: 4px; }
.ec-sidebar nav a { display: flex; min-height: 44px; align-items: center; gap: 11px; padding: 9px 11px; border: 1px solid transparent; border-radius: 10px; font-size: 0.9rem; font-weight: 680; line-height: 1.2; text-decoration: none; color: rgb(220, 233, 235) !important; }
.ec-sidebar nav a:hover { background: rgba(255, 255, 255, 0.07); color: rgb(255, 255, 255) !important; }
.ec-sidebar nav a[aria-current="page"] { background: rgba(99, 237, 162, 0.13); border-color: rgba(99, 237, 162, 0.38); box-shadow: inset 3px 0 0 var(--ec-mint); color: rgb(255, 255, 255) !important; }
.ec-nav-icon { display: grid; width: 22px; height: 22px; place-items: center; flex: 0 0 auto; color: rgb(158, 223, 225); }
.ec-sidebar nav a[aria-current="page"] .ec-nav-icon { color: var(--ec-mint); }
.ec-nav-icon svg { display: block; width: 20px; height: 20px; fill: none; stroke: currentcolor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ec-sidebar-note { margin: auto 7px 0px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, 0.12); color: rgb(169, 195, 200); font-size: 0.73rem; line-height: 1.45; }
.ec-sidebar-note a { color: rgb(216, 232, 234) !important; }
.ec-mobile-header, .ec-drawer-scrim { display: none; }
@media (min-width: 1001px) {
  body.ec-theme .ec-sidebar { width: var(--ec-rail); overflow-x: hidden; padding-inline: 11px; clip-path: inset(0 calc(100% - var(--ec-rail-collapsed)) 0 0); contain: layout paint; will-change: clip-path; transition: clip-path 0.16s cubic-bezier(0.22, 1, 0.36, 1); }
  body.ec-theme .ec-sidebar:is(:hover, :focus-within) { clip-path: inset(0 0 0 0); }
  body.ec-theme .ec-sidebar-brand { justify-content: flex-start; margin-inline: 4px; }
  body.ec-theme .ec-sidebar-brand span, body.ec-theme .ec-nav-label, body.ec-theme .ec-sidebar nav a > span:last-child, body.ec-theme .ec-sidebar-note { max-width: 220px; overflow: hidden; opacity: 0; visibility: hidden; transform: translateX(-5px); transition: opacity 0.1s linear, transform 0.16s cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 0.16s; }
  body.ec-theme .ec-sidebar:is(:hover, :focus-within) :is(.ec-sidebar-brand span, .ec-nav-label, .ec-sidebar nav a > span:last-child, .ec-sidebar-note) { opacity: 1; visibility: visible; transform: translateX(0); white-space: normal; transition-delay: 0.035s, 0.035s, 0s; }
  body.ec-theme .ec-sidebar nav a { justify-content: flex-start; padding-inline: 10px; }
  body.ec-theme .ec-sidebar:is(:hover, :focus-within) nav a { padding-inline: 11px; }
  body.ec-theme .ec-sidebar-note { width: 220px; }
  body.ec-theme .ec-sidebar .ec-nav-group { width: 100%; }
}
.ec-shell-ready > nav.tool-nav, .ec-shell-ready > nav.guide-nav, .ec-shell-ready > header.global-brand, .ec-shell-ready > header.guide-brand { display: none !important; }
.ec-shell-ready > nav { display: none !important; }
.ec-shell-ready .calculator-banner { display: none !important; }
.ec-shell-ready .home-brand-hero .site-brand { display: none !important; }
body :where(main, header.home-brand-hero, section[aria-label="Calculator introduction"] + main) { max-width: 1180px; }
body main, body.ec-theme main { width: min(1180px, 100% - 48px); margin: 0px auto !important; padding: 34px 0px 72px !important; background: transparent !important; color: var(--ec-ink) !important; }
body.ec-theme :where(h1, h2, h3, h4, h5, legend, summary, label) { color: var(--ec-ink) !important; }
body h1 { max-width: 900px; font-weight: 850; letter-spacing: -0.045em; margin: 0.25em 0px 0.3em !important; color: var(--ec-ink) !important; font-size: clamp(2.2rem, 5vw, 4.2rem) !important; line-height: 0.99 !important; }
body h2 { font-size: clamp(1.35rem, 2.4vw, 1.85rem); line-height: 1.18; letter-spacing: -0.02em; }
body h3 { line-height: 1.28; }
body :where(.lede, .lead, .intro > p) { max-width: 760px; font-size: 1.06rem; line-height: 1.68; color: var(--ec-copy) !important; }
body.ec-theme :where(.muted, .small, small, .help, .source, #paySuggestion) { color: var(--ec-copy) !important; }
body.ec-theme #mainContent :is(.muted, .small, small, .help, .source, #paySuggestion, .tool-description, .row span:first-child), body.ec-theme #mainContent .useful-documents p { color: var(--ec-copy) !important; }
body.ec-theme a { text-underline-offset: 3px; text-decoration-thickness: 1px; color: var(--ec-teal) !important; }
body.ec-theme a:hover { color: rgb(182, 235, 251) !important; }
body.ec-theme .ec-sidebar nav a { color: rgb(220, 233, 235) !important; }
body.ec-theme .ec-sidebar nav a:hover, body.ec-theme .ec-sidebar nav a[aria-current="page"] { color: rgb(255, 255, 255) !important; }
body.ec-theme .ec-sidebar-note a { color: rgb(216, 232, 234) !important; }
body.ec-theme .ec-mobile-brand { color: rgb(255, 255, 255) !important; }
body :where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid var(--ec-focus) !important; outline-offset: 3px !important; }
.skip-link { position: fixed !important; z-index: 1200 !important; top: -100px !important; left: 16px !important; padding: 11px 16px !important; background: var(--ec-mint) !important; color: var(--ec-navy) !important; border: 2px solid var(--ec-mint) !important; border-radius: 8px !important; }
.skip-link:focus { top: 12px !important; }
body.ec-theme a.skip-link { color: var(--ec-navy) !important; }
body.ec-theme :where(.section-number, .ec-kicker, .eyebrow, .result-kicker) { text-transform: uppercase; color: var(--ec-teal-deep) !important; font-size: 0.76rem !important; font-weight: 850 !important; letter-spacing: 0.1em !important; }
body.ec-theme .free-notice { width: min(1180px, 100% - 48px); font-size: 0.86rem; margin: 18px auto 0px !important; padding: 10px 15px !important; background: var(--ec-navy-2) !important; color: var(--ec-copy) !important; border: 1px solid var(--ec-line) !important; border-radius: 11px !important; text-align: left !important; }
body.ec-theme .free-notice strong { color: var(--ec-mint) !important; }
.home-page .home-brand-hero { width: min(1180px, 100% - 48px); margin: 0px auto !important; padding: 54px 0px 24px !important; display: block !important; background: transparent !important; border: 0px !important; color: var(--ec-ink) !important; }
.home-page .home-brand-message { max-width: 900px !important; text-align: left !important; }
.home-page .home-brand-message::before { content: "Free UK work and pay tools"; display: inline-flex; margin-bottom: 14px; padding: 6px 10px; border: 1px solid var(--ec-line); border-radius: 999px; background: var(--ec-navy-2); color: var(--ec-teal); font-size: 0.75rem; font-weight: 820; letter-spacing: 0.08em; text-transform: uppercase; }
.home-page .home-brand-message h1 { max-width: 800px; color: var(--ec-ink) !important; }
.home-page .home-brand-message p { font-size: 1.15rem !important; color: var(--ec-copy) !important; }
body.ec-theme.home-page .home-brand-message p, body.ec-theme [aria-label="Calculator introduction"] p { color: var(--ec-copy) !important; }
.home-page main { padding-top: 8px !important; }
.home-page main > section:first-child > h2 { margin-bottom: 8px; }
.home-tools { margin-top: 24px; display: grid !important; grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; gap: 16px !important; }
.home-page .home-tools .card { position: relative; grid-template-rows: auto auto auto 1fr auto; min-height: 285px; overflow: hidden; display: grid !important; margin: 0px !important; padding: 26px !important; background: var(--ec-paper) !important; color: var(--ec-ink) !important; border-color: var(--ec-line) !important; }
.home-tools .card::before { content: ""; position: absolute; inset: 0px 0px auto; height: 5px; background: linear-gradient(90deg,var(--ec-teal),var(--ec-mint)); }
.home-tools .tool-scope { letter-spacing: 0.08em; text-transform: uppercase; margin: 0px 0px 10px !important; color: var(--ec-teal-deep) !important; font-size: 0.75rem !important; font-weight: 800 !important; }
.home-tools h3 { margin: 0px 0px 8px; font-size: 1.45rem; color: var(--ec-ink) !important; }
.home-tools .tool-question { margin: 0px 0px 8px !important; color: var(--ec-ink) !important; font-size: 1rem !important; font-weight: 750 !important; }
.home-page .home-tools .tool-description { font-size: 0.93rem; margin: 0px 0px 20px !important; color: var(--ec-copy) !important; }
.home-tools .route { place-self: end start; }
.home-page main > section.card { padding: 26px !important; }
.home-page .ec-example { display: none !important; }
body.ec-theme .card, body.ec-theme .panel, body.ec-theme .start-card, body.ec-theme .result-actions, body.ec-theme .saved-pdf, body.ec-theme .search-guide, body.ec-theme .useful-documents > div, body.ec-theme.guide-page article, body.ec-theme article, body.ec-theme .worth-card { background: var(--ec-paper) !important; color: var(--ec-ink) !important; border: 1px solid var(--ec-line) !important; border-radius: var(--ec-radius) !important; box-shadow: var(--ec-shadow) !important; }
body.ec-theme :where(.card, .panel, .start-card, .search-guide, .useful-documents > div) { padding: clamp(20px, 3vw, 30px) !important; }
body.ec-theme :where(.soft, .subcard, .assumption-note, .notice, .prepare > div, .review-columns section, .change, .example, .metric) { background: var(--ec-navy-2) !important; color: var(--ec-ink) !important; border-color: var(--ec-line) !important; }
body .card { margin-block: 20px; }
body .ec-documents { border-top: 5px solid var(--ec-teal) !important; }
.ec-documents ul { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 7px 28px; padding-left: 22px; }
.start-card { border-top: 5px solid var(--ec-mint) !important; }
details { border-color: var(--ec-line) !important; color: var(--ec-ink) !important; }
summary { cursor: pointer; font-weight: 760; color: var(--ec-ink) !important; }
body :where(.guide-card, .related) { border-color: var(--ec-line) !important; }
body.ec-theme #mainContent .seo-point { background: var(--ec-navy-2) !important; color: var(--ec-ink) !important; border: 1px solid var(--ec-line) !important; box-shadow: none !important; }
body.ec-theme #mainContent .seo-point :is(h2, h3, strong, p) { color: var(--ec-ink) !important; }
body.ec-theme :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { width: 100%; min-height: 46px; padding: 10px 12px; font: inherit; background: var(--ec-canvas) !important; color: var(--ec-ink) !important; border: 1px solid var(--ec-line-strong) !important; border-radius: 9px !important; box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 0px !important; }
body.ec-theme :where(input, textarea)::placeholder { opacity: 1; color: rgb(165, 187, 195) !important; }
body.ec-theme input[readonly] { background: var(--ec-navy-2) !important; color: var(--ec-copy) !important; }
body.ec-theme :where(button, .button, .route, .primary, .secondary, .inline-btn, .back, .guide-cta, .worth-button) { min-height: 44px; font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; cursor: pointer; border-radius: 9px !important; font-weight: 760 !important; }
body.ec-theme :where(button.primary, .primary, .start-actions button:not(.secondary), #calculate, .route, .guide-cta, .worth-button) { display: inline-flex; align-items: center; justify-content: center; padding: 11px 17px; text-decoration: none; background: var(--ec-mint) !important; color: var(--ec-navy) !important; border: 1px solid var(--ec-mint) !important; }
body.ec-theme :where(button.primary, .primary, .start-actions button:not(.secondary), #calculate, .route, .guide-cta, .worth-button):hover { background: rgb(131, 250, 176) !important; color: var(--ec-navy) !important; }
body.ec-theme #mainContent button.primary, body.ec-theme #mainContent #calculate, body.ec-theme #mainContent a.route, body.ec-theme #mainContent .start-actions button:not(.secondary), body.ec-theme #mainContent a.guide-cta, body.ec-theme #mainContent .worth-button { background: var(--ec-mint) !important; color: var(--ec-navy) !important; border-color: var(--ec-mint) !important; }
body.ec-theme #mainContent button.primary:hover, body.ec-theme #mainContent #calculate:hover, body.ec-theme #mainContent a.route:hover, body.ec-theme #mainContent .start-actions button:not(.secondary):hover, body.ec-theme #mainContent a.guide-cta:hover, body.ec-theme #mainContent .worth-button:hover { background: rgb(123, 247, 170) !important; color: var(--ec-navy) !important; }
body.ec-theme :where(button.secondary, .secondary, .inline-btn, .start-actions button.secondary) { padding: 10px 16px; background: var(--ec-navy-2) !important; color: var(--ec-ink) !important; border: 1px solid var(--ec-line-strong) !important; }
button:disabled { opacity: 0.55; cursor: not-allowed; }
.actions, .start-actions, .dialog-actions, .result-action-buttons { gap: 10px !important; }
.field { margin-block: 14px; }
.field label, .field > span, label { color: var(--ec-ink) !important; }
.ec-mode-copy { margin: 0px; color: var(--ec-copy); font-size: 0.91rem; }
.ec-active-status { display: inline-flex; align-items: center; gap: 7px; margin-top: 7px; color: var(--ec-mint); font-size: 0.82rem; font-weight: 760; }
.ec-active-status[hidden] { display: none !important; }
.ec-active-status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--ec-mint); box-shadow: rgb(18, 61, 52) 0px 0px 0px 3px; }
details.ec-advanced-section { margin: 18px 0px; padding: 0px 18px; box-shadow: rgba(0, 0, 0, 0.18) 0px 6px 20px; background: var(--ec-paper) !important; border: 1px solid var(--ec-line) !important; border-radius: 13px !important; }
details.ec-advanced-section > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 54px; padding: 12px 0px; color: var(--ec-ink) !important; }
details.ec-advanced-section[open] > summary { border-bottom: 1px solid var(--ec-line); }
.ec-applied-pill { display: inline-flex; margin-left: auto; padding: 3px 8px; border: 1px solid rgb(50, 121, 83); border-radius: 999px; background: rgb(18, 61, 52); color: var(--ec-mint); font-size: 0.7rem; font-weight: 820; white-space: nowrap; }
.ec-advanced-card[hidden] { display: none !important; }
.ec-advanced-card { border-left: 4px solid var(--ec-teal) !important; }
.ec-error-group { box-shadow: rgba(163, 41, 41, 0.28) 0px 0px 0px 3px !important; }
body :where(.error-summary, .validation.bad, .help.error, [role="alert"]) { border-color: var(--ec-danger) !important; }
.error-summary { padding: 15px 18px !important; background: var(--ec-danger-soft) !important; color: rgb(255, 172, 167) !important; border: 2px solid var(--ec-danger) !important; border-radius: 11px !important; }
.error-summary a { font-weight: 760; color: rgb(255, 172, 167) !important; }
.ec-field-note { color: var(--ec-copy); font-size: 0.88rem; }
.ec-field-note strong, .ec-unknown { color: var(--ec-warning) !important; }
.ec-positive { color: var(--ec-mint) !important; }
.ec-negative { color: var(--ec-danger) !important; }
body.ec-theme .opt-badge { background: var(--ec-navy-2) !important; color: var(--ec-teal) !important; border-color: var(--ec-line-strong) !important; }
body.ec-theme .req-badge:not(.complete) { background: var(--ec-danger-soft) !important; color: rgb(255, 184, 180) !important; border-color: var(--ec-danger) !important; }
body.ec-theme .req-badge.complete { background: var(--ec-mint-soft) !important; color: var(--ec-mint) !important; border-color: rgb(50, 121, 83) !important; }
body.ec-theme #localResultsChecker .checker-user, body.ec-theme .annual-mint-notice, body.ec-theme #namedPayroll p.annual-mint-notice { background: var(--ec-mint-soft) !important; color: var(--ec-ink) !important; border-color: rgb(50, 121, 83) !important; }
body.ec-theme #namedPayroll p.annual-mint-notice * { color: var(--ec-ink) !important; -webkit-text-fill-color: var(--ec-ink) !important; }
body.ec-theme :where(.result-card, .hero-result, .hero, .ec-results-surface) { border-color: var(--ec-line) !important; }
body.ec-theme .result-card, body.ec-theme .hero-result { background: linear-gradient(145deg,var(--ec-navy-2),var(--ec-paper)) !important; color: var(--ec-ink) !important; border-top: 6px solid var(--ec-mint) !important; box-shadow: rgba(0, 0, 0, 0.32) 0px 18px 42px !important; }
body.ec-theme :where(.result-card, .hero-result) :where(h2, h3, h4, strong, label, summary) { color: rgb(255, 255, 255) !important; }
body.ec-theme :where(.result-card, .hero-result) :where(p, li, small, .muted, .help) { color: rgb(213, 229, 232) !important; }
body.ec-theme :where(.result-card, .hero-result) a { color: rgb(158, 238, 194) !important; }
body.ec-theme :where(.result-card, .hero-result) :where(.result-kicker, .money, .green, .amount) { color: var(--ec-mint) !important; }
body.ec-theme #mainContent :is(.result-card, .hero-result) :is(p, li, small, .muted, .help, .row span:first-child) { color: rgb(213, 229, 232) !important; }
body.ec-theme #mainContent :is(.result-card, .hero-result) .ec-meaning { color: var(--ec-ink) !important; }
body.ec-theme #mainContent :is(.result-card, .hero-result) .ec-meaning :is(h3, p, strong, li) { color: var(--ec-ink) !important; }
.scenario-metrics { gap: 12px !important; }
.scenario-metric { padding: 15px !important; background: rgba(255, 255, 255, 0.086) !important; border: 1px solid rgba(255, 255, 255, 0.16) !important; border-radius: 10px !important; }
.scenario-metric span, .scenario-metric small { color: rgb(205, 224, 228) !important; }
.scenario-metric strong { font-variant-numeric: tabular-nums; color: rgb(255, 255, 255) !important; }
.ec-primary-metrics { grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; }
.ec-primary-metrics .scenario-metric { background: rgba(99, 245, 154, 0.1) !important; border-color: rgba(99, 245, 154, 0.28) !important; }
.ec-result-detail { margin: 20px 0px 0px !important; padding-top: 8px !important; border-top: 1px solid rgba(255, 255, 255, 0.28) !important; }
.ec-result-detail > summary { min-height: 48px; color: rgb(255, 255, 255) !important; }
.ec-detailed-metrics { margin-top: 12px !important; }
.ec-meaning { margin: 18px 0px 0px; padding: 15px 17px; border-left: 4px solid var(--ec-mint); border-radius: 0px 9px 9px 0px; background: var(--ec-navy-2); color: var(--ec-ink); }
.ec-meaning h3 { margin-top: 0px; }
.ec-status-list { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0px; }
.ec-status-chip { padding: 4px 9px; border: 1px solid var(--ec-line); border-radius: 999px; color: var(--ec-copy); font-size: 0.78rem; }
.ec-status-chip[data-state="confirmed"] { border-color: rgb(50, 121, 83); color: var(--ec-mint); }
.ec-status-chip[data-state="missing"] { border-color: rgb(143, 115, 60); color: var(--ec-warning); }
.breakdown > div, .row, .metric { border-color: var(--ec-line) !important; }
body.ec-theme #mainContent .result-card .ec-status-chip { color: rgb(213, 229, 232) !important; border-color: rgb(102, 129, 138) !important; }
body.ec-theme #mainContent .result-card .ec-status-chip[data-state="confirmed"] { color: var(--ec-mint) !important; border-color: rgba(99, 245, 154, 0.65) !important; }
body.ec-theme #mainContent .result-card .ec-status-chip[data-state="missing"] { color: rgb(255, 209, 132) !important; border-color: rgba(255, 209, 132, 0.7) !important; }
body.ec-theme :where(.result-actions, .saved-pdf, .ec-result-actions) { max-width: 1120px; margin: 20px auto !important; padding: 22px !important; background: var(--ec-paper) !important; color: var(--ec-ink) !important; border: 1px solid var(--ec-line) !important; border-radius: 15px !important; box-shadow: var(--ec-shadow) !important; }
.result-actions::before, .saved-pdf::before { display: block; margin-bottom: 4px; color: var(--ec-teal-deep); font-size: 0.72rem; font-weight: 840; letter-spacing: 0.1em; text-transform: uppercase; }
.result-actions::before { content: "Save or share"; }
.saved-pdf::before { content: "Continue saved work"; }
.result-actions h2, .result-actions h3, .saved-pdf h2 { margin-top: 0px; color: var(--ec-ink) !important; }
.result-actions button, .saved-pdf button, .ec-result-actions button { min-height: 44px; padding: 9px 14px; border: 1px solid var(--ec-line-strong); background: var(--ec-navy-2); color: var(--ec-ink); font-weight: 750; }
.result-actions button:hover, .saved-pdf button:hover, .ec-result-actions button:hover { background: rgb(18, 63, 77); }
body.ec-theme .shared-result-fold { margin: 0px !important; border: 0px !important; background: transparent !important; color: var(--ec-ink) !important; box-shadow: none !important; }
.shared-result-fold > summary { display: flex; align-items: center; min-height: 48px; margin: -4px 0px 10px; padding: 4px 0px 10px; font-size: 1.1rem; font-weight: 800; border-bottom: 1px solid var(--ec-line) !important; color: var(--ec-ink) !important; }
.ec-result-actions { display: flex; flex-wrap: wrap; gap: 10px; border-top: 4px solid var(--ec-teal) !important; }
.ec-result-actions button[data-primary] { background: var(--ec-mint) !important; border-color: var(--ec-mint) !important; color: var(--ec-navy) !important; }
.ec-result-actions select { width: auto; min-width: 190px; }
.ec-action-status { flex-basis: 100%; min-height: 1.5em; margin: 0px; color: var(--ec-copy); }
.ec-handoff-note { flex-basis: 100%; margin: 0px; color: var(--ec-copy); font-size: 0.83rem; }
.import-conflict { background: var(--ec-warning-soft) !important; border: 1px solid var(--ec-warning) !important; color: var(--ec-ink) !important; }
.related-tools { display: flex; gap: 10px; flex-wrap: wrap; }
.related-tools a { display: inline-flex; padding: 9px 12px; border-radius: 8px; text-decoration: none; background: var(--ec-navy-2) !important; border: 1px solid var(--ec-line) !important; color: var(--ec-teal) !important; }
body.ec-theme .cross-warnings { background: var(--ec-warning-soft) !important; color: var(--ec-warning) !important; border: 1px solid rgb(143, 115, 60) !important; }
body.ec-theme #feedbackStatus.success { background: var(--ec-mint-soft) !important; color: var(--ec-mint) !important; border-color: rgb(50, 121, 83) !important; }
body.ec-theme #feedbackStatus.error { background: var(--ec-danger-soft) !important; color: rgb(255, 172, 167) !important; border-color: var(--ec-danger) !important; }
body.ec-theme #confidenceReasons span.information-quality-estimate { background: var(--ec-warning-soft) !important; color: var(--ec-warning) !important; border-color: rgb(143, 115, 60) !important; }
body[data-result-tool="comparison"] main { max-width: 1240px !important; }
body[data-result-tool="comparison"] .mode { background: var(--ec-paper) !important; border-color: var(--ec-line) !important; }
.setup { background: var(--ec-paper) !important; }
.summaries { gap: 14px !important; }
.summaries .card { box-shadow: var(--ec-shadow) !important; }
.summaries .money-summary { background: var(--ec-mint-soft) !important; border-color: rgb(50, 121, 83) !important; }
.summary-value { font-variant-numeric: tabular-nums; color: var(--ec-ink) !important; }
.money-summary .summary-value { color: var(--ec-mint) !important; }
body[data-result-tool="comparison"] #comparison > .results-spotlight { display: grid; }
body.ec-theme .mode a:not([aria-current]) { color: rgb(220, 233, 235) !important; }
.comparison-table { box-shadow: var(--ec-shadow); background: var(--ec-paper) !important; border-color: var(--ec-line) !important; border-radius: 14px !important; }
.table-head, .group-title { background: var(--ec-navy-2) !important; color: var(--ec-ink) !important; }
.editor-toolbar { backdrop-filter: blur(10px); top: 10px !important; padding: 10px !important; background: rgba(6, 27, 34, 0.96) !important; border: 1px solid var(--ec-line) !important; border-radius: 12px !important; }
[role="tab"][aria-selected="true"] { background: var(--ec-mint) !important; color: var(--ec-navy) !important; border-color: var(--ec-mint) !important; }
.editors { max-width: 980px !important; }
iframe { background: var(--ec-paper); border-radius: 14px; }
.back { background: var(--ec-mint) !important; color: var(--ec-navy) !important; }
body.ec-theme a.back, body.ec-theme a.guide-cta, body.ec-theme a.route { color: var(--ec-navy) !important; }
body.ec-theme a.home-account-link, body.ec-theme .membership-banner a { color: var(--ec-navy) !important; }
.guide-page main { max-width: 980px !important; }
.guide-page article { padding: clamp(24px, 4vw, 46px) !important; }
.guide-page article > h1 { font-size: clamp(2rem, 4.5vw, 3.5rem) !important; }
.guide-card { padding: 18px 0px !important; border-top: 1px solid var(--ec-line) !important; }
.guide-card h2 { margin-bottom: 6px; }
.guide-card p { margin-bottom: 0px; color: var(--ec-copy); }
.example { border-left: 4px solid var(--ec-teal) !important; background: var(--ec-navy-2) !important; }
.guide-cta { background: var(--ec-mint) !important; color: var(--ec-navy) !important; }
.worth-main { max-width: 960px !important; }
.worth-main > .worth-brand { display: none !important; }
.worth-card { padding: clamp(20px, 3vw, 30px) !important; }
.worth-plans { gap: 16px !important; }
.worth-price { color: var(--ec-ink) !important; }
.worth-badge { background: var(--ec-mint-soft) !important; color: var(--ec-mint) !important; border-color: rgb(50, 121, 83) !important; }
.worth-notice { background: var(--ec-warning-soft) !important; color: var(--ec-warning) !important; border-color: rgb(143, 115, 60) !important; }
.worth-actions { gap: 10px !important; }
body.ec-theme #mainContent .worth-small { color: var(--ec-copy) !important; }
body.ec-theme #mainContent .worth-card form button { background: var(--ec-mint) !important; color: var(--ec-navy) !important; border-color: var(--ec-mint) !important; }
body.ec-theme > footer, body.ec-theme main > footer, body.ec-theme.guide-page footer { width: min(1180px, 100% - 48px); max-width: 1180px !important; margin: 0px auto !important; padding: 24px 0px 42px !important; background: transparent !important; color: var(--ec-copy) !important; border-top: 1px solid var(--ec-line) !important; text-align: left !important; }
body.ec-theme :is(dialog, #restoreConfirm, .copy-job-dialog, .cost-builder) { width: min(740px, 100% - 28px); max-height: min(86vh, 860px); overflow: auto; padding: 24px; background: var(--ec-paper) !important; color: var(--ec-ink) !important; border: 1px solid var(--ec-line) !important; border-radius: 15px !important; box-shadow: rgba(0, 0, 0, 0.5) 0px 28px 90px !important; }
body.ec-theme :is(dialog, #restoreConfirm, .copy-job-dialog, .cost-builder) :is(h1, h2, h3, label, legend, summary, strong) { color: var(--ec-ink) !important; }
body.ec-theme :is(dialog, #restoreConfirm, .copy-job-dialog, .cost-builder) :is(p, small, .muted, .share-result-help, .share-result-status) { color: var(--ec-copy) !important; }
dialog::backdrop { backdrop-filter: blur(2px); background: rgba(2, 15, 22, 0.82) !important; }
table { border-color: var(--ec-line) !important; }
th, thead { background: var(--ec-navy-2) !important; color: var(--ec-ink) !important; }
td, th { border-color: var(--ec-line) !important; }
body.ec-theme :is(dialog, #restoreConfirm, .copy-job-dialog, .cost-builder) button { background: var(--ec-navy-2) !important; color: var(--ec-ink) !important; border-color: var(--ec-line-strong) !important; }
body.ec-theme :is(dialog, #restoreConfirm) :is([data-next], [data-continue], #applyRestore, .apply-cost-total) { background: var(--ec-mint) !important; color: var(--ec-navy) !important; border-color: var(--ec-mint) !important; }
body.ec-theme #analyticsConsent { background: var(--ec-paper) !important; color: var(--ec-ink) !important; border-color: var(--ec-line) !important; }
body.ec-theme #analyticsConsent .analytics-consent-copy { color: var(--ec-copy) !important; }
body.ec-theme :is(.advertising-settings, #advertisingChoices button, #analyticsConsent .consent-reject) { background: var(--ec-navy-2) !important; color: var(--ec-ink) !important; border-color: var(--ec-line-strong) !important; }
body.ec-theme #analyticsConsent .consent-accept { background: var(--ec-mint) !important; color: var(--ec-navy) !important; border-color: var(--ec-mint) !important; }
.ec-ad-space, [data-ad-slot] { margin: 30px 0px; padding: 18px; border: 1px dashed var(--ec-line-strong); border-radius: 12px; background: var(--ec-navy-2); color: var(--ec-copy); text-align: center; }
.ec-ad-space::before, [data-ad-slot]::before { content: "Advertisement"; display: block; margin-bottom: 6px; font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.is-worth-it-plus .ec-ad-space, .is-worth-it-plus [data-ad-slot] { display: none !important; }
@media (max-width: 1000px) {
  body:not([data-embedded-job="true"]) { padding-top: 64px !important; }
  .ec-mobile-header { position: fixed; z-index: 950; inset: 0px 0px auto; display: flex; height: 64px; align-items: center; gap: 11px; padding: 9px 14px; background: var(--ec-navy); color: rgb(255, 255, 255); border-bottom: 1px solid rgba(255, 255, 255, 0.12); box-shadow: rgba(5, 37, 45, 0.18) 0px 6px 22px; }
  body.ec-theme .ec-mobile-header { background: var(--ec-navy) !important; color: rgb(255, 255, 255) !important; }
  .ec-menu-button { display: grid; width: 44px; height: 44px; place-items: center; padding: 0px !important; background: transparent !important; color: rgb(255, 255, 255) !important; border: 1px solid rgba(255, 255, 255, 0.35) !important; border-radius: 9px !important; }
  .ec-menu-button svg { width: 23px; height: 23px; stroke: currentcolor; stroke-width: 2; fill: none; stroke-linecap: round; }
  .ec-mobile-brand { display: flex; align-items: center; gap: 8px; text-decoration: none; font-size: 0.9rem; font-weight: 780; color: rgb(255, 255, 255) !important; }
  .ec-mobile-brand img { width: 34px; height: 32px; object-fit: contain; }
  .ec-mobile-brand span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .ec-sidebar { width: min(86vw, 310px); transform: translateX(-105%); will-change: transform; transition: transform 0.16s cubic-bezier(0.22, 1, 0.36, 1); box-shadow: rgba(3, 28, 35, 0.28) 14px 0px 42px; }
  .ec-nav-open .ec-sidebar { transform: translateX(0px); }
  .ec-drawer-scrim { position: fixed; z-index: 880; inset: 64px 0px 0px; display: block; background: rgba(5, 35, 43, 0.52); opacity: 0; pointer-events: none; will-change: opacity; transition: opacity 0.14s linear; }
  .ec-nav-open .ec-drawer-scrim { opacity: 1; pointer-events: auto; }
  .ec-nav-open { overflow: hidden; }
  body main, body.ec-theme main, .home-page .home-brand-hero, .free-notice, body > footer, main > footer, .guide-page footer { width: min(100% - 30px, 1180px); }
  .home-page .home-brand-hero { padding-top: 36px !important; }
}
@media (min-width: 1001px) {
  body:not([data-embedded-job="true"]) .results-bottom-nav, body:not([data-embedded-job="true"]) #analyticsConsent { left: calc(var(--ec-rail-collapsed) + 18px) !important; }
  body:not([data-embedded-job="true"]) .skip-link { left: calc(var(--ec-rail-collapsed) + 16px) !important; }
}
@media (max-width: 900px) {
  .home-tools { grid-template-columns: 1fr !important; }
  .home-tools .card { min-height: auto; }
}
@media (max-width: 760px) {
  body main, body.ec-theme main { padding-top: 24px !important; padding-bottom: 48px !important; }
  body h1 { font-size: clamp(2.05rem, 12vw, 3rem) !important; line-height: 1.02 !important; }
  body h2 { font-size: 1.35rem; }
  .home-page .home-brand-message p { font-size: 1rem !important; }
  .home-tools { grid-template-columns: 1fr !important; }
  .home-tools .card { min-height: auto; padding: 22px !important; }
  .ec-documents ul { grid-template-columns: 1fr; }
  .ec-result-actions { flex-direction: column; }
  .ec-result-actions :where(button, select) { width: 100%; }
  body :where(.grid, .grid2, .grid3, .three, .metrics, .scenario-metrics, .review-columns) { grid-template-columns: 1fr !important; }
  .result-action-buttons, .start-actions, .actions, .dialog-actions { flex-direction: column !important; }
  .result-action-buttons button, .start-actions button, .actions button, .dialog-actions button { width: 100%; }
  .editor-toolbar { top: 72px !important; }
  .table-head { display: none !important; }
  .metric { grid-template-columns: 1fr 1fr !important; }
  .metric-name { grid-column: 1 / -1 !important; }
  .metric .difference { grid-column: 1 / -1 !important; }
  .worth-plans { grid-template-columns: 1fr !important; }
}
.ec-sidebar-contact { margin-top: 10px; padding-top: 9px; border-top: 1px solid rgba(255,255,255,.12); }
.ec-sidebar-contact summary { cursor: pointer; color: #d9f4ed; font-weight: 750; font-size: .85rem; }
.ec-sidebar-contact p { margin: 9px 0 0; }
.ec-sidebar-contact a { overflow-wrap: anywhere; }
@media (max-width: 420px) {
  .ec-mobile-brand span { max-width: 205px; }
  body main, body.ec-theme main, .home-page .home-brand-hero, .free-notice, body > footer, main > footer, .guide-page footer { width: min(100% - 22px, 1180px); }
  body :where(.card, .panel, .start-card, .search-guide, .useful-documents > div) { padding: 18px !important; border-radius: 14px !important; }
  .guide-page article { padding: 21px 17px !important; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, ::before, ::after { scroll-behavior: auto !important; transition: none !important; animation: auto ease 0s 1 normal none running none !important; }
}
@media print {
  body { padding: 0px !important; background: rgb(255, 255, 255) !important; }
  .ec-sidebar, .ec-mobile-header, .ec-drawer-scrim, .tool-nav, .free-notice, .ec-mode-panel, .ec-result-actions { display: none !important; }
  body main { width: 100% !important; max-width: none !important; }
  .card { box-shadow: none !important; }
}
.ec-workflow-removed { display: none !important; }
body.ec-calculator-workflow main#mainContent { display: block !important; grid-template-columns: none !important; max-width: 1180px !important; }
.ec-calculator-intro { display: block !important; width: 100% !important; max-width: none !important; margin: 0px 0px 22px !important; padding: 8px 0px 0px !important; background: transparent !important; color: var(--ec-ink) !important; align-items: stretch !important; justify-content: initial !important; gap: 0px !important; }
.ec-calculator-intro h1, .ec-calculator-workflow .ec-workflow-title { font-size: clamp(2.2rem, 4.4vw, 3.7rem) !important; }
.ec-calculator-intro p:last-child { max-width: 760px; margin: 0px; color: var(--ec-copy); }
.req-badge, .opt-badge { display: inline-flex; align-items: center; margin-left: 7px; padding: 2px 7px; border: 1px solid var(--ec-line-strong); border-radius: 999px; color: var(--ec-teal); font-size: 0.68rem; font-weight: 820; line-height: 1.25; vertical-align: middle; }
.opt-badge { color: var(--ec-copy); border-color: var(--ec-line); }
.ec-section-navigator { position: sticky; z-index: 70; top: 10px; margin: 18px 0px 14px; padding: 14px 16px; background: rgba(11, 40, 50, 0.97); border: 1px solid var(--ec-line); border-radius: 16px; box-shadow: rgba(0, 0, 0, 0.3) 0px 14px 34px; backdrop-filter: blur(12px); }
.ec-section-status { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 11px; }
.ec-section-status p { margin: 0px 0px 2px; }
.ec-section-status strong { display: block; color: var(--ec-ink); font-size: 1rem; }
.ec-section-status > [data-ec-count] { color: var(--ec-copy); font-size: 0.82rem; font-weight: 760; }
.ec-mobile-section-picker { display: none; }
.ec-section-track { display: flex; gap: 6px; overflow-x: auto; padding: 2px 1px 8px; scrollbar-width: thin; scrollbar-color: var(--ec-line-strong) transparent; }
.ec-section-track button { flex: 0 0 auto; min-height: 39px; padding: 8px 12px; font-size: 0.84rem; white-space: nowrap; background: transparent !important; color: var(--ec-copy) !important; border: 1px solid var(--ec-line) !important; border-radius: 9px !important; }
.ec-section-track button:hover { background: rgb(18, 63, 77) !important; color: var(--ec-ink) !important; }
.ec-section-track button[aria-current="step"] { box-shadow: rgba(0, 0, 0, 0.24) 0px 4px 12px; background: var(--ec-mint) !important; color: var(--ec-navy) !important; border-color: var(--ec-mint) !important; }
.ec-section-progress { height: 3px; margin-top: 2px; overflow: hidden; background: var(--ec-line); border-radius: 999px; }
.ec-section-progress span { display: block; height: 100%; background: linear-gradient(90deg,var(--ec-teal),var(--ec-mint)); border-radius: inherit; transition: width 0.18s; }
.ec-workflow-utilities { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; margin: 0px 0px 24px; }
.ec-utility-tray { margin: 0px !important; padding: 0px !important; background: var(--ec-navy-2) !important; border: 1px solid var(--ec-line) !important; border-radius: 12px !important; box-shadow: none !important; }
.ec-utility-tray > summary { display: grid; grid-template-columns: 1fr auto; min-height: 60px; align-content: center; gap: 1px 14px; padding: 10px 14px; list-style: none; }
.ec-utility-tray > summary::-webkit-details-marker { display: none; }
.ec-utility-tray > summary::after { content: "+"; grid-area: 1 / 2 / 3; align-self: center; color: var(--ec-teal); font-size: 1.25rem; }
.ec-utility-tray[open] > summary::after { content: "−"; }
.ec-utility-tray > summary strong { color: var(--ec-ink); }
.ec-utility-tray > summary span { color: var(--ec-copy); font-size: 0.78rem; }
.ec-utility-content { padding: 0px 12px 12px; border-top: 1px solid var(--ec-line); }
body.ec-theme .ec-utility-content :where(.result-actions, .saved-pdf) { max-width: none; margin: 12px 0px 0px !important; padding: 14px !important; background: transparent !important; border: 0px !important; border-radius: 0px !important; box-shadow: none !important; }
.ec-utility-content .result-actions::before, .ec-utility-content .saved-pdf::before { display: none !important; }
.ec-utility-content :where(.result-actions, .saved-pdf) > :first-child { margin-top: 0px !important; }
.ec-restore-popup { box-sizing: border-box; width: min(640px, calc(100vw - 28px)); max-height: calc(100dvh - 28px); overflow: auto; padding: 54px 22px 22px; background: var(--ec-paper); color: var(--ec-ink); border: 1px solid var(--ec-line-strong); border-radius: 16px; box-shadow: 0 24px 70px rgba(0, 0, 0, .46); }
.ec-restore-popup::backdrop { background: rgba(2, 15, 22, .76) !important; backdrop-filter: blur(3px); }
.ec-restore-popup-close { position: absolute; top: 12px; right: 12px; display: grid; width: 38px !important; min-width: 38px !important; height: 38px; min-height: 38px !important; place-items: center; padding: 0 !important; font-size: 1.5rem; line-height: 1; }
.ec-restore-popup > .ec-utility-content { padding: 0; border: 0; }
body.ec-theme .ec-restore-popup .saved-pdf { max-width: none; margin: 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.ec-restore-popup .saved-pdf::before { display: none !important; }
.ec-restore-popup .saved-pdf > :first-child { margin-top: 0 !important; }
.ec-scenario-restore #startScratch { display: none !important; }
.ec-scenario-restore .start-actions { margin: 0px !important; }
.ec-scenario-restore .local-note { margin-bottom: 0px; }
.ec-workflow-stage { scroll-margin-top: 220px; }
.ec-stage-header, .ec-stage-content, .ec-stage-actions { width: min(100%, 880px); margin-inline: auto; }
.ec-stage-header { margin-top: 8px; padding: 18px 4px 8px; display: block !important; }
.ec-stage-header .ec-stage-position { margin: 0px 0px 4px; color: var(--ec-teal); font-size: 0.75rem; font-weight: 840; letter-spacing: 0.1em; text-transform: uppercase; }
.ec-stage-header h2 { letter-spacing: -0.035em; display: block !important; margin: 0px 0px 7px !important; font-size: clamp(1.8rem, 3.5vw, 2.6rem) !important; }
.ec-stage-header > p:last-child { max-width: 680px; margin: 0px; color: var(--ec-copy); display: block !important; }
.ec-stage-content { padding: 2px 0px 8px; }
.ec-stage-content > .card, .ec-stage-content > .panel, .ec-stage-content > .result-card { margin: 12px 0px 18px !important; }
.ec-stage-content > .card > h2:first-child, .ec-stage-content > .card > h3:first-child { letter-spacing: -0.01em; margin-top: 0px !important; font-size: 1.18rem !important; }
.ec-editorial-card > .ec-card-eyebrow { margin: 0px 0px 5px; color: var(--ec-teal); font-size: 0.72rem; font-weight: 840; letter-spacing: 0.09em; text-transform: uppercase; }
.ec-editorial-card > .ec-card-eyebrow + :is(h2, h3) { letter-spacing: -0.025em; margin-top: 0px !important; font-size: clamp(1.35rem, 2.4vw, 1.75rem) !important; }
.ec-stage-content :where(.grid, .grid2, .grid3, .three) { gap: 14px !important; }
.ec-stage-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 0px 30px; border-top: 1px solid var(--ec-line); }
body.ec-theme .ec-stage-actions button { min-width: 150px; flex: 0 0 auto; width: auto !important; }
.ec-stage-actions [data-ec-next] { margin-left: auto; }
details.ec-local-advanced { margin: 14px 0px 20px !important; padding: 0px 16px !important; background: var(--ec-navy-2) !important; border: 1px solid var(--ec-line) !important; border-radius: 12px !important; box-shadow: none !important; }
details.ec-local-advanced > summary { grid-template-columns: auto 1fr auto; align-items: center; gap: 2px 12px; min-height: 58px; list-style: none; display: grid !important; padding: 10px 0px !important; border: 0px !important; }
details.ec-local-advanced > summary::-webkit-details-marker { display: none; }
details.ec-local-advanced > summary::before { content: "+"; grid-row: 1 / 3; display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid var(--ec-line-strong); border-radius: 8px; color: var(--ec-teal); font-size: 1.05rem; }
details.ec-local-advanced[open] > summary::before { content: "−"; }
.ec-advanced-summary-label { grid-column: 2; color: var(--ec-ink); font-weight: 800; }
.ec-local-advanced > summary small { grid-column: 2; font-size: 0.78rem; font-weight: 550; color: var(--ec-copy) !important; }
.ec-local-advanced > summary .ec-applied-pill { grid-area: 1 / 3 / 3; }
.ec-advanced-content, .ec-local-advanced > summary ~ * { border-top: 1px solid var(--ec-line); padding-top: 10px; }
.ec-advanced-content > .card { margin: 10px 0px !important; background: transparent !important; border: 0px !important; border-radius: 0px !important; box-shadow: none !important; }
.ec-comparison-result-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 12px; margin: 20px 0px; }
.ec-result-column { padding: 14px; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.15); border-radius: 12px; }
.ec-result-column h3 { margin: 0px 0px 10px; font-size: 0.84rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--ec-teal) !important; }
.ec-result-column .scenario-metric { margin: 0px 0px 8px; }
.ec-result-column .scenario-metric:last-child { margin-bottom: 0px; }
body[data-result-tool="hours-change"] .ec-result-column:last-child, body[data-result-tool="second-job"] .ec-result-column:last-child { border-color: rgba(99, 245, 154, 0.42); background: rgba(99, 245, 154, 0.08); }
.ec-virtual-stage-header { width: min(100%, 880px); margin: 0px auto 6px; padding: 16px 2px 4px; scroll-margin-top: 220px; }
.ec-calculator-workflow .editor-toolbar a[href="#comparison"] { display: none !important; }
body[data-result-tool="comparison"] #editors, body[data-result-tool="comparison"] .setup { margin-inline: auto; max-width: 880px !important; }
body[data-result-tool="comparison"] .setup { margin-bottom: 14px !important; }
body[data-result-tool="comparison"] .ec-compare-navigator { position: relative; top: auto; max-width: 980px; margin-inline: auto; }
body[data-result-tool="comparison"] .ec-compare-groups { display: grid; grid-template-columns: 1fr 1fr auto; gap: 12px; align-items: start; }
body[data-result-tool="comparison"] .ec-compare-group { min-width: 0; padding: 8px; border: 1px solid var(--ec-line); border-radius: 11px; }
body[data-result-tool="comparison"] .ec-compare-group>strong { display: flex; justify-content: space-between; padding: 0 4px 7px; color: var(--ec-copy); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
body[data-result-tool="comparison"] .ec-compare-group>strong span { color: var(--ec-muted); }
body[data-result-tool="comparison"] .ec-compare-group.is-active { border-color: var(--ec-mint); box-shadow: inset 0 0 0 1px var(--ec-mint); }
body[data-result-tool="comparison"] .ec-compare-group .ec-section-track { padding-bottom: 2px; }
body[data-result-tool="comparison"] .ec-compare-results-group .ec-section-track { overflow: visible; }
body[data-result-tool="comparison"] .ec-compare-guidance { max-width: 760px; margin: 0 auto 14px; }
body[data-result-tool="comparison"] .ec-compare-stage-actions { display: flex; justify-content: space-between; gap: 12px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--ec-line); }
body[data-result-tool="comparison"] .ec-compare-stage-actions [data-compare-next] { margin-left: auto; }
body[data-result-tool="comparison"] #comparison { margin-top: 10px; }
body[data-embedded-job="true"] .ec-stage-content > .card { padding: clamp(18px, 2.4vw, 24px) !important; }
.ec-site-footer { width: min(100%, 880px) !important; margin: 36px auto 24px !important; padding: 22px 0px 0px !important; background: transparent !important; border-right: 0px !important; border-bottom: 0px !important; border-left: 0px !important; border-image: none !important; border-top: 1px solid var(--ec-line) !important; border-radius: 0px !important; color: var(--ec-copy) !important; font-size: 0.82rem !important; text-align: left !important; }
.ec-footer-nav { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-bottom: 12px; }
.ec-footer-nav a { font-weight: 720; color: var(--ec-teal) !important; }
.ec-footer-caveat, .ec-footer-version { max-width: 760px; margin: 7px 0px !important; }
.ec-footer-version { font-size: 0.74rem; color: var(--ec-copy) !important; }
.ec-site-footer-with-tools { width: min(100%, 880px) !important; }
.ec-site-footer-with-tools > .card { margin: 14px 0px !important; }
.ec-sidebar-documents { width: 100%; margin-bottom: 14px; }
.ec-sidebar-documents details { margin: 0px; padding: 0px; background: transparent !important; border: 0px !important; }
.ec-sidebar-documents summary { display: flex; min-height: 44px; align-items: center; gap: 11px; padding: 9px 11px; border: 1px solid transparent; border-radius: 10px; list-style: none; font-size: 0.9rem; font-weight: 680; color: rgb(220, 233, 235) !important; }
.ec-sidebar-documents summary::-webkit-details-marker { display: none; }
.ec-sidebar-documents summary:hover { background: rgba(255, 255, 255, 0.07); }
.ec-sidebar-documents summary::after { content: "+"; margin-left: auto; color: var(--ec-teal); }
.ec-sidebar-documents details[open] summary::after { content: "−"; }
.ec-sidebar-documents-content { margin: 7px 0px 0px; padding: 12px; background: rgb(8, 36, 44); border: 1px solid rgba(255, 255, 255, 0.11); border-radius: 10px; color: rgb(220, 233, 235); font-size: 0.76rem; line-height: 1.42; }
.ec-sidebar-document-source, .ec-sidebar-document-source > .card, .ec-sidebar-about-source { display: block !important; width: auto !important; margin: 0px !important; padding: 0px !important; background: transparent !important; color: rgb(220, 233, 235) !important; border: 0px !important; border-radius: 0px !important; box-shadow: none !important; }
.ec-sidebar-document-source p, .ec-sidebar-about-source p { margin: 0px 0px 9px; color: rgb(184, 205, 209) !important; }
.ec-sidebar-document-source :where(.prepare, ul) { list-style: none; display: grid !important; grid-template-columns: 1fr !important; gap: 7px !important; margin: 0px !important; padding: 0px !important; }
.ec-sidebar-document-source .prepare > div, .ec-sidebar-document-source li { padding: 7px !important; background: rgb(11, 48, 57) !important; border: 0px !important; border-radius: 6px !important; }
.ec-sidebar-document-source :where(b, strong) { display: block; font-size: 0.78rem; color: rgb(245, 247, 247) !important; }
.ec-sidebar-document-source :where(.small, small) { color: rgb(184, 205, 209) !important; font-size: 0.7rem !important; }
.ec-sidebar-about-source :where(h2, h3) { margin: 9px 0px 5px !important; color: rgb(245, 247, 247) !important; font-size: 0.82rem !important; }
.ec-sidebar-about-source details { margin: 0px !important; padding: 7px 0px !important; background: transparent !important; border-width: 1px 0px 0px !important; border-style: solid none none !important; border-color: rgba(255, 255, 255, 0.1) currentcolor currentcolor !important; border-image: none !important; border-radius: 0px !important; }
.ec-sidebar-about-source details:first-of-type { border-top: 0px !important; }
.ec-sidebar-about-source summary { min-height: 0px !important; padding: 4px 0px !important; color: rgb(245, 247, 247) !important; font-size: 0.76rem !important; }
.ec-sidebar-about-source a { font-size: 0.76rem !important; }
.ec-sidebar-links-source { display: grid !important; gap: 7px !important; margin: 0px !important; }
.ec-sidebar-links-source a { display: block; text-decoration: none; padding: 7px !important; background: rgb(11, 48, 57) !important; border-radius: 6px !important; color: rgb(142, 219, 242) !important; font-size: 0.76rem !important; font-weight: 720 !important; }
.ec-sidebar-support-source { display: block !important; width: auto !important; margin: 0px !important; padding: 0px !important; background: transparent !important; color: rgb(220, 233, 235) !important; border: 0px !important; border-radius: 0px !important; box-shadow: none !important; }
.ec-sidebar-support-source p { margin: 0px 0px 9px !important; color: rgb(184, 205, 209) !important; font-size: 0.72rem !important; }
.ec-sidebar-support-source button { width: 100% !important; min-height: 40px !important; padding: 8px 10px !important; }
.ec-sidebar-feature-search { width: 100% !important; margin: 7px 0px !important; padding: 8px !important; }
.ec-sidebar-feature-list { display: grid; gap: 6px; max-height: 280px; overflow: auto; list-style: none; margin: 8px 0px 0px !important; padding: 0px !important; }
.ec-sidebar-feature-list li { display: grid; gap: 2px; padding: 7px; background: rgb(11, 48, 57); border-radius: 6px; }
.ec-sidebar-feature-list button { width: 100%; min-height: 36px; padding: 7px 8px; text-align: left; }
.ec-sidebar-feature-list small { color: rgb(184, 205, 209) !important; }
body.ec-calculator-workflow > section.search-guide { display: none !important; }
body[data-embedded-job="true"].ec-calculator-workflow main#mainContent { width: 100% !important; padding: 0px 10px 18px !important; }
.ec-calculator-workflow[data-embedded-job="true"] .ec-workflow-stage { scroll-margin-top: 8px; }
.ec-calculator-workflow[data-embedded-job="true"] .ec-stage-header { padding-top: 8px; }
.ec-calculator-workflow[data-embedded-job="true"] .ec-stage-header h2 { font-size: 1.65rem !important; }
.ec-calculator-workflow[data-embedded-job="true"] .ec-stage-actions { padding-bottom: 12px; }
@media (min-width: 1001px) {
  body.ec-theme .ec-sidebar:not(:hover):not(:focus-within) .ec-sidebar-documents summary > span:last-of-type { max-width: 0px; overflow: hidden; opacity: 0; visibility: hidden; white-space: nowrap; }
  body.ec-theme .ec-sidebar:not(:hover):not(:focus-within) .ec-sidebar-documents summary::after, body.ec-theme .ec-sidebar:not(:hover):not(:focus-within) .ec-sidebar-documents-content { display: none !important; }
  body.ec-theme .ec-sidebar:not(:hover):not(:focus-within) .ec-sidebar-documents summary { justify-content: center; padding-inline: 10px; }
}
@media (max-width: 1000px) {
  .ec-section-navigator { position: relative; top: auto; }
  .ec-workflow-stage, .ec-virtual-stage-header { scroll-margin-top: 78px; }
}
@media (max-width: 900px) {
  body[data-result-tool="single"]:not([data-embedded-job]) #cycleBox:not(.hidden),
  body.ec-device-compare #cycleBox:not(.hidden) { display: flex; flex-direction: column; }
  body[data-result-tool="single"]:not([data-embedded-job]) #cycleBox > .field > p.notice,
  body[data-result-tool="single"]:not([data-embedded-job]) #rotaDateNote,
  body.ec-device-compare #cycleBox > .field > p.notice,
  body.ec-device-compare #rotaDateNote { display: none; }
  body[data-result-tool="single"]:not([data-embedded-job]) #cycleBox > .grid2,
  body.ec-device-compare #cycleBox > .grid2 { order: 1; }
  body[data-result-tool="single"]:not([data-embedded-job]) #cycleBox > #rotaDayChoices,
  body.ec-device-compare #cycleBox > #rotaDayChoices { order: 2; }
  body[data-result-tool="single"]:not([data-embedded-job]) .ec-workflow-stage[data-ec-stage-key="income"] .ec-editorial-card > #overtime-pay + p.small,
  body.ec-device-compare .ec-workflow-stage[data-ec-stage-key="income"] .ec-editorial-card > #overtime-pay + p.small { display: none; }
  .ec-section-navigator .ec-section-track, .ec-section-navigator .ec-compare-groups { display: none !important; }
  .ec-section-navigator .ec-section-status strong { display: none; }
  .ec-section-navigator .ec-mobile-section-picker { display: block; margin-bottom: 9px; }
  .ec-mobile-section-picker label { display: block; color: var(--ec-copy); font-size: 0.82rem; font-weight: 750; }
  .ec-mobile-section-picker select { display: block; width: 100%; min-height: 44px; box-sizing: border-box; margin-top: 5px; padding: 9px 12px; border: 1px solid var(--ec-line-strong); border-radius: 9px; background: var(--ec-navy-2); color: var(--ec-ink); font: inherit; font-size: 1rem; }
  .ec-mobile-section-picker select:focus-visible { outline: 3px solid var(--ec-teal); outline-offset: 2px; }
}
@media (max-width: 760px) {
  body[data-result-tool="comparison"] .ec-compare-groups { grid-template-columns: 1fr; }
  body[data-result-tool="comparison"] .ec-compare-group { padding: 7px; }
  body[data-result-tool="comparison"] .ec-compare-group:not(.is-active) .ec-section-track { max-height: 46px; }
  .ec-workflow-utilities { grid-template-columns: 1fr; }
  .ec-section-navigator { margin-inline: -2px; padding: 12px; border-radius: 13px; }
  .ec-section-status { margin-bottom: 8px; }
  .ec-section-track { gap: 5px; }
  .ec-section-track button { padding: 7px 10px; font-size: 0.79rem; }
  .ec-stage-header { padding: 15px 1px 7px; }
  .ec-stage-header h2 { font-size: 1.8rem !important; }
  .ec-stage-actions { position: sticky; z-index: 30; bottom: 0px; padding: 10px 0px 12px; background: linear-gradient(180deg,rgba(6,27,34,0),var(--ec-canvas) 26%); }
  body.ec-theme .ec-stage-actions button { min-width: 0px; flex: 1 1 0%; width: auto !important; }
  .ec-comparison-result-grid { grid-template-columns: 1fr; }
  .ec-result-column { padding: 12px; }
}
