:root{--bg-base: #080b12;--bg-surface: #0e1420;--bg-elevated: #141c2e;--bg-card: #111827;--border: rgba(255, 255, 255, .07);--border-bright: rgba(99, 210, 255, .25);--accent: #00d4ff;--accent-dim: rgba(0, 212, 255, .12);--accent2: #7c3aed;--positive: #00e5a0;--negative: #ff4d6d;--text-primary: #f0f4ff;--text-secondary: #7a8aaa;--text-muted: #3d4d6a;--sidebar-w: 220px;--sidebar-w-col: 64px;--radius: 12px;--radius-sm: 8px;--font-mono: "Space Mono", monospace;--font-sans: "DM Sans", sans-serif}body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;line-height:1.5;overflow-x:hidden}.layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);min-height:100vh;background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;z-index:100;transition:width .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.layout--collapsed .sidebar__header{padding:16px 8px;justify-content:center;flex-direction:column;gap:8px}.layout--collapsed .sidebar__logo{justify-content:center;width:100%}.layout--collapsed .sidebar__toggle{display:flex;align-self:center}.layout--collapsed .sidebar__nav{padding:16px 0;align-items:center}.layout--collapsed .sidebar__link{justify-content:center;padding:10px 0;width:40px;margin:0 auto}.layout--collapsed .sidebar__footer{padding:12px 0;align-items:center}.layout--collapsed .sidebar__user{justify-content:center;padding:8px 0}.layout--collapsed .sidebar__logout{justify-content:center;padding:8px 0;width:40px;margin:0 auto}.layout--collapsed .sidebar{width:var(--sidebar-w-col)}.sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:20px 16px 16px;border-bottom:1px solid var(--border);min-height:64px;overflow:visible}.sidebar__logo{display:flex;align-items:center;gap:10px;overflow:hidden}.sidebar__logo-icon{width:32px;height:32px;min-width:32px;background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:16px;color:#fff;flex-shrink:0}.sidebar__logo-text{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--text-primary);white-space:nowrap;letter-spacing:.5px}.sidebar__toggle{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;flex-shrink:0;transition:color .2s,background .2s}.sidebar__toggle:hover{color:var(--accent);background:var(--accent-dim)}.sidebar__nav{flex:1;padding:16px 8px;display:flex;flex-direction:column;gap:4px}.sidebar__link{display:flex;align-items:center;gap:12px;padding:10px;border-radius:var(--radius-sm);color:var(--text-secondary);text-decoration:none;font-size:13px;font-weight:500;transition:all .2s;white-space:nowrap;position:relative}.sidebar__link:hover{color:var(--text-primary);background:#ffffff0d}.sidebar__link--active{color:var(--accent);background:var(--accent-dim)}.sidebar__link--active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--accent);border-radius:0 3px 3px 0}.sidebar__link-icon{display:flex;align-items:center;flex-shrink:0}.sidebar__footer{border-top:1px solid var(--border);padding:12px 8px;display:flex;flex-direction:column;gap:8px}.sidebar__user{display:flex;align-items:center;gap:10px;padding:8px 6px;overflow:hidden}.sidebar__avatar{width:32px;height:32px;background:linear-gradient(135deg,#1e3a5f,#0a1f3d);border:1px solid var(--border-bright);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--accent);flex-shrink:0}.sidebar__user-info{display:flex;flex-direction:column;overflow:hidden}.sidebar__user-name{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__user-email{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__logout{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;font-family:var(--font-sans);font-weight:500;transition:all .2s;white-space:nowrap;width:100%}.sidebar__logout:hover{color:var(--negative);background:#ff4d6d14}.main-content{flex:1;margin-left:var(--sidebar-w);min-height:100vh;background:var(--bg-base);transition:margin-left .25s cubic-bezier(.4,0,.2,1);padding:32px}.layout--collapsed .main-content{margin-left:var(--sidebar-w-col)}.install-cta{position:fixed;right:18px;bottom:18px;z-index:220;border:1px solid var(--border-bright);background:var(--accent);color:#04131a;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:700;font-family:var(--font-sans);cursor:pointer;box-shadow:0 8px 30px #00d4ff40}.install-cta:hover{opacity:.9}.mobile-menu-btn,.mobile-backdrop{display:none}@media (max-width: 1024px){.main-content{padding:24px}}@media (max-width: 768px){.sidebar{width:min(82vw,280px);transform:translate(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1);box-shadow:0 14px 42px #00000073;z-index:230}.layout--mobile-open .sidebar{transform:translate(0)}.layout--collapsed .sidebar{width:min(82vw,280px)}.sidebar__toggle{display:none}.mobile-menu-btn{display:inline-flex;position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:12px;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--border-bright);border-radius:10px;background:#0e1420f0;color:var(--text-primary);z-index:220;cursor:pointer}.mobile-backdrop{border:none;background:#00000073;width:100vw;height:100vh;position:fixed;top:0;right:0;bottom:0;left:0;z-index:210}.layout--mobile-open .mobile-backdrop{display:block}.main-content,.layout--collapsed .main-content{margin-left:0;padding:calc(58px + env(safe-area-inset-top,0px)) 12px 14px}.install-cta{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}}@media (max-width: 480px){.main-content,.layout--collapsed .main-content{padding:calc(56px + env(safe-area-inset-top,0px)) 10px 12px}}.dashboard{max-width:1200px;width:100%;min-width:0;margin:0 auto;display:flex;flex-direction:column;gap:24px}.dashboard__header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px}.dashboard__title{font-family:var(--font-mono);font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.dashboard__subtitle{font-size:13px;color:var(--text-secondary);margin-top:4px}.dashboard__controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;width:100%}.mode-toggle{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px}.mode-toggle__btn{padding:6px 16px;border:none;border-radius:6px;background:none;color:var(--text-secondary);font-size:12px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all .2s;letter-spacing:.3px}.mode-toggle__btn--active{background:var(--accent);color:#080b12}.dashboard__select{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary);padding:8px 14px;border-radius:var(--radius-sm);font-size:13px;font-family:var(--font-sans);cursor:pointer;outline:none;transition:border-color .2s;min-width:200px;max-width:100%}.dashboard__select:focus{border-color:var(--accent)}.account-badge{display:inline-flex;align-items:center;gap:10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:24px;padding:8px 16px;width:fit-content;max-width:100%;flex-wrap:wrap}.account-badge__dot{width:8px;height:8px;border-radius:50%;background:var(--positive);box-shadow:0 0 6px var(--positive);animation:pulse-dot 2s ease-in-out infinite;flex-shrink:0}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.account-badge__number{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:600}.account-badge__broker{color:var(--text-secondary);font-size:11px}.account-badge__live{font-size:10px;font-weight:800;letter-spacing:1.5px;font-family:var(--font-mono);padding:3px 0;border-radius:20px;border:1px solid rgba(0,229,160,.25);background:#00e5a014;color:var(--positive);width:64px;text-align:center}.account-badge__dot--offline{background:var(--negative);box-shadow:0 0 6px var(--negative);animation:pulse-offline 2s ease-in-out infinite}@keyframes pulse-offline{0%,to{opacity:1}50%{opacity:.3}}.account-badge__live--offline{border-color:#ff4d6d40;background:#ff4d6d14;color:var(--negative);animation:pulse-offline 2s ease-in-out infinite}.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}.stat-card:hover{border-color:var(--border-bright);transform:translateY(-1px)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent2));opacity:0;transition:opacity .2s}.stat-card:hover:before{opacity:1}.stat-card__label{font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px}.stat-card__value{font-family:var(--font-mono);font-size:26px;font-weight:700;color:var(--text-primary);line-height:1;word-break:break-word}.stat-card__sub{font-size:11px;color:var(--text-muted);margin-top:6px}.stat-card__trend{display:flex;align-items:center;gap:4px;margin-top:8px;font-size:12px;font-family:var(--font-mono)}.stat-card__trend--up{color:var(--positive)}.stat-card__trend--down{color:var(--negative)}.chart-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.chart-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.chart-card__right{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-width:0}.chart-card__title{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:.5px}.chart-card__legend{display:flex;gap:16px;font-size:12px;color:var(--text-secondary)}.chart-card__legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.period-selector{display:flex;flex-wrap:wrap;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;gap:2px;max-width:100%}.chart-tooltip{background:var(--bg-elevated);border:1px solid var(--border-bright);border-radius:var(--radius-sm);padding:10px 14px;min-width:160px}.chart-tooltip__time{font-size:11px;color:var(--text-secondary);margin-bottom:8px;font-family:var(--font-mono)}.chart-tooltip__row{display:flex;align-items:center;gap:8px;font-size:12px;margin-top:4px}.chart-tooltip__dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.chart-tooltip__label{color:var(--text-secondary);flex:1}.chart-tooltip__val{font-family:var(--font-mono);color:var(--text-primary);font-weight:700}.chart-loading{display:flex;align-items:center;justify-content:center;height:340px}.spinner{width:32px;height:32px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:340px;gap:12px}.chart-empty p{font-size:15px;color:var(--text-secondary)}.chart-empty span{font-size:12px;color:var(--text-muted)}@media (max-width: 768px){.dashboard{gap:16px}.dashboard__header{gap:12px}.dashboard__title{font-size:20px;line-height:1.1}.dashboard__controls{gap:8px}.mode-toggle{width:100%}.mode-toggle__btn{flex:1;padding:7px 10px}.dashboard__select{width:100%;min-width:0}.stats-grid{gap:12px}.stat-card{padding:16px}.stat-card__value{font-size:24px}.chart-card{padding:16px}.chart-card__header{margin-bottom:14px}.chart-card__legend,.chart-card__right{width:100%;gap:10px}}@media (max-width: 480px){.dashboard__title{font-size:18px}.dashboard__subtitle{font-size:12px}.account-badge{padding:8px 12px;gap:8px}.account-badge__broker{max-width:100%;word-break:break-word}.stat-card{padding:14px}.stat-card__label{font-size:10px;letter-spacing:1.2px}.stat-card__value{font-size:22px}.period-btn{padding:4px 8px}.date-picker-dropdown{right:auto;left:0;min-width:min(240px,calc(100vw - 92px))}}.accounts-page{max-width:1200px;margin:0 auto}.accounts-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.accounts-header h1{font-family:var(--font-mono);font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.btn-primary{background:linear-gradient(135deg,var(--accent),#0099bb);border:none;border-radius:var(--radius-sm);color:#080b12;font-size:13px;font-weight:700;font-family:var(--font-sans);padding:9px 18px;cursor:pointer;transition:opacity .2s,transform .2s;letter-spacing:.3px}.btn-danger{background:#ff4d6d1a;border:1px solid rgba(255,77,109,.25);border-radius:var(--radius-sm);color:var(--negative);font-size:12px;font-weight:600;font-family:var(--font-sans);padding:7px 14px;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#ff4d6d33}.accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.account-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:16px;transition:border-color .2s,transform .2s;position:relative}.account-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;border-radius:var(--radius) var(--radius) 0 0;background:linear-gradient(90deg,var(--accent),var(--accent2));opacity:0;transition:opacity .2s}.account-card:hover{border-color:var(--border-bright);transform:translateY(-2px)}.account-card:hover:before{opacity:1}.account-info h3{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.account-number{font-family:var(--font-mono);font-size:12px;color:var(--accent);margin-bottom:4px}.broker{font-size:12px;color:var(--text-secondary);margin-bottom:12px}.status{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.5px}.status:before{content:"";width:6px;height:6px;border-radius:50%}.status.active{background:#00e5a01a;color:var(--positive);border:1px solid rgba(0,229,160,.25)}.status.active:before{background:var(--positive);box-shadow:0 0 4px var(--positive)}.status.inactive{background:#7a8aaa1a;color:var(--text-secondary);border:1px solid var(--border)}.status.inactive:before{background:var(--text-muted)}.account-actions{display:flex;justify-content:flex-end}.empty-state{text-align:center;color:var(--text-secondary);font-size:14px;padding:60px 0}.btn-edit{background:#00d4ff14;border:1px solid rgba(0,212,255,.2);border-radius:var(--radius-sm);color:var(--accent);font-size:12px;font-weight:600;font-family:var(--font-sans);padding:7px 14px;cursor:pointer;transition:all .2s}.btn-edit:hover{background:#00d4ff26}.account-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.modal-account-number{font-family:var(--font-mono);font-size:13px;color:var(--accent);background:var(--accent-dim);padding:6px 12px;border-radius:var(--radius-sm);margin-bottom:20px;display:inline-block}.modal-content--wide{max-width:860px}.txn-panel__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.txn-panel__header h2{margin-bottom:4px}.txn-panel__close{background:none;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:color .2s}.txn-panel__close:hover{color:var(--text-primary)}.txn-form{margin-bottom:16px}.txn-form__row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.txn-form__row .form-group{margin-bottom:0;min-width:110px}.txn-form__row .form-group--flex{flex:1;min-width:160px}.txn-form__row .form-group select,.txn-form__row .form-group input{width:100%;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 12px;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);outline:none;transition:border-color .2s}.txn-form__row .form-group select{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}.txn-form__row .form-group select option{background:#1a2235;color:var(--text-primary)}.txn-form__row .form-group select:focus,.txn-form__row .form-group input:focus{border-color:#00d4ff66}.txn-form__btn{align-self:flex-end;white-space:nowrap}.txn-import{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:4px}.txn-import__result{font-size:12px;font-family:var(--font-mono)}.btn-danger--sm{padding:5px 10px;font-size:11px}.account-token{border-top:1px solid var(--border);padding-top:12px}.account-token__label{display:block;font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px}.account-token__row{display:flex;align-items:center;gap:4px}.account-token__value{flex:1;font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);background:#00000040;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:all;user-select:all}.btn-icon{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);min-width:34px;height:28px;padding:0 8px;cursor:pointer;font-size:12px;font-weight:600;line-height:1;transition:all .2s}.btn-icon:hover{background:#ffffff0f;border-color:var(--border-bright)}.accounts-section-title{margin-top:40px;margin-bottom:16px;padding-top:24px;border-top:1px solid var(--border)}.accounts-section-title h2{font-family:var(--font-mono);font-size:16px;font-weight:600;color:var(--text-secondary);letter-spacing:-.3px}.account-card--shared{border-color:#7c3aed33}.account-card--shared:before{background:linear-gradient(90deg,var(--accent2),rgba(124,58,237,.4))}.status.shared{background:#7c3aed1a;color:#a78bfa;border:1px solid rgba(124,58,237,.25)}.status.shared:before{background:#a78bfa;box-shadow:0 0 4px #7c3aed80}.btn-share{color:#a78bfa;border-color:#7c3aed40;background:#7c3aed14}.btn-share:hover{background:#7c3aed26;color:#c4b5fd}.modal-content--share{max-width:520px}.share-panel__header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.share-panel__header h2{margin-bottom:4px}.share-form{margin-bottom:16px}.share-form__row{display:flex;align-items:flex-end;gap:12px}.share-form__row .form-group--flex{flex:1;margin-bottom:0}.share-form__btn{align-self:flex-end;white-space:nowrap}.search-results{background:var(--bg-elevated);border:1px solid var(--border-bright);border-radius:var(--radius-sm);margin-top:-8px;margin-bottom:16px;max-height:200px;overflow-y:auto}.search-result-item{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:10px 14px;cursor:pointer;transition:background .15s;text-align:left}.search-result-item:hover{background:#00d4ff0f}.search-result-item+.search-result-item{border-top:1px solid var(--border)}.search-result-name{font-size:13px;font-weight:500;color:var(--text-primary)}.search-result-email{font-size:12px;color:var(--text-muted);font-family:var(--font-mono)}.share-list{margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}.share-list h3{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px}.share-list__items{display:flex;flex-direction:column;gap:8px}.share-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#ffffff05;border:1px solid var(--border);border-radius:var(--radius-sm)}.share-item__info{display:flex;flex-direction:column;gap:2px}.share-item__name{font-size:13px;font-weight:500;color:var(--text-primary)}.share-item__email{font-size:11px;color:var(--text-muted);font-family:var(--font-mono)}.portfolio-page{max-width:1200px;margin:0 auto}.portfolio-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:32px;flex-wrap:wrap;gap:16px}.portfolio-title{font-family:var(--font-mono);font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.portfolio-subtitle{font-size:13px;color:var(--text-secondary);margin-top:4px}.portfolio-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 0;text-align:center}.portfolio-empty p{font-size:15px;color:var(--text-secondary)}.portfolio-empty span{font-size:13px;color:var(--text-muted);max-width:400px}.portfolio-grid{display:flex;flex-direction:column;gap:12px}.portfolio-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .2s}.portfolio-card:hover,.portfolio-card--expanded{border-color:var(--border-bright)}.portfolio-card__header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;gap:16px}.portfolio-card__info{flex:1}.portfolio-card__name{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.portfolio-card__desc{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.portfolio-card__count{font-family:var(--font-mono);font-size:11px;color:var(--accent);background:var(--accent-dim);padding:2px 8px;border-radius:4px}.portfolio-card__actions{display:flex;gap:6px}.btn-icon{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#ffffff0a;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.btn-icon:hover{color:var(--text-primary);background:#ffffff14}.btn-icon--danger:hover{color:var(--negative);background:#ff4d6d14;border-color:#ff4d6d4d}.portfolio-accounts{border-top:1px solid var(--border);padding:16px 20px;display:flex;flex-direction:column;gap:8px}.portfolio-accounts__title{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.portfolio-account-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-elevated);border-radius:var(--radius-sm);gap:12px}.portfolio-account-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.portfolio-account-name{font-size:13px;font-weight:500;color:var(--text-primary)}.portfolio-account-number{font-family:var(--font-mono);font-size:11px;color:var(--accent)}.portfolio-account-broker{font-size:11px;color:var(--text-muted);background:#ffffff0a;padding:2px 6px;border-radius:4px}.btn-add-account{background:#00d4ff1a;border:1px solid rgba(0,212,255,.25);border-radius:6px;color:var(--accent);font-size:12px;font-weight:600;font-family:var(--font-sans);padding:5px 12px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-add-account:hover{background:#00d4ff2e}.btn-remove-account{background:#ff4d6d1a;border:1px solid rgba(255,77,109,.25);border-radius:6px;color:var(--negative);font-size:12px;font-weight:600;font-family:var(--font-sans);padding:5px 12px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-remove-account:hover{background:#ff4d6d2e}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal-content{background:var(--bg-surface);border:1px solid var(--border-bright);border-radius:var(--radius);padding:32px;width:100%;max-width:440px;position:relative}.modal-content:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent)}.modal-content h2{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:24px}.modal-content .form-group{margin-bottom:16px}.modal-content .form-group label{display:block;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px}.modal-content .form-group input{width:100%;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text-primary);font-size:14px;font-family:var(--font-sans);outline:none;transition:border-color .2s}.modal-content .form-group input::placeholder{color:var(--text-muted)}.modal-content .form-group input:focus{border-color:#00d4ff66}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.modal-error{background:#ff4d6d1a;border:1px solid rgba(255,77,109,.3);border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;color:var(--negative);margin-bottom:16px}.btn-primary{background:linear-gradient(135deg,var(--accent),#0099bb);border:none;border-radius:var(--radius-sm);color:#080b12;font-size:13px;font-weight:700;font-family:var(--font-sans);padding:9px 18px;cursor:pointer;transition:opacity .2s,transform .2s}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{background:#ffffff0d;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-sans);padding:9px 18px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#ffffff14;color:var(--text-primary)}.history-page{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.history-page__title{font-family:var(--font-mono);font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.history-page__subtitle{font-size:13px;color:var(--text-secondary);margin-top:4px}.history-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.history-controls__left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.history-select{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary);padding:8px 14px;border-radius:var(--radius-sm);font-size:13px;font-family:var(--font-sans);cursor:pointer;outline:none;transition:border-color .2s;min-width:200px}.history-select:focus{border-color:var(--accent)}.history-tabs{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding-bottom:0;flex-wrap:wrap}.history-tabs__left{display:flex;align-items:center;gap:4px}.history-tabs__right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.history-tabs__btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border:none;background:none;color:var(--text-secondary);font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;position:relative;transition:color .2s;border-bottom:2px solid transparent;margin-bottom:-1px}.history-tabs__btn:hover{color:var(--text-primary)}.history-tabs__btn--active{color:var(--accent);border-bottom-color:var(--accent)}.history-tabs__export{display:flex;gap:8px}.period-selector{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;gap:2px}.period-btn{padding:4px 12px;border:none;border-radius:5px;background:none;color:var(--text-secondary);font-size:11px;font-weight:600;font-family:var(--font-mono);cursor:pointer;transition:all .2s;letter-spacing:.5px}.period-btn:hover{color:var(--text-primary)}.period-btn--active{background:var(--bg-card);color:var(--accent);border:1px solid var(--border-bright)}.period-btn--icon{display:flex;align-items:center;justify-content:center;padding:4px 8px}.period-btn-calendar-wrapper{position:relative}.period-label{font-size:11px;color:var(--accent);font-family:var(--font-mono);letter-spacing:.3px}.date-picker-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-elevated);border:1px solid var(--border-bright);border-radius:var(--radius);padding:16px;z-index:200;display:flex;flex-direction:column;gap:12px;min-width:240px;box-shadow:0 8px 32px #0006}.date-picker-dropdown__field{display:flex;flex-direction:column;gap:4px}.date-picker-dropdown__field label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.date-picker-dropdown__field input{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);padding:8px 10px;border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-mono);outline:none;transition:border-color .2s;color-scheme:dark}.date-picker-dropdown__field input:focus{border-color:var(--accent)}.date-picker-dropdown__apply{background:var(--accent);color:#080b12;border:none;padding:8px 16px;border-radius:var(--radius-sm);font-size:12px;font-weight:700;font-family:var(--font-sans);cursor:pointer;transition:opacity .2s}.date-picker-dropdown__apply:disabled{opacity:.4;cursor:not-allowed}.date-picker-dropdown__apply:not(:disabled):hover{opacity:.85}.export-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-size:12px;font-weight:600;font-family:var(--font-sans);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.export-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.export-btn:disabled{opacity:.4;cursor:not-allowed}.history-table-wrapper{display:flex;flex-direction:column;gap:8px}.history-table-info{display:flex;align-items:center;gap:16px;font-size:11px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.3px}.history-table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}.history-table{width:100%;border-collapse:collapse;font-size:13px}.history-table thead{position:sticky;top:0;z-index:1}.history-table th{background:var(--bg-elevated);color:var(--text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;padding:10px 16px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.history-table th.num{text-align:right}.history-table td{padding:8px 16px;border-bottom:1px solid rgba(255,255,255,.03);color:var(--text-primary);white-space:nowrap}.history-table td.num{text-align:right}.history-table td.mono{font-family:var(--font-mono);font-size:12px}.history-table tbody tr:hover{background:#ffffff05}.history-table tbody tr:last-child td{border-bottom:none}.text-positive{color:var(--positive)}.text-negative{color:var(--negative)}.history-loading{display:flex;align-items:center;justify-content:center;height:200px}.history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;gap:8px}.history-empty p{font-size:14px;color:var(--text-secondary)}.report-content{display:flex;flex-direction:column;gap:20px}.report-summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.report-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;display:flex;flex-direction:column;gap:8px}.report-summary-card__label{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.2px;font-family:var(--font-mono)}.report-summary-card__value{font-family:var(--font-mono);font-size:28px;font-weight:700;color:var(--text-primary);letter-spacing:-1px}.report-summary-card__value.text-positive{color:var(--positive)}.report-summary-card__value.text-negative{color:var(--negative)}.history-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.history-table th.sortable:hover{color:var(--accent)}.report-chart-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px}.report-chart-card__title{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:.5px;margin-bottom:16px}.report-view-selector{display:flex;align-items:center;gap:8px}.report-view-selector__label{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.2px;font-family:var(--font-mono)}.report-view-btn{padding:4px 12px;border:1px solid var(--border);border-radius:5px;background:var(--bg-elevated);color:var(--text-secondary);font-size:11px;font-weight:600;font-family:var(--font-mono);cursor:pointer;transition:all .2s;letter-spacing:.3px}.report-view-btn:hover{color:var(--text-primary);border-color:#ffffff26}.report-view-btn--active{background:var(--bg-card);color:var(--accent);border-color:var(--border-bright)}.deposit-tooltip{position:relative;cursor:help;border-bottom:1px dashed var(--text-muted)}.deposit-tooltip__text{display:none;position:absolute;bottom:calc(100% + 6px);right:0;background:var(--bg-elevated);border:1px solid var(--border-bright);color:var(--text-secondary);font-size:11px;font-family:var(--font-sans);font-weight:500;padding:6px 10px;border-radius:6px;white-space:nowrap;z-index:10;box-shadow:0 4px 16px #0006}.deposit-tooltip:hover .deposit-tooltip__text{display:block}@media (max-width: 900px){.history-controls{flex-direction:column;align-items:flex-start}.history-date-range{flex-direction:column;gap:8px;width:100%}.history-date-range__field input{width:100%}.history-tabs{flex-wrap:wrap}.history-tabs__export{margin-left:0;margin-top:8px}.report-summary-cards{grid-template-columns:repeat(2,1fr)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:#080b12;color:#f0f4ff;font-family:DM Sans,sans-serif;font-size:14px}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(0,212,255,.08) 0%,transparent 70%),radial-gradient(ellipse 50% 40% at 80% 80%,rgba(124,58,237,.06) 0%,transparent 60%),#080b12;padding:24px;position:relative;overflow:hidden}.auth-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,212,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.03) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}.auth-card{background:#0e1420f2;border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:40px 36px;width:100%;max-width:400px;position:relative;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 24px 64px #0006}.auth-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,212,255,.4),transparent)}.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:28px}.auth-logo__icon{width:36px;height:36px;background:linear-gradient(135deg,#00d4ff,#7c3aed);border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:Space Mono,monospace;font-weight:700;font-size:18px;color:#fff}.auth-logo__text{font-family:Space Mono,monospace;font-size:15px;font-weight:700;color:#f0f4ff;letter-spacing:.5px}.auth-title{font-size:22px;font-weight:600;color:#f0f4ff;margin-bottom:6px}.auth-subtitle{font-size:13px;color:#7a8aaa;margin-bottom:28px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;font-weight:500;color:#7a8aaa;margin-bottom:6px;text-transform:uppercase;letter-spacing:.8px}.form-group input{width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:11px 14px;color:#f0f4ff;font-size:14px;font-family:DM Sans,sans-serif;outline:none;transition:border-color .2s,background .2s}.form-group input::placeholder{color:#3d4d6a}.form-group input:focus{border-color:#00d4ff66;background:#00d4ff0a}.auth-btn{width:100%;padding:12px;background:linear-gradient(135deg,#00d4ff,#09b);border:none;border-radius:8px;color:#080b12;font-size:14px;font-weight:700;font-family:DM Sans,sans-serif;cursor:pointer;margin-top:8px;transition:opacity .2s,transform .2s;letter-spacing:.3px}.auth-btn:hover{opacity:.9;transform:translateY(-1px)}.auth-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.error-message{background:#ff4d6d1a;border:1px solid rgba(255,77,109,.3);border-radius:8px;padding:10px 14px;font-size:13px;color:#ff4d6d;margin-bottom:16px}.auth-footer{text-align:center;font-size:13px;color:#7a8aaa;margin-top:20px}.auth-footer a{color:#00d4ff;text-decoration:none;font-weight:500}.auth-footer a:hover{text-decoration:underline}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
