*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f1117;--surface:#1a1d27;--surface2:#222636;--border:#2e3347;--text:#e2e8f0;--text-muted:#64748b;--green:#22c55e;--red:#ef4444;--blue:#3b82f6;--accent:#6366f1;--radius:8px;--font-mono:"JetBrains Mono", "Fira Code", monospace}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.6}.app{max-width:1400px;margin:0 auto;padding:1.5rem}.dashboard,.manage-page{flex-direction:column;gap:2rem;display:flex}.dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dash-header h1{color:#fff;margin-bottom:.25rem;font-size:1.75rem;font-weight:700}.header-actions{align-items:center;gap:.75rem;display:flex}.section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.section h2{color:#cbd5e1;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:1rem;font-weight:600}.section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.section-header h2{margin-bottom:0}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.stat-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#191c26f2,#12141cd9);border:1px solid #ffffff0a;border-radius:20px;flex-direction:column;padding:1.75rem;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex;position:relative;overflow:hidden;box-shadow:0 10px 40px #00000040,inset 0 1px #ffffff0d}.stat-card:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#00b286,#f1972c,#008e65,#0000);width:200%;height:3px;transition:all .5s;position:absolute;top:0;left:-100%}.stat-card:hover{border-color:#00b2864d;transform:translateY(-5px);box-shadow:0 20px 50px #0006,inset 0 1px #ffffff14}.stat-card:hover:before{opacity:1;left:0}.stat-label{text-transform:uppercase;letter-spacing:.15em;color:#94a3b8;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.8rem;font-weight:600;display:flex}.stat-value{font-size:2.5rem;font-weight:800;font-family:var(--font-mono);color:#fff;letter-spacing:-.02em;text-shadow:0 4px 20px #0009;margin-bottom:.5rem;line-height:1}.stat-gain{font-size:1.15rem;font-weight:600;font-family:var(--font-mono);align-items:center;gap:.35rem;margin-top:.25rem;display:inline-flex}.stat-pct{opacity:.8;margin-left:.25rem;font-size:.9rem}.stat-sub{color:var(--text-muted);margin-top:.4rem;font-size:.8rem}.stat-splits{border-top:1px solid #ffffff0d;flex-direction:column;gap:.75rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}.stat-split-row{background:#0003;border-radius:8px;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.top-movers-banner{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#191c26b3,#12141c80);border:1px solid #ffffff0a;border-radius:16px;justify-content:space-between;align-items:center;margin-top:1.5rem;padding:1.25rem 2rem;display:flex;box-shadow:inset 0 1px #ffffff0d}.mover-item{flex-direction:column;gap:.35rem;display:flex}.mover-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.75rem;font-weight:600}.mover-data{align-items:center;gap:.75rem;display:flex}.mover-separator{background:#ffffff14;width:1px;height:48px}@media (width<=1024px){.top-movers-banner{flex-wrap:wrap;gap:1.5rem}}.stat-split-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.7rem}.stat-split-value{font-size:.85rem;font-weight:600;font-family:var(--font-mono)}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:.5rem .75rem;font-size:.7rem}.data-table td{vertical-align:middle;border-bottom:1px solid #1e2235;padding:.6rem .75rem}.data-table tbody tr:hover{background:#ffffff08}.data-table tfoot td{border-top:1px solid var(--border);border-bottom:none;padding-top:.75rem}.data-table .right{text-align:right}.holdings-block{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem;overflow:hidden}.holdings-block:last-child{margin-bottom:0}.holdings-header{background:var(--surface2);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.holdings-header .data-table{background:0 0}.badge{background:var(--surface2);color:#94a3b8;border:1px solid var(--border);white-space:nowrap;border-radius:4px;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.mono{font-family:var(--font-mono)}.muted{color:var(--text-muted)}.center{text-align:center}.ticker{font-family:var(--font-mono);color:#93c5fd;font-weight:700}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:.5rem 1rem;font-size:13px;font-weight:600;transition:opacity .15s}.btn-primary:hover{opacity:.85}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:.5rem 1rem;font-size:13px;font-weight:500;transition:background .15s}.btn-secondary:hover{background:#2d3250}.btn-edit-sm{color:#6366f1;cursor:pointer;opacity:.7;background:0 0;border:1px solid #6366f1;border-radius:4px;padding:.2rem .6rem;font-size:11px;transition:opacity .15s}.btn-edit-sm:hover{opacity:1}.btn-danger-sm{color:var(--red);border:1px solid var(--red);cursor:pointer;opacity:.7;background:0 0;border-radius:4px;padding:.2rem .6rem;font-size:11px;transition:opacity .15s}.btn-danger-sm:hover{opacity:1}.form-card{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:1rem;max-width:540px;margin-bottom:1.5rem;padding:1.5rem;display:flex}.form-card h3{color:#fff;font-size:1rem;font-weight:600}label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:.35rem;font-size:12px;font-weight:500;display:flex}input,select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;outline:none;padding:.5rem .75rem;font-size:14px;transition:border-color .15s}input:focus,select:focus{border-color:var(--accent)}input::placeholder{color:var(--text-muted)}select option{background:var(--surface)}.form-actions{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.price-preview{color:var(--green);background:#22c55e14;border:1px solid #22c55e33;border-radius:6px;padding:.5rem .75rem;font-size:13px}.loading{color:var(--text-muted);text-align:center;padding:3rem}.error-msg{color:var(--red);background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;padding:.75rem 1rem;font-size:13px}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(480px,1fr));gap:1.5rem;display:grid}.chart-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.chart-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.25rem;font-size:.75rem}.chart-total{font-size:1.5rem;font-weight:700;font-family:var(--font-mono);color:#fff;margin-bottom:1rem}.chart-table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:12px}.chart-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:.3rem .5rem;font-size:.65rem}.chart-table td{border-bottom:1px solid #1e2235;padding:.35rem .5rem}.chart-table .right{text-align:right}.sim-config-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.sim-config-col{flex-direction:column;gap:.75rem;display:flex}.sim-assumptions{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:.25rem;display:grid}.sim-assumption-row{border-bottom:1px solid #1e2235;justify-content:space-between;align-items:center;gap:1rem;padding:.35rem 0;font-size:13px;display:flex}
