/* Scoped additions; shared site styles remain unchanged. */
.required-cash [hidden]{display:none!important}
.required-cash .rc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:20px 0}
.required-cash .rc-toolbar label{font-weight:700}
.required-cash .rc-input-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;align-items:start}
.required-cash fieldset{min-width:0;margin:0 0 18px;border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.required-cash legend{font-weight:700;font-size:1.1rem;padding:0 8px}
.required-cash .rc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.required-cash .rc-field{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:.9rem}
.required-cash .rc-field label{font-weight:600}
.required-cash .rc-field small{color:var(--ink-2);line-height:1.6}
.required-cash input,.required-cash select{font:inherit;min-width:0;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink);min-height:46px}
.required-cash input{width:100%;font-variant-numeric:tabular-nums}
.required-cash input[aria-invalid="true"]{border:2px solid var(--danger);background:var(--danger-soft)}
.required-cash :is(input,select,button,summary):focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.required-cash .rc-help{font-size:.86rem;color:var(--ink-2);line-height:1.7}
.required-cash .rc-scenario-inputs,.required-cash .rc-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.required-cash .rc-scenario-inputs fieldset{margin:0}
.required-cash .rc-scenario-inputs .rc-fields{grid-template-columns:1fr}
.required-cash .rc-scenario-base{background:var(--bg-soft)}
.required-cash .rc-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}
.required-cash #cash-message{min-height:1.8em}
.required-cash .rc-result{min-width:0;border:1px solid var(--line);border-radius:var(--radius);padding:20px;background:#fff;box-shadow:var(--shadow)}
.required-cash .rc-result h3{margin:0 0 12px;font-size:1.2rem}
.required-cash .rc-state{padding:8px 10px;border-radius:8px;font-size:.82rem;font-weight:700;line-height:1.5;min-height:54px}
.required-cash .rc-state.surplus{background:var(--accent-soft);color:#075a44}
.required-cash .rc-state.attention{background:var(--warn-soft);color:#805019}
.required-cash .rc-state.short{background:var(--danger-soft);color:#a32c25}
.required-cash .rc-state.neutral{background:var(--bg-soft);color:var(--ink-2)}
.required-cash .rc-result dl{margin:0}
.required-cash .rc-metric{border-bottom:1px solid var(--line);padding:10px 0;min-height:83px}
.required-cash .rc-metric dt{font-size:.8rem;color:var(--ink-2);line-height:1.5}
.required-cash .rc-metric dd{margin:5px 0 0;font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.5}
.required-cash .rc-metric dd.rc-required{font-size:1.5rem;color:var(--brand)}
.required-cash .rc-metric dd.rc-negative{color:#a32c25}
.required-cash .rc-breakdown{margin:18px 0 0;font-size:.88rem}
.required-cash .rc-breakdown summary{cursor:pointer;color:var(--brand);padding:6px 0}
.required-cash .rc-breakdown .rc-metric{min-height:0}
.required-cash .rc-reading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}
.required-cash .rc-reading .box{margin:0}
.required-cash .rc-formula{overflow-wrap:anywhere;font-size:.9rem;line-height:1.8}
.required-cash .crumbs{white-space:normal;overflow:visible}
@media(max-width:860px){
 .required-cash .rc-input-layout{grid-template-columns:1fr}
 .required-cash .rc-results-grid{grid-template-columns:1fr}
 .required-cash .rc-scenario-inputs{grid-template-columns:1fr}
 .required-cash .rc-scenario-inputs .rc-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
 .required-cash .rc-result .rc-state{min-height:0}
 .required-cash .rc-metric{min-height:0}
 .required-cash .rc-reading{grid-template-columns:1fr}
}
@media(max-width:560px){
 .required-cash .rc-fields,.required-cash .rc-scenario-inputs .rc-fields{grid-template-columns:1fr}
 .required-cash fieldset,.required-cash .rc-result{padding:16px}
 .required-cash .rc-actions .btn{width:100%;justify-content:center}
 .required-cash .article-head h1{font-size:1.65rem;overflow-wrap:anywhere}
}
