*{box-sizing:border-box}:root{--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--primary-900:#1e3a8a;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--success-50:#f0fdf4;--success-100:#dcfce7;--success-500:#22c55e;--success-600:#16a34a;--success-700:#15803d;--danger-50:#fef2f2;--danger-100:#fee2e2;--danger-500:#ef4444;--danger-600:#dc2626;--danger-700:#b91c1c;--warning-50:#fffbeb;--warning-500:#f59e0b;--warning-600:#d97706;--warning-700:#b45309;--app-bg:var(--gray-100);--app-text:var(--gray-800);--card-bg:#fff;--card-border:var(--gray-200);--card-header-bg:var(--gray-50);--heading-text:var(--gray-900);--muted-text:var(--gray-500);--table-hover-bg:var(--primary-50);--nav-bg:#fff;--nav-border:var(--gray-200);--success-text:var(--success-700);--danger-text:var(--danger-700);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-mono:"SF Mono",Monaco,"Inconsolata","Roboto Mono","Source Code Pro",monospace;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-normal:300ms cubic-bezier(0.4,0,0.2,1)}:root[data-theme=dark]{--app-bg:var(--gray-900);--app-text:var(--gray-200);--card-bg:var(--gray-800);--card-border:var(--gray-700);--card-header-bg:#1f2937;--heading-text:var(--gray-100);--muted-text:var(--gray-400);--table-hover-bg:#2a3a52;--nav-bg:var(--gray-800);--nav-border:var(--gray-700);--success-text:#6ee7b7;--danger-text:#fda4af;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -2px #0006;--shadow-lg:0 10px 15px -3px #0006,0 4px 6px -4px #0006}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f3f4f6!important;background-color:var(--app-bg)!important;color:#1f2937!important;color:var(--app-text)!important;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-family:var(--font-sans);line-height:1.6;margin:0;padding:0;transition:background-color .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1);transition:background-color var(--transition-normal),color var(--transition-normal)}h1,h2,h3,h4,h5,h6{color:#111827;color:var(--heading-text);font-weight:700;line-height:1.25;margin-bottom:1rem;margin-bottom:var(--space-4);margin-top:0}h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}p{color:#1f2937;color:var(--app-text);margin-bottom:1rem;margin-bottom:var(--space-4)}code{background-color:#e5e7eb;background-color:var(--gray-200);border-radius:.25rem;border-radius:var(--radius-sm);font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,Source Code Pro,monospace;font-family:var(--font-mono);font-size:.9em;padding:.25rem .5rem;padding:var(--space-1) var(--space-2)}a{color:#2563eb;color:var(--primary-600);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1);transition:color var(--transition-fast)}a:hover{color:#1d4ed8;color:var(--primary-700);text-decoration:underline}:focus-visible{border-radius:.25rem;border-radius:var(--radius-sm);outline:2px solid #3b82f6;outline:2px solid var(--primary-500);outline-offset:2px}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f3f4f6;background:var(--app-bg)}::-webkit-scrollbar-thumb{background:#d1d5db;background:var(--gray-300);border:2px solid #f3f4f6;border:2px solid var(--app-bg);border-radius:.5rem;border-radius:var(--radius-lg)}::-webkit-scrollbar-thumb:hover{background:#9ca3af;background:var(--gray-400)}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#4b5563;background:var(--gray-600)}:root[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#6b7280;background:var(--gray-500)}:root[data-theme=dark] ::-webkit-scrollbar-track{background:#1f2937;background:var(--gray-800)}::selection{background-color:#bfdbfe;background-color:var(--primary-200);color:#1e3a8a;color:var(--primary-900)}.App{display:flex;flex-direction:column;min-height:100vh}.main-content{flex-grow:1;padding-bottom:var(--space-8);padding-top:calc(60px + var(--space-6))}.page-title{color:var(--heading-text);font-size:1.875rem;font-weight:700;margin-bottom:var(--space-6)}.auth-container{align-items:center;background:linear-gradient(135deg,var(--gray-800) 0,var(--gray-900) 100%);display:flex;justify-content:center;min-height:100vh;padding:var(--space-4)}.auth-card{background:var(--card-bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:420px;padding:var(--space-10);width:100%}.auth-card h2{margin-bottom:var(--space-6);text-align:center}div.card{background:var(--card-bg);border:1px solid var(--card-border)}div.card-header{background-color:var(--card-header-bg);border-bottom:1px solid var(--card-border);font-weight:600;padding:var(--space-4) var(--space-6)}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{background-color:var(--card-header-bg);border-bottom:1px solid var(--card-border);font-weight:600;padding:var(--space-4) var(--space-6)}.card-header h5{font-size:1.125rem;margin:0}.card-body{padding:var(--space-6)}.summary-cards{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:var(--space-8)}.summary-card .card-body{padding:var(--space-6);text-align:center}.summary-card .card-title{color:var(--muted-text);font-size:.875rem;font-weight:600;letter-spacing:.05em;margin-bottom:var(--space-2);text-transform:uppercase}.summary-card .value{color:var(--heading-text);font-size:2rem;font-weight:700;line-height:1.2}.summary-card .sub-value{font-size:1rem;font-weight:500}.summary-card.positive .sub-value,.summary-card.positive .value{color:var(--success-text)}.summary-card.negative .sub-value,.summary-card.negative .value{color:var(--danger-text)}.navbar.theme-aware-navbar{background-color:var(--nav-bg)!important;border-bottom:1px solid var(--nav-border)!important;transition:background-color var(--transition-normal)}.navbar.theme-aware-navbar .nav-link,.navbar.theme-aware-navbar .nav-link:focus,.navbar.theme-aware-navbar .nav-link:hover,.navbar.theme-aware-navbar .navbar-brand{color:var(--app-text)!important}.navbar.theme-aware-navbar .nav-link.active{color:var(--primary-500)!important;font-weight:600}:root[data-theme=dark] .navbar.theme-aware-navbar .nav-link.active{color:var(--primary-200)!important}.navbar.theme-aware-navbar .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}:root[data-theme=dark] .navbar.theme-aware-navbar .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.charts-section{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:1fr;margin-bottom:var(--space-8)}@media (min-width:992px){.charts-section{grid-template-columns:2fr 1fr}}.table-responsive{overflow-x:auto}.table{border-collapse:collapse;font-size:.9rem;margin:0;width:100%}.table thead th{background-color:var(--card-header-bg);border-bottom:2px solid var(--card-border);color:var(--muted-text);font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:var(--space-3) var(--space-4);text-align:left;text-transform:uppercase}.table tbody td{border-bottom:1px solid var(--card-border);padding:var(--space-4);vertical-align:middle}.table tbody tr{transition:background-color var(--transition-fast)}.table tbody tr:hover{background-color:var(--table-hover-bg)}.table tbody tr:last-child td{border-bottom:none}.table .text-end{text-align:right}.table .text-center{text-align:center}.table .fw-bold{font-weight:600}.table .fw-medium{font-weight:500}.table .text-success{color:var(--success-text)!important}.table .text-danger{color:var(--danger-text)!important}:root[data-theme=dark] .table .text-success{color:var(--success-text)!important}:root[data-theme=dark] .table .text-danger{color:var(--danger-text)!important}.table .text-muted{color:var(--muted-text)!important}.form-label{color:var(--app-text);display:block;font-size:.875rem;font-weight:500;margin-bottom:var(--space-2)}.form-control,.form-select{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);color:var(--app-text);font-size:1rem;padding:var(--space-2) var(--space-3);transition:all var(--transition-fast);width:100%}.form-control:focus,.form-select:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100);outline:none}.btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:var(--space-2);justify-content:center;padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.btn:hover{transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.7}.btn-primary{background-color:var(--primary-600);color:#fff}.btn-primary:hover{background-color:var(--primary-700);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--gray-600);color:#fff}.btn-secondary:hover{background-color:var(--gray-700)}.btn-outline-primary{background-color:initial;border-color:var(--primary-500);color:var(--primary-600)}.btn-outline-primary:hover{background-color:var(--primary-500);color:#fff}:root[data-theme=dark] .btn-outline-primary{border-color:var(--primary-200);color:var(--primary-200)}:root[data-theme=dark] .btn-outline-primary:hover{background-color:var(--primary-200);color:var(--gray-900)}.btn-outline-secondary{border-color:var(--gray-500);color:var(--gray-600)}.btn-outline-secondary:hover{background-color:var(--gray-500);color:#fff}:root[data-theme=dark] .btn-outline-secondary{border-color:var(--gray-500);color:var(--gray-300)}:root[data-theme=dark] .btn-outline-secondary:hover{background-color:var(--gray-500);color:var(--gray-900)}.btn-outline-danger{border-color:var(--danger-500);color:var(--danger-600)}.btn-outline-danger:hover{background-color:var(--danger-500);color:#fff}.skeleton{background-color:var(--gray-200);border-radius:var(--radius-md);overflow:hidden;position:relative}:root[data-theme=dark] .skeleton{background-color:var(--gray-700)}.skeleton:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-150%;position:absolute;top:0;width:150%}:root[data-theme=dark] .skeleton:after{background:linear-gradient(90deg,#0000,#ffffff14,#0000)}@keyframes shimmer{to{left:150%}}.empty-state{border:2px dashed var(--card-border)}.empty-state h5{color:var(--heading-text)}.empty-state p{color:var(--muted-text)}.alert{border-radius:var(--radius-lg);font-weight:500;margin-bottom:var(--space-6);padding:var(--space-4) var(--space-6)}.alert-danger{background-color:var(--danger-100);color:var(--danger-700)}.alert-success{background-color:var(--success-100);color:var(--success-700)}.badge{border-radius:var(--radius-full);display:inline-block;font-size:.75rem;font-weight:600;padding:var(--space-1) var(--space-3)}.bg-success{background-color:var(--success-100);color:var(--success-700)}.bg-danger{background-color:var(--danger-100);color:var(--danger-700)}.bg-info{background-color:var(--primary-100);color:var(--primary-700)}.bg-secondary{background-color:var(--gray-200)!important;color:var(--gray-700)!important}:root[data-theme=dark] .bg-secondary{background-color:var(--gray-600)!important;color:var(--gray-100)!important}.loading-spinner{animation:spin 1s linear infinite;border:4px solid var(--gray-200);border-radius:50%;border-top-color:var(--primary-600);height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.empty-state{border:2px dashed var(--gray-200);border-radius:var(--radius-lg);padding:var(--space-16) var(--space-8);text-align:center}.empty-state h5{color:var(--gray-700)}.empty-state p{color:var(--gray-500)}.analytics-container,.dashboard-container,.portfolio-container,.symbol-detail{padding-left:1rem;padding-right:1rem}@media (min-width:992px){.analytics-container,.dashboard-container,.portfolio-container,.symbol-detail{padding-left:1.5rem;padding-right:1.5rem}}.mobile-dashboard .stat-title{color:var(--muted-text);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.mobile-dashboard .stat-value{font-size:1.25rem;font-weight:700;line-height:1.2}.mobile-dashboard .asset-item{align-items:center;color:var(--app-text);display:flex;gap:1rem;justify-content:space-between;padding:.75rem 1rem;text-decoration:none;transition:background-color var(--transition-fast)}.mobile-dashboard .asset-item:hover{background-color:var(--table-hover-bg)}.mobile-dashboard .asset-info{flex:1 1;min-width:0;overflow:hidden}.mobile-dashboard .asset-info .fw-bold{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-dashboard .asset-values{flex-shrink:0;min-width:100px;text-align:right}@media (max-width:768px){.card:hover{transform:none}.page-title,.summary-card .value{font-size:1.5rem}.card-title{font-size:.75rem}.h3{font-size:1.25rem}.form-check-inline{margin-right:.5rem}.navbar .nav-link{padding:.75rem 1rem}}@media (max-width:480px){.btn-group{flex-wrap:wrap;gap:2px}.btn-group .btn{font-size:.75rem;padding:.25rem .5rem}.page-title{font-size:1.25rem}}:root[data-theme=dark] a{color:var(--primary-200)}:root[data-theme=dark] a:hover{color:var(--primary-100)}
/*# sourceMappingURL=main.d22a0f00.css.map*/