*{transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}:root{--bg: #f4f6fb;--bg-secondary: #eef2f7;--surface: #ffffff;--surface-2: #f3f4f6;--surface-3: #e5e7eb;--text: #1f2937;--text-muted: #6b7280;--border: #d1d5db;--accent: #2563eb;--accent-soft: rgba(37, 99, 235, .15);--profit: #16a34a;--loss: #dc2626;--shadow-soft: 0 4px 12px rgba(0,0,0,.06);--shadow-strong: 0 10px 25px rgba(0,0,0,.08)}[data-theme=dark]{--bg: #0a0f1c;--surface: #0f172a;--surface-2: #111c2e;--surface-3: #162133;--text: #e6edf5;--text-muted: #8aa0b8;--border: #1f2a3d;--accent: #3b82f6;--profit: #22c55e;--loss: #ef4444;--shadow-soft: 0 4px 12px rgba(0, 0, 0, .35);--shadow-strong: 0 10px 30px rgba(0, 0, 0, .6);--glow-accent: 0 0 20px rgba(59,130,246,.25)}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Arial,sans-serif}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.navbar{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,var(--surface),var(--surface-2));color:var(--text);padding:.7rem 1.5rem;height:64px;position:fixed;top:0;left:0;right:0;z-index:1000;box-sizing:border-box;box-shadow:var(--shadow);border-bottom:1px solid var(--border)}.sidebar-menu li{list-style:none}.navbar-left h1{margin:0;font-size:22px;font-weight:700;background:linear-gradient(90deg,#ef4444,#f59e0b);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;cursor:default}.search-box{width:65%;max-width:720px;min-width:220px;flex:1;background:var(--surface);border:1px solid var(--border);padding:.5rem .8rem;font-size:.95rem;border-radius:28px;color:var(--text);transition:all .3s ease}.search-box::placeholder{color:var(--text-muted)}.search-box:focus{border-color:var(--accent);box-shadow:0 0 0 3px #60a5fa33;background:var(--surface)}.search-box:disabled{background:#e5e7eb;cursor:not-allowed}button:disabled{opacity:.5;cursor:not-allowed}.navbar-search button{background-color:#2563eb;border:none;color:#fff;padding:6px 12px;border-radius:20px;margin-left:6px;cursor:pointer;transition:background .3s ease,transform .2s ease}.navbar-search button:hover{background-color:#1d4ed8;transform:scale(1.05)}.theme-toggle{margin-right:10px}.navbar-right .theme-toggle,.navbar-right .icon1{font-size:1.3rem;cursor:pointer;transition:transform .2s ease,color .3s ease}.navbar-right .theme-toggle:hover,.navbar-right .icon1:hover{transform:scale(1.15);color:#38bdf8}.sidebar{position:fixed;top:64px;left:0;bottom:0;width:60px;padding:20px 10px;box-sizing:border-box;background:linear-gradient(180deg,var(--surface),var(--surface-2));color:var(--text);border-right:1px solid var(--border);box-shadow:var(--shadow);overflow-x:hidden;overflow-y:hidden;z-index:900;transition:width .3s ease,padding .3s ease,background .3s ease,color .3s ease}.sidebar.active{width:220px;padding:20px 18px;overflow-y:auto}.sidebar.active::-webkit-scrollbar{width:0px;transition:width .3s ease}.sidebar.active:hover::-webkit-scrollbar{width:6px}.sidebar.active:hover::-webkit-scrollbar-track{background:transparent}.sidebar.active:hover::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:10px;transition:background .3s ease}.sidebar.active:hover::-webkit-scrollbar-thumb:hover{background:#ffffff73}.sidebar.active{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.sidebar-menu a,.sidebar-menu button{text-decoration:none;background:none;color:var(--text);padding:10px 12px;border-radius:10px;font-size:1rem;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .25s ease;white-space:nowrap;overflow:hidden;position:relative;width:100%;margin-left:0}.sidebar-menu a:hover,.sidebar-menu button:hover{background:color-mix(in srgb,var(--accent) 15%,transparent);box-shadow:inset 2px 0 0 var(--accent)}.sidebar-menu a:after,.sidebar-menu button:after{content:"";position:absolute;left:0;top:0;height:100%;width:0;background:#3b82f633;transition:width .3s ease;z-index:-1}.sidebar-menu a:hover:after,.sidebar-menu button:hover:after{width:100%}.sidebar .icon1{font-size:18px;min-width:24px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.sidebar-menu a:hover .icon1,.sidebar-menu button:hover .icon1{color:#3b82f6;transform:scale(1.2)}.toggle-btn{position:sticky;padding:10px;cursor:pointer;font-size:1.4rem;margin-bottom:15px;border-radius:6px;background:color-mix(in srgb,var(--text) 8%,transparent);transition:background .3s ease;z-index:10}.toggle-btn:hover{background:color-mix(in srgb,var(--text) 14%,transparent)}.link-text{display:none;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.sidebar.active .link-text{display:inline;opacity:1;visibility:visible}.sidebar .icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem}.sidebar:not(.active) .sidebar-menu a,.sidebar:not(.active) .sidebar-menu button{justify-content:center;align-items:center;gap:20px;padding:10px 0;width:100%}@media (max-width:1000px){.sidebar{width:64px;padding:12px}.main-content{margin-left:64px;padding-top:64px}.search-box{width:70%;max-width:420px;min-width:120px}}@media (max-width:640px){.navbar-search{display:none}.navbar-search .navbar-left h1{font-size:16px}}.sidebar-menu{margin-top:20px;padding-left:0}.toggle-btn{margin-left:0}.sidebar:not(.active) .user-name{display:none;opacity:0;visibility:hidden}.sidebar-menu:not(.active) .icon1:hover{color:#3b82f6;transform:scale(1.2);z-index:-1}.main-content{margin-left:60px;padding-top:64px;padding-left:24px;padding-right:24px;box-sizing:border-box;min-height:100vh-64px;background:#fff;transition:margin-left .3s ease}.sidebar.active~.main-content{margin-left:220px}.input-stocksymbol{padding:12px;border-radius:10px;font-size:15px;width:60%;margin-right:10px;border:1px solid #ccc;transition:border-color .3s ease}.input-stocksymbol:focus{outline:none;border-color:#07c;box-shadow:0 0 5px #0077d580}.stocksymbol-btn{padding:10px 12px;background-color:#07c;border-radius:10px;color:#fff;border:none}.stocksymbol-btn:hover{background-color:#005f03}.suggestion-list{list-style:none;padding:0;margin:10px 0 0;background:#f8f8f8;border:1px solid #ccc;border-radius:5px;max-height:150px;overflow-y:auto;width:65%;position:absolute;z-index:1000}.search-container{position:relative;align-items:center;display:flex}.search-container:hover{border-color:#2428dc;box-shadow:0 0 #2b2dca80}.light{background-color:#fff;color:#1f2937}.dark{background-color:#1f2937;color:#f9fafb}.nav-links{list-style:none;display:flex;gap:1.5rem;padding:0;margin:0}.nav-links li a{color:#333;font-weight:500;text-decoration:none}.nav-links li a:hover{color:coral}.search-box{padding:8px 12px 8px 32px;border-radius:20px;border:1px solid #d1d2db;outline:none;transition:border-color .2s}.search-icons{position:relative;top:50%;left:35px;transform:translate(-50%);color:#6b7280}.user-name{color:var(--text)}.search-card{max-width:420px;margin:2rem auto;padding:2rem;border-radius:16px;background:var(--surface);color:var(--text);box-shadow:var(--shadow);transition:all .3s ease}.searchstock-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.searchstock-symbol{color:var(--text-muted);font-weight:400;margin-left:6px}.searchstock-price{font-size:2.4rem;font-weight:700;margin:.5rem 0 1rem}.searchstock-change{display:flex;align-items:center;gap:6px;font-weight:600;margin-bottom:1rem}.searchstock-positive{color:var(--profit)}.searchstock-negative{color:var(--loss)}.searchstock-updated{font-size:.85rem;color:var(--text-muted);display:flex;align-items:center;gap:6px}.market-badge{margin-right:12px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px}.market-badge.open{background:#00c8001a;color:#00c853}.market-badge.closed{background:#ff00001a;color:#ff5252}.navbar-right{display:flex;align-items:center;gap:14px}.market-status,.connection-status{font-size:12px;font-weight:600;padding:5px 12px;border-radius:20px;white-space:nowrap}.market-status.open{background:#00c80026;color:#00e676}.market-status.closed{background:#ff000026;color:#ff5252}.connection-status.live{background:#0096ff26;color:#40c4ff}.connection-status.offline{background:#ff646426;color:#ff8a80}.sidebar-item{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer;transition:.2s ease;border-radius:8px}.sidebar-divider{margin:16px 0;height:1px;background:#ffffff14}.user-welcome{display:flex;align-items:center;gap:8px;padding:10px 12px}.user-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portfolio-page1{padding:2rem;background-color:var(--bg);min-height:100vh;font-family:inherit}.portfolio-header{text-align:center;margin-bottom:2rem}.portfolio-header h1{font-size:2rem;color:var(--text);margin-bottom:6px;font-weight:600}.portfolio-subtitle{font-size:.9rem;color:var(--text-muted)}.portfolio-summary{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.summary-card{display:flex;align-items:center;gap:14px;background:var(--surface);padding:1rem 1.5rem;border-radius:14px;box-shadow:var(--shadow);min-width:220px;transition:transform .2s ease}.summary-card:hover{transform:translateY(-4px)}.summary-card svg{font-size:1.2rem;color:var(--accent)}.summary-card span{font-size:.75rem;color:var(--text-muted);display:block}.summary-card strong{font-size:1.1rem;color:var(--text)}.dashboard-actions{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.portfolio-card{background:var(--surface);border-radius:16px;padding:1.2rem;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease;border:1px solid var(--border)}.portfolio-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.card-header{display:flex;justify-content:space-between;align-items:flex-start}.company-name{margin:0;font-size:1rem;font-weight:600;color:var(--text)}.stock-symbol{font-size:.8rem;color:var(--text-muted)}.stock-info:hover .company-name{color:var(--accent)}.delete-btn-portfolio{background:transparent;border:none;color:var(--loss);cursor:pointer;font-size:1rem;transition:transform .2s ease}.delete-btn-portfolio:hover{transform:scale(1.15)}.price-section{margin-top:12px;display:flex;justify-content:space-between;align-items:center}.current-price{font-size:1.3rem;font-weight:600;color:var(--text)}.price-change{font-size:.9rem;display:flex;align-items:center;gap:4px}.metrics-grid{margin-top:14px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.metrics-grid span{font-size:.75rem;color:var(--text-muted);display:block}.metrics-grid strong{font-size:.95rem;color:var(--text)}.profit-section{margin-top:16px;font-weight:600;font-size:1rem;display:flex;align-items:center;gap:6px}.stock-chart{background:var(--surface);margin-top:2rem;padding:1.5rem;border-radius:14px;box-shadow:var(--shadow);border:1px solid var(--border)}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.chart-header h3{color:var(--text)}.close-chart-btn{background:transparent;border:none;cursor:pointer;color:var(--text-muted);font-size:1.2rem}.close-chart-btn:hover{color:var(--loss)}.loading-container{text-align:center;margin-top:2rem;color:var(--text-muted)}.profit{color:var(--profit)}.loss{color:var(--loss)}.dashboard-container{max-width:1200px;margin:0 auto;padding:30px 20px}.dashboard header{background:#fff;padding:20px;border-radius:12px;margin-bottom:20px;box-shadow:0 2px 8px #0000000d}.dashboard-actions{display:flex;gap:12px;margin:20px 0}.primary-btn{background:#1e88e5;color:#fff;border:none;padding:10px 18px;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s ease}.primary-btn:hover{background:#1565c0}.secondary-btn{background:#f5f5f5;color:#333;border:1px solid #ccc;padding:10px 18px;border-radius:6px;font-weight:600;cursor:pointer}.secondary-btn:disabled{opacity:.6;cursor:not-allowed}.empty-portfolio{text-align:center;padding:60px 20px;border:2px dashed #ddd;border-radius:12px;margin-top:40px;background:#fafafa}.empty-portfolio h2{margin-bottom:10px;font-size:22px}.empty-portfolio p{color:#666;margin-bottom:20px}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:24px;border-radius:10px;width:100%;max-width:420px;position:relative;box-shadow:0 10px 30px #00000040;animation:modalFade .25s ease}.modal-close{position:absolute;top:10px;right:12px;background:none;border:none;font-size:22px;cursor:pointer;color:#555}@keyframes modalFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.primary-btn{background:#2ecc71;color:#fff;border:none;padding:.6rem 1rem;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s ease}.primary-btn:hover{background:#27ae60}.sell-btn{background:#e74c3c;color:#fff;border:none;padding:.4rem .8rem;border-radius:6px;font-size:.8rem;cursor:pointer;transition:background .2s ease}.sell-btn:hover{background:#c0392b}.stock-info{cursor:pointer}.transactionHistory-container{padding:30px;max-width:1000px;margin:0 auto;font-family:Arial,sans-serif;color:var(--text)}.table-container{overflow-y:auto;max-width:90vw}.transaction-table{width:100%;border-collapse:collapse;border:1px solid var(--border);font-size:17px;background-color:var(--surface)}.transaction-table th,.transaction-table td{padding:15px 20px;text-align:center;border:1px solid var(--border);color:var(--text)}.transaction-table th,.transaction-table tr:hover{background-color:var(--surface-2)}.badge{padding:8px 14px;border-radius:8px;font-weight:700;color:#fff}.buy{background-color:var(--profit)}.sell{background-color:var(--loss)}.fade-in-table-body{animation:fadeIn .5s ease-in;opacity:1}@media (max-width:780px){.transaction-table th,td{padding:8px;font-size:12px}}.controls input[type=text]{padding:10px 25px;border:1px solid #ccc;border-radius:8px;max-width:300px;flex-grow:1}.filter-buttons button{padding:10px 20px;border:1px solid #ccc;background-color:#eee;cursor:pointer;font-weight:700;transition:background-color .3s ease}.filter-buttons button:hover{background-color:#ddd}.filter-buttons button.active{background-color:#007bff;color:#fff}.controls select{padding:6px 8px;border-radius:5px;background-color:#ccc}.pdf-btn-container{display:flex;gap:16px;margin-top:20px;align-items:center;margin-left:480px}.pdf-btn-container button{padding:15px 20px;background-color:#00ccb4;border-radius:10px;color:#fff;border:none;cursor:pointer;font-weight:500;display:flex;gap:10px}button:active{transform:scale(.97)}.download-pdf-btn:hover{box-shadow:0 4px 12px #00c9a766}.print-btn{background-color:#e53935}.print-btn:hover{box-shadow:0 4px 12px #e5393566}.controls{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;align-items:center;justify-content:space-between}.controls input[type=text]{padding:10px 25px;border:1px solid var(--border);border-radius:8px;max-width:300px;flex-grow:1;background-color:var(--surface-2);color:var(--text)}.filter-buttons{display:flex;gap:10px}.filter-buttons button{padding:10px 20px;border:1px solid var(--border);background-color:var(--surface);color:var(--text);font-weight:700}.filter-buttons button.active{background-color:var(--accent);color:#fff}.controls select{padding:6px 8px;border-radius:5px;background-color:var(--surface);border:1px solid var(--border);color:var(--text)}.pdf-btn-container{display:flex;gap:16px;margin-top:20px;justify-content:center}.pdf-btn-container button{padding:15px 20px;border-radius:10px;color:#fff;border:none;cursor:pointer;font-weight:500;display:flex;gap:10px}.download-pdf-btn{background-color:#00c9a7}.print-btn{background-color:var(--loss)}.page-title{text-align:center;margin:40px;color:var(--text)}.watchlist-panel{display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);min-width:0;height:100vh;overflow:hidden}.watchlist-panel h3{padding:20px 20px 16px;margin:0;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0;z-index:10}.search-wrapper{padding:16px 20px;position:relative;background:var(--surface);border-bottom:1px solid var(--border)}.search-input{width:100%;height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.search-input::placeholder{color:var(--text-muted);opacity:.6}.search-dropdown{position:absolute;top:64px;left:20px;right:20px;background:var(--surface);border:1px solid var(--border);border-radius:12px;max-height:300px;overflow-y:auto;z-index:100;box-shadow:var(--shadow-strong)}.search-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);transition:background .15s ease}.search-item:hover{background:var(--surface-2)}.search-item:last-child{border-bottom:none}.search-item strong{color:var(--text);font-size:13px}.add-btn{padding:6px 12px;border-radius:6px;border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease}.add-btn:hover:not(:disabled){background:var(--accent);color:#fff}.add-btn:disabled{opacity:.4;cursor:not-allowed;border-color:var(--border);color:var(--text-muted)}.watchlist-scroll{flex:1;overflow-y:auto;overflow-x:hidden}.watchlist-scroll::-webkit-scrollbar{width:6px}.watchlist-scroll::-webkit-scrollbar-track{background:transparent}.watchlist-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.watchlist-scroll::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.loading{padding:16px 20px;text-align:center;font-size:12px;color:var(--text-muted);font-weight:500}.watch-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);cursor:pointer;transition:all .2s ease;position:relative}.watch-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;transition:all .2s ease}.watch-row:hover{background:var(--surface-2)}.watch-row:hover:before{background:var(--accent);opacity:.3}.watch-row.expanded{background:var(--surface-2);box-shadow:inset 0 1px 0 var(--border),inset 0 -1px 0 var(--border)}.watch-row.expanded:before{background:var(--accent);opacity:1}.drag-handle{color:var(--text-muted);font-size:16px;cursor:grab;-webkit-user-select:none;user-select:none;opacity:.4;transition:opacity .2s ease;display:flex;align-items:center;justify-content:center;width:20px;height:20px}.drag-handle:active{cursor:grabbing}.watch-row:hover .drag-handle{opacity:.8}.row-left{display:flex;flex-direction:column;gap:4px;min-width:0}.symbol{font-weight:700;font-size:14px;color:var(--text);letter-spacing:.3px}.company{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}.row-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.price{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-weight:600;font-size:14px;color:var(--text);min-width:80px;text-align:right}.positive,.negative{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-weight:600;font-size:12px;padding:4px 8px;border-radius:6px;min-width:65px;text-align:center}.positive{color:var(--profit);background:#22c55e1a}.negative{color:var(--loss);background:#ef44441a}[data-theme=dark] .positive{background:#22c55e26}[data-theme=dark] .negative{background:#ef444426}.remove-btn{background:transparent;border:none;cursor:pointer;color:var(--text-muted);font-size:16px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;opacity:0;transition:all .2s ease}.watch-row:hover .remove-btn{opacity:1}.remove-btn:hover{background:#ef44441a;color:var(--loss)}.group-section{padding:16px 20px 20px;border-top:1px solid var(--border);background:var(--surface)}.group-section h4{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--text-muted);margin:0 0 10px}.mini-row{display:flex;justify-content:space-between;padding:8px 12px;margin-bottom:4px;border-radius:6px;font-size:12px;font-weight:600;font-family:SF Mono,Monaco,monospace;transition:background .15s ease}.mini-row:hover{background:var(--surface-2)}.mini-row.positive{color:var(--profit);background:#22c55e14}.mini-row.negative{color:var(--loss);background:#ef444414}.modal-backdrop{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;min-width:320px;box-shadow:var(--shadow-strong)}.modal p{margin:0 0 20px;font-size:14px;color:var(--text)}.modal strong{color:var(--accent)}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-actions button{padding:10px 20px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-actions button:hover{background:var(--surface-3)}.modal-actions button.danger{background:var(--loss);border-color:var(--loss);color:#fff}.modal-actions button.danger:hover{background:#b91c1c;border-color:#b91c1c}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 20px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-strong);font-size:13px;font-weight:500;color:var(--text);z-index:1000}.toast button{padding:6px 14px;border-radius:6px;border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.toast button:hover{background:var(--accent);color:#fff}@media (max-width: 768px){.watchlist-panel{border-right:none;border-bottom:1px solid var(--border)}.watch-row{grid-template-columns:24px 1fr auto;gap:8px;padding:12px 16px}.price{font-size:13px;min-width:70px}.positive,.negative{font-size:11px;min-width:55px}}.auth-login-page{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:2rem;position:relative;overflow:hidden;background:var(--bg)}.auth-login-page:before{content:"";position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(79,70,229,.25),transparent 60%);top:-200px;right:-200px;z-index:0}.auth-login-card{width:100%;max-width:420px;padding:2.4rem;border-radius:20px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0f;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 40px #0000004d,0 0 80px #4f46e526;position:relative;z-index:1;animation:authCardFade .4s ease}.auth-login-banner{padding:.8rem 1rem;border-radius:14px;font-size:.9rem;text-align:center;margin-bottom:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:authSlideDown .4s ease}.auth-login-banner--manual{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.auth-login-banner--expired{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.auth-login-form{display:flex;flex-direction:column;gap:1rem;width:100%}.auth-login-form input{width:100%;box-sizing:border-box;padding:.9rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);box-shadow:inset 0 1px 2px #0000000a;font-size:.95rem;transition:all .25s ease}.auth-login-form input:focus{border-color:var(--accent);box-shadow:0 0 0 4px #4f46e540;background:#ffffff14;outline:none}.auth-login-form button{margin-top:.8rem;padding:.95rem;border-radius:14px;border:none;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:all .25s ease}.auth-login-form button:hover{transform:translateY(-2px);box-shadow:0 10px 25px #4f46e580}.auth-login-form button:disabled{opacity:.6;cursor:not-allowed}.auth-login-links{margin-top:1.2rem;font-size:.85rem;display:flex;justify-content:space-between;color:var(--text-muted)}.auth-login-links a{color:var(--accent);text-decoration:none;transition:opacity .2s ease}.auth-login-links a:hover{opacity:.8}.auth-login-hint{font-size:.8rem;text-align:center;color:var(--text-muted)}@keyframes authCardFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes authSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.auth-login-form input:-webkit-autofill,.auth-login-form input:-webkit-autofill:hover,.auth-login-form input:-webkit-autofill:focus,.auth-login-form input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--surface-2) inset!important;-webkit-text-fill-color:var(--text)!important;border:1px solid var(--border)!important;transition:background-color 9999s ease-in-out 0s}.adduser-container{width:100%;display:flex;justify-content:center;margin-top:2rem}.adduser-form{width:100%;max-width:900px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2rem;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:end}.adduser-form input,.adduser-form select{width:100%;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.9rem;transition:all .2s ease;box-sizing:border-box}.adduser-form input:focus,.adduser-form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.adduser-form button{padding:.8rem 1rem;border-radius:12px;border:none;cursor:pointer;font-weight:600;color:#fff;background:linear-gradient(135deg,#4f46e5,#6366f1);transition:all .25s ease}.adduser-form button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #4f46e566}@media (max-width: 900px){.adduser-form{grid-template-columns:1fr}}.auth-register-page{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:2rem;position:relative;overflow:hidden;background:var(--bg)}.auth-register-page:before{content:"";position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(79,70,229,.25),transparent 60%);top:-200px;right:-200px;z-index:0}.auth-register-card{width:100%;max-width:420px;padding:2.4rem;border-radius:20px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--surface);border:1px solid var(--border);box-shadow:0 20px 40px #0000004d,0 0 80px #4f46e526;position:relative;z-index:1;animation:authRegisterFade .4s ease}.auth-register-title{font-size:1.6rem;font-weight:600;text-align:center;color:var(--text)}.auth-register-subtitle{font-size:.9rem;text-align:center;margin-bottom:1.8rem;color:var(--text-muted)}.auth-register-form{display:flex;flex-direction:column;gap:1rem}.auth-register-form input{width:100%;box-sizing:border-box;padding:.85rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);box-shadow:inset 0 1px 2px #0000000a;font-size:.95rem;transition:all .25s ease}.auth-register-form input:focus{border-color:var(--accent);box-shadow:0 0 0 4px #4f46e540;background:#ffffff14;outline:none}.auth-register-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;width:100%}.auth-register-row input{flex:1}.auth-register-terms{display:flex;justify-content:center}.auth-register-terms-label{display:inline-flex;align-items:center;gap:.6rem;font-size:.85rem;color:var(--text-muted);cursor:pointer}.auth-register-terms-label input{width:16px;height:16px;accent-color:var(--accent)}.auth-register-btn{margin-top:.8rem;padding:.95rem;border-radius:14px;border:none;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:all .25s ease}.auth-register-btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px #4f46e580}.auth-register-footer{font-size:.85rem;text-align:center;margin-top:1rem}@keyframes authRegisterFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.stock-selector{position:relative;width:100%}.stock-selector input{width:100%;padding:8px 10px;border-radius:6px}.stock-dropdown{position:absolute;width:100%;background:var(--surface);border-radius:8px;max-height:250px;overflow-y:auto;box-shadow:0 6px 20px #00000026;z-index:1000}.stock-dropdown li{padding:10px 12px;cursor:pointer;transition:background .2s ease}.stock-dropdown li:hover{background:var(--surface-2)}.selector-loading{font-size:12px;margin-top:4px;color:var(--text-muted)}.portfolio-form,.buysell-form{width:100%;max-width:500px;padding:20px;margin:20px auto;border-radius:12px;border:1px solid #ddd;background-color:#f9f9f9;box-shadow:0 0 12px #0000001a;font-family:Arial,sans-serif}.portfolio-form label,.buysell-form label{display:block;color:#444;font-weight:500;margin-top:10px;margin-bottom:10px}.portfolio-form input,.buysell-form input,.buysell-form select{width:100%;padding:10px 7px;border:1px solid #ccc;box-sizing:border-box;border-radius:10px;font-size:14px;margin-top:6px;transition:border-color .3s}.portfolio-form input:focus,.buysell-form input:focus,.buysell-form select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26;outline:none}.portfolio-form button,.buysell-form button{width:100%;padding:.75rem;background:linear-gradient(135deg,#2563eb,#1e40af);margin-top:10px;margin-bottom:10px;color:#fff;font-weight:700;border:none;border-radius:.5rem;cursor:pointer;transition:all .3s ease}.portfolio-form button:hover,.buysell-form button:hover{background:linear-gradient(135deg,#1d4ed8,#1e3a8a);transform:translateY(-1px)}.portfolio-form button:disabled,.buysell-form button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.error{color:red;font-size:13px;margin-top:-6px;margin-bottom:10px}.icon{margin-right:6px;color:#4a90e2}@media (max-width:480px){.portfolio-form,.buysell-form{margin:20px;padding:20px}}.icons-spin{animation:spin 1s linear infinite;margin-right:6px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.buysell-form{display:flex;flex-direction:column;gap:1.2rem;padding:1.5rem}.trade-title{text-align:center;font-size:1.4rem;font-weight:600}.buysell-form label{display:flex;flex-direction:column;gap:.4rem;font-weight:500}.buysell-form input,.buysell-form select{padding:.6rem .8rem;border-radius:8px;border:1px solid var(--border-color);background:var(--surface);color:var(--text);font-size:.95rem}.trade-btn{padding:.7rem;border-radius:10px;border:none;font-weight:600;cursor:pointer;transition:background .2s ease}.error{color:#e74c3c;font-size:.8rem}.trade-panel{display:flex;flex-direction:column;gap:1.3rem;padding:1.8rem}.trade-title{text-align:center;font-size:1.5rem;font-weight:600}.price-preview{background:var(--surface-2);padding:.9rem;border-radius:10px;display:flex;flex-direction:column;gap:.5rem;font-size:.95rem}.price-preview strong{margin-left:6px;font-weight:600}.locked-input{background-color:#f4f4f4;cursor:not-allowed}.trade-btn{padding:.8rem;border-radius:10px;border:none;font-weight:600;cursor:pointer;transition:background .2s ease}.trade-btn.buy-mode{background-color:#2ecc71;color:#fff}.trade-btn.buy-mode:hover{background-color:#27ae60}.trade-btn.sell-mode{background-color:#e74c3c;color:#fff}.trade-btn.sell-mode:hover{background-color:#c0392b}.sparkline-container{padding:1rem;border-radius:8px;background-color:#f0fdf4;box-shadow:0 4px 10px #00000014;transition:background-color .3s ease;font-family:Arial,sans-serif;text-align:center;margin-left:20px}.sparkline-container.up{background-color:#e8f5e9;color:#2e7d32}.sparkline-container.down{background-color:#ffebee}.liveprice-container{font-size:14px;font-weight:700;margin-bottom:6px;letter-spacing:1px}.liveprice-container{font-size:18px;font-weight:700}.price-changes{font-size:13px;margin-left:6px;opacity:.8;color:green}.sparkline-container .down .price-changes{color:red}.chart-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:var(--shadow-soft);transition:background .25s ease,border .25s ease}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;flex-wrap:wrap;gap:10px}.left-controls,.center-controls,.right-controls{display:flex;align-items:center;gap:10px}.range-selector button{background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:8px;font-size:12px;cursor:pointer;transition:all .2s ease}.range-selector button:hover{background:var(--surface-3)}.range-selector .active{background:var(--accent);color:#fff;border-color:var(--accent)}.chart-type-select{background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:8px;font-size:12px}.chart-header button{background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:8px;cursor:pointer;transition:all .2s ease}.chart-header button:hover{background:var(--surface-3)}.icons-spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.live-card{width:100%;border-radius:18px;padding:22px;background:#0b1220;color:#e2e8f0;box-shadow:0 0 0 1px #ffffff0a,0 20px 50px #000000b3;display:flex;flex-direction:column;gap:14px}.live-header{display:flex;justify-content:space-between;align-items:center}.symbol-block{display:flex;align-items:center;gap:8px}.ticker{font-size:18px;font-weight:700;letter-spacing:1px}.trend.up{color:#00e396}.trend.down{color:#ff4d4f}.mode-toggle{background:#ffffff0d;border:none;padding:6px 10px;border-radius:8px;color:#fff;cursor:pointer}.live-price{font-size:32px;font-weight:700;display:flex;align-items:baseline;gap:10px}.live-price.up{color:#00e396}.live-price.down{color:#ff4d4f}.live-change{font-size:14px;opacity:.8}.market-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;font-size:13px}.market-grid div{display:flex;justify-content:space-between;background:#ffffff08;padding:6px 10px;border-radius:8px}.control-row{display:flex;justify-content:space-between;align-items:center}.range-selector{display:flex;gap:6px}.range-selector button{background:transparent;border:1px solid rgba(255,255,255,.08);padding:5px 10px;border-radius:6px;font-size:12px;color:#94a3b8;cursor:pointer}.range-selector button.active{background:#2563eb;color:#fff;border:none}.chart-switch button{background:transparent;border:1px solid rgba(255,255,255,.08);padding:5px 10px;border-radius:6px;font-size:12px;color:#94a3b8;cursor:pointer}.chart-switch button.active{background:#00e396;color:#000;border:none}.chart-area{margin-top:10px}.live-footer{font-size:11px;opacity:.5;text-align:right}.simulate-btn{background:#2563eb;color:#fff;padding:8px 16px;border-radius:10px;border:none;font-weight:500;transition:.2s ease}.simulate-btn:hover{background:#1d4ed8}.back-btn{background:#f3f4f6;padding:8px 14px;border-radius:10px;border:none}.back-btn:hover{background-color:#d1d5db}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.card{background:#fff;padding:15px;border-radius:10px;box-shadow:0 2px 5px #0000001a}.card.positive{border-left:5px solid green}.card.negative{border-left:5px solid red}.stock-row{display:flex;justify-content:space-between;align-items:center;margin:6px 0}.card{background:#fff;border-radius:12px;padding:16px;margin:16px 0;box-shadow:0 4px 10px #0000001a}.card-header{display:flex;justify-content:space-between;align-items:center}.tabs{display:flex;gap:8px}.tab-btn{padding:6px 12px;border:none;background:#eee;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px}.tab-btn.active{background:#00d4ff;color:#fff;font-weight:700}.table-container{overflow-x:auto;margin-top:12px}table{width:100%;border-collapse:collapse;text-align:left}thead{background:#f5f5f5}th,td{padding:10px;border-bottom:1px solid #ddd}.badge{background:#00d4ff;color:#fff;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:700;display:inline-block}.admin-dashboard{padding:20px;font-family:Arial,sans-serif}h1{text-align:center;color:#2c3e50}.summary{font-size:18px;margin-bottom:20px;color:#27ae60;font-weight:700}.users-table{width:100%;border-collapse:collapse;margin:0 auto;box-shadow:0 2px 8px #0000001a}.users-table th,.users-table td{border:1px solid #ddd;padding:12px;text-align:center}.users-table th{background-color:#34495e;color:#fff}.users-table tr:nth-child(2n){background-color:#f2f2f2}.users-table tr:hover{background-color:#eaf2f8}.delete-btn{background-color:#e74c3c;border:none;color:#fff;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:14px}.delete-btn:hover{background-color:#c0392b}.role-select{padding:6px;border-radius:5px;border:1px solid #ccc}.portfolio-btn{background-color:#2980b9;border:none;color:#fff;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13px}.portfolio-btn:hover{background-color:#1f618d}.loading{text-align:center;font-size:18px}.admin-trade-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin:24px}.card{background:#1e1e2f;color:#fff;border-radius:14px;padding:18px;box-shadow:0 6px 15px #00000040;transition:all .3s ease-in-out}.card:hover{transform:translateY(-6px);box-shadow:0 10px 20px #00000059}.card-header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.card-header h2{font-size:1.25rem;font-weight:600;color:#00d4ff}.icon{background:#292944;padding:8px;border-radius:50%;color:#fc0;font-size:1.2rem}ul{list-style:none;margin:0;padding:0}ul li{display:flex;flex-direction:column;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}ul li:last-child{border-bottom:none}.stock-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.badge{background:#292944;padding:4px 10px;border-radius:8px;font-size:.85rem}.badge.success{background:#00c853;color:#fff}table{width:100%;border-collapse:collapse;font-size:.9rem}table th,table td{padding:8px;text-align:left}table thead{background:#ffffff0d}.timeline{position:relative;margin-top:10px}.timeline-item{display:flex;align-items:flex-start;margin-bottom:16px;position:relative}.timeline-dot{width:12px;height:12px;background:#00c853;border-radius:50%;margin-right:12px;margin-top:5px;flex-shrink:0}.timeline-content{background:#292944;padding:10px 14px;border-radius:8px;width:100%}.timeline-content p{margin:0;font-size:.9rem}.timeline-content small{color:#aaa;font-size:.75rem}.auth-container{min-height:100vh;background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);display:flex;align-items:center;justify-content:center;padding:1rem}.auth-card{background:#fff;width:100%;max-width:380px;padding:2rem;border-radius:14px;box-shadow:0 20px 40px #00000026;animation:fadeUp .6s ease}.auth-card h2{text-align:center;margin-bottom:.4rem;font-weight:600;color:#222}.auth-subtitle{text-align:center;font-size:.9rem;color:#666;margin-bottom:1.5rem;line-height:1.5}.auth-card input{width:100%;padding:.75rem;border-radius:8px;border:1px solid #ddd;font-size:.95rem;margin-bottom:1rem;transition:border .2s ease;box-sizing:border-box}.auth-card input:focus{outline:none;border-color:#2c5364}.auth-card button{width:100%;padding:.75rem;border-radius:8px;border:none;background:linear-gradient(135deg,#203a43,#2c5364);color:#fff;font-size:.95rem;font-weight:500;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.auth-card button:hover{transform:translateY(-1px);opacity:.95}.auth-card button:disabled{opacity:.7;cursor:not-allowed;transform:none}.email-sent-confirmation{text-align:center;animation:fadeUp .6s ease}.email-sent-confirmation h2{color:#222;margin-bottom:.5rem}.email-sent-confirmation .auth-subtitle{margin-bottom:1rem}.masked-email{font-size:1.05rem;font-weight:600;color:#2c5364;margin:1.5rem 0;padding:1rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:10px;border:1px solid #bae6fd;letter-spacing:.5px;word-break:break-all}.email-sent-confirmation:before{content:"✓";display:inline-block;width:60px;height:60px;line-height:60px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:2rem;font-weight:700;margin-bottom:1rem;animation:scaleIn .5s ease}.back-button{width:100%;margin-top:1.5rem;padding:.75rem;background:transparent;color:#2c5364;border:2px solid #2c5364;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.back-button:hover{background:linear-gradient(135deg,#203a43,#2c5364);color:#fff;transform:translateY(-1px)}.email-sent-confirmation p:last-of-type{font-size:.85rem;color:#888;margin-top:1rem;line-height:1.6}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@media (max-width: 480px){.auth-card{padding:1.5rem}.masked-email{font-size:.95rem;padding:.85rem}.email-sent-confirmation:before{width:50px;height:50px;line-height:50px;font-size:1.5rem}}.modal-content .portfolio-form,.modal-content .buysell-form{max-width:100%;margin:0;padding:0;border:none;background:transparent;box-shadow:none}.modal-content .stock-selector-container{margin:0;padding:0;border:none;background:transparent;box-shadow:none}.modal-content .portfolio-form label{display:flex;flex-direction:column;gap:6px}.modal-content .portfolio-form input,.modal-content .portfolio-form select,.modal-content .dropdown,.modal-content .manual-input{height:42px;font-size:14px}.hero{min-height:75vh;display:flex;align-items:center;padding:0 12%;background:linear-gradient(180deg,var(--hero-gradient-start),var(--hero-gradient-end));color:var(--text)}.hero-content{max-width:720px}.hero h1{font-size:3.5rem;font-weight:700}.hero h1 span{color:var(--accent)}.hero p{margin-top:16px;font-size:1.15rem;color:var(--text-muted)}.hero-actions{margin-top:32px;display:flex;gap:16px}.cta-btn{background:var(--accent);color:#fff;border:none;padding:14px 28px;font-weight:600;border-radius:6px;cursor:pointer}.secondary-btn-hero{background:transparent;color:var(--text);border:1px solid var(--border);padding:14px 28px;border-radius:6px;cursor:pointer}.hero-metrics{display:flex;gap:3rem;margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.08);flex-wrap:wrap}.metric{display:flex;flex-direction:column;gap:.3rem}.metric-value{font-size:1.6rem;font-weight:600;color:#4f8cff;letter-spacing:.5px}.metric-label{font-size:.85rem;color:#9aa4b2;text-transform:uppercase;letter-spacing:1px}.features{padding:100px 12%;background:var(--bg);color:var(--text)}.features h2{font-size:2.2rem;margin-bottom:40px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px}.feature-card{background:var(--surface);padding:32px;border-radius:10px;border:1px solid var(--border);box-shadow:var(--shadow);transition:transform .2s ease,border-color .2s ease}.feature-card:hover{transform:translateY(-6px);border-color:var(--accent)}.feature-icon{font-size:2rem;margin-bottom:16px;color:var(--accent)}.empty-state{text-align:center;padding:3rem;color:#666}.empty-title{font-size:1.4rem;margin-bottom:.5rem}.empty-description{margin-bottom:1rem}.empty-action a{color:#007bff;font-weight:600}body,.main-content,.page,.container,section{background-color:var(--bg);color:var(--text)}div[class*=card],div[class*=modal],div[class*=form],form{background-color:var(--surface);color:var(--text)}input,select,textarea{background-color:var(--surface-2);color:var(--text);border:1px solid var(--border)}input::placeholder,textarea::placeholder{color:var(--text-muted)}table,thead,tbody,tr,td,th{background-color:var(--surface);color:var(--text);border-color:var(--border)}.trade-header-info{display:flex;align-items:center;gap:24px}.price-block{display:flex;flex-direction:column}.live-price{font-size:1.6rem;font-weight:700}.price-change{font-size:.9rem;font-weight:500}.price-change.positive{color:var(--profit)}.price-change.negative{color:var(--loss)}.terminal-order-section{display:flex;flex-direction:column;gap:1rem}.terminal-orderbook{background:#111;padding:1rem;border-radius:8px}.terminal-body{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.liveprice-wrapper{margin-top:10px;background:var(--surface-2);padding:10px;border-radius:8px}.stockcard-container{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:var(--shadow);transition:.2s ease}.stockcard-container:hover{transform:translateY(-4px);border-color:var(--accent)}.trade-btn{background:#2563eb;border:none;padding:6px 14px;border-radius:6px;color:#fff;font-weight:600;cursor:pointer}.trade-btn:hover{background:#1d4ed8}.tradeDesk-root{min-height:100vh;padding:24px;background:var(--bg)}.tradeDesk-container{max-width:1600px;margin:0 auto}.tradeDesk-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.tradeDesk-grid{display:grid;grid-template-columns:2.2fr 1fr;gap:24px}@media (max-width: 1100px){.tradeDesk-grid{grid-template-columns:1fr}}.tradeDesk-left,.tradeDesk-right{display:flex;flex-direction:column;gap:24px}.tradeDesk-card,.tradeDesk-chart,.tradeDesk-tradePanel,.tradeDesk-orderPanel{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease}.tradeDesk-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-strong)}.tradeDesk-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.tradeDesk-card span{font-size:13px;color:var(--text-muted);display:block;margin-bottom:6px}.tradeDesk-card strong{font-size:20px;font-weight:600}.tradeDesk-card:nth-child(1){border-left:4px solid var(--accent)}.tradeDesk-card:nth-child(2){border-left:4px solid var(--loss)}.tradeDesk-card:nth-child(3){border-left:4px solid var(--profit)}.tradeDesk-card:nth-child(4){border-left:4px solid #a855f7}.tradeDesk-chart{padding:24px}.tradeDesk-footer{margin-top:28px;padding:18px 20px;background:var(--surface);border:1px solid var(--border);border-radius:14px;display:flex;justify-content:space-between;font-size:14px}.td-trade-container{background:var(--surface-2);border:1px solid var(--border);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow)}.td-trade-toggle-group{display:flex;gap:12px}.td-trade-toggle{flex:1;padding:9px 0;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-weight:500;transition:all .25s ease}.td-trade-toggle:hover{background:#ffffff0d}.td-trade-toggle.active{background:var(--accent);color:#fff;border-color:var(--accent)}.td-trade-buy.active{background:var(--profit);border-color:var(--profit);box-shadow:0 0 12px #00c85359}.td-trade-sell.active{background:var(--loss);border-color:var(--loss);box-shadow:0 0 12px #ff174459}.td-trade-input{padding:11px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;outline:none;transition:border .2s ease,box-shadow .2s ease}.td-trade-input::placeholder{color:#fff6}.td-trade-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #008cff40}.td-trade-submit{margin-top:6px;padding:12px;border-radius:12px;border:none;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:all .25s ease}.td-trade-submit.buy{background:linear-gradient(90deg,#00c853,#00e676);color:#fff}.td-trade-submit.buy:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00c85366}.td-trade-submit.sell{background:linear-gradient(90deg,#d50000,#ff1744);color:#fff}.td-trade-submit.sell:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ff174466}.terminal-container{background:#0f172a;min-height:100vh;padding:30px;color:#f1f5f9}.terminal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.live-indicator{background:#00c853;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:700}.terminal-grid{display:grid;grid-template-columns:2fr 1fr;gap:25px}.terminal-main,.terminal-side{display:flex;flex-direction:column;gap:25px}.terminal-card{background:#1e293bb3;border-radius:16px;padding:20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);transition:.3s}.terminal-card:hover{box-shadow:0 0 25px #00d4ff26}.large{min-height:350px}.card-title{font-size:1rem;margin-bottom:15px;display:flex;gap:10px;align-items:center;color:#00d4ff}.terminal-table{width:100%;border-collapse:collapse;font-size:13px}.terminal-table th{text-transform:uppercase;font-size:11px;color:#94a3b8;padding-bottom:10px}.terminal-table td{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.trade-badge{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600}.trade-badge.buy{background:#00c85326;color:#00c853}.trade-badge.sell{background:#ff525226;color:#ff5252}.stock-row{margin-bottom:12px}.stock-symbol{font-weight:700}.stock-count{font-size:12px;color:#94a3b8}.execution-row{display:flex;justify-content:space-between;font-size:13px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05)}
