.professional-funding-heading { align-items: end; }
.section-kicker { display:block; margin-bottom:5px; color:var(--green); font-size:12px; font-weight:800; letter-spacing:0; text-transform:uppercase; }
.pfc-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-bottom:22px; padding:8px; border:1px solid var(--line); border-radius:8px; background:#fff; }
.pfc-steps button { display:flex; align-items:center; justify-content:center; gap:9px; min-width:0; min-height:46px; padding:8px 12px; color:var(--blue); border:0; border-radius:6px; background:transparent; font-weight:800; line-height:1.25; white-space:normal; overflow-wrap:anywhere; }
.pfc-steps button span { display:grid; place-items:center; width:25px; height:25px; border:1px solid #cbd8dd; border-radius:50%; font-size:12px; }
.pfc-steps button.active { color:#fff; background:var(--blue); }
.pfc-steps button.active span { color:var(--blue); border-color:#fff; background:#fff; }
.pfc-progress-nav { display:block; }
.pfc-progress-nav .pfc-step-current { display:none; }
.pfc-progress-nav .pfc-step-buttons { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.pfc-progress-nav button b { font:inherit; }
.pfc-shell { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr); gap:24px; align-items:start; }
.pfc-input-column, .pfc-summary-column { min-width:0; }
.pfc-summary-column { position:sticky; top:92px; display:grid; gap:16px; }
.pfc-base-card { padding:24px; }
.pfc-base-card h2, .pfc-section-head h2 { margin:0; }
.pfc-base-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 16px; margin-top:20px; }
.pfc-field-group-heading { display:flex; grid-column:1 / -1; align-items:baseline; justify-content:space-between; gap:12px; margin:12px 0 0; padding:10px 0 7px; border-bottom:1px solid var(--line); color:var(--ink); }
.pfc-field-group-heading strong { font-size:14px; }
.pfc-field-group-heading small { color:var(--muted); font-size:12px; text-align:right; }
.pfc-base-grid label { position:relative; }
.pfc-base-grid .field-suffix { position:absolute; right:12px; bottom:13px; color:var(--muted); pointer-events:none; }
.pfc-info-row { display:grid; gap:4px; align-items:center; justify-items:start; padding:12px 14px; border-radius:8px; border:1px solid var(--line); background:var(--surface-soft); }
.pfc-info-row span { color:var(--muted); font-weight:700; }
.pfc-info-row strong { font-size:20px; }
.pfc-trade-groups { display:grid; gap:16px; }
.pfc-trade-block { padding:8px 0 0; }
.pfc-trade-block > summary { list-style:none; cursor:pointer; }
.pfc-trade-block > summary::-webkit-details-marker { display:none; }
.pfc-trade-block > summary::after { content:'▾'; flex:0 0 auto; color:var(--green-2); font-weight:900; }
.pfc-trade-block:not([open]) > summary::after { transform:rotate(-90deg); }
.pfc-trade-block .pfc-section-head { margin-top:0; margin-bottom:8px; padding-bottom:10px; border-bottom:1px solid var(--line); }
.pfc-toggle-row { display:flex; flex-wrap:wrap; gap:10px 22px; margin:12px 0 18px; padding:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.pfc-toggle-row .check-row, .pfc-extra-grid .check-row, .pfc-inline-check { flex-direction:row; align-items:center; gap:9px; margin:0; }
.pfc-toggle-row input, .pfc-extra-grid input[type="checkbox"], .pfc-inline-check input { width:18px; height:18px; margin:0; accent-color:var(--green); }
.pfc-toggle-item { position:relative; display:flex; flex:0 1 auto; flex-wrap:wrap; align-items:center; gap:6px; min-width:0; }
.pfc-toggle-item .check-row span { min-width:0; overflow-wrap:anywhere; }
.pfc-help-button { display:inline-grid; place-items:center; flex:0 0 22px; width:22px; height:22px; min-height:0; padding:0; border:1px solid #9eb1b8; border-radius:50%; color:var(--blue); background:#fff; font-size:12px; font-weight:900; line-height:1; }
.pfc-help-button:hover,.pfc-help-button:focus-visible,.pfc-help-button[aria-expanded="true"] { color:#fff; border-color:var(--green); background:var(--green); }
.pfc-help-text { flex:1 0 100%; max-width:520px; margin:3px 0 4px 27px; padding:9px 11px; border-left:3px solid var(--green); border-radius:4px; color:var(--muted); background:var(--surface-soft); font-size:12px; font-weight:600; line-height:1.5; }
.pfc-help-text[hidden] { display:none; }
.pfc-units { display:grid; gap:12px; }
.pfc-unit-card { padding:16px; border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); }
.pfc-unit-title { display:flex; justify-content:space-between; gap:12px; margin-bottom:12px; }
.pfc-unit-title span { color:var(--muted); font-size:13px; }
.pfc-unit-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 12px; }
.pfc-unit-grid label { position:relative; }
.pfc-unit-grid .field-suffix { position:absolute; right:13px; bottom:14px; color:var(--muted); pointer-events:none; }
.pfc-mea-note { margin:12px 0 0; color:var(--muted); font-size:13px; }
.pfc-section-head { display:flex; justify-content:space-between; align-items:end; gap:20px; margin:30px 0 14px; }
.pfc-section-head > div, .pfc-section-head p { min-width:0; }
.pfc-section-head p { max-width:430px; margin:0; color:var(--muted); font-size:13px; overflow-wrap:anywhere; text-align:right; }
.pfc-measures { display:grid; gap:12px; }
.pfc-measure { overflow:hidden; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 6px 18px rgba(32,33,63,.04); }
.pfc-measure.is-active { border-color:#b8d9cf; box-shadow:0 8px 24px rgba(11,156,114,.09); }
.pfc-measure-head { display:grid; grid-template-columns:68px minmax(0,1fr) auto; gap:14px; align-items:center; padding:16px; }
.pfc-measure-head h3 { margin:0 0 3px; font-size:17px; }
.pfc-trade { display:block; margin-bottom:2px; color:var(--muted); font-size:11px; font-weight:800; text-transform:uppercase; }
.pfc-measure-head p { margin:0; color:var(--muted); font-size:13px; }
.pfc-program-mark { display:grid; place-items:center; min-height:44px; border-radius:6px; color:#fff; font-size:12px; font-weight:900; text-transform:uppercase; }
.pfc-program-mark.bafa { background:#63a83c; }
.pfc-program-mark.kfw { background:#258fcd; }
.switch { position:relative; display:inline-flex; margin:0; }
.switch input { position:absolute; top:0; left:0; width:1px; height:1px; padding:0; opacity:0; pointer-events:none; }
.switch span { position:relative; width:46px; height:26px; border-radius:999px; background:#d9e2e6; cursor:pointer; transition:.2s; }
.switch span::after { content:""; position:absolute; top:4px; left:4px; width:18px; height:18px; border-radius:50%; background:#fff; box-shadow:0 2px 5px rgba(0,0,0,.18); transition:.2s; }
.switch input:checked + span { background:var(--green); }
.switch input:checked + span::after { transform:translateX(20px); }
.pfc-measure-body { display:none; padding:0 16px 16px; border-top:1px solid var(--line); }
.pfc-measure.is-active .pfc-measure-body { display:block; }
.pfc-measure-inputs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 14px; margin-top:14px; }
.pfc-extra-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 14px; margin-top:14px; }
.pfc-extra-grid { align-items:end; padding:12px; border-radius:6px; background:var(--surface-soft); }
.pfc-measure-result { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-top:14px; padding:14px; border-left:4px solid var(--green); border-radius:6px; background:#eff9f5; }
.pfc-measure-result > div { display:grid; gap:2px; }
.pfc-measure-result span { color:var(--muted); font-size:12px; font-weight:700; }
.pfc-measure-result strong { color:var(--green-2); font-size:24px; }
.pfc-measure-result small { max-width:50%; color:var(--muted); text-align:right; }
.pfc-summary-card { padding:24px; border-radius:8px; color:#fff; background:#3f444a; box-shadow:0 14px 34px rgba(32,33,63,.18); }
.pfc-summary-card .section-kicker { color:#c8d0d3; }
.pfc-total { display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; }
.pfc-total strong { font-size:38px; line-height:1.1; }
.pfc-total span { color:#dfe4e6; }
.pfc-summary-card > p { margin:10px 0 18px; color:#dfe4e6; }
.pfc-buckets { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.pfc-buckets > div { display:grid; gap:4px; min-width:0; padding:14px; border-radius:7px; }
.pfc-buckets .bafa { background:#63a83c; }.pfc-buckets .kfw { background:#258fcd; }.pfc-buckets .tax { background:#ef871d; }
.pfc-buckets span { font-size:12px; font-weight:800; }.pfc-buckets strong { overflow-wrap:anywhere; font-size:18px; }
.pfc-totals { display:grid; gap:0; margin:18px 0 0; }
.pfc-totals > div { display:flex; justify-content:space-between; gap:14px; padding:11px 0; border-top:1px solid rgba(255,255,255,.16); }
.pfc-totals dd { margin:0; font-weight:800; text-align:right; }
.pfc-actions { margin-top:16px; }
.pfc-actions button { flex:1 1 140px; }
.pfc-summary-card .secondary { color:#fff; border-color:rgba(255,255,255,.42); background:transparent; }
.pfc-summary-card > small { display:block; margin-top:13px; color:#dfe4e6; line-height:1.45; }
.pfc-rules-card ul { display:grid; gap:7px; margin:12px 0; padding-left:18px; }
.pfc-rules-card p { margin:0; color:var(--muted); font-size:13px; }
.pfc-rules-card h3 + p { margin-bottom:8px; }
.pfc-rules-card { overflow:hidden; }
.pfc-rules-card > summary { padding:16px 18px; cursor:pointer; color:var(--ink); font-weight:900; }
.pfc-rules-card > summary::marker { color:var(--green); }
.pfc-rules-content { display:grid; gap:10px; padding:0 18px 18px; border-top:1px solid var(--line); }
.pfc-rules-card a { color:var(--green-2); font-weight:800; }
.pfc-constraints-list li { margin:0; padding:10px 12px; border-left:4px solid var(--warn); border-radius:6px; list-style:none; background:#fff8e6; }
.pfc-constraints-list li.ok { border-left-color:var(--green); background:#eff9f5; }
.pfc-constraints-list li > small { color:var(--muted); }
.pfc-engine,.pfc-report { padding:24px; }
.pfc-engine h2,.pfc-report h2 { margin:0 0 20px; }
.pfc-engine h3,.pfc-report h3 { margin:26px 0 12px; }
.pfc-engine-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.pfc-engine-grid > div { display:grid; gap:4px; padding:16px; border:1px solid var(--line); border-left:4px solid var(--green); border-radius:6px; background:var(--surface-soft); }
.pfc-engine-grid span,.pfc-interest span { color:var(--muted); font-size:12px; font-weight:800; }
.pfc-engine-grid strong,.pfc-interest strong { font-size:20px; }
.pfc-engine-grid strong { overflow-wrap:anywhere; }
.pfc-engine-grid small,.pfc-interest small { color:var(--muted); line-height:1.4; }
.pfc-year-plan { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; }
.pfc-year-plan > div { display:grid; gap:5px; min-width:0; padding:14px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.pfc-year-plan span { color:var(--blue); font-weight:900; }
.pfc-year-plan strong { font-size:19px; }
.pfc-year-plan small { color:var(--muted); }
.pfc-year-bar { overflow:hidden; height:6px; border-radius:999px; background:#dfe7e9; }
.pfc-year-bar i { display:block; height:100%; border-radius:inherit; background:var(--green); }
.pfc-year-plan .is-full .pfc-year-bar i { background:#e0af27; }
.pfc-rate-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; align-items:end; }
.pfc-rate-grid label { position:relative; }
.pfc-rate-grid .field-suffix { position:absolute; right:12px; bottom:13px; color:var(--muted); }
.pfc-rate-grid > div { display:grid; align-self:stretch; gap:5px; min-width:0; padding:14px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.pfc-rate-grid > div span { color:var(--muted); font-size:12px; font-weight:800; }
.pfc-rate-grid > div strong { overflow-wrap:anywhere; color:var(--blue); font-size:20px; }
.pfc-rate-grid > div small { color:var(--muted); line-height:1.4; }
.pfc-credit-comparison { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:12px; }
.pfc-credit-comparison > div { display:grid; gap:3px; padding:14px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.pfc-credit-comparison span { color:var(--muted); font-size:12px; font-weight:800; }
.pfc-credit-comparison strong { font-size:18px; }
.pfc-credit-comparison .is-positive { color:var(--green-2); border-color:#b8d9cf; background:#eff9f5; }
.pfc-credit-comparison .is-warning { border-color:#e1b36a; background:#fff8eb; }
.pfc-credit-comparison small { line-height:1.45; }
.pfc-isfp-check { margin:14px 0 18px; padding:16px; border:1px solid var(--line); border-left:4px solid #8a98a1; background:var(--surface-soft); }
.pfc-isfp-check.is-positive { border-color:#91cdbb; border-left-color:var(--green-2); background:#eff9f5; }
.pfc-isfp-check.is-negative { border-color:#e1b36a; border-left-color:#c98218; background:#fff8eb; }
.pfc-isfp-check.is-selected { border-color:#9ac6dd; border-left-color:#2d79aa; background:#f2f8fc; }
.pfc-isfp-check-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; }
.pfc-isfp-check-head h3 { margin:3px 0 0; }
.pfc-isfp-check-head > strong { font-size:22px; white-space:nowrap; }
.pfc-isfp-values { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:14px 0; }
.pfc-isfp-values > div { display:grid; gap:3px; padding:10px 12px; border-top:1px solid rgba(32,33,63,.14); }
.pfc-isfp-values span,.pfc-isfp-values small { color:var(--muted); font-size:12px; }
.pfc-isfp-values strong { font-size:16px; }
.pfc-isfp-check > p { margin:0; line-height:1.5; }
.pfc-interest { grid-column:1/-1; display:grid; gap:4px; padding:16px; color:#fff; border-radius:6px; background:var(--blue); }
.pfc-interest span,.pfc-interest small { color:#dce4e8; }
.pfc-warnings { display:grid; gap:8px; }
.pfc-warnings li { margin:0; padding:12px 14px; border-left:4px solid #e0af27; border-radius:5px; background:#fff8e6; list-style:none; }
.pfc-warnings li.ok { border-left-color:var(--green); background:#eff9f5; }
.pfc-warnings p { margin:0; padding:12px 14px; border-left:4px solid #e0af27; border-radius:5px; background:#fff8e6; }
.pfc-warnings p.ok { border-color:var(--green); background:#eff9f5; }
.pfc-schedule { display:grid; gap:0; margin:0 0 24px; padding:0; list-style:none; counter-reset:step; }
.pfc-schedule li { position:relative; min-height:48px; padding:13px 12px 13px 50px; border-bottom:1px solid var(--line); counter-increment:step; }
.pfc-schedule li::before { content:counter(step); position:absolute; left:6px; top:9px; display:grid; place-items:center; width:30px; height:30px; color:#fff; border-radius:50%; background:var(--green); font-weight:900; }
.pfc-report-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:20px; }
.pfc-report-overview > div { display:grid; gap:4px; padding:14px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.pfc-report-overview span { color:var(--muted); font-size:12px; font-weight:800; }
.pfc-report-overview strong { font-size:19px; }
.pfc-report-table { border:1px solid var(--line); border-radius:7px; overflow:hidden; }
.pfc-report-table > div { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(105px,.55fr) minmax(110px,.6fr) minmax(110px,.6fr) minmax(180px,1fr); gap:12px; padding:12px 14px; border-bottom:1px solid var(--line); }
.pfc-report-table > div:last-child { border-bottom:0; }
.pfc-report-table .head { color:var(--muted); background:var(--surface-soft); font-size:11px; font-weight:800; text-transform:uppercase; }
.pfc-report-table small { display:block; margin-top:3px; color:var(--muted); }
.pfc-report-actions { justify-content:flex-end; margin-top:18px; }
.pfc-module-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }
.pfc-module-actions span { color:var(--muted); font-size:13px; font-weight:800; }
.pfc-module-actions button { min-width:112px; }
.pfc-disclaimer { margin:22px 0 0; padding:14px 18px; border:1px solid var(--line); border-radius:8px; color:var(--muted); background:#fff; font-size:12px; line-height:1.5; }

.pfc-project-sync {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:18px;
    padding:14px 16px;
    margin:14px 0 18px;
    border-left:4px solid var(--green, #18a980);
    background:#f2f8f6;
}
.pfc-project-sync strong { display:block; font-size:1.05rem; margin:3px 0; }
.pfc-project-sync p { margin:0; color:var(--muted, #667085); }
.pfc-project-sync small { display:block; margin-top:5px; color:#07856a; }

/* Ergebniswege und Programmkontext orientieren sich an der Förderberatung: knapp, direkt vergleichbar. */
.pfc-route-choices { display:grid; gap:7px; margin-top:14px; padding-top:13px; border-top:1px solid var(--line); }
.pfc-route-choices > span { color:var(--muted); font-size:12px; font-weight:800; }
.pfc-route-choices > div { display:flex; flex-wrap:wrap; gap:7px; }
.pfc-route-choice { display:inline-flex; align-items:center; gap:7px; min-height:32px; padding:6px 9px; color:var(--ink); border:1px solid var(--line); border-radius:5px; background:#fff; font-size:12px; font-weight:800; }
.pfc-route-choice strong { font-size:12px; }
.pfc-route-choice:hover:not(:disabled) { border-color:var(--green); background:#eff9f5; }
.pfc-route-choice.is-selected { color:#fff; border-color:var(--green-2); background:var(--green-2); }
.pfc-route-choice:disabled { cursor:not-allowed; opacity:.42; }
.pfc-application-context { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:14px 0 18px; }
.pfc-application-context > div { display:grid; gap:4px; min-width:0; padding:12px 14px; border:1px solid var(--line); border-radius:6px; background:var(--surface-soft); }
.pfc-application-context span { color:var(--muted); font-size:11px; font-weight:800; text-transform:uppercase; }
.pfc-application-context strong { overflow-wrap:anywhere; font-size:15px; }
.pfc-program-rail { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:hidden; margin:-24px -24px 18px; border-radius:8px 8px 0 0; }
.pfc-program-rail span { padding:9px; color:#fff; font-size:11px; font-weight:900; letter-spacing:.04em; text-align:center; }
.pfc-program-rail span:nth-child(1) { background:#63a83c; }
.pfc-program-rail span:nth-child(2) { background:#258fcd; }
.pfc-program-rail span:nth-child(3) { background:#ef871d; }
.pfc-program-explanations { overflow:hidden; padding:0; }
.pfc-program-explanations summary { padding:17px 20px; cursor:pointer; color:var(--ink); font-weight:900; }
.pfc-program-explanations summary::marker { color:var(--green); }
.pfc-program-explanations section { padding:0 20px 16px; border-top:1px solid var(--line); }
.pfc-program-explanations h3 { margin:15px 0 5px; font-size:14px; }
.pfc-program-explanations p { margin:0; color:var(--muted); font-size:13px; line-height:1.5; }
.pfc-credit-teaser { display:grid; gap:3px; width:100%; margin-top:14px; padding:14px 16px; color:var(--ink); border:1px solid #bed9e8; border-left:4px solid var(--blue); border-radius:6px; background:#f3f9fc; text-align:left; }
.pfc-credit-teaser:hover { border-color:var(--blue); background:#eaf5fb; }
.pfc-credit-teaser span { color:var(--blue); font-size:12px; font-weight:900; }
.pfc-credit-teaser strong { font-size:15px; }
.pfc-credit-teaser small { color:var(--muted); overflow-wrap:anywhere; }
.pfc-summary-empty { margin:10px 0 0; color:#d7e3ea; font-size:13px; line-height:1.45; }
.pfc-summary-card.is-pending .pfc-total strong { font-size:25px; }
@media (max-width:700px) {
    .pfc-project-sync { flex-direction:column; }
    .pfc-application-context { grid-template-columns:1fr; }
    .pfc-program-rail { margin:-24px -24px 16px; }
}

/* PWA V6: phone and tablet use the central ENERKLAR device-mode contract.
   Desktop retains the complete comparison workspace above 1180px. */
@media (min-width:701px) and (max-width:1180px) {
    .pfc-steps { margin-bottom:16px; }
    .pfc-progress-nav .pfc-step-buttons { overflow-x:auto; overscroll-behavior-inline:contain; }
    .pfc-progress-nav button { min-width:132px; font-size:13px; white-space:nowrap; }
    .pfc-shell { grid-template-columns:minmax(0,1fr) minmax(310px,360px); gap:16px; }
    .pfc-summary-column { position:sticky; top:calc(var(--ek-header-height, 72px) + 12px); display:grid; grid-template-columns:1fr; gap:12px; }
    .pfc-base-card,.pfc-engine,.pfc-report { padding:20px; }
    .pfc-base-grid { gap:8px 14px; }
    .pfc-field-group-heading { margin-top:8px; }
    .pfc-toggle-row { gap:8px 16px; }
    .pfc-toggle-item { flex:1 1 calc(50% - 16px); }
    .pfc-unit-grid,.pfc-measure-inputs,.pfc-extra-grid { gap:6px 12px; }
    .pfc-engine-grid,.pfc-rate-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfc-credit-comparison { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfc-report-overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfc-isfp-values { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfc-program-rail { margin:-20px -20px 16px; }
    .pfc-measure-result strong { font-size:21px; }
    body.tablet-sidebar-compact.tablet-sidebar-expanded .pfc-shell { grid-template-columns:1fr; }
    body.tablet-sidebar-compact.tablet-sidebar-expanded .pfc-summary-column { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }
    body.tablet-sidebar-compact.tablet-sidebar-expanded .pfc-summary-card { grid-column:1 / -1; }
}

@media (max-width:700px) {
    .pfc-steps { margin:0 -2px 14px; padding:0; border:0; background:transparent; }
    .pfc-progress-nav .pfc-step-current { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:0 2px 8px; }
    .pfc-step-current span { color:var(--muted); font-size:11px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
    .pfc-step-current strong { color:var(--ink); font-size:15px; }
    .pfc-progress-nav .pfc-step-buttons { gap:4px; padding:0; }
    .pfc-progress-nav button { position:relative; display:grid; place-items:center; min-width:0; min-height:34px; padding:0; color:var(--muted); border-radius:999px; font-size:0; }
    .pfc-progress-nav button::after { content:''; position:absolute; z-index:0; top:50%; left:calc(50% + 15px); width:calc(100% - 30px); height:2px; background:#d8e1e4; transform:translateY(-50%); }
    .pfc-progress-nav button:last-child::after { display:none; }
    .pfc-progress-nav button span { position:relative; z-index:1; width:28px; height:28px; color:var(--muted); background:#fff; }
    .pfc-progress-nav button.active { color:var(--blue); background:transparent; }
    .pfc-progress-nav button.active span { color:#fff; border-color:var(--green); background:var(--green); }
    .pfc-progress-nav button.active ~ button::after { background:#d8e1e4; }
    .pfc-shell { display:flex; flex-direction:column; gap:14px; }
    .pfc-input-column { order:1; }
    .pfc-summary-column { position:static; order:0; display:grid; gap:10px; }
    .pfc-summary-column > :not(.pfc-summary-card) { display:none; }
    .pfc-summary-card { padding:15px 16px; border-radius:12px; box-shadow:none; }
    .pfc-program-rail { margin:-15px -16px 12px; }
    .pfc-program-rail span { padding:6px; font-size:10px; }
    .pfc-total strong { font-size:27px; }
    .pfc-summary-card > p { margin:7px 0 10px; font-size:12px; }
    .pfc-buckets { gap:6px; }
    .pfc-buckets > div { padding:9px 7px; }
    .pfc-buckets strong { font-size:13px; }
    .pfc-totals { display:none; }
    .pfc-base-card,.pfc-engine,.pfc-report { padding:16px; }
    .pfc-base-card .card-head-inline { align-items:flex-start; }
    .pfc-base-card .card-head-inline h2,.pfc-engine h2,.pfc-report h2 { font-size:21px; }
    .pfc-base-card .card-head-inline button { width:38px; min-width:38px; padding:0; color:transparent; font-size:0; line-height:1; overflow:hidden; white-space:nowrap; }
    .pfc-base-card .card-head-inline button::after { display:block; content:'⋯'; color:var(--ink); font-size:20px; line-height:1; }
    .pfc-base-grid,.pfc-unit-grid,.pfc-measure-inputs,.pfc-extra-grid { grid-template-columns:1fr; gap:6px; }
    .pfc-field-group-heading { margin-top:10px; padding:10px 0 6px; }
    .pfc-field-group-heading small { max-width:52%; }
    .pfc-tax-grid { margin-top:10px; }
    .pfc-toggle-row { display:grid; gap:8px; margin:10px 0; padding:10px 0; }
    .pfc-toggle-item { display:grid; grid-template-columns:minmax(0,1fr) 22px; width:100%; gap:5px 8px; }
    .pfc-help-text { grid-column:1 / -1; max-width:none; margin:2px 0 0 27px; }
    .pfc-application-context { display:none; }
    .pfc-unit-card { padding:12px; }
    .pfc-project-sync { margin:10px 0 12px; padding:11px 12px; }
    .pfc-section-head { display:flex; align-items:center; margin:18px 0 10px; }
    .pfc-section-head p { max-width:48%; font-size:12px; text-align:right; }
    .pfc-trade-block { padding:0; border:1px solid var(--line); border-radius:10px; background:#fff; }
    .pfc-trade-block .pfc-section-head { margin:0; padding:14px; border:0; }
    .pfc-trade-block .pfc-section-head::after { margin-left:6px; }
    .pfc-trade-block .pfc-section-head h2 { font-size:17px; }
    .pfc-trade-block .pfc-section-head p { max-width:44%; line-height:1.3; overflow-wrap:anywhere; }
    .pfc-trade-block .pfc-measures { padding:0 8px 8px; border-top:1px solid var(--line); }
    .pfc-measure { border-width:1px; box-shadow:none; }
    .pfc-measure-head { grid-template-columns:46px minmax(0,1fr) auto; gap:9px; padding:12px; }
    .pfc-program-mark { min-height:38px; font-size:10px; }
    .pfc-measure-head h3 { font-size:15px; }
    .pfc-measure-head p { display:none; }
    .pfc-measure-body { padding:0 12px 12px; }
    .pfc-measure-result { display:grid; gap:8px; margin-top:10px; padding:11px; }
    .pfc-measure-result strong { font-size:22px; }
    .pfc-measure-result small { max-width:none; text-align:left; }
    .pfc-route-choices > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfc-route-choice { justify-content:space-between; min-height:42px; }
    .pfc-engine-grid,.pfc-rate-grid,.pfc-credit-comparison,.pfc-report-overview,.pfc-isfp-values { grid-template-columns:1fr; }
    .pfc-engine-grid > div:nth-child(n + 5) { display:none; }
    .pfc-engine-grid { gap:8px; }
    .pfc-engine-grid > div { padding:11px; }
    .pfc-check-summary > div { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:10px; }
    .pfc-check-summary > div > * { padding:5px 8px; border-radius:999px; color:var(--muted); background:var(--surface-soft); font-size:12px; font-weight:800; }
    .pfc-check-summary > div > strong { color:var(--green-2); background:#eff9f5; }
    .pfc-checks-open h4 { margin:12px 0 7px; font-size:13px; }
    .pfc-constraints-list { display:grid; gap:6px; margin:0; padding:0; }
    .pfc-constraints-list li { padding:9px 10px; font-size:12px; }
    .pfc-checks-passed { margin-top:8px; border:1px solid var(--line); border-radius:7px; }
    .pfc-checks-passed summary { display:flex; justify-content:space-between; gap:10px; padding:11px; color:var(--ink); font-size:12px; font-weight:800; }
    .pfc-checks-passed summary span { color:var(--green-2); }
    .pfc-checks-passed .pfc-constraints-list { padding:0 10px 10px; }
    .pfc-isfp-check { padding:12px; }
    .pfc-isfp-values { display:none; }
    .pfc-isfp-check > p { font-size:13px; }
    .pfc-report-table > div { grid-template-columns:1fr; gap:5px; }
    .pfc-report-table .head { display:none; }
    .pfc-report-overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pfc-report-overview > div { padding:11px; }
    .pfc-program-explanations { display:none; }
    .pfc-module-actions { position:sticky; bottom:0; z-index:18; margin:16px 0 0; padding:10px 8px; border:1px solid var(--line); border-radius:10px; background:rgba(255,255,255,.96); box-shadow:0 -8px 20px rgba(15,35,54,.08); }
    .pfc-module-actions button { min-width:0; min-height:42px; padding:8px 11px; }
    .pfc-module-actions strong { color:var(--muted); font-size:12px; }
    .pfc-disclaimer { margin-top:14px; padding:12px; font-size:11px; }
}
