.cfs{margin:24px 0 48px;padding:24px;background:var(--card,#fff);color:var(--ink,#17171a);border:1px solid var(--line,#dedee3);border-radius:18px;box-shadow:var(--shadow-sm,0 4px 16px rgba(0,0,0,.05))}
.cfs *{box-sizing:border-box}
.cfs-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}
.cfs-head h2{margin:2px 0 6px;font-family:var(--font-serif,serif);font-size:28px;line-height:1.15}
.cfs-head p{margin:0;color:var(--muted-2,#65656d);font-size:13px;line-height:1.65}
.cfs .cfs-eyebrow{font-family:var(--font-mono,monospace);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-i,#0071e3)}
.cfs-reset{flex:0 0 auto;padding:8px 12px;background:transparent;color:var(--muted-2,#65656d);border:1px solid var(--line,#dedee3);border-radius:9px;font:inherit;font-size:12px;font-weight:650;cursor:pointer}
.cfs-reset:hover{border-color:var(--accent-i,#0071e3);color:var(--accent-i,#0071e3)}
.cfs-reset:focus-visible,.cfs input:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-i,#0071e3) 24%,transparent);outline-offset:2px}
.cfs-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:16px}
.cfs fieldset{min-width:0;margin:0;padding:16px;background:var(--bg,#f7f7f9);border:1px solid var(--line,#dedee3);border-radius:13px}
.cfs legend{padding:0 7px;font-size:12px;font-weight:750;color:var(--muted-2,#65656d)}
.cfs-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.cfs-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted-2,#65656d)}
.cfs-field>span{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-weight:650}
.cfs-field small{font-size:9px;font-weight:500;color:var(--muted,#85858d)}
.cfs input{width:100%;min-height:38px;padding:8px 9px;background:var(--card,#fff);color:var(--ink,#17171a);border:1px solid var(--line,#dedee3);border-radius:8px;font:600 13px var(--font-mono,monospace);font-variant-numeric:tabular-nums}
.cfs-scenarios{display:flex;flex-direction:column;gap:10px}
.cfs-scenario-input{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;background:var(--card,#fff);border:1px solid var(--line,#dedee3);border-radius:10px;color:var(--muted-2,#65656d);font-size:12px;font-weight:650}
.cfs-scenario-input>span:last-child{display:flex;align-items:center;gap:5px;white-space:nowrap}
.cfs-scenario-input input{width:86px;min-height:32px;padding:5px 7px;text-align:right}
.cfs-deadline{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:16px 0;padding:15px 18px;background:color-mix(in srgb,var(--accent-i,#0071e3) 7%,var(--card,#fff));border-left:4px solid var(--accent-i,#0071e3);border-radius:10px}
.cfs-deadline div{display:flex;align-items:baseline;gap:14px}
.cfs-deadline span{font-size:12px;color:var(--muted-2,#65656d);font-weight:700}
.cfs-deadline strong{font:750 22px var(--font-mono,monospace);color:var(--ink,#17171a)}
.cfs-deadline p{margin:0;color:var(--muted-2,#65656d);font-size:11.5px;text-align:right}
.cfs-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.cfs-result{--risk:#178a50;overflow:hidden;border:1px solid color-mix(in srgb,var(--risk) 38%,var(--line,#dedee3));border-top:4px solid var(--risk);border-radius:13px;background:var(--card,#fff)}
.cfs-result.is-yellow{--risk:#c67a00}.cfs-result.is-red{--risk:#d62f49}
.cfs-result>header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid var(--line,#dedee3)}
.cfs-result header div{display:flex;flex-direction:column;gap:2px}
.cfs-result header span{font-size:11px;color:var(--muted,#85858d)}
.cfs-result header strong{font:750 18px var(--font-mono,monospace)}
.cfs-result mark{padding:4px 8px;background:color-mix(in srgb,var(--risk) 12%,transparent);color:var(--risk);border-radius:999px;font-size:10px;font-weight:800}
.cfs-result dl{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:6px 14px}
.cfs-result dl div{padding:10px 4px;border-bottom:1px solid var(--line,#dedee3)}
.cfs-result dl div:nth-last-child(-n+2){border-bottom:0}
.cfs-result dt{font-size:10px;color:var(--muted,#85858d)}
.cfs-result dd{margin:3px 0 0;font:700 14px var(--font-mono,monospace);font-variant-numeric:tabular-nums}
.cfs-result dd.is-negative{color:#d62f49}
.cfs-result dd small{display:block;margin-top:2px;color:var(--muted,#85858d);font:500 9px var(--font-sans,system-ui)}
.cfs-result>p{min-height:55px;margin:0;padding:11px 14px;background:color-mix(in srgb,var(--risk) 6%,transparent);color:var(--muted-2,#65656d);font-size:11px;line-height:1.5}
.cfs-footnote{margin:12px 2px 0;color:var(--muted,#85858d);font-size:10.5px;line-height:1.6}
@media(max-width:900px){.cfs-form{grid-template-columns:1fr}.cfs-results{grid-template-columns:1fr}.cfs-result>p{min-height:0}.cfs-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.cfs{margin:16px 0 32px;padding:16px;border-radius:14px}.cfs-head{display:block}.cfs-reset{width:100%;margin-top:12px}.cfs-fields{grid-template-columns:1fr}.cfs-deadline{display:block}.cfs-deadline div{justify-content:space-between}.cfs-deadline p{margin-top:8px;text-align:left}.cfs-deadline strong{font-size:19px}.cfs-result dl{grid-template-columns:1fr}.cfs-result dl div:nth-last-child(2){border-bottom:1px solid var(--line,#dedee3)}}
@media(prefers-reduced-motion:reduce){.cfs *{scroll-behavior:auto!important}}
