:root{--brand:#074ca7;--brand-dark:#063b8a;--brand-accent:#0a8f5b;--bg:#f4f6fb;--surface:#fff;--border:#e6eaf2;--text:#1e2533;--text-muted:#6b7280;--fs-xs:.72rem;--fs-sm:.8rem;--fs-md:.875rem;--fs-lg:1rem;--fs-xl:1.2rem;--radius:10px;--radius-sm:7px;--shadow-sm:0 1px 2px #1018280f, 0 1px 3px #1018280d;--shadow-md:0 4px 12px #10182814;--shadow-lg:0 18px 45px #1018282e;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{font-size:16px}body{background:var(--bg);width:100%;max-width:100%;color:var(--text);font-family:var(--font-sans);font-size:var(--fs-md);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5}h1,h2,h3{letter-spacing:-.01em}button{font-family:inherit}::selection{background:#074ca729}.success-notification{z-index:4000;background:#fff;border-left:4px solid #059669;border-radius:8px;animation:.3s ease-out slideIn;position:fixed;top:20px;right:20px;box-shadow:0 4px 12px #00000026}.success-content{align-items:center;gap:12px;padding:16px;display:flex}.success-icon{color:#059669;font-size:1.5rem}.success-message{color:#065f46;flex:1;font-weight:500}.success-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .2s}.success-close-btn:hover{color:#374151;background:#f3f4f6}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@media (width<=768px){.success-notification{top:10px;left:10px;right:10px}}.mcl-loader{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:220px;padding:3.5rem 1rem;display:flex}.mcl-loader--compact{min-height:120px;padding:1.5rem 1rem}.mcl-loader__orbit{align-items:center;gap:.5rem;display:flex}.mcl-loader__dot{background:linear-gradient(135deg, var(--brand,#074ca7), var(--brand-accent,#0a8f5b));border-radius:50%;width:.7rem;height:.7rem;animation:1.1s ease-in-out infinite mcl-bounce}.mcl-loader__dot:nth-child(2){animation-delay:.16s}.mcl-loader__dot:nth-child(3){animation-delay:.32s}@keyframes mcl-bounce{0%,80%,to{opacity:.45;transform:translateY(0)scale(.85)}40%{opacity:1;transform:translateY(-.7rem)scale(1)}}.mcl-loader__label{letter-spacing:.02em;color:var(--text-muted,#6b7280);margin:0;font-size:.8rem;font-weight:500}@media (prefers-reduced-motion:reduce){.mcl-loader__dot{animation-duration:2.4s}}.skeleton-container{padding:0;animation:.3s both skeleton-fade-in}.skeleton-head{background:linear-gradient(135deg, var(--brand,#074ca7) 0%, var(--brand-dark,#063b8a) 100%);align-items:center;gap:4%;padding:14px 18px;display:flex}.skeleton-bar--head{background:#ffffff47;animation:none}.skeleton-body{padding:6px 0 10px}.skeleton-row{opacity:0;animation:.4s forwards skeleton-row-in;animation-delay:calc(var(--skeleton-i,0) * 60ms);border-bottom:1px solid #f1f4f9;align-items:center;gap:4%;padding:12px 18px;display:flex}.skeleton-bar{background:linear-gradient(90deg,#e9edf4 25%,#f6f8fc 42%,#e9edf4 60%) 0 0/300% 100%;border-radius:6px;height:11px;animation:1.5s ease-in-out infinite skeleton-shimmer;display:inline-block}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes skeleton-row-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes skeleton-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.skeleton-row{animation-duration:10ms;animation-delay:0s}.skeleton-bar{animation:none}}@media (width<=768px){.text-analysis-panel{padding:10px}.analysis-item-compact{flex-wrap:wrap;gap:4px}.analysis-text-compact,.analysis-value-compact{font-size:.65rem}}@media (width<=480px){.text-analysis-panel{padding:8px}.text-analysis-title{font-size:.8rem}.analysis-item-compact{font-size:.65rem}.analysis-dot{width:5px;height:5px}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9)translateY(-20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}@media (width<=1920px){.analysis-modal{width:95%;max-width:1600px}}@media (width<=1440px){.analysis-modal{width:98%;max-width:1400px}}@media (width<=1024px){.analysis-modal{width:98%;max-height:98vh}.analysis-controls{gap:15px}.control-group{min-width:180px}.chart-container,.chart-loading,.chart-error,.no-data-chart{min-width:1000px}}@media (width<=768px){.analysis-modal-overlay{padding:10px}.analysis-modal,.fedha-analysis-modal{border-radius:12px;width:100%;max-height:100vh}.fedha-analysis-content{flex-direction:column}.panel-divider{width:100%;height:1px}.analysis-modal-header{padding:20px}.analysis-modal-header h2{font-size:1.5rem}.analysis-controls-scroll{padding:15px 20px}.analysis-controls{flex-wrap:wrap;gap:12px}.control-group{flex:1;min-width:140px}.control-group.control-buttons{flex:100%}.control-group select,.control-group input{padding:10px 12px;font-size:.9rem}.chart-container{min-width:800px;padding:20px}.chart-loading,.chart-error,.no-data-chart{min-width:800px;height:400px}.zoom-controls{flex-direction:column;align-items:flex-start;gap:8px}.current-range{align-self:flex-end}.visualization-panel{min-height:400px}}@media (width<=480px){.analysis-modal-header{text-align:center;flex-direction:column;gap:10px;padding:15px}.analysis-controls-scroll{padding:12px 15px}.analysis-controls{gap:10px}.control-group{flex:100%;min-width:140px}.control-group.control-buttons{flex-direction:row;gap:8px}.control-group label{font-size:.8rem}.control-group select,.control-group input{padding:8px 10px;font-size:.85rem}.apply-btn,.reset-btn{padding:10px 15px;font-size:.85rem}.chart-container{min-width:600px;padding:15px}.chart-loading,.chart-error,.no-data-chart{min-width:600px;height:350px}.analysis-modal-footer{padding:15px}.download-chart-btn{padding:10px 20px;font-size:.9rem}.graph-controls{flex-direction:column;align-items:stretch;gap:10px}.current-range{text-align:center;align-self:center}.visualization-panel{min-height:350px}}@media (width<=768px){.text-analysis-panel{padding:10px}.analysis-item-compact{flex-wrap:wrap;gap:4px}.analysis-text-compact,.analysis-value-compact{font-size:.65rem}}@media (width<=480px){.text-analysis-panel{padding:8px}.text-analysis-title{font-size:.8rem}.analysis-item-compact{font-size:.65rem}.analysis-dot{width:5px;height:5px}}@media (width<=1920px){.analysis-modal{width:95%;max-width:1600px}}@media (width<=1440px){.analysis-modal{width:98%;max-width:1400px}}@media (width<=1024px){.analysis-modal{width:98%;max-height:98vh}.analysis-controls{gap:15px}.control-group{min-width:180px}.chart-container,.chart-loading,.chart-error,.no-data-chart{min-width:1000px}}@media (width<=768px){.analysis-modal-overlay{padding:10px}.analysis-modal,.fedha-analysis-modal{border-radius:12px;width:100%;max-height:100vh}.fedha-analysis-content{flex-direction:column}.panel-divider{width:100%;height:1px}.analysis-modal-header{padding:20px}.analysis-modal-header h2{font-size:1.5rem}.analysis-controls-scroll{padding:15px 20px}.analysis-controls{flex-wrap:wrap;gap:12px}.control-group{flex:1;min-width:140px}.control-group.control-buttons{flex:100%}.control-group select,.control-group input{padding:10px 12px;font-size:.9rem}.chart-container{min-width:800px;padding:20px}.chart-loading,.chart-error,.no-data-chart{min-width:800px;height:400px}.zoom-controls{flex-direction:column;align-items:flex-start;gap:8px}.current-range{align-self:flex-end}.visualization-panel{min-height:400px}}@media (width<=480px){.analysis-modal-header{text-align:center;flex-direction:column;gap:10px;padding:15px}.analysis-controls-scroll{padding:12px 15px}.analysis-controls{gap:10px}.control-group{flex:100%;min-width:140px}.control-group.control-buttons{flex-direction:row;gap:8px}.control-group label{font-size:.8rem}.control-group select,.control-group input{padding:8px 10px;font-size:.85rem}.apply-btn,.reset-btn{padding:10px 15px;font-size:.85rem}.chart-container{min-width:600px;padding:15px}.chart-loading,.chart-error,.no-data-chart{min-width:600px;height:350px}.analysis-modal-footer{padding:15px}.download-chart-btn{padding:10px 20px;font-size:.9rem}.graph-controls{flex-direction:column;align-items:stretch;gap:10px}.current-range{text-align:center;align-self:center}.visualization-panel{min-height:350px}}@media (width<=768px){.text-analysis-panel{padding:10px}.analysis-item-compact{flex-wrap:wrap;gap:4px}.analysis-text-compact,.analysis-value-compact{font-size:.65rem}}@media (width<=480px){.text-analysis-panel{padding:8px}.text-analysis-title{font-size:.8rem}.analysis-item-compact{font-size:.65rem}.analysis-dot{width:5px;height:5px}}.zoom-btn:hover{color:#c8102e;border-color:#c8102e}@media (width<=1920px){.analysis-modal{width:95%;max-width:1600px}}@media (width<=1440px){.analysis-modal{width:98%;max-width:1400px}}@media (width<=1024px){.analysis-modal{width:98%;max-height:98vh}.analysis-controls{gap:15px}.control-group{min-width:180px}.chart-container,.chart-loading,.chart-error,.no-data-chart{min-width:1000px}}@media (width<=768px){.analysis-modal-overlay{padding:10px}.analysis-modal,.fedha-analysis-modal{border-radius:12px;width:100%;max-height:100vh}.fedha-analysis-content{flex-direction:column}.panel-divider{width:100%;height:1px}.analysis-modal-header{padding:20px}.analysis-modal-header h2{font-size:1.5rem}.analysis-controls-scroll{padding:15px 20px}.analysis-controls{flex-wrap:wrap;gap:12px}.control-group{flex:1;min-width:140px}.control-group.control-buttons{flex:100%}.control-group select,.control-group input{padding:10px 12px;font-size:.9rem}.chart-container{min-width:800px;padding:20px}.chart-loading,.chart-error,.no-data-chart{min-width:800px;height:400px}.zoom-controls{flex-direction:column;align-items:flex-start;gap:8px}.current-range{align-self:flex-end}.visualization-panel{min-height:400px}}@media (width<=480px){.analysis-modal-header{text-align:center;flex-direction:column;gap:10px;padding:15px}.analysis-controls-scroll{padding:12px 15px}.analysis-controls{gap:10px}.control-group{flex:100%;min-width:140px}.control-group.control-buttons{flex-direction:row;gap:8px}.control-group label{font-size:.8rem}.control-group select,.control-group input{padding:8px 10px;font-size:.85rem}.apply-btn,.reset-btn{padding:10px 15px;font-size:.85rem}.chart-container{min-width:600px;padding:15px}.chart-loading,.chart-error,.no-data-chart{min-width:600px;height:350px}.analysis-modal-footer{padding:15px}.download-chart-btn{padding:10px 20px;font-size:.9rem}.graph-controls{flex-direction:column;align-items:stretch;gap:10px}.current-range{text-align:center;align-self:center}.visualization-panel{min-height:350px}}@media (width<=768px){.text-analysis-panel{padding:10px}.analysis-item-compact{flex-wrap:wrap;gap:4px}.analysis-text-compact,.analysis-value-compact{font-size:.65rem}}@media (width<=480px){.text-analysis-panel{padding:8px}.text-analysis-title{font-size:.8rem}.analysis-item-compact{font-size:.65rem}.analysis-dot{width:5px;height:5px}}@media (width<=1920px){.analysis-modal{width:95%;max-width:1600px}}@media (width<=1440px){.analysis-modal{width:98%;max-width:1400px}}@media (width<=1024px){.analysis-modal{width:98%;max-height:98vh}.analysis-controls{gap:15px}.control-group{min-width:180px}.chart-container,.chart-loading,.chart-error,.no-data-chart{min-width:1000px}}@media (width<=768px){.analysis-modal-overlay{padding:10px}.analysis-modal,.fedha-analysis-modal{border-radius:12px;width:100%;max-height:100vh}.fedha-analysis-content{flex-direction:column}.panel-divider{width:100%;height:1px}.analysis-modal-header{padding:20px}.analysis-modal-header h2{font-size:1.5rem}.analysis-controls-scroll{padding:15px 20px}.analysis-controls{flex-wrap:wrap;gap:12px}.control-group{flex:1;min-width:140px}.control-group.control-buttons{flex:100%}.control-group select,.control-group input{padding:10px 12px;font-size:.9rem}.chart-container{min-width:800px;padding:20px}.chart-loading,.chart-error,.no-data-chart{min-width:800px;height:400px}.zoom-controls{flex-direction:column;align-items:flex-start;gap:8px}.current-range{align-self:flex-end}.visualization-panel{min-height:400px}}@media (width<=480px){.analysis-modal-header{text-align:center;flex-direction:column;gap:10px;padding:15px}.analysis-controls-scroll{padding:12px 15px}.analysis-controls{gap:10px}.control-group{flex:100%;min-width:140px}.control-group.control-buttons{flex-direction:row;gap:8px}.control-group label{font-size:.8rem}.control-group select,.control-group input{padding:8px 10px;font-size:.85rem}.apply-btn,.reset-btn{padding:10px 15px;font-size:.85rem}.chart-container{min-width:600px;padding:15px}.chart-loading,.chart-error,.no-data-chart{min-width:600px;height:350px}.analysis-modal-footer{padding:15px}.download-chart-btn{padding:10px 20px;font-size:.9rem}.graph-controls{flex-direction:column;align-items:stretch;gap:10px}.current-range{text-align:center;align-self:center}.visualization-panel{min-height:350px}}@media (width<=768px){.text-analysis-panel{padding:10px}.analysis-item-compact{flex-wrap:wrap;gap:4px}.analysis-text-compact,.analysis-value-compact{font-size:.65rem}}@media (width<=480px){.text-analysis-panel{padding:8px}.text-analysis-title{font-size:.8rem}.analysis-item-compact{font-size:.65rem}.analysis-dot{width:5px;height:5px}}@media (width<=1920px){.analysis-modal{width:95%;max-width:1600px}}@media (width<=1440px){.analysis-modal{width:98%;max-width:1400px}}@media (width<=1024px){.analysis-modal{width:98%;max-height:98vh}.analysis-controls{gap:15px}.control-group{min-width:180px}.chart-container,.chart-loading,.chart-error,.no-data-chart{min-width:1000px}}@media (width<=768px){.analysis-modal-overlay{padding:10px}.analysis-modal,.fedha-analysis-modal{border-radius:12px;width:100%;max-height:100vh}.fedha-analysis-content{flex-direction:column}.panel-divider{width:100%;height:1px}.analysis-modal-header{padding:20px}.analysis-modal-header h2{font-size:1.5rem}.analysis-controls-scroll{padding:15px 20px}.analysis-controls{flex-wrap:wrap;gap:12px}.control-group{flex:1;min-width:140px}.control-group.control-buttons{flex:100%}.control-group select,.control-group input{padding:10px 12px;font-size:.9rem}.chart-container{min-width:800px;padding:20px}.chart-loading,.chart-error,.no-data-chart{min-width:800px;height:400px}.zoom-controls{flex-direction:column;align-items:flex-start;gap:8px}.current-range{align-self:flex-end}.visualization-panel{min-height:400px}}@media (width<=480px){.analysis-modal-header{text-align:center;flex-direction:column;gap:10px;padding:15px}.analysis-controls-scroll{padding:12px 15px}.analysis-controls{gap:10px}.control-group{flex:100%;min-width:140px}.control-group.control-buttons{flex-direction:row;gap:8px}.control-group label{font-size:.8rem}.control-group select,.control-group input{padding:8px 10px;font-size:.85rem}.apply-btn,.reset-btn{padding:10px 15px;font-size:.85rem}.chart-container{min-width:600px;padding:15px}.chart-loading,.chart-error,.no-data-chart{min-width:600px;height:350px}.analysis-modal-footer{padding:15px}.download-chart-btn{padding:10px 20px;font-size:.9rem}.graph-controls{flex-direction:column;align-items:stretch;gap:10px}.current-range{text-align:center;align-self:center}.visualization-panel{min-height:350px}}.text-analysis-panel{background:#f8fafc;flex-direction:column;flex:1;min-height:100%;padding:12px;display:flex;overflow-y:auto}.text-analysis-title{color:#1e293b;border-bottom:1px solid #e2e8f0;margin:0 0 12px;padding-bottom:8px;font-size:.85rem;font-weight:600}.text-analysis-content{flex-direction:column;gap:8px;display:flex}.text-analysis-empty{text-align:center;color:#64748b;padding:40px 20px;font-size:.7rem}.analysis-item-compact{align-items:center;gap:8px;padding:4px 0;font-size:.7rem;line-height:1.4;display:flex}.analysis-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.analysis-text-compact{color:#475569;flex:1}.analysis-value-compact{white-space:nowrap;font-weight:600}.analysis-date-compact{color:#94a3b8;white-space:nowrap;font-size:.65rem;font-style:italic}@media (width<=768px){.text-analysis-panel{padding:10px}.analysis-item-compact{flex-wrap:wrap;gap:4px}.analysis-text-compact,.analysis-value-compact{font-size:.65rem}}@media (width<=480px){.text-analysis-panel{padding:8px}.text-analysis-title{font-size:.8rem}.analysis-item-compact{font-size:.65rem}.analysis-dot{width:5px;height:5px}}.analysis-modal-overlay{z-index:2000;background:#000c;justify-content:center;align-items:center;max-width:100%;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.analysis-modal{background:#fff;border-radius:16px;flex-direction:column;width:800px;max-height:95vh;animation:.3s ease-out modalSlideIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.fedha-analysis-modal{background:#fff;border-radius:16px;flex-direction:column;width:95%;max-width:1600px;max-height:95vh;animation:.3s ease-out modalSlideIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.fedha-analysis-content{flex:1;min-height:0;display:flex;overflow:hidden}.visualization-panel{background:#fff;flex-direction:column;flex:1.2;display:flex;overflow:hidden}.analysis-controls-container-compact{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:8px 12px}.analysis-controls-compact{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.control-select-compact,.control-input-compact{background:#fff;border:1px solid #e2e8f0;border-radius:4px;min-width:80px;height:24px;padding:4px 8px;font-size:.7rem}.control-select-compact:focus,.control-input-compact:focus{border-color:var(--accent-color,#c8102e);outline:none}.control-group-date-compact{align-items:center;gap:4px;display:flex}.control-label-date{color:#64748b;white-space:nowrap;font-size:.7rem}.panel-divider{background:var(--divider-color,#c8102e);opacity:.3;flex-shrink:0;width:1px;min-width:1px}.analysis-modal-header{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border-bottom:1px solid #e2e8f0;border-radius:16px 16px 0 0;flex-shrink:0;justify-content:space-between;align-items:center;padding:25px 30px;display:flex}.analysis-modal-header h2{color:#1e293b;background:linear-gradient(135deg, var(--accent-color,#c8102e) 0%, #1e293b 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;align-items:center;gap:8px;margin:0;font-size:1.75rem;font-weight:700;display:flex}.header-emoji{-webkit-text-fill-color:initial;background:0 0;-webkit-background-clip:initial;background-clip:initial;font-style:normal}.close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:8px;font-size:1.75rem;transition:all .3s;display:flex}.close-btn:hover{color:var(--accent-color,#c8102e);background:#f1f5f9;transform:rotate(90deg)}.analysis-controls-container{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;position:relative}.analysis-controls-scroll{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9;padding:20px 30px;overflow:auto hidden}.analysis-controls-scroll::-webkit-scrollbar{height:6px}.analysis-controls-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.analysis-controls-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.analysis-controls-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.analysis-controls{gap:25px;min-width:max-content;padding-bottom:10px;display:flex}.control-group{flex-direction:column;flex-shrink:0;gap:8px;min-width:200px;display:flex}.control-group label{color:#374151;text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.control-group select,.control-group input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;padding:12px 15px;font-size:.95rem;font-weight:500;transition:all .3s}.control-group select:focus,.control-group input:focus{border-color:var(--accent-color,#c8102e);outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #0000001a}.control-group select:hover,.control-group input:hover{border-color:#cbd5e1}.control-group.control-buttons{flex-direction:row;align-items:flex-end;gap:10px;min-width:auto}.apply-btn,.reset-btn{cursor:pointer;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.95rem;font-weight:600;transition:all .3s;display:flex}.apply-btn{color:#fff;background:linear-gradient(135deg,#c8102e 0%,#a50f15 100%);box-shadow:0 4px 6px -1px #c8102e33}.apply-btn:hover:not(:disabled){background:linear-gradient(135deg,#d12b47 0%,#b5101a 100%);transform:translateY(-2px);box-shadow:0 8px 15px -3px #c8102e4d}.reset-btn{color:#64748b;background:#fff;border:2px solid #e2e8f0}.reset-btn:hover:not(:disabled){color:#475569;background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.apply-btn:disabled,.reset-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.chart-section{flex-direction:column;flex:1;min-height:500px;display:flex;position:relative;overflow:hidden}.chart-container-wrapper{flex:1;min-height:500px;padding:0;position:relative;overflow:auto}.chart-container{width:max-content;min-width:1200px;min-height:500px;padding:25px 30px;position:relative}.chart-loading,.chart-error,.no-data-chart{color:#64748b;flex-direction:column;justify-content:center;align-items:center;width:100%;min-width:1200px;height:500px;font-size:1.1rem;display:flex}.chart-error{color:#dc2626;background:#fef2f2;border-radius:8px;padding:20px}.no-data-chart{background:#f8fafc;border:2px dashed #e2e8f0;border-radius:8px}.no-data-chart i{opacity:.5;margin-bottom:1rem;font-size:3rem}.analysis-modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;border-radius:0 0 16px 16px;flex-shrink:0;justify-content:flex-end;padding:20px 30px;display:flex}.download-chart-btn{background:var(--accent-color,#c8102e);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:10px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 6px -1px #0003}.download-chart-btn:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 8px 15px -3px #0000004d}.download-chart-btn:disabled{cursor:not-allowed;box-shadow:none;background:#9ca3af;transform:none}.graph-controls{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:15px 30px;display:flex}.zoom-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.zoom-btn{cursor:pointer;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:6px;align-items:center;gap:5px;padding:8px 12px;font-weight:600;transition:all .2s;display:flex}.zoom-btn:hover{border-color:var(--accent-color,#c8102e);color:var(--accent-color,#c8102e)}.zoom-btn:active{transform:scale(.95)}.current-range{color:#64748b;font-size:.9rem;font-weight:500}.chart-container-wrapper::-webkit-scrollbar{width:12px;height:12px}.chart-container-wrapper::-webkit-scrollbar-track{background:#f1f5f9;border-radius:6px}.chart-container-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border:2px solid #f1f5f9;border-radius:6px}.chart-container-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}.chart-container-wrapper::-webkit-scrollbar-corner{background:#f1f5f9}.chart-loading .loading-spinner{margin-bottom:1rem;font-size:2rem;animation:1.5s ease-in-out infinite pulse}.chartjs-render-monitor{background:#fff;border-radius:8px;min-width:1200px;box-shadow:0 1px 3px #0000001a}@media (width<=1920px){.analysis-modal{width:95%;max-width:1600px}}@media (width<=1440px){.analysis-modal{width:98%;max-width:1400px}}@media (width<=1024px){.analysis-modal{width:98%;max-height:98vh}.analysis-controls{gap:15px}.control-group{min-width:180px}.chart-container,.chart-loading,.chart-error,.no-data-chart{min-width:1000px}}@media (width<=768px){.analysis-modal-overlay{padding:10px}.analysis-modal,.fedha-analysis-modal{border-radius:12px;width:100%;max-height:100vh}.fedha-analysis-content{flex-direction:column}.panel-divider{width:100%;height:1px}.analysis-modal-header{padding:20px}.analysis-modal-header h2{font-size:1.5rem}.analysis-controls-scroll{padding:15px 20px}.analysis-controls{flex-wrap:wrap;gap:12px}.control-group{flex:1;min-width:140px}.control-group.control-buttons{flex:100%}.control-group select,.control-group input{padding:10px 12px;font-size:.9rem}.chart-container{min-width:800px;padding:20px}.chart-loading,.chart-error,.no-data-chart{min-width:800px;height:400px}.zoom-controls{flex-direction:column;align-items:flex-start;gap:8px}.current-range{align-self:flex-end}.visualization-panel{min-height:400px}}@media (width<=480px){.analysis-modal-header{text-align:center;flex-direction:column;gap:10px;padding:15px}.analysis-controls-scroll{padding:12px 15px}.analysis-controls{gap:10px}.control-group{flex:100%;min-width:140px}.control-group.control-buttons{flex-direction:row;gap:8px}.control-group label{font-size:.8rem}.control-group select,.control-group input{padding:8px 10px;font-size:.85rem}.apply-btn,.reset-btn{padding:10px 15px;font-size:.85rem}.chart-container{min-width:600px;padding:15px}.chart-loading,.chart-error,.no-data-chart{min-width:600px;height:350px}.analysis-modal-footer{padding:15px}.download-chart-btn{padding:10px 20px;font-size:.9rem}.graph-controls{flex-direction:column;align-items:stretch;gap:10px}.current-range{text-align:center;align-self:center}.visualization-panel{min-height:350px}}.market-data-container{max-width:1280px;font-family:var(--font-sans);box-sizing:border-box;width:100%;margin:0 auto;padding:24px 20px 40px}.category-buttons{scrollbar-width:thin;scrollbar-color:var(--brand) #eef2f8;justify-content:center;align-items:center;gap:8px;width:100%;margin-bottom:18px;padding-bottom:6px;display:flex;overflow-x:auto}.category-buttons::-webkit-scrollbar{height:5px}.category-buttons::-webkit-scrollbar-track{background:#eef2f8;border-radius:3px}.category-buttons::-webkit-scrollbar-thumb{background:var(--brand);border-radius:3px}.category-btn{background:var(--surface);border:1px solid var(--border);font-weight:600;font-size:var(--fs-sm);cursor:pointer;color:var(--text);white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:7px;padding:9px 16px;transition:transform .15s,box-shadow .15s,border-color .15s,background .15s,color .15s;display:inline-flex}.category-btn:hover{box-shadow:var(--shadow-sm);border-color:#b9d0ee;transform:translateY(-1px)}.category-btn.active{background:linear-gradient(135deg, var(--brand) 0%, var(--brand-dark) 100%);color:#fff;border-color:#0000;box-shadow:0 6px 16px -6px #074ca78c}.category-btn i{opacity:.9;font-size:.9rem}.date-controls{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;padding:10px 12px;display:flex}.date-controls select{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--text);cursor:pointer;background:#fbfcfe;flex-grow:1;min-width:200px;max-width:340px;padding:9px 13px}.date-controls select:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #074ca71f}.action-buttons{align-items:center;gap:8px;display:flex}.analysis-icon-btn,.download-icon-btn,.download-all-icon-btn{color:var(--brand);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:#eef3fb;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;transition:all .15s;display:flex;position:relative}.analysis-icon-btn{background:linear-gradient(135deg, var(--brand) 0%, var(--brand-dark) 100%);color:#fff;border-color:#0000}.analysis-icon-btn:hover:not(:disabled),.download-icon-btn:hover:not(:disabled),.download-all-icon-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-1px)}.download-icon-btn:hover:not(:disabled),.download-all-icon-btn:hover:not(:disabled){background:#e2ebf9}.analysis-icon-btn:disabled,.download-icon-btn:disabled,.download-all-icon-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.analysis-icon-btn:after,.download-icon-btn:after,.download-all-icon-btn:after{content:attr(title);color:#fff;font-size:var(--fs-xs);white-space:nowrap;opacity:0;pointer-events:none;z-index:1001;box-shadow:var(--shadow-md);background:#111827;border-radius:6px;margin-bottom:8px;padding:6px 10px;font-weight:500;transition:opacity .2s;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.analysis-icon-btn:hover:after,.download-icon-btn:hover:after,.download-all-icon-btn:hover:after{opacity:1}.error-message{color:#9b1c31;border-radius:var(--radius-sm);text-align:center;font-size:var(--fs-sm);background:#fdecef;border:1px solid #f6c9d2;margin:18px 0;padding:14px 16px}.data-table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);width:100%;margin-bottom:28px;overflow:hidden}.table-wrapper{width:100%;max-height:62vh;overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:600px}.data-table th{background:linear-gradient(135deg, var(--brand) 0%, var(--brand-dark) 100%);color:#fff;text-align:left;z-index:1;font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;padding:11px 15px;font-weight:600;position:sticky;top:0}.data-table td{color:#344054;white-space:nowrap;font-size:var(--fs-sm);border-bottom:1px solid #eef2f7;padding:9px 15px}.data-table tbody tr:nth-child(2n){background-color:#fafbfd}.data-table tbody tr:hover{background-color:#eef4fc}.data-source{font-size:var(--fs-xs);color:var(--text-muted);text-align:center;background:#fbfcfe;border-top:1px solid #eef2f7;padding:11px 15px}.table-reveal{animation:.45s cubic-bezier(.22,.61,.36,1) both table-card-in}.row-reveal{opacity:0;animation:.5s cubic-bezier(.22,.61,.36,1) forwards table-row-in;animation-delay:calc(.12s + var(--row-i,0) * 55ms)}.row-reveal td{animation:.55s forwards table-cell-in;animation-delay:calc(.16s + var(--row-i,0) * 55ms);opacity:0}.data-source{animation:.6s .5s both table-cell-in}@keyframes table-card-in{0%{opacity:0;transform:translateY(14px)scale(.995)}to{opacity:1;transform:none}}@keyframes table-row-in{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes table-cell-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.table-reveal,.row-reveal,.row-reveal td,.data-source{animation-duration:10ms;animation-delay:0s}}.analysis-modal-overlay .fedha-analysis-modal{width:90%;max-width:1100px;max-height:88vh}.fedha-analysis-modal .chart-section{min-height:0}.fedha-analysis-modal .chart-container-wrapper{flex-direction:column;min-height:0;display:flex;overflow:visible}.fedha-analysis-modal .chart-container{width:100%;min-width:0;max-width:980px;height:clamp(300px,46vh,440px);min-height:0;margin:0 auto;padding:10px 22px 4px}.fedha-analysis-modal .analysis-modal-footer{flex-shrink:0}.fedha-analysis-modal .control-select-compact,.fedha-analysis-modal .control-input-compact{appearance:none;border:1px solid var(--border,#e6eaf2);min-width:110px;height:38px;min-height:38px;font-size:var(--fs-sm);font-family:var(--font-sans);color:var(--text);cursor:pointer;background-color:#fff;border-radius:8px;padding:0 12px;line-height:36px;transition:border-color .15s,box-shadow .15s,transform .15s;box-shadow:0 1px 2px #1018280d}.fedha-analysis-modal .control-input-compact{align-items:center;line-height:normal;display:inline-flex}.fedha-analysis-modal .control-select-compact{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%236b7280' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.fedha-analysis-modal .control-select-compact:hover:not(:disabled),.fedha-analysis-modal .control-input-compact:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent-color,var(--brand)) 45%, #fff);transform:translateY(-1px);box-shadow:0 3px 8px #10182814}.fedha-analysis-modal .control-select-compact:focus,.fedha-analysis-modal .control-input-compact:focus{border-color:var(--accent-color,var(--brand));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-color,var(--brand)) 14%, transparent);outline:none}.fedha-analysis-modal .control-select-compact:disabled,.fedha-analysis-modal .control-input-compact:disabled{opacity:.55;cursor:not-allowed}.fedha-analysis-modal .control-group-date-compact{align-items:center;gap:7px;display:inline-flex}.fedha-analysis-modal .control-label-date{font-size:var(--fs-xs);letter-spacing:.03em;text-transform:uppercase;color:var(--accent-color,var(--brand));font-weight:600}.fedha-analysis-modal .analysis-controls-container-compact{border-bottom:1px solid var(--border,#e6eaf2);background:#f8fafd;padding:11px 14px}.fedha-analysis-modal .analysis-controls-compact{gap:10px}.analysis-modal-header .header-actions{align-items:center;gap:8px;display:flex}.summary-toggle-btn{color:#fff;cursor:pointer;background:#ffffff29;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;transition:all .15s;display:flex}.summary-toggle-btn:hover{background:#ffffff4d;transform:scale(1.05)}.summary-toggle-btn.active{color:var(--accent-color,var(--brand));background:#fff;box-shadow:0 2px 8px #0000002e}.fedha-analysis-content.chart-only .visualization-panel{flex:100%}.fedha-analysis-content.with-summary .text-analysis-panel,.fedha-analysis-content.with-summary>:last-child{animation:.35s cubic-bezier(.22,.61,.36,1) both summary-panel-in}@keyframes summary-panel-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.analysis-modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:3000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.analysis-modal{background:var(--surface);width:90%;max-width:620px;max-height:90vh;box-shadow:var(--shadow-lg);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.analysis-modal-header{background:linear-gradient(135deg, var(--brand) 0%, var(--brand-dark) 100%);color:#fff;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.analysis-modal-header h2{font-size:var(--fs-lg);align-items:center;gap:10px;margin:0;display:flex}.analysis-modal-header .header-icon,.analysis-modal-header .header-emoji{background:#ffffff2e;border-radius:8px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:.95rem;display:inline-flex}.close-btn{color:#fff;cursor:pointer;background:#ffffff29;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;transition:all .15s;display:flex}.close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.coming-soon-message{text-align:center;color:var(--text-muted);padding:40px 25px}.coming-soon-message h3{color:var(--text);font-size:var(--fs-lg);margin-bottom:8px}.coming-soon-message p{font-size:var(--fs-sm)}@media (width<=768px){.market-data-container{padding:16px 14px 32px}.category-btn{font-size:var(--fs-xs);padding:8px 13px}.date-controls{gap:10px}.date-controls select{min-width:140px;font-size:var(--fs-xs)}.analysis-icon-btn,.download-icon-btn,.download-all-icon-btn{width:38px;height:38px}.data-table th,.data-table td{padding:8px 11px}}@media (width<=480px){.data-table td{white-space:normal;line-height:1.3}.analysis-modal-header h2{font-size:var(--fs-md)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100%}body{background-color:var(--bg,#f4f6fb);font-family:var(--font-sans,"Inter", Arial, sans-serif)}nav{background-color:var(--surface,#fff);padding:1rem}nav ul{gap:1rem;list-style:none;display:flex}nav ul li a{color:var(--brand,#074ca7);border-radius:6px;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s}nav ul li a:hover{background-color:#074ca714}
