/* TCG V4 responsive dashboard. Loaded ONLY on FR/EN finance pages. Do not replace global styles. */
.tcg-fin-v4{--tcgf4-ink:#102b38;--tcgf4-green:#117b73;--tcgf4-gold:#bb9854;--tcgf4-border:#dce6e7;--tcgf4-paper:#fff;--tcgf4-muted:#536a76}
.tcg-fin-v4 .tcg-fin-v4__dashboard,.tcg-fin-v4 .tcg-fin-v4__dashboard *{box-sizing:border-box}
.tcg-fin-v4__dashboard{margin:32px 0 0!important;border:1px solid var(--tcgf4-border);border-radius:20px;background:var(--tcgf4-paper);box-shadow:0 14px 42px rgba(13,44,53,.08);overflow:hidden;min-width:0}
.tcg-fin-v4__banner{background:#112d3d;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 23px;border-bottom:3px solid var(--tcgf4-gold)}
.tcg-fin-v4__banner-brand{display:flex;flex-direction:column;gap:2px}
.tcg-fin-v4__banner-brand strong{font-size:21px;letter-spacing:.14em;line-height:1.1;color:#fff}
.tcg-fin-v4__banner-brand span{font-size:9px;letter-spacing:.12em;color:#d6e5e9}
.tcg-fin-v4__banner-period{font-weight:750;font-size:11px;text-align:right;letter-spacing:.06em;color:#f7edda}
.tcg-fin-v4__notice{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 22px;background:#fff7e7;border-bottom:1px solid #efdfbd;color:#63512c}
.tcg-fin-v4__notice strong{background:#f1dfb9;border-radius:5px;padding:5px 8px;font-size:11px;letter-spacing:.04em;white-space:nowrap}
.tcg-fin-v4__notice span{font-size:12px;line-height:1.5;color:#544b3b}
.tcg-fin-v4__kpis{padding:22px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.tcg-fin-v4__kpi{padding:18px 15px 15px;border:1px solid var(--tcgf4-border);border-top:3px solid var(--tcgf4-green);border-radius:11px;display:flex;flex-direction:column;min-width:0;gap:8px;background:#fff}
.tcg-fin-v4__kpi--cash{border-top-color:var(--tcgf4-gold)}
.tcg-fin-v4__kpi-label{display:block;font-weight:750;font-size:12px!important;line-height:1.4;color:#3d5460!important}
.tcg-fin-v4__kpi-value{display:block;color:var(--tcgf4-ink)!important;font-size:clamp(22px,2.5vw,29px)!important;font-weight:800;line-height:1.12!important;letter-spacing:-.025em;white-space:nowrap}
.tcg-fin-v4__kpi-sub{display:block;font-size:11px!important;line-height:1.4;color:var(--tcgf4-muted)!important}
.tcg-fin-v4__charts{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px;padding:0 22px 20px}
.tcg-fin-v4__chart{background:#f8fbfa;border:1px solid var(--tcgf4-border);border-radius:13px;padding:19px 18px 18px;min-width:0}
.tcg-fin-v4__chart h3{font-size:16px!important;line-height:1.35!important;color:var(--tcgf4-ink)!important;margin:0 0 12px!important;font-weight:750!important;letter-spacing:-.012em!important}
.tcg-fin-v4__legend{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:15px;color:#4c6069}
.tcg-fin-v4__legend>span{display:inline-flex;align-items:center;gap:6px;font-size:11.5px}
.tcg-fin-v4__legend-dot{display:block;width:10px;height:10px;border-radius:3px;background:var(--tcgf4-green)}
.tcg-fin-v4__legend-dot--budget{background:var(--tcgf4-gold)}
.tcg-fin-v4__bar-list{display:grid;gap:12px}
.tcg-fin-v4__bar-row{display:grid;grid-template-columns:37px minmax(0,1fr) 61px;align-items:center;gap:8px;min-width:0}
.tcg-fin-v4__month{font-size:12px!important;font-weight:750;color:#425763!important}
.tcg-fin-v4__bar-pair{display:grid;gap:4px;min-width:0}
.tcg-fin-v4__bar-track{height:7px;background:#e9eeee;border-radius:100px;overflow:hidden}
.tcg-fin-v4__bar{height:100%;border-radius:100px;max-width:100%}
.tcg-fin-v4__bar--actual{background:var(--tcgf4-green)}
.tcg-fin-v4__bar--budget{background:var(--tcgf4-gold)}
.tcg-fin-v4__bar-number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--tcgf4-ink);font-size:12px}
.tcg-fin-v4__bar-number strong{font-weight:800}.tcg-fin-v4__bar-number small{color:#617582;font-size:11px}
.tcg-fin-v4__chart-hint{color:#506773!important;font-size:12px!important;margin:0 0 9px!important}
.tcg-fin-v4__cash-grid{height:235px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:12px 2px 0;border-bottom:1px solid #cbd7d8}
.tcg-fin-v4__cash-item{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:5px}
.tcg-fin-v4__cash-number{font-size:12px!important;font-weight:800;color:#294652!important;white-space:nowrap}
.tcg-fin-v4__cash-well{height:185px;width:100%;max-width:34px;display:flex;flex-direction:column;justify-content:end;position:relative}
.tcg-fin-v4__cash-bar{width:100%;background:linear-gradient(180deg,#ceaf69,#a17b32);border-radius:6px 6px 0 0;min-height:3px}
.tcg-fin-v4__cash-month{font-weight:700;font-size:11px!important;color:#4d636e!important;white-space:nowrap}
.tcg-fin-v4__details{margin:0 22px 20px;border:1px solid var(--tcgf4-border);border-radius:11px;background:#fff;overflow:hidden}
.tcg-fin-v4__details summary{cursor:pointer;display:list-item;padding:15px 19px;font-size:14px;font-weight:750;line-height:1.5;color:var(--tcgf4-ink);background:#f6f9f8}
.tcg-fin-v4__details summary:focus-visible{outline:3px solid #0d746a;outline-offset:-3px}
.tcg-fin-v4__scroll-hint{padding:9px 17px;margin:0!important;font-size:12px!important;line-height:1.4!important;color:var(--tcgf4-muted)!important}
.tcg-fin-v4__table-scroll{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.tcg-fin-v4__table-scroll:focus-visible{outline:3px solid #0d746a;outline-offset:-3px}
.tcg-fin-v4__table{width:100%;min-width:650px;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:12px;text-align:right}
.tcg-fin-v4__table caption{text-align:left;padding:9px 17px 6px;font-size:11px;color:var(--tcgf4-muted)}
.tcg-fin-v4__table th{background:#e8f0ee;font-size:11px;color:#233f4a;padding:12px 9px!important;white-space:nowrap;text-align:right}
.tcg-fin-v4__table td{border-top:1px solid #e6eeee;padding:10px 9px!important;color:#304e58;white-space:nowrap}
.tcg-fin-v4__table th:first-child,.tcg-fin-v4__table td:first-child{text-align:left;padding-left:17px!important}
.tcg-fin-v4__table .tcg-fin-v4__total{font-weight:800;background:#eaf4f1}
.tcg-fin-v4__footnote{padding:13px 22px 16px;margin:0!important;border-top:1px solid var(--tcgf4-border);background:#f8fbfa;color:#526875;font-size:12px!important;line-height:1.5!important}
/* Finance pages only: correct original timeline's low-contrast eyebrow and tall mobile gaps. */
.content-layout .timing-box .eyebrow{color:#bdebdc!important;letter-spacing:.12em}
.content-layout .timing-box p:last-child{color:#e0eaf0!important;line-height:1.62!important}
@media(max-width:1100px){.tcg-fin-v4__kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.tcg-fin-v4__charts{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.tcg-fin-v4__charts{grid-template-columns:1fr}.tcg-fin-v4__cash-grid{height:195px}.tcg-fin-v4__cash-well{height:148px}.content-layout .longform>section{padding-bottom:40px}.content-layout .longform>section+section{padding-top:40px}}
@media(max-width:570px){
 .tcg-fin-v4 .tcg-fin-v2__wrap{padding-top:28px!important;padding-bottom:28px!important;padding-left:18px!important;padding-right:18px!important}
 .tcg-fin-v4__dashboard{margin-top:23px!important;border-radius:15px}
 .tcg-fin-v4__banner{padding:15px 14px;align-items:flex-start;flex-wrap:wrap}
 .tcg-fin-v4__banner-brand strong{font-size:18px}.tcg-fin-v4__banner-period{font-size:10px;text-align:left}
 .tcg-fin-v4__notice{padding:11px 13px;gap:6px}.tcg-fin-v4__notice span{font-size:12px}
 .tcg-fin-v4__kpis{padding:13px;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .tcg-fin-v4__kpi{padding:13px 10px;gap:5px;min-height:104px}
 .tcg-fin-v4__kpi-label{font-size:12px!important}.tcg-fin-v4__kpi-value{font-size:clamp(21px,5.5vw,26px)!important}
 .tcg-fin-v4__kpi-sub{font-size:10.5px!important}.tcg-fin-v4__kpi--cash{grid-column:span 2;min-height:85px}
 .tcg-fin-v4__charts{gap:12px;padding:0 13px 13px;grid-template-columns:1fr}
 .tcg-fin-v4__chart{padding:14px 11px}.tcg-fin-v4__chart h3{font-size:15px!important}
 .tcg-fin-v4__cash-grid{gap:5px;height:175px}.tcg-fin-v4__cash-well{height:128px;max-width:32px}
 .tcg-fin-v4__details{margin:0 13px 12px}.tcg-fin-v4__footnote{padding:12px 13px}
 .content-layout{padding-top:42px!important;padding-bottom:45px!important}
 .content-layout .longform>section{padding-bottom:30px!important}
 .content-layout .longform>section+section{padding-top:30px!important}
 .content-layout .timing-box{padding:24px!important}
 .content-layout .timing-box .eyebrow{font-size:12px!important;line-height:1.5!important}
 .content-layout .timing-box p:last-child{font-size:15px!important;line-height:1.65!important}
 .content-layout .longform h2{margin-bottom:18px!important}
}
@media(max-width:370px){.tcg-fin-v4__bar-row{grid-template-columns:30px minmax(0,1fr) 52px;gap:5px}.tcg-fin-v4__bar-number{font-size:11px}.tcg-fin-v4__bar-number small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.tcg-fin-v4 *, .tcg-fin-v4 *::before,.tcg-fin-v4 *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
