/* ============================================================
   Fighter Dynasty : Fighter Career styling.
   Only what this mode needs on top of styles.css: the setup look
   pickers, the hub goal line, offer extras, camp meters, the tale
   of the tape, the result modal and compact tables that fit 375px.
   ============================================================ */
.cr-date{ font-size:12px; font-weight:800; color:var(--muted); letter-spacing:.02em; text-align:right; }
.cr-muted{ color:var(--muted); }
.cr-small{ font-size:12px; margin-top:4px; }
.cr-h{ font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin:18px 0 8px; text-align:left; }
.fd-card h3.cr-h3{ margin-top:16px; }
.cr-actions{ display:flex; flex-direction:column; gap:9px; margin:4px 0 8px; }
.cr-actions .dyn-back{ text-align:center; }
.cr-note{ font-size:12px; color:var(--muted); line-height:1.5; text-align:center; }
.cr-box{ font-size:12.5px; color:var(--muted); line-height:1.5; background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:10px 12px; margin:0 0 12px; text-align:left; }
.cr-warn{ border-color:rgba(255,84,112,.5); color:#ffc2cc; font-size:13px; font-weight:700; line-height:1.45; }
.cr-warn-txt{ color:#ff8a9c; font-size:12.5px; font-weight:700; line-height:1.45; margin-top:10px; }
.cr-gap{ margin-top:14px; }

/* ---------- setup ---------- */
.cr-preview{ display:flex; align-items:center; gap:14px; max-width:340px; margin:0 auto 18px; text-align:left; }
.cr-pv-name{ font-size:17px; font-weight:900; line-height:1.2; overflow-wrap:anywhere; }
.cr-pv-meta{ font-size:12px; color:var(--muted); font-weight:700; margin-top:3px; }
.cr-row2{ display:grid; grid-template-columns:1fr 1fr; gap:8px; max-width:340px; margin:0 auto; }
.cr-row2 .dyn-field{ margin:0 0 16px; min-width:0; }
.cr-block{ max-width:340px; margin:0 auto 16px; text-align:left; }
.cr-lbl{ font-size:12px; color:var(--muted); font-weight:700; text-transform:uppercase; letter-spacing:.08em; margin:14px 0 8px; }
.cr-block .cr-lbl:first-child{ margin-top:0; }
.cr-styles{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.cr-style{ align-items:flex-start; text-align:left; padding:12px; min-height:92px; justify-content:flex-start; }
.cr-style small{ font-size:11px; }
.cr-seg{ display:grid; grid-template-columns:repeat(2,1fr); gap:6px; }
.cr-seg.cr-seg3{ grid-template-columns:repeat(3,1fr); }
.cr-seg button{ appearance:none; background:var(--panel2); border:1px solid var(--line); color:var(--muted); border-radius:10px; padding:11px 4px; font:800 13px/1.2 'Inter',sans-serif; cursor:pointer; min-height:44px; }
.cr-seg button small{ display:block; font-size:10px; font-weight:700; margin-top:3px; color:var(--muted); }
.cr-seg button.on{ color:var(--txt); border-color:var(--dyn); background:rgba(255,65,85,.1); }
.cr-sw-row{ display:flex; flex-wrap:wrap; gap:9px; }
.cr-sw{ appearance:none; width:36px; height:36px; border-radius:50%; border:2px solid rgba(255,255,255,.14); cursor:pointer; padding:0; }
.cr-sw.on{ border-color:#fff; box-shadow:0 0 0 2px var(--dyn); }
.cr-chips{ display:flex; flex-wrap:wrap; gap:6px; }
.cr-chip{ appearance:none; background:var(--panel2); border:1px solid var(--line); color:var(--muted); border-radius:999px; padding:10px 14px; font:800 12.5px/1 'Inter',sans-serif; cursor:pointer; min-height:38px; }
.cr-chip.on{ color:var(--txt); border-color:var(--dyn); background:rgba(255,65,85,.1); }

/* ---------- hub ---------- */
.cr-hud-t{ font-size:10px; color:var(--muted); font-weight:800; }
.dyn-hud-cell b{ white-space:nowrap; }
.cr-goal{ font-size:12.5px; font-weight:700; color:var(--muted); line-height:1.45; margin:-2px 2px 12px; }
.cr-banner{ border-color:rgba(255,206,79,.5); }
.cr-banner h3{ color:var(--gold); }
.cr-banner p{ margin:0 0 12px; font-size:13.5px; line-height:1.5; }
.cr-row{ margin-bottom:0; }
.cr-row .dyn-mini{ min-height:46px; }
.cr-row .dyn-mini:disabled{ opacity:.45; cursor:default; }
.pl-card-head .fd-face{ align-self:flex-start; }
.pl-card-id .nm{ overflow-wrap:anywhere; }
.cr-news{ min-height:0; }
.cr-news .mrow{ align-items:flex-start; padding:9px 10px; }
.cr-news .mrow-mw{ width:46px; padding-top:1px; }
.cr-news .mrow-fix{ font-weight:600; font-size:12.5px; line-height:1.4; }
.cr-news .mrow-res{ width:40px; font-size:12px; padding:4px 0; color:var(--muted); background:rgba(255,255,255,.05); }
.cr-news .mrow-res.W{ color:var(--good); background:rgba(46,224,106,.12); }
.cr-news .mrow-res.L{ color:var(--bad); background:rgba(255,84,112,.12); }
.mrow.cr-me{ border-color:rgba(255,65,85,.35); }

/* ---------- offers ---------- */
.fd-offer:disabled{ opacity:.5; cursor:default; }
.fd-offer .nm{ overflow-wrap:anywhere; }
.cr-ovr{ text-align:center; flex:0 0 auto; }
.cr-ovr span{ display:block; font-size:9.5px; color:var(--muted); font-weight:800; letter-spacing:.06em; }
.cr-ovr b{ font-size:22px; font-weight:900; color:var(--gold); line-height:1; }
.cr-tags{ display:flex; flex-wrap:wrap; gap:5px; margin-top:9px; }
.cr-win{ font-size:12px; color:var(--muted); font-weight:700; margin-top:9px; line-height:1.4; }
.cr-win b{ color:var(--good); }
.fd-offer .nums b{ white-space:nowrap; }
.fd-offer .nums div{ padding:7px 3px; }
.fd-offer .nums span{ font-size:9px; letter-spacing:.03em; white-space:nowrap; }

/* ---------- team rows ---------- */
.fd-tier.cr-tier5{ grid-template-columns:repeat(5,1fr); gap:5px; }
.fd-tier.cr-tier5 button{ padding:9px 2px; font-size:11px; min-height:48px; overflow-wrap:anywhere; }
.fd-tier.cr-tier5 button small{ font-size:9.5px; }
.cr-detail{ font-size:12px; color:var(--muted); line-height:1.5; margin-top:9px; }
.cr-detail b{ color:var(--txt); }
.cr-eq{ display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid rgba(255,255,255,.05); }
.cr-eq:last-child{ border-bottom:0; }
.cr-eq b{ display:block; font-size:14px; font-weight:900; }
.cr-eq small{ display:block; font-size:11.5px; color:var(--muted); font-weight:600; line-height:1.4; margin-top:2px; }
.cr-eq .dyn-mini{ flex:0 0 auto; min-width:96px; }
.cr-eq .dyn-mini:disabled{ opacity:.45; cursor:default; }

/* ---------- camp ---------- */
.cr-slider-row{ display:flex; justify-content:space-between; align-items:baseline; gap:8px; font-size:14px; font-weight:900; margin-bottom:8px; }
.cr-slider-row .cr-muted{ font-size:12px; font-weight:700; text-align:right; }
.fd-slider{ height:32px; }
.cr-ovr-line{ font-size:14px; font-weight:800; margin:0 0 12px; }
.cr-ovr-line b{ font-size:18px; font-weight:900; }
.cr-meter{ margin-top:14px; }
.cr-meter-top{ display:flex; justify-content:space-between; font-size:12.5px; font-weight:800; color:var(--muted); margin-bottom:6px; }
.cr-meter-top b{ color:var(--txt); }
.cr-kv{ display:flex; justify-content:space-between; gap:10px; font-size:13px; padding:8px 0; border-bottom:1px solid rgba(255,255,255,.05); }
.cr-kv span{ color:var(--muted); font-weight:700; min-width:0; }
.cr-kv b{ font-weight:900; white-space:nowrap; }
.cr-kv:first-of-type{ margin-top:8px; }
.cr-me-row span, .cr-me-row b{ color:var(--dyn); }
.pl-train .pl-train-chip{ min-height:48px; }
.cr-modal-bars{ text-align:left; margin:0 0 14px; }

/* ---------- fight night ---------- */
.cr-tape{ display:grid; grid-template-columns:1fr auto 1fr; gap:7px 10px; align-items:center; font-size:13.5px; }
.cr-tape .l{ text-align:right; font-weight:900; min-width:0; overflow-wrap:anywhere; }
.cr-tape .r{ text-align:left; font-weight:900; min-width:0; overflow-wrap:anywhere; }
.cr-tape .k{ text-align:center; font-size:9.5px; color:var(--muted); font-weight:800; text-transform:uppercase; letter-spacing:.06em; min-width:70px; }
.cr-tape .better{ color:var(--good); }
.cr-tape-head{ margin-bottom:12px; padding-bottom:12px; border-bottom:1px solid var(--line); align-items:start; }
.cr-side{ display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; min-width:0; }
.cr-side b{ font-size:14px; font-weight:900; line-height:1.2; overflow-wrap:anywhere; }
.cr-side small{ font-size:11px; color:var(--muted); font-weight:800; }
.cr-vs{ font-size:13px; font-weight:900; color:var(--dyn); letter-spacing:.1em; padding-top:18px; }
.cr-physio{ margin-top:14px; font-size:13.5px; }
.fd-fightbtns .dyn-btn{ min-height:54px; }
.fd-fightbtns + .cr-note{ margin-top:10px; }

/* ---------- result modal ---------- */
.cr-res{ font-size:50px; font-weight:900; letter-spacing:-.02em; line-height:1; margin:6px 0 8px; }
.cr-res.W{ color:var(--good); }
.cr-res.L{ color:var(--bad); }
.cr-res.D{ color:var(--muted); }
.cr-how{ font-size:16px; font-weight:900; }
.cr-when{ font-size:13px; color:var(--muted); font-weight:700; margin-top:3px; }
.cr-effects{ display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin:14px 0 12px; }
.cr-pbp{ text-align:left; margin:0 0 14px; max-height:32vh; overflow-y:auto; }

/* ---------- tables ---------- */
.cr-table{ table-layout:fixed; font-size:12.5px; }
.cr-table th, .cr-table td{ padding:7px 5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cr-table .cr-name b{ display:block; font-weight:800; overflow:hidden; text-overflow:ellipsis; }
.cr-table .cr-name small{ display:block; font-size:10.5px; color:var(--muted); font-weight:600; overflow:hidden; text-overflow:ellipsis; }
.cr-table tr.cr-champ td:first-child{ color:var(--gold); font-weight:900; }
.cr-rank td:first-child{ font-weight:900; }
.cr-r{ font-weight:900; }
.cr-r.W{ color:var(--good); }
.cr-r.L{ color:var(--bad); }
.cr-r.D{ color:var(--muted); }
.fd-tabs button{ min-height:36px; }
.cr-hist td:first-child{ font-size:11px; color:var(--muted); font-weight:700; }
.cr-goat .cr-name b{ white-space:normal; overflow-wrap:anywhere; }
.cr-details summary{ cursor:pointer; font-size:13px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); list-style-position:inside; }
.cr-details[open] summary{ margin-bottom:6px; }

/* ---------- end ---------- */
.cr-share-img{ display:block; width:100%; max-width:240px; margin:4px auto 12px; border-radius:14px; border:1px solid var(--line); box-shadow:var(--shadow); }

/* ---------- navigation ---------- */
.dyn-btn.cr-home{ margin-top:22px; background:transparent; color:var(--muted); border-color:var(--line); font-size:14px; padding:13px 18px; }
.dyn-btn.cr-home:hover{ color:var(--txt); }
.dyn-setup .dyn-btn.cr-home{ margin-top:14px; }

/* ---------- money ---------- */
.cr-money-cell{ appearance:none; font:inherit; color:inherit; width:100%; cursor:pointer; transition:border-color .15s ease; }
.cr-money-cell:hover{ border-color:var(--dyn); }
.cr-money-cell.debt{ border-color:rgba(255,84,112,.55); background:rgba(255,84,112,.08); }
.cr-moneyline{ appearance:none; display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; margin:0 0 10px; padding:9px 12px;
  background:var(--panel); border:1px solid var(--line); border-radius:11px; color:var(--muted); font:700 12px/1.4 'Inter',sans-serif; text-align:left; cursor:pointer; }
.cr-ml-grid{ flex:1; display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.cr-ml-grid > span{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.cr-ml-grid small{ font-size:9.5px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); white-space:nowrap; }
.cr-moneyline b{ font-size:14px; font-weight:900; white-space:nowrap; }
.cr-moneyline i{ font-style:normal; font-size:18px; line-height:1; color:var(--muted); flex:0 0 auto; }
.cr-moneyline:hover{ border-color:var(--dyn); }
.fd-card.cr-debt{ border-color:rgba(255,84,112,.55); background:linear-gradient(180deg,rgba(255,84,112,.12),var(--panel)); padding:14px; }
.cr-debt h3{ color:var(--bad); margin-bottom:6px; }
.cr-debt p{ margin:0 0 8px; font-size:13px; line-height:1.5; color:#f1d3d8; }
.cr-debt p b{ color:#fff; }
.cr-debt p.cr-debt-limit{ color:#ffc2cc; font-weight:800; }
.cr-debt p.cr-muted{ color:var(--muted); font-size:12px; }
.dyn-mini.cr-debt-btn{ width:100%; margin-top:4px; min-height:40px; }
.cr-money-state{ display:flex; justify-content:center; gap:6px; margin:2px 0 12px; }
.cr-money-rows{ text-align:left; margin:0 0 12px; }
.cr-money-rows .cr-kv{ align-items:center; }
.cr-kv span small{ display:block; font-size:11px; font-weight:600; color:var(--muted); opacity:.85; margin-top:2px; line-height:1.35; }
.cr-kv b.cr-kv-sub{ text-align:right; }
.cr-kv b small{ display:block; font-size:11px; font-weight:600; color:var(--muted); margin-top:2px; white-space:normal; }
.cr-kv.cr-kv-total span{ color:var(--txt); }
.cr-rules{ text-align:left; font-size:12.5px !important; line-height:1.55 !important; background:rgba(255,255,255,.04); border:1px solid var(--line); border-radius:11px; padding:10px 12px; }
.cr-eq-note{ margin:0 0 6px; }

/* ---------- flags and national rank ---------- */
.cr-nat{ display:inline-flex; align-items:center; gap:5px; }
.cr-nat .fd-flag{ vertical-align:middle; }
.fd-offer .nm .fd-flag, .pl-card-id .fd-flag, .cr-table .fd-flag{ vertical-align:-1px; }
.cr-pv-c .fd-flag{ vertical-align:-2px; margin-right:2px; }
.dyn-field .cr-country-row{ display:flex; align-items:center; gap:10px; margin:0; font-size:inherit; color:inherit; font-weight:inherit; text-transform:none; letter-spacing:0; }
.cr-country-row select{ flex:1; min-width:0; }
.dyn-field .cr-country-flag{ flex:0 0 auto; display:flex; align-items:center; margin:0; }
.cr-country-flag .fd-flag{ border-radius:3px; }
.cr-side-flag{ display:inline-flex; align-items:center; gap:6px; font-size:12px; font-weight:800; color:var(--txt); }
.cr-side-flag .fd-flag{ border-radius:3px; }
.cr-side small{ line-height:1.35; }

/* ---------- better offer ---------- */
.fd-offer.cr-better{ border-color:rgba(46,224,106,.55); box-shadow:0 0 0 1px rgba(46,224,106,.25) inset; }
.dyn-btn.cr-better-btn{ border-color:rgba(46,224,106,.45); color:var(--good); }
.cr-actions .cr-note{ margin-top:-3px; }

/* ---------- team rows while in debt ---------- */
.fd-tier.cr-tier5 button:disabled{ opacity:.35; cursor:not-allowed; }

/* ---------- result modal ---------- */
.cr-res-opp{ display:flex; align-items:center; justify-content:center; gap:10px; margin:0 0 6px; }
.cr-res-opp-t{ text-align:left; min-width:0; }
.cr-res-opp-t b{ display:block; font-size:14px; font-weight:900; }
.cr-res-opp-t .cr-nat{ font-size:12px; font-weight:700; color:var(--muted); margin-top:2px; }

/* ---------- GOAT race ---------- */
.cr-goat tr.cr-goat-out td{ border-top:1px dashed rgba(255,255,255,.18); }
.cr-goat tr.cr-goat-out td:first-child{ color:var(--muted); }
