:root{--bg-color:#f8f9fa;--text-color:#212529;--card-bg:#fff;--card-border:rgba(0,0,0,.1);--card-header-bg:#e7f1ff;--card-header-border:#d0e3ff;--table-header-bg:#f1f8ff;--border-color:#eee;--chart-bg:rgba(248,249,250,.7);--chart-toggles-bg:#f8f9fa;--chart-toggles-border:#e9ecef;--market-data-title:#0d6efd;--metric-name-color:#212529;--metric-value-color:#212529;--primary-color:#0d6efd;--success-color:#198754;--danger-color:#dc3545;--warning-color:#fd7e14;--info-color:#20c997;--purple-color:#6f42c1}[data-theme=dark]{--bg-color:#121212;--text-color:#fff;--card-bg:#1e1e1e;--card-border:hsla(0,0%,100%,.15);--card-header-bg:#2c2c2c;--card-header-border:#3a3a3a;--table-header-bg:#2c2c2c;--border-color:#3a3a3a;--chart-bg:rgba(30,30,30,.7);--chart-toggles-bg:#1e1e1e;--chart-toggles-border:#3a3a3a;--market-data-title:#5a9cff;--metric-name-color:#fff;--metric-value-color:#fff;--bs-body-bg:#1e1e1e;--primary-color:#4d8bff;--success-color:#2cce76;--danger-color:#ff4d5e;--warning-color:#ffb366;--info-color:#33e0aa;--purple-color:#9f75e5}body{background-color:var(--bg-color);color:var(--text-color);font-family:Roboto,Tahoma,Geneva,Verdana,sans-serif;transition:all .3s ease}.container{max-width:80%}h1{color:#0d6efd}.card{background-color:var(--card-bg);border:none;box-shadow:0 4px 6px var(--card-border);color:var(--text-color);margin-bottom:1.5rem}.card,.card-header{transition:all .3s ease}.card-header{background-color:var(--card-header-bg);border-bottom:1px solid var(--card-header-border)}.card-header h2,.card-header h3,.card-header h4{color:var(--text-color);font-weight:600}.table{margin-bottom:0}.table,.table th{color:var(--text-color)}.table th{background-color:var(--table-header-bg);border-bottom:2px solid var(--border-color);font-weight:700}.table td{border-color:var(--border-color);color:var(--text-color)}.filing-item{border-bottom:1px solid var(--border-color);padding:1rem 0}.filing-item:last-child{border-bottom:none}.filing-date{font-size:.9rem;margin-top:.25rem}.btn-primary{background-color:#0d6efd;border:none;border-radius:4px;color:#fff;padding:.5rem 1rem;transition:all .3s ease}.btn-primary:hover{background-color:#0257d5;border-color:#0257d5;filter:brightness(90%)}#ticker{background-color:var(--card-bg);border-color:var(--border-color);color:var(--text-color);text-transform:uppercase}.financial-metric{border-radius:4px;padding:1rem;transition:all .3s ease}.financial-metric:hover{background-color:var(--card-header-bg);transform:translateY(-2px)}.financial-metric .metric-name{color:var(--metric-name-color);font-weight:600;margin-bottom:.25rem}.financial-metric .metric-value{align-items:center;color:var(--metric-value-color);display:flex;font-size:1.4rem;font-weight:700}.financial-metric .metric-value.label-negative i,.financial-metric .metric-value.label-positive i{font-size:1rem}.financial-metric .filing-date{font-size:.9rem;margin-top:.25rem}.market-data{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 2px 4px var(--card-border);margin-bottom:1rem;padding:1rem}.market-data .market-metric{text-align:center}.market-data .market-metric .metric-name{color:var(--text-color);font-weight:600;margin-bottom:.25rem}.market-data .market-metric .metric-value{color:var(--text-color);font-size:1.5rem;font-weight:700}.market-data-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 8px var(--card-border);margin-bottom:1rem;padding:1.5rem;transition:all .3s ease}.market-data-card:hover{box-shadow:0 6px 12px var(--card-border);transform:translateY(-2px)}.market-data-card .market-data-title{border-bottom:2px solid var(--border-color);color:var(--market-data-title);font-size:1.3rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;text-align:center}.market-data-card .market-metric{text-align:center}.market-data-card .market-metric .metric-name{color:var(--metric-name-color);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.market-data-card .market-metric .metric-value{align-items:center;color:var(--metric-value-color);display:flex;font-size:2rem;font-weight:700;gap:.5rem;justify-content:center;text-shadow:0 0 1px rgba(0,0,0,.2)}.market-data-card .market-metric .metric-value .indicator-icon{align-items:center;display:inline-flex;justify-content:center}.market-data-card .market-metric .metric-value .indicator-icon i{font-size:1.5rem;margin-left:.3rem}.label-positive{color:var(--success-color);font-weight:700;transition:color .3s ease}.label-positive i{animation:fadeInUp .5s ease-out;color:var(--success-color);margin-left:.5rem}.label-negative{color:var(--danger-color);font-weight:700;transition:color .3s ease}.label-negative i{animation:fadeInDown .5s ease-out;color:var(--danger-color);margin-left:.5rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.spinner-border{height:3rem;margin-bottom:1rem;width:3rem}.chart-container{height:300px}.chart-container,.chart-container-large{margin-bottom:1rem;position:relative;width:100%}.chart-container-large{height:450px}canvas{background-color:var(--chart-bg);border-radius:4px}.chart-controls-wrapper{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}@media(min-width:768px){.chart-controls-wrapper{align-items:center;flex-direction:row;justify-content:space-between}}.chart-toggles{background-color:var(--chart-toggles-bg);border:1px solid var(--chart-toggles-border);border-radius:4px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}@media(min-width:768px){.chart-toggles{flex:1}}.chart-toggles .toggles-header{color:var(--text-color);font-weight:600;margin-bottom:.25rem}.chart-toggles .toggles-container{display:flex;flex-wrap:wrap;gap:1rem}.chart-time-controls{background-color:var(--chart-toggles-bg);border:1px solid var(--chart-toggles-border);border-radius:4px;display:flex;flex-direction:column;gap:1rem;padding:1rem}@media(min-width:768px){.chart-time-controls{max-width:350px;min-width:300px}}.chart-time-controls .time-range{display:flex;flex-direction:column;gap:.5rem}@media(min-width:576px){.chart-time-controls .time-range{align-items:center;flex-direction:row}}.chart-time-controls .time-range label{color:var(--text-color);font-weight:600;margin-bottom:0;white-space:nowrap}.chart-time-controls .time-range .form-select{background-color:var(--card-bg);border-color:var(--border-color);color:var(--text-color);flex:1;transition:all .3s ease}.chart-time-controls .time-range .form-select:focus{border-color:#0d6efd;box-shadow:0 0 0 .2rem rgba(13,110,253,.25)}.chart-time-controls .chart-info{border-top:1px solid var(--border-color);color:var(--text-color);opacity:.8;padding-top:.25rem}.chart-time-controls .chart-info i{color:#20c997}.form-check{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:.25rem;justify-content:flex-start;margin-bottom:0}.form-check input[type=checkbox]:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check label{color:var(--text-color);font-weight:500}#toggleassets+label,#toggleassets+label input[type=checkbox]:checked+label{color:#0d6efd}#toggleliabilities+label,#toggleliabilities+label input[type=checkbox]:checked+label{color:#dc3545}#toggleequity+label,#toggleequity+label input[type=checkbox]:checked+label{color:#198754}#togglerevenue+label,#togglerevenue+label input[type=checkbox]:checked+label{color:#6f42c1}#togglenetIncome+label,#togglenetIncome+label input[type=checkbox]:checked+label{color:#fd7e14}#toggleeps+label,#toggleeps+label input[type=checkbox]:checked+label{color:#20c997}#darkModeToggle{transition:all .3s ease}#darkModeToggle i{margin-right:.25rem}[data-theme=dark] #darkModeToggle{border-color:#fff;color:#fff}[data-theme=dark] #darkModeToggle:hover{background-color:#fff;color:#0d6efd}@media(min-width:576px){.container{max-width:90%}}@media(min-width:768px){.container{max-width:85%}}@media(min-width:992px){.container{max-width:80%}}.market-metric{text-align:center}.market-metric .metric-name{color:var(--metric-name-color);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.market-metric .metric-value{align-items:center;color:var(--metric-value-color);display:flex;font-size:2rem;font-weight:700;gap:.5rem;justify-content:center;text-shadow:0 0 1px rgba(0,0,0,.2)}.market-metric .metric-value .indicator-icon i{font-size:1.5rem}.trend-info{font-size:.85rem;font-weight:500;margin-left:.5rem;opacity:.85}.label-positive .trend-info{color:var(--success-color)}.label-negative .trend-info{color:var(--danger-color)}