/* S Corp Owner Compensation Optimizer — tool-specific additions only.
 * Anything reusable belongs in brand.css so the other tools inherit it too.
 * Every selector stays scoped to .sfui. */

/* ---------------- year warning in the topbar ---------------- */
.sfui .yearwarn{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  color:var(--bad);background:#f7e9e7;border-radius:4px;padding:5px 9px;}
.sfui .yearwarn[hidden]{display:none;}
.sfui .formref.unverified{color:var(--bad);}

/* ---------------- reasonable comp ---------------- */
.sfui table.rows td.amt{font-family:var(--mono);font-variant-numeric:tabular-nums;
  white-space:nowrap;color:var(--brand-navy);font-weight:600;}
.sfui table.rows input.plain{width:100%;min-width:150px;}
.sfui .rctotals{display:flex;flex-wrap:wrap;gap:8px 26px;margin:12px 0 4px;padding-top:12px;
  border-top:1px solid var(--warm-line);font-size:13px;color:var(--muted);}
.sfui .rctotals b{font-family:var(--mono);font-size:14px;color:var(--brand-navy);
  font-variant-numeric:tabular-nums;}

.sfui .rcnotes{margin:10px 0 12px;}
.sfui .rcnotes label{display:block;font-size:12px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;color:var(--muted);margin:0 0 6px;}
.sfui .rcnotes textarea{width:100%;padding:9px 10px;border:1px solid var(--input-line);
  border-radius:6px;background:#fffdfa;font-family:var(--sans);font-size:13.5px;
  color:var(--ink);line-height:1.5;resize:vertical;box-shadow:none;}
.sfui .rcnotes textarea:focus{outline:2px solid var(--brand-gold);outline-offset:1px;
  border-color:var(--brand-gold);}

.sfui .floorbox{display:flex;flex-wrap:wrap;align-items:center;gap:10px 26px;
  background:var(--card);border:1px solid var(--warm-line);border-left:3px solid var(--brand-navy);
  border-radius:10px;padding:16px 18px;margin:0 0 18px;}
.sfui .floorbox .eyebrow{margin:0 0 4px;}
.sfui .floorv{font-family:var(--serif);font-size:34px;font-weight:700;line-height:1;
  color:var(--brand-navy);font-variant-numeric:tabular-nums;}
.sfui .floornote{flex:1 1 240px;font-size:13px;color:var(--muted);margin:0;}

/* ---------------- assumptions lists ---------------- */
.sfui ul.asmp{margin:0 0 12px;padding:0;list-style:none;}
.sfui ul.asmp li{position:relative;padding:0 0 9px 16px;font-size:13.5px;color:#42495a;
  max-width:78ch;}
.sfui ul.asmp li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:2px;
  background:var(--brand-gold);}

/* ---------------- scenario comparison ---------------- */
.sfui .scenwrap{overflow-x:auto;background:var(--card);border:1px solid var(--warm-line);
  border-radius:10px;padding:4px 16px 12px;margin:0 0 8px;}
.sfui table.scen{font-size:13px;min-width:640px;}
.sfui table.scen thead th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--muted);font-weight:700;text-align:right;padding:14px 10px 8px;
  border-bottom:1px solid var(--brand-navy);white-space:nowrap;vertical-align:bottom;}
.sfui table.scen thead th:first-child{text-align:left;}
.sfui table.scen thead th.sel{color:var(--brand-navy);}
.sfui table.scen thead th.bad{color:var(--bad);}
.sfui table.scen thead th .pill{display:block;margin:5px 0 0;}
.sfui table.scen tbody th{text-align:left;font-weight:400;font-size:13px;color:var(--ink);
  padding:7px 14px 7px 0;border-bottom:1px solid #f0e9dd;white-space:nowrap;}
.sfui table.scen td{padding:7px 10px;border-bottom:1px solid #f0e9dd;text-align:right;
  font-family:var(--mono);font-size:12.5px;font-variant-numeric:tabular-nums;
  white-space:nowrap;}
.sfui table.scen td.sel{background:#f4f6fa;}
.sfui table.scen td.neg{color:var(--bad);}
.sfui table.scen td.good{color:var(--good);}
.sfui table.scen tr.sub th,.sfui table.scen tr.sub td{color:var(--muted);font-size:12px;}
.sfui table.scen tr.sub th{padding-left:16px;}
.sfui table.scen tr.tot th,.sfui table.scen tr.tot td{border-top:1px solid var(--brand-navy);
  border-bottom:none;font-weight:700;}
.sfui table.scen tr.tot.dbl th,.sfui table.scen tr.tot.dbl td{border-top:3px double var(--brand-navy);}
.sfui table.scen tr.tot.dbl td.neg{color:var(--bad);}
.sfui .scenhint{font-size:12px;color:var(--muted);margin:0 0 18px;}

@media (max-width:700px){
  .sfui .floorv{font-size:28px;}
  .sfui .scenwrap{padding:4px 10px 12px;}
}
