﻿:root{
    --fed-bg:#f5f7fb;
    --fed-card:#ffffff;
    --fed-soft:#f8fafc;
    --fed-text:#111827;
    --fed-muted:#374151;
    --fed-border:#dbe4f0;
    --fed-blue:#0d6efd;
    --fed-green:#198754;
    --fed-orange:#fd7e14;
    --fed-shadow:0 8px 24px rgba(15,23,42,.08);
}

body{background:var(--fed-bg);color:var(--fed-text);font-family:Arial,Helvetica,sans-serif;}
.main-title{color:#102a43;font-size:clamp(2rem,4vw,3.2rem);font-weight:800;letter-spacing:0;margin-bottom:10px;}
.main-subtitle,.chart-helper,.fed-detail-note{color:#1f2937;}
.card-modern{background:var(--fed-card);border:1px solid var(--fed-border);border-radius:.75rem;box-shadow:var(--fed-shadow);}

.stat-card{background:var(--fed-card);border:1px solid var(--fed-border);border-top:4px solid var(--fed-blue);border-radius:.75rem;padding:28px 18px;height:100%;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:var(--fed-shadow);}
.stat-card:before{display:none;}
.stat-icon{font-size:1.55rem;color:var(--fed-blue);opacity:.95;margin-bottom:.35rem;}
.stat-label,.fed-detail-label{color:#1f2937;font-size:.84rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;}
.stat-value{font-size:clamp(2.7rem,5vw,4.2rem);line-height:1.02;font-weight:800;color:#102a43;letter-spacing:0;margin:10px 0 8px;font-variant-numeric:tabular-nums;}
#maxRateDate,#minRateDate{color:#111827 !important;font-size:1rem !important;font-weight:600 !important;}

.form-control,.form-select{background:#fff;border:1px solid var(--fed-border);color:var(--fed-text);border-radius:.5rem;min-height:52px;}
.form-control:focus,.form-select:focus{background:#fff;color:var(--fed-text);border-color:var(--fed-blue);box-shadow:0 0 0 .2rem rgba(13,110,253,.12);}
.form-label{color:#1f2937;font-weight:700;}
.btn-finance{background:var(--fed-blue);border:1px solid var(--fed-blue);color:#fff;font-weight:700;border-radius:.5rem;min-height:44px;transition:.15s ease;}
.btn-finance:hover{transform:translateY(-1px);background:#0b5ed7;border-color:#0b5ed7;color:#fff;}

.fed-briefing{border-left:6px solid var(--fed-blue);}
.fed-briefing-icon{flex:0 0 auto;width:46px;height:46px;border-radius:50%;background:#dbeafe;color:#084298;display:flex;align-items:center;justify-content:center;font-size:1.45rem;}
.fed-section-kicker{color:#1f2937;font-size:.92rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.25rem;}
.fed-briefing-title{color:#0f172a;font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.2;font-weight:800;margin-bottom:.35rem;}
.fed-briefing-subtitle,.fed-update-line,.fed-description{color:#111827;font-size:1.06rem;line-height:1.7;}
.fed-update-line{display:inline-block;background:#eef6ff;border:1px solid #9ec5fe;border-radius:.5rem;padding:.45rem .65rem;font-weight:600;}
.fed-update-line strong,.fed-update-line span{color:#0f172a;}
.fed-description{background:#f8fafc;border:1px solid #cbd5e1;border-radius:.6rem;padding:1rem;font-weight:500;}

.fed-note{background:#fff3cd;border:1px solid #d39e00;border-left:5px solid var(--fed-orange);border-radius:.55rem;color:#2f2100;padding:12px 14px;line-height:1.55;font-weight:600;}
.fed-answer{background:#e7f1ff;border:1px solid #6ea8fe;border-left:5px solid var(--fed-blue);border-radius:.65rem;color:#102a43;padding:16px 18px;font-size:1.05rem;line-height:1.55;font-weight:600;}
.fed-answer strong{color:#0b5ed7;}
.fed-explain{background:#eef6ff;border:1px solid #6ea8fe;border-left:5px solid var(--fed-blue);border-radius:.65rem;color:#111827 !important;padding:16px 18px;line-height:1.65;font-size:1.04rem;font-weight:500;}
.fed-explain-title{color:#084298;font-size:.9rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;}
.fed-explain p{margin:0 0 .55rem;color:#111827;}
.fed-explain p:last-child{margin-bottom:0;}
.fed-explain strong{color:#0f172a !important;font-weight:800;}
.fed-detail-box{background:var(--fed-soft);border:1px solid var(--fed-border);border-radius:.65rem;padding:18px;min-height:138px;}
.fed-detail-value{color:#102a43;font-size:clamp(1.75rem,3vw,2.2rem);line-height:1.08;font-weight:800;font-variant-numeric:tabular-nums;}
.fed-detail-date{font-size:1.25rem;}
.fed-detail-series{font-size:1.45rem;color:var(--fed-blue);}
.fed-detail-note{font-size:.96rem;margin-top:10px;line-height:1.45;font-weight:600;}

.chart-container{position:relative;height:460px;}
.chart-helper{font-size:1rem;line-height:1.55;margin-top:-2px;margin-bottom:16px;font-weight:600;}
.table thead th{background:#f1f5f9 !important;color:#1f2937;border-color:var(--fed-border);}
.table thead th:last-child,.table td:last-child{text-align:center;}
.table tbody tr{background:#fff;transition:background .15s ease;}
.table tbody tr:hover{background:#f8fafc !important;}
.table td{border-color:#edf2f7;padding:12px 14px;vertical-align:middle;background:#fff !important;}
.table td:first-child{color:#1f2937;font-size:.95rem;}
.table td:last-child{font-weight:700;color:var(--fed-green);font-size:.95rem;}
.fed-range-table td,.fed-range-table th{white-space:nowrap;}
.fed-range-table tbody tr:first-child td{background:#eef6ff !important;}

.text-light{color:#102a43 !important;}
.text-secondary{color:#1f2937 !important;}
.text-success{color:var(--fed-green) !important;}
.text-muted{color:#1f2937 !important;}
.badge{font-weight:700;}
.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{color:#1f2937 !important;}
.dataTables_wrapper input,.dataTables_wrapper select{background:#fff !important;color:var(--fed-text) !important;border:1px solid var(--fed-border) !important;border-radius:.4rem;}
.footer{background:#fff;border-top:1px solid var(--fed-border);color:#374151;margin-top:70px;padding:28px 0;}
#marketSnapshotText,#fredLastUpdated,#footerFredUpdate{color:#111827 !important;font-size:1rem !important;line-height:1.65 !important;font-weight:600 !important;}
.fed-market-text{color:#111827;font-size:1.04rem;line-height:1.8;font-weight:500;}
#marketSnapshotText strong{color:#0f172a !important;}

.fade-in{animation:fadeIn .35s ease;}
@keyframes fadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
@media (max-width:767.98px){.stat-card{padding:22px 14px;}.chart-container{height:360px;}.fed-detail-box{min-height:auto;}.fed-answer,.fed-note,.fed-explain{font-size:.98rem;padding:14px 15px;}.fed-briefing-icon{width:40px;height:40px;font-size:1.25rem;}}
.fed-stat-date{color:#1f2937;font-size:.82rem;margin-top:6px;font-weight:700;}


