@import"https://cdn.jsdelivr.net/npm/tailwindcss@3.3.0/dist/tailwind.min.css";.form-group{margin-bottom:1.5rem}.form-label{display:block;color:#d1d5db;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-input{width:100%;padding:.75rem;background:#334155;border:2px solid transparent;border-radius:.5rem;color:#fff;outline:none;font-size:.875rem;transition:border-color .2s}.form-input:focus{border-color:#2563eb}.form-hint{font-size:.75rem;color:#9ca3af;margin-top:.5rem}.btn-submit{width:100%;padding:.75rem;background:#22c55e;border:none;border-radius:.5rem;color:#fff;font-weight:600;font-size:.875rem;transition:opacity .2s;cursor:pointer}.btn-submit:disabled{cursor:not-allowed;opacity:.5}.btn-link{background:none;border:none;color:#60a5fa;cursor:pointer;font-size:.875rem;text-decoration:underline;transition:color .2s}.btn-link:hover{color:#93c5fd}.btn-link:disabled{cursor:not-allowed;opacity:.5}.home-container{max-width:1600px;margin:0 auto}.home-page-header{display:flex;justify-content:space-between;align-items:center;background:#1e293b;padding:1.5rem 2rem;border-radius:.75rem;border:1px solid rgb(51,65,85);margin-bottom:2rem}.home-page-header-left{display:flex;flex-direction:column;gap:.25rem}.home-page-header-right{display:flex;gap:1rem}.home-title{font-size:2rem;font-weight:700;margin:0;color:#d1d5db}.home-subtitle{color:#9ca3af;margin:0;font-size:.9rem}.btn-large{padding:.75rem 1.5rem;font-size:1rem;font-weight:600}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:#1e293b;padding:1.5rem;border-radius:.75rem;border:1px solid rgb(51,65,85)}.summary-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.summary-card-icon{font-size:1.5rem}.summary-card-label{font-size:.875rem;color:#9ca3af}.summary-card-value{font-size:1.75rem;font-weight:700;color:#fff}.summary-card-detail{font-size:.75rem;color:#9ca3af;margin-top:.25rem}.profit-card{background:linear-gradient(135deg,#1e293b,#141e30)}.profit-main-value{font-size:2.5rem!important;background:linear-gradient(135deg,#4ade80,#22c55e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:.5rem 0 1rem}.profit-periods{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#0f172a80;border-radius:.5rem;margin-top:1rem;gap:.5rem}.profit-period-item{display:flex;flex-direction:column;align-items:center;flex:1}.profit-period-label{font-size:.7rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-weight:600}.profit-period-value{font-size:.9rem;color:#34d399;font-weight:700}.profit-period-divider{width:1px;height:2rem;background:#334155}.profit-total{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid rgb(51,65,85)}.profit-total-label{font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.profit-total-value{font-size:1rem;color:#60a5fa;font-weight:700}.gp-traded-card{background:linear-gradient(135deg,#1e293b,#192332)}.gp-traded-main-value{font-size:2.5rem!important;background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:.5rem 0 1rem}.gp-traded-value{color:#60a5fa!important}.gp-traded-total{color:#93c5fd!important}.inventory-card{background:linear-gradient(135deg,#1e293b,#1c2536)}.inventory-main-value{font-size:2.5rem!important;background:linear-gradient(135deg,#fb923c,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:.5rem 0 1rem}.inventory-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem;background:#0f172a80;border-radius:.5rem;margin-top:1rem}.inventory-stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.inventory-stat-label{font-size:.7rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-weight:600}.inventory-stat-value{font-size:1rem;color:#fb923c;font-weight:700}.activity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-bottom:2rem}.activity-section{background:#1e293b;padding:1.5rem;border-radius:.75rem;border:1px solid rgb(51,65,85)}.activity-section-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.top-items-sort-select{margin-left:.75rem;background:#0f172a;color:#f1f5f9;border:1px solid rgb(51,65,85);border-radius:4px;padding:.15rem .4rem;font-size:.8rem;cursor:pointer}.activity-list{display:flex;flex-direction:column;gap:.75rem}.top-items-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.top-items-column{display:flex;flex-direction:column;gap:.75rem}.activity-item{display:flex;justify-content:space-between;padding:.75rem;background:#0f172a;border-radius:.5rem;font-size:.875rem}.activity-item-left{display:flex;flex-direction:column}.activity-item-title{font-weight:600;color:#d1d5db}.activity-item-subtitle{color:#9ca3af;font-size:.75rem}.activity-item-right{text-align:right;display:flex;flex-direction:column}.activity-item-value{font-weight:600;color:#fff}.activity-item-value-positive{color:#4ade80}.activity-item-value-negative{color:#f87171}.activity-item-value-neutral{color:#f1f5f9}.activity-empty{color:#9ca3af;font-size:.875rem}.watchlist-summary-section{margin-bottom:2rem}.watchlist-summary-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.watchlist-summary-open-btn{flex-shrink:0}.watchlist-summary-list{display:flex;flex-direction:column;gap:.65rem}.watchlist-summary-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;background:#0f172a;border:1px solid rgb(51,65,85);border-radius:.5rem;color:inherit;cursor:pointer;text-align:left;transition:border-color .2s,background .2s}.watchlist-summary-item:hover{border-color:#60a5fa;background:#1e293b}.watchlist-summary-item-main{min-width:0;display:flex;flex-direction:column;gap:.25rem}.watchlist-summary-item-name{color:#e2e8f0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watchlist-summary-item-subtitle{color:#94a3b8;font-size:.8rem}.watchlist-summary-item-status{font-size:.75rem;font-weight:700;border-radius:999px;padding:.25rem .55rem;white-space:nowrap}.watchlist-summary-item-status-hit{color:#86efac;background:#15803d33;border:1px solid rgba(134,239,172,.35)}.watchlist-summary-item-status-track{color:#93c5fd;background:#2563eb33;border:1px solid rgba(147,197,253,.35)}@media(max-width:720px){.watchlist-summary-header{flex-direction:column;align-items:stretch}.watchlist-summary-open-btn{justify-content:center;width:100%}.watchlist-summary-item{flex-direction:column;align-items:flex-start}}.td-base{padding:.5rem .75rem;border:1px solid rgb(51,65,85)}.td-center{text-align:center}.td-right{text-align:right}.td-profit-positive{color:#34d399;white-space:nowrap;min-width:90px}.td-profit-negative{color:#f87171;white-space:nowrap;min-width:90px}.td-timer{font-family:monospace}.td-timer-active{color:#fb923c}.td-timer-inactive{color:#9ca3af}.td-number{white-space:nowrap}.td-avg{color:#34d399}.table-container{background:#1e293bb3;border:1px solid rgb(51,65,85);border-radius:.5rem;overflow-x:auto;box-shadow:0 10px 15px -3px #0000001a}.table-base{width:100%;font-size:.875rem;color:#e5e7eb;border-collapse:collapse}.thead-base{background:#1e293b;border-bottom:1px solid rgb(51,65,85)}.th-base{padding:.5rem .75rem;text-align:left;font-weight:600;color:#d1d5db;border:1px solid rgb(51,65,85);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;-webkit-user-select:none;user-select:none;position:relative}.th-sortable{cursor:pointer}.th-sortable:hover{background:#334155}.th-icon-empty{padding:.5rem;width:2rem;border:1px solid rgb(51,65,85)}.stock-table-item-icon{width:20px;height:20px;flex-shrink:0;object-fit:contain;image-rendering:pixelated}.tr-base{cursor:move;transition:background .3s}.tr-even{background:#1e293b80}.tr-odd{background:#0f172a66}.tr-highlighted{background:#60a5fa4d;box-shadow:0 0 20px #60a5fa80}.tr-base:hover:not(.tr-highlighted){background:#33415566}.history-th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.history-th--sortable:hover{color:#fff;background:#334155}.history-sort-icon{margin-left:.25rem;font-size:.65rem;color:#475569}.history-sort-icon--active{color:#60a5fa}.history-undo-btn{background:transparent;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#94a3b8;cursor:pointer;padding:.25rem .5rem;font-size:.8rem;transition:background .15s,color .15s,border-color .15s}.history-undo-btn:hover{background:#b91c1c;border-color:#ef4444;color:#fff}.history-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.history-modal{background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.75rem;padding:1.5rem;width:380px;display:flex;flex-direction:column;gap:.75rem}.history-modal p{color:#fff;margin:0}.history-modal-sub{color:#94a3b8!important;font-size:.875rem}.history-modal-actions{display:flex;gap:.5rem;margin-top:.5rem}.history-modal-confirm{flex:1;padding:.5rem;background:#2563eb;border:none;border-radius:.375rem;color:#fff;font-weight:600;cursor:pointer}.history-modal-confirm--danger{background:#b91c1c}.history-modal-confirm:hover{opacity:.9}.history-modal-cancel{flex:1;padding:.5rem;background:transparent;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#94a3b8;cursor:pointer}.history-modal-cancel:hover{background:#334155;color:#fff}.trade-mode-btn{padding:.5rem 1.25rem;border:none;border-radius:.375rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:background .2s,color .2s;color:#9ca3af;background:transparent}.toggle-row{display:flex;align-items:center;justify-content:space-between}.toggle-label{font-size:.875rem;font-weight:500;color:#d1d5db}.trade-mode-toggle-wrapper{display:flex;justify-content:center;margin-bottom:1.5rem}.trade-mode-toggle{display:flex;gap:.25rem;background:#0f172a;border-radius:.5rem;padding:.25rem;border:1px solid rgb(51,65,85)}.trade-mode-btn{padding:.5rem 1.5rem;border:none;border-radius:.375rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:background .2s,color .2s;color:#9ca3af;background:transparent}.trade-mode-btn.active{background:#a855f7;color:#fff}.checkbox-investment{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;background:#334155;border-radius:.5rem}.checkbox-investment-text{font-size:.875rem;font-weight:500;color:#d1d5db}.history-page{padding:2rem 0 4rem}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.history-header-left{display:flex;flex-direction:column;gap:.25rem}.history-title{font-size:1.75rem;font-weight:700;color:#fff;margin:0}.history-subtitle{color:#64748b;font-size:.875rem;margin:0}.history-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.history-search{background:#1e293b;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#fff;padding:.5rem .75rem;font-size:.875rem;width:200px;transition:border-color .15s}.history-search::placeholder{color:#64748b}.history-search:focus{outline:none;border-color:#60a5fa}.history-filter-group{display:flex;background:#0f172a;border:1px solid rgb(51,65,85);border-radius:.375rem;overflow:hidden}.history-filter-btn{padding:.5rem 1rem;border:none;background:transparent;color:#94a3b8;cursor:pointer;font-size:.8rem;font-weight:500;transition:background .15s,color .15s}.history-filter-btn:hover{color:#fff;background:#1e293b}.history-filter-btn--all.history-filter-btn--active{background:#2563eb;color:#fff}.history-filter-btn--buy.history-filter-btn--active{background:#15803d;color:#fff}.history-filter-btn--sell.history-filter-btn--active{background:#b91c1c;color:#fff}.history-page-size{background:#1e293b;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#d1d5db;padding:.5rem .6rem;font-size:.8rem;cursor:pointer}.history-table-wrapper{background:#0f172a;border:1px solid rgb(51,65,85);border-radius:.75rem;overflow:hidden}.history-table{width:100%;border-collapse:collapse}.history-table thead th{background:#1e293b;color:#64748b;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.875rem 1rem;text-align:left;border-bottom:1px solid rgb(51,65,85)}.history-th--right{text-align:right!important}.history-row{border-bottom:1px solid rgb(22,32,48);transition:background .1s}.history-row--buy{border-left:3px solid rgb(34,197,94)}.history-row--sell{border-left:3px solid rgb(239,68,68)}.history-row--remove{border-left:3px solid rgb(168,85,247)}.history-row:hover{background:#1e293b}.history-row:last-child{border-bottom:none}.history-cell{padding:.75rem 1rem;color:#d1d5db;font-size:.875rem}.history-cell--date{color:#94a3b8;white-space:nowrap;font-size:.8rem}.history-cell--name{font-weight:500;color:#fff}.history-item-name{display:flex;align-items:center;gap:.3rem}.history-item-icon{width:20px;height:20px;object-fit:contain;image-rendering:pixelated;flex-shrink:0}.members-star{flex-shrink:0}.members-star--p2p{color:#f59e0b}.members-star--f2p{color:#e2e8f0}.history-cell--right{text-align:right}.history-cell--bold{font-weight:600}.history-time{color:#64748b;font-size:.75rem}.history-type-badge{font-size:.65rem;font-weight:700;padding:.2rem .5rem;border-radius:.25rem;letter-spacing:.06em}.history-type-badge--buy{background:#15803d40;color:#86efac;border:1px solid rgba(34,197,94,.3)}.history-type-badge--sell{background:#b91c1c40;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.history-type-badge--remove{background:#7c3aed40;color:#c4b5fd;border:1px solid rgba(168,85,247,.3)}.history-total--buy{color:#86efac}.history-total--sell{color:#fca5a5}.history-empty{text-align:center;color:#64748b;padding:4rem;font-size:.875rem}.history-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1.25rem;flex-wrap:wrap;gap:.75rem}.history-pagination-info{color:#64748b;font-size:.8rem}.history-pagination-controls{display:flex;gap:.25rem}.history-page-btn{min-width:2.25rem;height:2.25rem;padding:0 .5rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.375rem;color:#d1d5db;cursor:pointer;font-size:.85rem;transition:background .15s,color .15s,border-color .15s;display:flex;align-items:center;justify-content:center}.history-page-btn:hover:not(:disabled){background:#334155;color:#fff;border-color:#475569}.history-page-btn:disabled{opacity:.3;cursor:not-allowed}.history-page-btn--active{background:#60a5fa;border-color:#60a5fa;color:#0f172a;font-weight:700}.history-page-btn--active:hover{background:#60a5fa!important}.history-refresh-btn{height:2.25rem;width:2.25rem;background:#1e293b;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#d1d5db;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:background .15s}.history-refresh-btn:hover:not(:disabled){background:#334155}.history-refresh-btn:disabled{opacity:.4;cursor:not-allowed}.history-cell--muted{color:#64748b}.history-filter-toggle{padding:.5rem .875rem;background:#1e293b;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#d1d5db;cursor:pointer;font-size:.8rem;transition:background .15s}.history-filter-toggle:hover{background:#334155}.history-filter-toggle--active{background:#334155;border-color:#60a5fa}.history-filter-toggle--has-filters{border-color:#60a5fa;color:#60a5fa}.history-filter-panel{background:#162030;border:1px solid rgb(51,65,85);border-radius:.75rem;padding:1.25rem;margin-bottom:1.25rem}.history-filter-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.history-filter-field{display:flex;flex-direction:column;gap:.35rem}.history-filter-label{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.history-filter-actions{display:flex;gap:.5rem;padding-top:.75rem;border-top:1px solid rgb(51,65,85)}.history-filter-apply{padding:.5rem 1.25rem;background:#2563eb;border:none;border-radius:.375rem;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s}.history-filter-apply:hover{background:#1d4ed8}.history-filter-reset{padding:.5rem 1.25rem;background:transparent;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#94a3b8;font-size:.875rem;cursor:pointer;transition:background .15s,color .15s}.history-filter-reset:hover{background:#334155;color:#fff}.graphs-page{padding:1.5rem 0}.graphs-header{margin-bottom:1.5rem}.graphs-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 .25rem}.graphs-subtitle{color:#94a3b8;font-size:.875rem;margin:0}.graphs-search-container{margin-bottom:1.5rem;max-width:500px}.graphs-search-input{width:100%;padding:.75rem 1rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;color:#fff;font-size:.9375rem;outline:none;transition:border-color .2s;box-sizing:border-box}.graphs-search-input::placeholder{color:#64748b}.graphs-search-input:focus{border-color:#60a5fa}.graphs-dropdown{position:absolute;top:100%;left:0;right:0;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;max-height:300px;overflow-y:auto;z-index:50;margin-top:4px}.graphs-dropdown-item{display:flex;align-items:center;padding:.625rem 1rem;cursor:pointer;color:#cbd5e1;font-size:.875rem;transition:background .15s}.graphs-dropdown-item:hover{background:#334155}.graphs-dropdown-limit{color:#64748b;font-size:.75rem;margin-right:.5rem}.graphs-info-panel{background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.75rem;padding:1.25rem;margin-bottom:1rem}.graphs-info-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.graphs-info-name{font-size:1.25rem;font-weight:600;color:#fff;margin:0}.graphs-info-icon{width:32px;height:32px;image-rendering:pixelated}.graphs-info-wiki-link{font-size:.75rem;font-weight:500;color:#60a5fa;text-decoration:none;padding:.2rem .5rem;border:1px solid rgb(51,65,85);border-radius:.375rem;transition:all .2s ease}.graphs-info-wiki-link:hover{background:#60a5fa1a;border-color:#60a5fa}.graphs-info-stats{display:flex;gap:2rem;flex-wrap:wrap}.graphs-info-stat{display:flex;flex-direction:column;gap:.25rem}.graphs-info-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.graphs-info-value{font-size:.9375rem;font-weight:600;color:#cbd5e1}.graphs-info-value--high{color:#22c55e}.graphs-info-value--low{color:#ef4444}.graphs-info-value--negative{color:#f87171}.graphs-info-stat--tooltip{position:relative;cursor:help}.graphs-info-stat-tooltip{display:none;position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%);background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;padding:.5rem .75rem;font-size:.75rem;font-weight:400;color:#94a3b8;white-space:nowrap;z-index:10}.graphs-info-stat--tooltip:hover .graphs-info-stat-tooltip{display:block}.graphs-timeframe-bar{display:flex;gap:.5rem;margin-bottom:1rem}.graphs-timeframe-btn{padding:.5rem 1rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.375rem;color:#94a3b8;cursor:pointer;font-size:.8125rem;font-weight:600;transition:all .2s}.graphs-timeframe-btn:hover{background:#334155;color:#fff}.graphs-timeframe-btn--active{background:#60a5fa;border-color:#60a5fa;color:#fff}.graphs-timeframe-btn--active:hover{background:#3b82f6}.graphs-timeframe-separator{width:1px;background:#334155;align-self:stretch;margin:0 .25rem}.graphs-chart-container{min-height:400px;border-radius:.75rem;overflow:hidden;position:relative}.graphs-volume-container{height:250px;border-radius:.75rem;overflow:hidden;margin-top:1rem;position:relative}.graphs-empty-state{display:flex;align-items:center;justify-content:center;min-height:400px;color:#64748b;font-size:.9375rem;position:absolute;inset:0;background:#0f172a;border-radius:.75rem;border:1px solid rgb(51,65,85)}.graphs-crosshair-tooltip{position:absolute;display:none;padding:.625rem 1rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;font-size:.9375rem;font-weight:600;line-height:1.6;pointer-events:none;z-index:10;white-space:nowrap}.graphs-tooltip-high{color:#22c55e}.graphs-tooltip-low{color:#ef4444}.graphs-tooltip-neutral{color:#94a3b8}.graphs-info-badge{padding:.2rem .6rem;border-radius:.375rem;font-size:.6875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.graphs-info-badge--p2p{background:#a855f733;color:#c084fc;border:1px solid rgba(168,85,247,.3)}.graphs-info-badge--f2p{background:#34d39926;color:#34d399;border:1px solid rgba(52,211,153,.3)}.graphs-dropdown-icon{width:24px;height:24px;margin-right:8px;image-rendering:pixelated}.graphs-dropdown-section-header{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b;border-bottom:1px solid rgb(51,65,85)}.graphs-dropdown-section-header:not(:first-child){border-top:1px solid rgb(51,65,85)}.graphs-favorite-star{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#64748b;cursor:pointer;padding:.25rem;border-radius:.25rem;transition:all .15s;flex-shrink:0}.graphs-favorite-star:hover{color:#eab308;background:#eab3081a}.graphs-favorite-star--active{color:#eab308}.graphs-favorite-star--active:hover{color:#ca8a04}.graphs-favorite-star--header{padding:.375rem;border-radius:.375rem}.graphs-dropdown-name{flex:1;min-width:0}.graphs-dropdown-item .graphs-favorite-star{flex-shrink:0}.graphs-favorites-section{margin-bottom:1.5rem}.graphs-favorites-header{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#94a3b8;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;-webkit-user-select:none;user-select:none}.graphs-favorites-header:hover{color:#cbd5e1}.graphs-favorites-chevron{transition:transform .2s;margin-left:auto}.graphs-favorites-chevron--collapsed{transform:rotate(-90deg)}.graphs-quick-access{display:flex;flex-wrap:wrap;gap:.5rem}.graphs-quick-access-item{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;cursor:grab;transition:all .15s;padding:0}.graphs-quick-access-item:active{cursor:grabbing;opacity:.6}.graphs-quick-access-item:hover{border-color:#60a5fa;background:#334155}.graphs-quick-access-item--active{border-color:#60a5fa;background:#60a5fa26}.graphs-quick-access-icon{width:32px;height:32px;image-rendering:pixelated}.graphs-quick-access-fallback{font-size:.875rem;font-weight:600;color:#94a3b8}.graphs-empty-cards{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;width:100%}.graphs-empty-section{width:100%}.graphs-empty-section-header{display:flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:.75rem}.graphs-empty-grid{display:flex;flex-wrap:wrap;gap:.5rem}.graphs-empty-card{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;cursor:pointer;transition:all .15s;color:#cbd5e1;font-size:.8125rem}.graphs-empty-card:hover{border-color:#60a5fa;background:#334155}.graphs-empty-card-icon{width:24px;height:24px;image-rendering:pixelated}.graphs-empty-card-name{white-space:nowrap}.investment-date-wrapper{display:inline-block;cursor:pointer}.investment-date-input{position:relative;pointer-events:none;background:transparent;border:1px solid rgb(51,65,85);border-radius:.375rem;color:#fff;padding:.2rem .25rem;font-size:.8rem;cursor:pointer;width:5.5rem;color-scheme:dark}.investment-date-input::-webkit-calendar-picker-indicator{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;cursor:pointer}.investment-date-wrapper:hover .investment-date-input{border-color:#60a5fa}.graph-alert-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;background:#334155;color:#cbd5e1;border:1px solid rgb(71,85,105);border-radius:.5rem;cursor:pointer;font-size:.8125rem;font-weight:500;transition:background .2s,border-color .2s}.graph-alert-btn:hover{background:#475569;border-color:#64748b}.graph-alert-btn-active{border-color:#ef4444;color:#fca5a5}.graph-alert-btn-active:hover{background:#475569}.graph-watchlist-btn{border-color:#d97706;color:#fdba74}.graph-watchlist-btn:hover{border-color:#f59e0b;color:#fed7aa}.graph-watchlist-btn-active{border-color:#16a34a;color:#86efac}.graph-watchlist-btn-active:hover{border-color:#22c55e}.graph-alert-btn:disabled{opacity:.65;cursor:not-allowed}.graphs-watchlist-feedback{margin-top:-.35rem;margin-bottom:.75rem;font-size:.8rem;font-weight:600}.graphs-watchlist-feedback--ok{color:#86efac}.graphs-watchlist-feedback--error{color:#fca5a5}.graph-watchlist-modal{background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;color:#fff;max-width:28rem;padding:1.25rem;width:90vw}.graph-watchlist-modal-title{color:#e2e8f0;font-size:1.2rem;font-weight:700;margin:0}.graph-watchlist-modal-subtitle{color:#94a3b8;font-size:.9rem;margin:.35rem 0 1rem}.graph-watchlist-modal-fields{display:grid;gap:.45rem}.graph-watchlist-modal-label{color:#94a3b8;font-size:.78rem;font-weight:700;margin-top:.3rem;text-transform:uppercase}.graph-watchlist-modal-input{background:#0f172a;border:1px solid rgb(71,85,105);border-radius:.5rem;color:#fff;font-size:.9rem;padding:.55rem .7rem;width:100%}.graph-watchlist-modal-input:focus{border-color:#60a5fa;outline:none}.graph-watchlist-modal-error{color:#f87171;font-size:.82rem;margin-top:.8rem}.graph-watchlist-modal-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1rem}.graph-notes-btn-active{border-color:#a855f7;color:#d8b4fe}.graphs-note-investment-tag{font-size:.6875rem;padding:.125rem .375rem;background:#581c87;color:#d8b4fe;border-radius:.25rem}.graph-notes-picker{background:#1e293b;padding:1.5rem;border-radius:.75rem;width:20rem;border:1px solid rgb(51,65,85);box-shadow:0 25px 50px -12px #00000040}.graph-notes-picker-title{font-size:1.25rem;font-weight:600;color:#fff;margin:0 0 .25rem}.graph-notes-picker-subtitle{font-size:.8125rem;color:#94a3b8;margin:0 0 1rem}.graph-notes-picker-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.graph-notes-picker-item{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:#0f172a;border:1px solid rgb(51,65,85);border-radius:.5rem;color:#fff;font-size:.875rem;cursor:pointer;transition:border-color .2s}.graph-notes-picker-item:hover{border-color:#a855f7}.graph-notes-picker-has-note{margin-left:auto;font-size:.75rem;color:#a855f7}.graph-notes-picker-cancel{width:100%;padding:.5rem;background:#334155;border:none;border-radius:.375rem;color:#fff;font-size:.8125rem;cursor:pointer;transition:background .2s}.graph-notes-picker-cancel:hover{background:#475569}.items-filter-bar{display:flex;flex-wrap:wrap;gap:.875rem;align-items:flex-end;justify-content:space-between;padding:.625rem .875rem;background:#161e2e;border:1px solid rgba(51,65,85,.6);border-radius:.625rem}.items-filter-primary{display:grid;grid-template-columns:minmax(14rem,16rem) 7rem;gap:.625rem;align-items:flex-end}.items-filter-control{display:flex;flex-direction:column;gap:.25rem;min-width:0}.items-filter-control.is-compact{min-width:0}.items-filter-label{color:#94a3b8;font-size:.75rem;font-weight:600}.items-filter-select{background:#0f172a;border:1px solid rgba(71,85,105,.8);border-radius:.5rem;color:#fff;min-height:2rem;padding:.25rem 2rem .25rem .625rem;font-size:.75rem;font-weight:600}.items-filter-input{background:#0f172a;border:1px solid rgba(71,85,105,.8);border-radius:.5rem;color:#fff;min-height:2rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600}.items-filter-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.items-filter-pill{background:#33415580;color:#cbd5e1;border:1px solid rgba(71,85,105,.6);border-radius:999px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;cursor:pointer}.items-filter-pill:hover,.items-filter-pill:focus-visible{background:#475569bf;color:#fff}.items-filter-pill.is-on{background:#15803d;color:#fff;border-color:#15803d}.items-table-wrap{overflow:auto;max-height:36rem;border:1px solid rgba(51,65,85,.6);border-radius:.625rem}.items-table{width:100%;border-collapse:collapse;font-size:.8125rem;color:#fff}.items-table thead th{position:sticky;top:0;z-index:1;background:#0f172a;border-bottom:1px solid rgb(51,65,85);padding:0;text-align:left}.items-table tbody td{padding:.5rem;border-bottom:1px solid rgba(51,65,85,.5);vertical-align:middle}.items-table tbody tr{cursor:pointer}.items-table tbody tr:hover,.items-table tbody tr:focus-visible{background:#22c55e14}.items-table-header-button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.375rem;background:transparent;border:0;color:#cbd5e1;padding:.5rem;font:inherit;font-weight:700;text-align:left;cursor:pointer}.items-table-header-button.has-tooltip{position:relative}.items-table-header-button.has-tooltip:hover:after,.items-table-header-button.has-tooltip:focus-visible:after{top:calc(100% + .375rem);bottom:auto;left:.5rem;transform:none;z-index:20;min-width:12rem;max-width:16rem;white-space:normal}.items-table-header-button:hover,.items-table-header-button:focus-visible{color:#fff}.items-table td.has-tooltip:hover:after,.items-table td.has-tooltip:focus-visible:after{top:calc(100% + .25rem);bottom:auto;left:.5rem;transform:none;z-index:30;width:max-content;max-width:24rem}.items-table-sort-icon{flex:0 0 auto;color:#94a3b8}.items-table-empty{text-align:center;color:#94a3b8;padding:1.5rem}.items-table-pager{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:.75rem}.items-table-pager-count{color:#94a3b8;font-size:.75rem;font-weight:600}.items-table-show-more{background:#33415580;color:#cbd5e1;border:1px solid rgba(71,85,105,.6);border-radius:.5rem;min-height:2rem;padding:.25rem .75rem;font-size:.75rem;font-weight:700;cursor:pointer}.items-table-show-more:hover,.items-table-show-more:focus-visible{background:#475569bf;color:#fff}.items-name-cell{min-width:11rem;font-weight:700}.items-muted{color:#94a3b8}.items-profit-positive{color:#22c55e;font-weight:700}.items-profit-negative{color:#ef4444;font-weight:700}.items-widget-note{color:#94a3b8;font-size:.75rem}.items-movers-list{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-rows:repeat(5,minmax(0,auto));gap:.5rem;list-style:none;padding:0;margin:0}.items-movers-row{width:100%;display:flex;justify-content:space-between;align-items:center;gap:.75rem;background:#0f172a;border:1px solid rgba(51,65,85,.7);border-radius:.5rem;color:#fff;min-height:3rem;padding:.625rem .75rem;cursor:pointer;text-align:left}.items-movers-row:hover,.items-movers-row:focus-visible{background:#3341558c;color:#e2e8f0}.items-movers-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.items-chart{height:17.5rem}.items-chart.is-small{height:13.75rem}.items-chart.is-drawer{height:10rem}.items-direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.items-direction-panel{min-width:0}.items-direction-title{color:#fff;font-size:.875rem;font-weight:700;margin:0 0 .625rem}.items-select{background:#0f172a;color:#fff;border:1px solid rgb(51,65,85);border-radius:.375rem;padding:.25rem .5rem;font-size:.75rem}.items-table-wrap.is-compact{max-height:20rem}.items-drawer-overlay{position:fixed;inset:0;background:#0006;z-index:240}.items-drawer{position:fixed;top:0;right:0;width:min(30rem,100%);height:100vh;background:#0f172a;border-left:1px solid rgb(51,65,85);padding:1.25rem;overflow-y:auto;z-index:250;box-shadow:-.625rem 0 1.875rem #0006}.items-drawer-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.items-drawer-title{color:#fff;font-size:1.25rem;font-weight:700;margin:0}.items-drawer-subtitle{color:#94a3b8;font-size:.8125rem;margin:.25rem 0 0}.items-drawer-close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:transparent;border:1px solid transparent;border-radius:.375rem;color:#fff;cursor:pointer}.items-drawer-close:hover,.items-drawer-close:focus-visible{background:#334155b3;border-color:#475569}.items-drawer-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:1rem 0}.items-drawer-section{margin-top:1.125rem}.items-drawer-section-title{color:#fff;font-size:.875rem;font-weight:700;margin:0 0 .625rem}.items-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(71,85,105,.6);color:#cbd5e1;background:#33415580;padding:.125rem .5rem;font-size:.6875rem;font-weight:700}@media(max-width:640px){.items-filter-bar{align-items:flex-start}.items-filter-control,.items-filter-primary,.items-filter-actions{width:100%}.items-filter-primary{grid-template-columns:minmax(0,1fr) 7rem}.items-filter-actions{justify-content:flex-start}.items-table{min-width:54rem}.items-movers-list{grid-auto-flow:row;grid-template-rows:none;grid-auto-columns:auto}.items-direction-grid{grid-template-columns:1fr}.items-drawer{width:100%;padding:1rem}}.analytics-page{padding:1.5rem;max-width:1600px;margin:0 auto}.analytics-page-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.analytics-page-title{font-size:1.875rem;font-weight:700;color:#fff;margin:0}.analytics-page-subtitle{color:#94a3b8;margin:.25rem 0 0}.analytics-timeframe{display:flex;gap:.25rem;background:#1e293b;padding:.25rem;border-radius:.5rem;border:1px solid rgb(51,65,85)}.analytics-timeframe-btn{padding:.5rem .875rem;background:transparent;border:none;color:#94a3b8;cursor:pointer;border-radius:.375rem;font-weight:600;font-size:.8125rem;transition:background .15s,color .15s}.analytics-timeframe-btn:hover{background:#22c55e24;color:#fff}.analytics-timeframe-btn.is-active{background:#15803d;color:#fff}.analytics-tab-nav{display:flex;gap:.5rem;border-bottom:1px solid rgb(51,65,85);margin:1.5rem 0}.analytics-tab-btn{padding:.75rem 1.25rem;background:transparent;border:none;color:#94a3b8;cursor:pointer;font-weight:600;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;white-space:nowrap}.analytics-tab-btn:hover{color:#fff}.analytics-tab-btn.is-active{color:#fff;border-bottom-color:#22c55e}.analytics-kpi-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.analytics-kpi-icon{display:inline-flex;color:#22c55e}.analytics-tab-content{min-height:24rem}.analytics-empty{text-align:center;color:#94a3b8;padding:4rem 1rem}.analytics-fallback-banner{background:#eab3081a;border:1px solid rgba(234,179,8,.3);color:#eab308;padding:.5rem .875rem;border-radius:.5rem;font-size:.8125rem;margin-bottom:1rem}.analytics-kpi-delta{font-size:.8125rem;font-weight:600}.analytics-kpi-delta.is-positive{color:#22c55e}.analytics-kpi-delta.is-negative{color:#ef4444}.analytics-kpi-delta.is-neutral{color:#94a3b8}.analytics-kpi-skeleton{min-height:7rem;opacity:.5}@media(max-width:640px){.analytics-page{padding:.75rem}.analytics-kpi-band{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-tab-nav{overflow-x:auto}.analytics-timeframe{flex-wrap:wrap}}.analytics-stack{display:flex;flex-direction:column;gap:1rem}.analytics-grid-2,.analytics-grid-3{display:grid;gap:1rem}.analytics-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-widget{background:#161e2e;border:1px solid rgba(51,65,85,.6);border-radius:.875rem;padding:1rem 1.25rem}.analytics-widget.is-compact{min-height:8rem}.analytics-widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.875rem;gap:.5rem}.analytics-widget-title{font-size:1rem;font-weight:600;color:#fff;margin:0}.analytics-widget-subtitle{font-size:.75rem;color:#94a3b8;margin:0}.analytics-widget-body{min-height:12rem}.analytics-chart-tall{height:17.5rem}.analytics-chart-medium{height:16.25rem}.analytics-chart-small{height:15rem}.analytics-widget-empty{display:flex;align-items:center;justify-content:center;min-height:12rem;color:#94a3b8;text-align:center}.analytics-toggle{background:#33415580;border:1px solid rgba(71,85,105,.5);color:#cbd5e1;padding:.25rem .625rem;border-radius:.375rem;font-size:.75rem;cursor:pointer}.analytics-toggle:hover{background:#475569a6}.analytics-toggle.is-on{background:#15803d;color:#fff;border-color:#15803d}.has-tooltip{position:relative}.analytics-widget-title.has-tooltip,.summary-card.has-tooltip,.analytics-kpi-mini.has-tooltip{cursor:help}.has-tooltip:hover:after,.has-tooltip:focus-visible:after{content:attr(data-tooltip);position:absolute;z-index:250;left:50%;bottom:calc(100% + .5rem);transform:translate(-50%);width:max-content;max-width:18rem;background:#0f172a;border:1px solid rgb(71,85,105);border-radius:.375rem;color:#e2e8f0;font-size:.75rem;line-height:1.35;font-weight:500;text-transform:none;letter-spacing:0;padding:.5rem .625rem;pointer-events:none;white-space:normal;box-shadow:0 .75rem 1.5rem #0000004d}.analytics-segmented{display:inline-flex;gap:.125rem;background:#33415580;border:1px solid rgba(71,85,105,.5);border-radius:.5rem;padding:.125rem}.analytics-widget-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.analytics-segmented-btn{background:transparent;border:0;color:#cbd5e1;cursor:pointer;border-radius:.375rem;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.analytics-segmented-btn:hover{color:#fff;background:#475569a6}.analytics-segmented-btn.is-active{background:#15803d;color:#fff}.analytics-tooltip{background:#0f172a;border:1px solid rgb(51,65,85);border-radius:.5rem;padding:.625rem .75rem;color:#fff;box-shadow:0 .75rem 1.5rem #00000040}.analytics-tooltip-label{color:#94a3b8;font-size:.75rem;margin-bottom:.375rem}.analytics-tooltip-row{display:flex;justify-content:space-between;gap:1.5rem;font-size:.8125rem}.analytics-tooltip-value{font-weight:700}.analytics-legend{display:flex;flex-wrap:wrap;gap:.5rem .875rem;color:#94a3b8;font-size:.75rem}.analytics-legend-item{display:inline-flex;align-items:center;gap:.375rem}.analytics-legend-swatch{width:.625rem;height:.625rem;border-radius:.125rem}.analytics-legend-swatch[data-color=profit_items]{background:#60a5fa}.analytics-legend-swatch[data-color=profit_dump]{background:#34d399}.analytics-legend-swatch[data-color=profit_referral]{background:#a855f7}.analytics-legend-swatch[data-color=profit_bonds]{background:#eab308}.category-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#161e2e;border:1px solid rgba(51,65,85,.6);border-radius:.625rem}.category-filter-label{color:#94a3b8;font-size:.75rem;font-weight:700;text-transform:uppercase}.category-filter-pill{background:#33415580;color:#cbd5e1;border:1px solid rgba(71,85,105,.6);border-radius:999px;padding:.25rem .75rem;font-size:.75rem;font-weight:700;cursor:pointer}.category-filter-pill:hover,.category-filter-pill:focus-visible{background:#475569bf;color:#fff}.category-filter-pill.is-on{background:#15803d;color:#fff;border-color:#15803d}.category-table tbody tr{cursor:default}.category-table tbody tr:hover,.category-table tbody tr:focus-visible{background:#33415559}.category-table-row.is-clickable{cursor:pointer}.category-table-row.is-clickable:hover,.category-table-row.is-clickable:focus-visible{background:#22c55e14;outline:none}.category-table.is-readonly thead th{color:#cbd5e1;font-weight:700;padding:.5rem}.category-table-tooltip{display:inline-flex;cursor:help}.category-table-tooltip.has-tooltip:hover:after,.category-table-tooltip.has-tooltip:focus-visible:after{top:calc(100% + .375rem);bottom:auto;left:0;transform:none;z-index:30;min-width:12rem;max-width:18rem}.category-widget-total{color:#e2e8f0;font-size:.8125rem;font-weight:800;white-space:nowrap}.category-allocation-layout{display:grid;grid-template-columns:minmax(12rem,1fr) minmax(14rem,.9fr);gap:1rem;align-items:center}.category-allocation-summary{min-width:0}.category-allocation-total{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;color:#94a3b8;font-size:.75rem;font-weight:700;text-transform:uppercase}.category-allocation-total strong{color:#fff;font-size:1rem}.category-allocation-list{display:grid;gap:.5rem}.category-allocation-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:.5rem;align-items:center;color:#e2e8f0;font-size:.75rem}.category-allocation-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-allocation-value{font-weight:800}.category-allocation-pct{color:#94a3b8;font-weight:700;min-width:2.75rem;text-align:right}.category-margin-list{display:grid;gap:.75rem;max-height:16.25rem;overflow:auto;padding-right:.25rem}.category-margin-row{display:grid;gap:.375rem}.category-margin-row-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-size:.8125rem}.category-margin-name{color:#fff;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-margin-bar{display:block;width:100%;height:1.125rem}.category-margin-track{fill:#0f172a;stroke:#475569bf;stroke-width:1}.category-margin-fill.is-positive{fill:#22c55e}.category-margin-fill.is-negative{fill:#ef4444}.category-contribution-svg{display:block;width:100%;height:2rem;border:1px solid rgb(51,65,85);border-radius:.375rem;overflow:hidden;background:#0f172a}.category-contribution-tooltip-wrap{position:relative}.category-contribution-tooltip-wrap.has-tooltip:hover:after,.category-contribution-tooltip-wrap.has-tooltip:focus-within:after{bottom:calc(100% + .5rem);left:50%;transform:translate(-50%);z-index:260}.category-contribution-segment{cursor:help;outline:none}.category-contribution-segment:focus{stroke:#fff;stroke-width:2}.category-contribution-legend{margin-top:.625rem}.category-treemap-label{fill:#fff;font-size:.75rem;font-weight:700;paint-order:stroke;stroke:#0f172ae6;stroke-width:3px;pointer-events:none}.category-treemap-value{fill:#fff;font-size:.6875rem;font-weight:600;paint-order:stroke;stroke:#0f172ae6;stroke-width:3px;pointer-events:none}.category-margin-chart-label{fill:#e2e8f0;font-size:.6875rem;font-weight:700}.category-margin-cap-marker{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;pointer-events:none}.category-color-0{background:#60a5fa}.category-color-1{background:#34d399}.category-color-2{background:#a855f7}.category-color-3{background:#fb923c}.category-color-4{background:#eab308}.category-color-5{background:#ef4444}.category-color-6{background:#22c55e}.category-color-7{background:#f472b6}.category-color-8{background:#2dd4bf}.category-color-9{background:#facc15}.category-color-10{background:#0ea5e9}.category-color-11{background:#84cc16}.category-color-12{background:#d946ef}.category-color-13{background:#f59e0b}.category-color-14{background:#6366f1}.category-color-15{background:#10b981}.category-color-16{background:#ec4899}.category-color-17{background:#94a3b8}.category-color-18{background:#f87171}.category-color-19{background:#22d3ee}.analytics-comparison-value{font-size:1.5rem;font-weight:700;color:#fff;margin-top:.25rem}.analytics-comparison-note{color:#94a3b8;margin-top:.5rem}.analytics-comparison-delta,.analytics-kpi-mini-delta{font-size:.8125rem;font-weight:600}.analytics-comparison-delta.is-positive,.analytics-kpi-mini-delta.is-positive{color:#22c55e}.analytics-comparison-delta.is-negative,.analytics-kpi-mini-delta.is-negative{color:#ef4444}.analytics-comparison-delta.is-neutral,.analytics-kpi-mini-delta.is-neutral{color:#94a3b8}.analytics-sparkline{height:2.25rem;margin-top:.5rem}.analytics-velocity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.analytics-velocity-card{min-width:0;background:#0f172a;border:1px solid rgba(51,65,85,.7);border-radius:.625rem;padding:.75rem}.analytics-velocity-card.has-tooltip:hover:after,.analytics-velocity-card.has-tooltip:focus-visible:after,.analytics-velocity-eta.has-tooltip:hover:after,.analytics-velocity-eta.has-tooltip:focus-visible:after{white-space:pre-line;max-width:26rem;text-align:left}.analytics-velocity-label{color:#94a3b8;font-size:.75rem;font-weight:700;text-transform:uppercase}.analytics-velocity-value{color:#fff;font-size:1.375rem;font-weight:800;margin-top:.25rem}.analytics-velocity-delta{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:700;margin-top:.25rem}.analytics-velocity-status{border:1px solid rgba(71,85,105,.6);border-radius:999px;padding:.1875rem .625rem;font-size:.75rem;font-weight:700}.analytics-velocity-delta.is-positive,.analytics-velocity-status.is-positive{color:#22c55e}.analytics-velocity-delta.is-negative,.analytics-velocity-status.is-negative{color:#ef4444}.analytics-velocity-delta.is-neutral,.analytics-velocity-status.is-neutral{color:#94a3b8}.analytics-velocity-sparkline{height:2.5rem;margin-top:.625rem}.analytics-velocity-paces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.875rem;padding-top:.875rem;border-top:1px solid rgba(51,65,85,.7)}.analytics-velocity-eta{min-width:0;background:#0f172a;border:1px solid rgba(51,65,85,.7);border-radius:.5rem;color:#cbd5e1;font-size:.8125rem;font-weight:600;padding:.5rem .625rem}.analytics-kpi-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem}.analytics-kpi-mini{background:#0f172a;border-radius:.625rem;padding:.625rem .75rem}.analytics-kpi-mini-label{font-size:.6875rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.analytics-kpi-mini-value{font-size:1.125rem;font-weight:700;color:#fff;margin-top:.25rem}.analytics-bw-table{width:100%;border-collapse:collapse;font-size:.8125rem;color:#fff}.analytics-bw-table th,.analytics-bw-table td{padding:.375rem .5rem;text-align:left}.analytics-bw-table thead{color:#94a3b8;font-weight:600;border-bottom:1px solid rgb(51,65,85)}.analytics-bw-row{cursor:default}.analytics-bw-row.is-clickable{cursor:pointer}.analytics-bw-row.is-clickable:hover{background:#33415559}.analytics-profit-positive{color:#22c55e}.analytics-profit-negative{color:#ef4444}.analytics-heatmap-wrap{overflow-x:auto}.analytics-heatmap-svg{display:block;min-width:46rem;width:100%;height:auto}.analytics-heatmap-cell{cursor:pointer;stroke:#0f172ad9;stroke-width:1}.analytics-heatmap-cell:focus{outline:none;stroke:#fff;stroke-width:2}.analytics-heatmap-active{text-align:right;white-space:nowrap}.analytics-heatmap-svg-tooltip{opacity:0;pointer-events:none}.analytics-heatmap-svg-tooltip.is-visible{opacity:1}.analytics-heatmap-svg-tooltip rect{fill:#0f172a;stroke:#94a3b8a6;stroke-width:1}.analytics-heatmap-svg-tooltip text{fill:#e2e8f0;font-weight:700}.analytics-heatmap-svg-tooltip text.is-positive{fill:#4ade80}.analytics-heatmap-svg-tooltip text.is-negative{fill:#f87171}.goal-streak-strip,.goal-avg-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.goal-estimator-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.goal-streak-label,.goal-avg-delta{display:inline-flex;align-items:center;gap:.25rem}.goal-history-count{font-weight:600;white-space:nowrap}.goal-history-body{display:flex;flex-direction:column;gap:.625rem;min-height:0}.goal-history-scroll{max-height:24rem;overflow-y:auto;border:1px solid rgba(51,65,85,.6);border-radius:.5rem}.goal-history-scroll .analytics-bw-table thead th{position:sticky;top:0;background:#161e2e;z-index:1}.goal-history-scroll .has-tooltip:hover:after,.goal-history-scroll .has-tooltip:focus-visible:after{top:calc(100% + .375rem);bottom:auto}.goal-history-toggle{align-self:flex-start}.goal-result-hit{color:#22c55e;font-weight:700}.goal-result-miss{color:#ef4444;font-weight:700}.goal-partial-badge{display:inline-block;margin-left:.375rem;padding:.0625rem .375rem;border-radius:.25rem;background:#a855f726;color:#c4b5fd;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:help}.goal-vs-profit-legend{margin-top:.625rem}.analytics-legend-swatch.goal-swatch-profit{background:#22c55e}.analytics-legend-swatch.goal-swatch-goal{background:#a855f7}@media(max-width:1023px){.analytics-grid-2,.analytics-grid-3{grid-template-columns:1fr}.goal-streak-strip,.goal-avg-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.analytics-widget{padding:.875rem}.analytics-widget-header{align-items:flex-start;flex-direction:column}.category-allocation-layout{grid-template-columns:1fr}.analytics-segmented{flex-wrap:wrap}.analytics-kpi-strip,.analytics-velocity-grid,.analytics-velocity-paces,.goal-streak-strip,.goal-avg-strip,.goal-estimator-strip{grid-template-columns:1fr}}.category-time-heatmap-wrap{overflow-x:auto;padding-bottom:.5rem}.category-time-heatmap-svg{display:block;width:auto;max-width:none;height:auto}.category-time-heatmap-date,.category-time-heatmap-label{fill:#94a3b8;font-size:.6875rem;font-weight:700}.category-time-heatmap-label{fill:#e2e8f0}.category-time-heatmap-active{text-align:right;white-space:nowrap}.category-time-heatmap-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:.75rem}.category-time-heatmap-cell{cursor:help;stroke:#0f172ad9;stroke-width:1;outline:none}.category-time-heatmap-cell:focus{stroke:#fff;stroke-width:2}.category-time-heatmap-cell.is-zero{fill:#1e293b}.category-time-heatmap-cell.is-positive.shade-0{fill:#1f3b2c}.category-time-heatmap-cell.is-positive.shade-1{fill:#15803d}.category-time-heatmap-cell.is-positive.shade-2{fill:#16a34a}.category-time-heatmap-cell.is-positive.shade-3{fill:#22c55e}.category-time-heatmap-cell.is-positive.shade-4{fill:#4ade80}.category-time-heatmap-cell.is-negative.shade-0{fill:#3b1f24}.category-time-heatmap-cell.is-negative.shade-1{fill:#7f1d1d}.category-time-heatmap-cell.is-negative.shade-2{fill:#b91c1c}.category-time-heatmap-cell.is-negative.shade-3{fill:#dc2626}.category-time-heatmap-cell.is-negative.shade-4{fill:#f87171}.category-time-heatmap-svg-tooltip{opacity:0;pointer-events:none}.category-time-heatmap-svg-tooltip.is-visible{opacity:1}.category-time-heatmap-svg-tooltip rect{fill:#0f172a;stroke:#94a3b8a6;stroke-width:1}.category-time-heatmap-svg-tooltip text{fill:#e2e8f0;font-size:.625rem;font-weight:700}.category-time-heatmap-svg-tooltip text.is-positive{fill:#4ade80}.category-time-heatmap-svg-tooltip text.is-negative{fill:#f87171}.category-time-heatmap-svg-tooltip text.is-muted{fill:#94a3b8;font-weight:600}.category-drawer-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.category-drawer-kpis .analytics-kpi-mini-value{overflow-wrap:anywhere}.items-drawer .analytics-kpi-mini.has-tooltip:hover:after,.items-drawer .analytics-kpi-mini.has-tooltip:focus-visible:after{left:0;right:auto;transform:none;max-width:min(22rem,calc(100vw - 2rem))}.items-drawer .analytics-kpi-mini:nth-child(2n).has-tooltip:hover:after,.items-drawer .analytics-kpi-mini:nth-child(2n).has-tooltip:focus-visible:after{left:auto;right:0;transform:none}.category-drawer-timeframe{display:inline-flex;align-items:center;gap:.125rem;background:#33415580;border:1px solid rgba(71,85,105,.5);border-radius:.5rem;padding:.125rem}.category-drawer-timeframe{flex-wrap:wrap;margin-top:1rem}.category-drawer-timeframe-btn{background:transparent;border:0;border-radius:.375rem;color:#cbd5e1;cursor:pointer;font-size:.75rem;font-weight:700;padding:.25rem .5rem}.category-drawer-timeframe-btn:hover,.category-drawer-timeframe-btn:focus-visible{background:#475569a6;color:#fff;outline:none}.category-drawer-timeframe-btn.is-active{background:#15803d;color:#fff}@media(max-width:640px){.category-time-heatmap-footer{align-items:flex-start;flex-direction:column}.category-drawer-timeframe{width:100%}.category-drawer-timeframe-btn{flex:1 1 auto}}.watchlist-page{display:flex;flex-direction:column;gap:1.5rem}.watchlist-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.75rem;padding:1.5rem}.watchlist-header-copy{display:flex;flex-direction:column;gap:.35rem}.watchlist-title{margin:0;font-size:1.75rem;color:#d1d5db;display:inline-flex;align-items:center;gap:.55rem}.watchlist-subtitle{margin:0;color:#94a3b8;font-size:.95rem}.watchlist-add-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:.4rem}.watchlist-form-card{background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.75rem;padding:1.25rem;position:relative}.watchlist-form-title{margin:0 0 1rem;font-size:1.125rem}.watchlist-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.watchlist-form-group{display:flex;flex-direction:column;gap:.4rem}.watchlist-form-group-full{grid-column:1 / -1;position:relative}.watchlist-form-label{font-size:.8rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.watchlist-form-input,.watchlist-form-textarea{width:100%;border:1px solid rgb(71,85,105);border-radius:.5rem;background:#0f172a;color:#fff;padding:.6rem .75rem;font-size:.9rem}.watchlist-form-textarea{resize:vertical;min-height:4.5rem}.watchlist-form-input:focus,.watchlist-form-textarea:focus{outline:none;border-color:#60a5fa}.watchlist-search-dropdown{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:20;background:#0f172a;border:1px solid rgb(71,85,105);border-radius:.5rem;max-height:16rem;overflow-y:auto}.watchlist-search-option{width:100%;border:0;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:.55rem .75rem;background:transparent;color:#fff;cursor:pointer}.watchlist-search-option:hover{background:#47556959}.watchlist-search-option-limit{color:#94a3b8;font-size:.8rem}.watchlist-form-error{margin-top:.9rem;color:#f87171;font-size:.85rem}.watchlist-form-actions{margin-top:1rem;display:flex;justify-content:flex-end;gap:.75rem}.watchlist-table-wrap{border-radius:.75rem}.watchlist-table{margin:0}.watchlist-item-cell{display:flex;align-items:center;gap:.55rem;font-weight:600}.watchlist-item-icon{width:20px;height:20px;object-fit:contain;image-rendering:pixelated}.watchlist-status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .55rem;font-size:.75rem;font-weight:700}.watchlist-status-badge-watching{color:#93c5fd;background:#2563eb38;border:1px solid rgba(147,197,253,.35)}.watchlist-status-badge-hit{color:#86efac;background:#15803d38;border:1px solid rgba(134,239,172,.35)}.watchlist-notes-cell{max-width:19rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watchlist-actions{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.watchlist-action-btn{min-width:4.75rem;justify-content:center}.watchlist-empty{padding:1.2rem;color:#94a3b8}@media(max-width:900px){.watchlist-header{flex-direction:column;align-items:stretch}.watchlist-add-btn{width:100%;justify-content:center}}@media(max-width:720px){.watchlist-form-grid{grid-template-columns:1fr}.watchlist-notes-cell{max-width:12rem}.watchlist-action-btn{min-width:4.25rem}}.quick-nav-wrapper{position:fixed;left:0;top:0;height:100%;width:12px;z-index:100;display:flex;align-items:center}.quick-nav-wrapper:hover{width:auto}.quick-nav-edge{display:flex;flex-direction:column;align-items:center;height:100%;width:12px;justify-content:center;transition:opacity .2s;position:relative;z-index:2}.quick-nav-edge-line{display:none}.quick-nav-edge-tab{writing-mode:vertical-rl;background:#1e293b;border:1px solid rgb(71,85,105);border-left:none;border-radius:0 4px 4px 0;color:#94a3b8;font-size:1rem;padding:6px 4px 6px 2px;line-height:1;cursor:pointer;margin-left:10px}.quick-nav-panel{position:absolute;left:12px;top:50%;transform:translateY(-50%) translate(-100%);background:#0f172a;border:1px solid rgb(71,85,105);border-left:none;border-radius:0 .5rem .5rem 0;padding:.75rem .5rem;display:flex;flex-direction:column;gap:.25rem;min-width:200px;box-shadow:4px 0 20px #0006;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-height:70vh;overflow-y:auto}.quick-nav-wrapper:hover .quick-nav-panel{opacity:1;pointer-events:all;transform:translateY(-50%) translate(0)}.quick-nav-wrapper:hover .quick-nav-edge-tab{opacity:0}.quick-nav-title{font-size:.65rem;font-weight:700;color:#64748b;letter-spacing:.1em;padding:0 .5rem .5rem;border-bottom:1px solid rgb(51,65,85);margin-bottom:.25rem}.quick-nav-item{background:none;border:none;color:#94a3b8;font-size:.8rem;text-align:left;padding:.35rem .5rem;border-radius:.375rem;cursor:pointer;transition:color .15s,background .15s;white-space:nowrap;line-height:.5}.quick-nav-item:hover{color:#fff;background:#1e293b}.quick-nav-item-active{color:#fff;font-weight:700}@media(max-width:768px){.quick-nav-wrapper{display:none}}.version-badge{font-size:.7rem;color:#64748b;text-decoration:none;transition:color .2s;margin-top:-.25rem}.version-badge:hover{color:#60a5fa}.page-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#1e293b;padding:.5rem;border-radius:.75rem;width:fit-content}.page-nav-btn{padding:.75rem 1.5rem;background:transparent;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;transition:background .2s;font-size:.875rem}.page-nav-btn-active{background:#a855f7}.page-nav-btn:hover:not(.page-nav-btn-active){background:#a855f74d}.topbar-nav-btn{display:flex;align-items:center;gap:.4rem;padding:.75rem 1.5rem;background:transparent;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;transition:background .2s;font-size:.875rem}.topbar-nav-btn:hover{background:#a855f74d}.topbar-nav-btn.is-active{background:#a855f7}.topbar{position:sticky;top:0;z-index:100;background:#16161d;border-bottom:2px solid rgb(55,65,81);padding:1rem 2rem;margin-bottom:1.5rem}.user-dropdown-wrapper{position:relative}.user-dropdown-trigger{display:flex;align-items:center;gap:.4rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;color:#d1d5db;padding:.4rem .75rem;cursor:pointer;font-size:.875rem;transition:background .2s}.user-dropdown-trigger:hover{background:#334155}.user-dropdown-name{color:#60a5fa;font-weight:600}.user-dropdown-caret{color:#9ca3af;font-size:.75rem}.user-dropdown-menu{position:absolute;right:0;top:calc(100% + .5rem);background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;min-width:160px;box-shadow:0 10px 25px #0006;z-index:1000;overflow:hidden}.user-dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.6rem 1rem;background:none;border:none;color:#d1d5db;font-size:.875rem;cursor:pointer;text-align:left;transition:background .2s}.user-dropdown-item:hover{background:#334155}.user-dropdown-item--danger{color:#f87171}.user-dropdown-item--danger:hover{background:#dc262633}.user-dropdown-item--support{color:#fb923c;text-decoration:none}.user-dropdown-item--support:hover{background:#fb923c1a;color:#fdba74}.notification-bell-wrapper{position:relative;display:flex;align-items:center}.notification-bell-btn{position:relative;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.5rem;border-radius:.5rem;display:flex;align-items:center;transition:background .2s,color .2s}.notification-bell-btn:hover{background:#94a3b81a;color:#fff}.notification-badge{position:absolute;top:2px;right:2px;background:#dc2626;color:#fff;font-size:.65rem;font-weight:700;min-width:16px;height:16px;border-radius:9999px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.notification-panel{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-width:90vw;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;z-index:200;box-shadow:0 8px 24px #0006;animation:fadeIn .15s ease}.notification-panel-header{padding:.75rem 1rem;font-weight:600;font-size:.875rem;color:#fff;border-bottom:1px solid rgb(51,65,85);display:flex;align-items:center;justify-content:space-between}.notification-header-actions{display:flex;align-items:center;gap:.25rem}.notification-action-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center;transition:color .2s,background .2s}.notification-action-btn:hover{color:#fff;background:#94a3b826}.notification-empty{padding:1.5rem 1rem;text-align:center;color:#64748b;font-size:.875rem;margin:0}.notification-list{max-height:320px;overflow-y:auto}.notification-item{padding:.75rem 1rem;font-size:.875rem;color:#94a3b8;border-bottom:1px solid rgb(51,65,85);display:flex;align-items:flex-start;gap:.625rem;cursor:pointer;transition:background .15s;position:relative}.notification-item:hover{background:#94a3b80d}.notification-item:last-child{border-bottom:none}.notification-item-unread{background:#3b82f60f}.notification-item-unread .notification-item-message{color:#e2e8f0;font-weight:500}.notification-item-read .notification-item-message{color:#94a3b8}.notification-item-icon{flex-shrink:0;margin-top:.125rem}.notification-item-content{flex:1;min-width:0}.notification-item-message{font-size:.8125rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.notification-item-time{font-size:.6875rem;color:#64748b;margin-top:.125rem}.notification-dismiss-btn{background:transparent;border:none;color:#64748b;cursor:pointer;padding:.125rem;border-radius:.25rem;flex-shrink:0;opacity:0;transition:opacity .15s,color .15s}.notification-item:hover .notification-dismiss-btn{opacity:1}.notification-dismiss-btn:hover{color:#dc2626}.notification-action-icon-btn{background:transparent;border:none;color:#64748b;cursor:pointer;padding:.25rem;border-radius:.25rem;flex-shrink:0;transition:color .15s}.notification-action-icon-btn:hover{color:#e2e8f0}.notification-tab-bar{display:flex;gap:0;border-bottom:1px solid rgb(51,65,85)}.notification-tab{flex:1;background:transparent;border:none;color:#94a3b8;padding:.5rem 1rem;font-size:.875rem;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.notification-tab:hover{color:#e2e8f0}.notification-tab-active{color:#60a5fa;border-bottom-color:#60a5fa}.notification-tab-badge{background:#ef4444;color:#fff;font-size:.625rem;font-weight:700;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;margin-left:.25rem}.notification-news-list{max-height:320px;overflow-y:auto}.notification-news-item{padding:.75rem 1rem;border-bottom:1px solid rgb(51,65,85);display:flex;flex-direction:column;gap:.5rem;transition:background .15s}.notification-news-item:hover{background:#94a3b80d}.notification-news-item:last-child{border-bottom:none}.notification-news-title{font-size:.875rem;color:#e2e8f0;font-weight:500;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-news-meta{font-size:.75rem;color:#64748b}.notification-news-link{align-self:flex-start;display:inline-flex;align-items:center;gap:.25rem;color:#60a5fa;text-decoration:none;font-size:.75rem;cursor:pointer;transition:color .2s;background:none;border:none;padding:0}.notification-news-link:hover{color:#93c5fd}.notification-inbox-filters{display:flex;gap:.35rem;padding:.5rem 1rem;border-bottom:1px solid rgb(51,65,85);flex-wrap:wrap}.notification-inbox-filter-chip{padding:.2rem .5rem;font-size:.65rem;font-weight:500;color:#94a3b8;background:#94a3b81a;border:1px solid rgba(148,163,184,.2);border-radius:1rem;cursor:pointer;transition:all .15s}.notification-inbox-filter-chip:hover{color:#e2e8f0;background:#94a3b826}.notification-inbox-filter-chip-active{color:#60a5fa;background:#60a5fa26;border-color:#60a5fa4d}.notification-filter-chip-count{margin-left:.25rem;font-size:.6rem;font-weight:600;opacity:.7}.notification-news-filter{display:flex;border-bottom:1px solid rgb(51,65,85);padding:0 .5rem}.notification-news-filter-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .75rem;font-size:.75rem;font-weight:500;color:#94a3b8;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}.notification-news-filter-btn:hover{color:#e2e8f0}.notification-news-filter-btn-active{color:#e2e8f0;border-bottom-color:#60a5fa}.notification-filter-badge{display:inline-flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;border-radius:50%;width:16px;height:16px;margin-left:.25rem}.notification-jmod-item{display:flex;flex-direction:column;gap:.35rem;padding:.75rem 1rem;border-bottom:1px solid rgb(51,65,85);text-decoration:none;color:inherit;transition:background .15s;cursor:pointer}.notification-jmod-item:hover{background:#94a3b80d}.notification-jmod-item:last-child{border-bottom:none}.notification-jmod-header{display:flex;align-items:center;justify-content:space-between}.notification-jmod-author{font-size:.8rem;font-weight:600;color:#ff9500}.notification-jmod-context{font-size:.7rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-jmod-body{font-size:.8rem;color:#cbd5e1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-settings-pane{display:flex;gap:0;border-radius:.5rem;overflow:hidden;border:1px solid rgb(71,85,105);height:350px}.notif-sidebar{display:flex;flex-direction:column;width:140px;flex-shrink:0;background:#1e293b;border-right:1px solid rgb(71,85,105)}.notif-sidebar-item{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:transparent;border:none;color:#94a3b8;font-size:.8125rem;text-align:left;cursor:pointer;transition:background .15s,color .15s;border-bottom:1px solid rgb(51,65,85)}.notif-sidebar-item:last-child{border-bottom:none}.notif-sidebar-item:hover{background:#334155;color:#d1d5db}.notif-sidebar-item-active{background:#334155;color:#e2e8f0}.notif-sidebar-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.notif-sidebar-dot-on{background:#22c55e}.notif-sidebar-dot-off{background:#475569}.notif-sidebar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-detail{flex:1;padding:1rem;background:#334155;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto}.notif-detail-title{font-size:.875rem;font-weight:600;color:#e2e8f0}.notif-detail-desc{font-size:.75rem;color:#94a3b8;margin-top:-.5rem}.notif-detail-settings{display:flex;flex-direction:column;gap:.375rem}.notif-detail-row{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#1e293b;border-radius:.375rem;cursor:pointer}.stock-row-highlight{animation:stockHighlight 1.5s ease-out}@keyframes stockHighlight{0%{background-color:#7c3aed33}to{background-color:transparent}}.notification-item-clickable{cursor:pointer}.alt-account-timer{display:flex;align-items:center;gap:.75rem;padding:.75rem 2rem;border:none;border-radius:.75rem;color:#fff;box-shadow:0 4px 6px #0000001a}.alt-account-timer.is-idle{background:linear-gradient(to right,#475569,#334155)}.alt-account-timer.is-active{background:linear-gradient(to right,#ca8a04,#a16207)}.alt-account-timer.is-ready{background:linear-gradient(to right,#22c55e,#16a34a);box-shadow:0 0 20px #22c55e66,0 4px 6px #0000001a;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.alt-account-timer-body{display:flex;flex-direction:column;align-items:center;gap:.25rem}.alt-account-timer-label{font-size:.75rem;opacity:.9}.alt-account-timer-value{font-size:1.25rem;font-weight:700}.alt-account-timer-actions{display:flex;gap:.5rem}.alt-account-timer-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:.5rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600}.alt-account-timer-btn:hover{background:#ffffff4d}.alt-account-timer-btn.is-danger{background:#dc2626e6;border-color:#dc2626}.alt-account-timer-btn.is-danger:hover{background:#b91c1c}@media(max-width:640px){.alt-account-timer{width:100%;justify-content:space-between;padding:.75rem 1rem}.alt-account-timer-actions{flex-wrap:wrap;justify-content:flex-end}}.category-header{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem;margin-bottom:.5rem;-webkit-user-select:none;user-select:none}.category-title{display:flex;align-items:center;gap:.5rem;cursor:move;flex:1}.category-actions-row{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-right:.25rem}.collapse-icon{font-size:1.25rem;transition:transform .2s;display:inline-block}.collapse-icon-rotated{transform:rotate(-90deg)}.category-container{margin-bottom:2rem}.category-stats{display:flex;justify-content:space-around;padding:1rem;background:#33415580;border-radius:.5rem;margin-bottom:.5rem;border:1px solid rgb(71,85,105)}.stat-item{text-align:center}.stat-label{font-size:.75rem;color:#9ca3af;margin-bottom:.25rem}.stat-value{font-size:1rem;font-weight:700}.btn-edit-category{padding:.25rem .75rem;background:#9333ea;color:#fff;border-radius:.375rem;border:none;cursor:pointer;font-size:.75rem;font-weight:500;display:flex;align-items:center;gap:.25rem}.btn-delete-category{padding:.25rem .75rem;background:#991b1b;color:#fff;font-size:.75rem;border-radius:.25rem;display:flex;align-items:center;gap:.25rem;border:none;cursor:pointer;transition:background .2s}.btn-delete-category:hover{background:#7f1d1d}.trade-modal{background:#1e293b;padding:1.5rem;border-radius:.75rem;width:24rem;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgb(51,65,85)}.trade-modal-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem}.trade-modal-banner{padding:.75rem;border-radius:.5rem;margin-bottom:1rem}.trade-modal-banner.buy{background:#22c55e1a;border:1px solid rgb(34,197,94)}.trade-modal-banner.sell{background:#fb923c1a;border:1px solid rgb(251,146,60)}.trade-modal-banner-row{display:flex;justify-content:space-between;align-items:center}.trade-modal-banner-label{font-size:.875rem;font-weight:600}.trade-modal-banner.buy .trade-modal-banner-label{color:#22c55e}.trade-modal-banner.sell .trade-modal-banner-label{color:#fb923c}.trade-modal-banner-after{font-size:.875rem;color:#9ca3af;font-weight:500}.trade-modal-profit{padding:.75rem;border-radius:.5rem;margin-bottom:1rem}.trade-modal-profit.positive{background:#34d3991a;border:1px solid rgb(52,211,153)}.trade-modal-profit.negative{background:#f871711a;border:1px solid rgb(248,113,113)}.trade-modal-profit-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.trade-modal-profit-label{font-size:.875rem;color:#d1d5db}.trade-modal-profit-value{font-size:.875rem;font-weight:600;color:#fff}.trade-modal-profit-divider{border-top:1px solid rgba(209,213,219,.2);padding-top:.5rem;margin-top:.5rem}.trade-modal-profit-total-label{font-size:1rem;font-weight:600;color:#d1d5db}.trade-modal-profit-total-value{font-size:1.25rem;font-weight:700}.trade-modal-profit-total-value.positive{color:#34d399}.trade-modal-profit-total-value.negative{color:#f87171}.trade-modal-profit-percent{text-align:right;font-size:.75rem;color:#9ca3af;margin-top:.25rem}.trade-modal-body{display:flex;flex-direction:column;gap:1rem}.trade-modal-field-label{display:block;font-size:.875rem;font-weight:500;color:#d1d5db;margin-bottom:.5rem}.trade-modal-field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.trade-modal-field-header .trade-modal-field-label,.trade-modal-profit-divider .trade-modal-profit-row{margin-bottom:0}.trade-modal-multipliers{display:flex;gap:.5rem;margin-bottom:.5rem}.trade-modal-multiplier{flex:1;padding:.5rem;background:#475569;border-radius:.5rem;border:none;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;transition:background .2s}.trade-modal-multiplier:hover{background:#334155}.trade-modal-multiplier.active,.trade-modal-multiplier.active:hover{background:#22c55e}.trade-modal-all-btn{padding:.25rem .75rem;background:#b91c1c;border-radius:.375rem;border:none;color:#fff;cursor:pointer;font-size:.75rem;font-weight:600;transition:background .2s}.trade-modal-all-btn:hover{background:#991b1b}.trade-modal-input{width:100%;padding:.5rem 1rem;background:#334155;border-radius:.5rem;outline:none;border:2px solid transparent;color:#fff}.trade-modal.buy .trade-modal-input:focus{border-color:#22c55e}.trade-modal.sell .trade-modal-input:focus{border-color:#ef4444}.trade-modal-ge-buttons{display:flex;gap:.25rem}.trade-modal-ge-btn{padding:.2rem .5rem;background:#334155;border:1px solid rgb(71,85,105);border-radius:.375rem;cursor:pointer;font-size:.75rem;font-weight:500}.trade-modal-ge-btn:hover{background:#475569}.trade-modal-ge-btn.low{color:#86efac}.trade-modal-ge-btn.high{color:#93c5fd}.trade-modal-toggle{padding:.375rem .75rem;background:#334155;border-radius:.5rem;border:1px solid rgb(71,85,105);color:#e2e8f0;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s}.trade-modal-toggle:hover{background:#475569;border-color:#64748b}.trade-modal-result{background:#ea580c1a;border:1px solid rgb(251,146,60);border-radius:.5rem;padding:.5rem .75rem;margin-top:.5rem;text-align:center}.trade-modal-result-label{font-size:1.25rem;color:#fb923c}.trade-modal-result-value{font-size:1.25rem;color:#fb923c;font-weight:500}.trade-modal-checkbox-row{display:flex;align-items:center;gap:.5rem;cursor:pointer}.trade-modal-checkbox{width:16px;height:16px;cursor:pointer}.trade-modal-checkbox-label{font-size:.875rem;color:#d1d5db}.trade-modal-actions{display:flex;gap:.75rem;padding-top:1rem}.trade-modal-confirm,.trade-modal-cancel{flex:1;padding:.5rem 1rem;border-radius:.5rem;transition:background .2s;border:none;color:#fff;cursor:pointer;font-weight:500}.trade-modal-confirm.buy{background:#15803d}.trade-modal-confirm.buy:hover{background:#166534}.trade-modal-confirm.sell{background:#b91c1c}.trade-modal-confirm.sell:hover{background:#991b1b}.trade-modal-confirm:disabled{background:#646464;cursor:not-allowed;opacity:.5}.trade-modal-confirm:disabled:hover{background:#646464}.trade-modal-cancel{background:#475569}.trade-modal-cancel:hover{background:#334155}.bulk-trade-modal{background:#161e2e;border-radius:.875rem;width:52rem;max-width:95vw;height:75vh;display:flex;flex-direction:column;box-shadow:0 0 0 1px #94a3b814,0 4px 24px #0006,0 24px 48px -12px #00000080;overflow:hidden}.bulk-trade-modal.mode-sell{box-shadow:0 0 0 1px #fb923c0f,0 4px 24px #0006,0 24px 48px -12px #00000080}.bulk-trade-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(180deg,rgba(51,65,85,.25) 0%,transparent 100%);border-bottom:1px solid rgba(51,65,85,.6);flex-shrink:0}.bulk-trade-modal.mode-sell .bulk-trade-header{background:linear-gradient(180deg,rgba(251,146,60,.06) 0%,transparent 100%)}.bulk-trade-header h2{font-size:1.1rem;font-weight:700;margin:0;color:#f1f5f9;letter-spacing:-.01em}.bulk-trade-mode-toggle{display:flex;gap:2px;background:#0f172a99;border-radius:.5rem;padding:3px;border:1px solid rgba(51,65,85,.5)}.bulk-trade-mode-btn{padding:.375rem .875rem;border-radius:.375rem;border:none;color:#94a3b8;cursor:pointer;font-size:.78rem;font-weight:500;background:transparent;transition:all .2s ease}.bulk-trade-mode-btn.active{background:#22c55e26;color:#86efac;box-shadow:0 1px 3px #0003}.bulk-trade-mode-btn:hover:not(.active){color:#e2e8f0;background:#3341554d}.bulk-trade-count-badge{display:inline-flex;align-items:center;justify-content:center;background:#fb923c26;color:#fb923c;font-size:.72rem;font-weight:700;min-width:1.4rem;height:1.4rem;border-radius:.75rem;padding:0 .4rem;border:1px solid rgba(251,146,60,.25)}.bulk-trade-body{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0;overflow:hidden}.bulk-trade-picker{border-right:1px solid rgba(51,65,85,.6);display:flex;flex-direction:column;min-height:0;background:#0f172a4d}.bulk-trade-search{padding:.75rem .75rem .5rem;flex-shrink:0}.bulk-trade-search input{width:100%;padding:.5rem .75rem;background:#0f172ab3;border:1px solid rgba(51,65,85,.6);border-radius:.5rem;color:#fff;font-size:.82rem;outline:none;transition:border-color .2s,box-shadow .2s}.bulk-trade-search input::placeholder{color:#64748b}.bulk-trade-modal.mode-buy .bulk-trade-search input:focus{border-color:#6366f199;box-shadow:0 0 0 2px #6366f11a}.bulk-trade-modal.mode-sell .bulk-trade-search input:focus{border-color:#fb923c80;box-shadow:0 0 0 2px #fb923c14}.bulk-trade-item-list{flex:1;overflow-y:auto;padding:0 .375rem .5rem}.bulk-trade-item-list::-webkit-scrollbar,.bulk-trade-selected-list::-webkit-scrollbar{width:5px}.bulk-trade-item-list::-webkit-scrollbar-track,.bulk-trade-selected-list::-webkit-scrollbar-track{background:transparent}.bulk-trade-item-list::-webkit-scrollbar-thumb,.bulk-trade-selected-list::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:3px}.bulk-trade-item-list::-webkit-scrollbar-thumb:hover{background:#64748b80}.bulk-trade-category-label{font-size:.65rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.08em;padding:.625rem .75rem .25rem;margin-top:.125rem;position:sticky;top:0;background:#161e2ee6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1}.bulk-trade-item-row{display:flex;align-items:center;gap:.5rem;padding:.45rem .625rem;border-radius:.375rem;cursor:pointer;transition:all .15s ease;font-size:.8rem;border:1px solid transparent;margin:1px 0}.bulk-trade-item-row:hover{background:#33415566}.bulk-trade-modal.mode-buy .bulk-trade-item-row.selected{background:#22c55e14;border-color:#22c55e40;border-left:2px solid rgb(34,197,94);padding-left:calc(.625rem - 1px)}.bulk-trade-modal.mode-sell .bulk-trade-item-row.selected{background:#fb923c0f;border-color:#fb923c33;border-left:2px solid rgb(251,146,60);padding-left:calc(.625rem - 1px)}.bulk-trade-item-row .item-icon{width:24px;height:24px;image-rendering:pixelated;flex-shrink:0}.bulk-trade-item-row .item-info{flex:1;min-width:0}.bulk-trade-item-row .item-name{font-weight:500;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.8rem}.bulk-trade-item-row .item-meta{font-size:.68rem;color:#64748b;margin-top:1px}.bulk-trade-item-row .item-check{font-size:.85rem;flex-shrink:0;opacity:0;transform:scale(.5);transition:all .2s ease}.bulk-trade-modal.mode-buy .bulk-trade-item-row .item-check{color:#22c55e}.bulk-trade-modal.mode-sell .bulk-trade-item-row .item-check{color:#fb923c}.bulk-trade-item-row.selected .item-check{opacity:1;transform:scale(1)}.bulk-trade-config{display:flex;flex-direction:column;min-height:0}.bulk-trade-config-header{padding:.625rem 1rem;border-bottom:1px solid rgba(51,65,85,.6);flex-shrink:0;font-size:.78rem;color:#64748b;font-weight:500}.bulk-trade-budget-row{padding:.75rem 1rem;border-bottom:1px solid rgba(51,65,85,.6);flex-shrink:0;background:#22c55e08}.bulk-trade-budget-row label{display:block;font-size:.75rem;font-weight:600;color:#94a3b8;margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.04em}.bulk-trade-budget-row input{width:100%;padding:.5rem .75rem;background:#0f172ab3;border:1px solid rgba(51,65,85,.6);border-radius:.5rem;color:#86efac;font-size:1rem;font-weight:600;outline:none;transition:border-color .2s,box-shadow .2s}.bulk-trade-budget-row input::placeholder{color:#475569;font-weight:400}.bulk-trade-budget-row input:focus{border-color:#22c55e80;box-shadow:0 0 0 2px #22c55e1a}.bulk-trade-selected-list{flex:1;overflow-y:auto;padding:.5rem}.bulk-trade-selected-item{background:#0f172a80;border:1px solid rgba(51,65,85,.5);border-radius:.5rem;padding:.625rem .75rem;margin-bottom:.375rem;transition:border-color .2s}.bulk-trade-selected-item:hover{border-color:#475569b3}.bulk-trade-selected-item .item-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.bulk-trade-selected-item .item-header .item-icon{width:20px;height:20px;image-rendering:pixelated}.bulk-trade-selected-item .item-header .item-name{flex:1;font-size:.82rem;font-weight:600;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bulk-trade-selected-item .item-header .item-held{font-size:.68rem;color:#64748b;flex-shrink:0}.bulk-trade-selected-item .item-header .remove-btn{background:none;border:none;color:#475569;cursor:pointer;padding:.125rem .25rem;font-size:1.1rem;line-height:1;border-radius:.25rem;transition:all .15s}.bulk-trade-selected-item .item-header .remove-btn:hover{color:#ef4444;background:#ef44441a}.bulk-trade-selected-item .item-inputs{display:flex;gap:.375rem;align-items:center}.bulk-trade-selected-item .item-inputs input{flex:1;padding:.35rem .5rem;background:#1e293bb3;border:1px solid rgba(51,65,85,.5);border-radius:.375rem;color:#fff;font-size:.8rem;outline:none;min-width:0;transition:border-color .2s,box-shadow .2s}.bulk-trade-selected-item .item-inputs input::placeholder{color:#475569}.bulk-trade-modal.mode-buy .bulk-trade-selected-item .item-inputs input:focus{border-color:#22c55e80;box-shadow:0 0 0 2px #22c55e14}.bulk-trade-modal.mode-sell .bulk-trade-selected-item .item-inputs input:focus{border-color:#fb923c80;box-shadow:0 0 0 2px #fb923c14}.bulk-trade-selected-item .item-inputs .input-group{flex:1;display:flex;gap:0;min-width:0}.bulk-trade-selected-item .item-inputs .input-group input{border-radius:.375rem 0 0 .375rem}.bulk-trade-selected-item .item-inputs .input-group input.input-error{border-color:#ef444499;box-shadow:0 0 0 2px #ef444414}.bulk-trade-selected-item .item-inputs .input-group .sell-all-btn{padding:.35rem .5rem;background:#b91c1c4d;border:1px solid rgba(185,28,28,.4);border-left:none;border-radius:0 .375rem .375rem 0;color:#fca5a5;font-size:.68rem;font-weight:700;cursor:pointer;transition:all .15s;white-space:nowrap;letter-spacing:.03em}.bulk-trade-selected-item .item-inputs .input-group .sell-all-btn:hover{background:#b91c1c80;color:#fff}.bulk-trade-selected-item .ge-btns{display:flex;gap:.25rem;margin-top:.35rem}.bulk-trade-ge-btn{padding:.15rem .4rem;background:#33415580;border:1px solid rgba(71,85,105,.5);border-radius:.25rem;cursor:pointer;font-size:.68rem;font-weight:500;transition:all .15s}.bulk-trade-ge-btn:hover{background:#47556999;border-color:#64748b66}.bulk-trade-ge-btn.low{color:#86efac}.bulk-trade-ge-btn.high{color:#93c5fd}.bulk-trade-selected-item .item-subtotal{font-size:.75rem;color:#fb923c;margin-top:.35rem;font-weight:600}.bulk-trade-selected-item .budget-info{font-size:.75rem;color:#94a3b8;margin-top:.25rem}.bulk-trade-selected-item .budget-info .shares-calc{color:#86efac;font-weight:600}.bulk-trade-selected-item .timer-row{display:flex;align-items:center;gap:.375rem;margin-top:.35rem;font-size:.72rem;color:#64748b;cursor:pointer}.bulk-trade-selected-item .timer-row:hover{color:#94a3b8}.bulk-trade-selected-item .timer-row input[type=checkbox]{width:13px;height:13px;cursor:pointer;accent-color:rgb(34,197,94)}.bulk-trade-selected-item .profit-preview{padding:.375rem .5rem;border-radius:.375rem;margin-top:.4rem;font-size:.72rem}.bulk-trade-selected-item .profit-preview.profit{background:#34d3990f;border:1px solid rgba(52,211,153,.2)}.bulk-trade-selected-item .profit-preview.loss{background:#f871710f;border:1px solid rgba(248,113,113,.2)}.bulk-trade-selected-item .profit-preview-row{display:flex;justify-content:space-between;align-items:center;padding:1px 0}.bulk-trade-selected-item .profit-preview-row span:first-child{color:#64748b}.bulk-trade-selected-item .profit-preview-row span:last-child{color:#94a3b8;font-weight:500}.bulk-trade-selected-item .profit-preview-divider{height:1px;background:#33415580;margin:3px 0}.bulk-trade-selected-item .profit-preview-row.profit-row span:last-child{font-weight:700}.bulk-trade-selected-item .profit-preview.profit .profit-row span:last-child{color:#34d399}.bulk-trade-selected-item .profit-preview.loss .profit-row span:last-child{color:#f87171}.bulk-trade-selected-item .profit-pct{margin-left:.25rem;opacity:.7;font-weight:500}.bulk-trade-selected-item .item-error{font-size:.68rem;color:#ef4444;margin-top:.25rem;font-weight:500}.bulk-trade-empty-config{display:flex;align-items:center;justify-content:center;flex:1;color:#475569;font-size:.82rem;padding:2rem;text-align:center}.bulk-trade-footer{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;border-top:1px solid rgba(51,65,85,.6);background:#0f172a4d;flex-shrink:0}.bulk-trade-footer-stats{display:flex;flex-direction:column;gap:2px}.bulk-trade-total{font-size:1rem;font-weight:700}.bulk-trade-modal.mode-sell .bulk-trade-total{font-size:.88rem}.bulk-trade-total .label{color:#64748b;font-weight:500}.bulk-trade-total .amount{color:#fb923c;text-shadow:0 0 20px rgba(251,146,60,.15)}.bulk-trade-remainder{font-size:.72rem;color:#64748b;margin-top:2px}.bulk-trade-profit{font-size:.78rem;font-weight:700}.bulk-trade-profit .label{color:#64748b;font-weight:500}.bulk-trade-profit.profit .amount{color:#34d399}.bulk-trade-profit.loss .amount{color:#f87171}.bulk-trade-actions{display:flex;gap:.5rem}.bulk-trade-actions .btn-confirm{padding:.5rem 1.25rem;border-radius:.5rem;border:none;color:#fff;cursor:pointer;font-weight:600;font-size:.82rem;transition:all .2s ease;box-shadow:0 1px 3px #0003}.bulk-trade-modal.mode-buy .bulk-trade-actions .btn-confirm{background:#15803d}.bulk-trade-modal.mode-buy .bulk-trade-actions .btn-confirm:hover:not(:disabled){background:#16a34a;box-shadow:0 2px 8px #22c55e40}.bulk-trade-modal.mode-sell .bulk-trade-actions .btn-confirm{background:#b91c1c}.bulk-trade-modal.mode-sell .bulk-trade-actions .btn-confirm:hover:not(:disabled){background:#991b1b;box-shadow:0 2px 8px #ef444440}.bulk-trade-actions .btn-confirm:disabled{opacity:.35;cursor:not-allowed}.bulk-trade-actions .btn-cancel{padding:.5rem 1.25rem;background:#47556980;border-radius:.5rem;border:1px solid rgba(71,85,105,.3);color:#94a3b8;cursor:pointer;font-weight:500;font-size:.82rem;transition:all .15s}.bulk-trade-actions .btn-cancel:hover{background:#475569b3;color:#fff}.bulk-trade-selected-item .item-inputs .input-group .input-step-wrapper,.bulk-trade-selected-item .item-inputs>.input-step-wrapper{flex:1;width:auto;min-width:0}.bulk-trade-selected-item .item-inputs .input-group .input-step-btns{display:none}@media(max-width:640px){.bulk-trade-modal{width:100%;height:95vh}.bulk-trade-body{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.bulk-trade-picker{border-right:none;border-bottom:1px solid rgba(51,65,85,.6);max-height:40vh}}.bulk-summary-modal{background:#161e2e;border-radius:.875rem;width:36rem;max-width:95vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 0 0 1px #94a3b814,0 4px 24px #0006,0 24px 48px -12px #00000080;overflow:hidden}.bulk-summary-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem 1rem;border-bottom:1px solid rgba(51,65,85,.4)}.bulk-summary-header-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#22c55e1f;color:#4ade80;flex-shrink:0}.bulk-summary-header-icon:has(.lucide-alert-triangle){background:#fb923c1f;color:#fb923c}.bulk-summary-header-text h2{font-size:1.05rem;font-weight:700;margin:0;color:#f1f5f9;letter-spacing:-.01em}.bulk-summary-item-count{font-size:.75rem;color:#64748b;font-weight:500}.bulk-summary-receipt{flex:1;min-height:0;overflow-y:auto;padding:0 1.5rem}.bulk-summary-receipt::-webkit-scrollbar{width:4px}.bulk-summary-receipt::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:4px}.bulk-summary-receipt-header.with-profit{grid-template-columns:1fr 4rem 5rem 5.5rem 5.5rem}.bulk-summary-receipt-header{display:grid;grid-template-columns:1fr 4rem 5rem 5.5rem;gap:.5rem;padding:.625rem 0;border-bottom:2px dashed rgba(51,65,85,.35);font-size:.68rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.06em}.bulk-summary-receipt-header span:nth-child(n+2){text-align:right}.bulk-summary-lines{padding:.25rem 0}.bulk-summary-line.with-profit{grid-template-columns:1fr 4rem 5rem 5.5rem 5.5rem}.bulk-summary-line{display:grid;grid-template-columns:1fr 4rem 5rem 5.5rem;gap:.5rem;padding:.5rem 0;border-bottom:1px solid rgba(51,65,85,.15);font-size:.82rem;align-items:center}.bulk-summary-line:last-child{border-bottom:none}.bulk-summary-line-name{color:#e2e8f0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bulk-summary-line-qty,.bulk-summary-line-price{color:#94a3b8;text-align:right;font-variant-numeric:tabular-nums}.bulk-summary-line-total{color:#e2e8f0;text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.bulk-summary-line-profit{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.bulk-summary-line-profit.profit{color:#22c55e}.bulk-summary-line-profit.loss{color:#ef4444}.bulk-summary-totals{padding:.75rem 1.5rem;border-top:2px dashed rgba(51,65,85,.35);display:flex;flex-direction:column;gap:.35rem}.bulk-summary-totals-row{display:flex;justify-content:space-between;align-items:center}.bulk-summary-totals-label{font-size:.78rem;color:#64748b;font-weight:500}.bulk-summary-totals-amount{font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums}.bulk-summary-totals-amount.cost{color:#fb923c}.bulk-summary-totals-amount.revenue,.bulk-summary-totals-amount.profit{color:#4ade80}.bulk-summary-totals-amount.loss{color:#f87171}.bulk-summary-undo-errors{padding:.5rem 1.5rem;display:flex;flex-direction:column;gap:.35rem;max-height:6rem;overflow-y:auto}.bulk-summary-undo-error{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:#fb923c;background:#fb923c14;padding:.35rem .625rem;border-radius:.375rem}.bulk-summary-undo-error svg{flex-shrink:0}.bulk-summary-footer{padding:.875rem 1.5rem;border-top:1px solid rgba(51,65,85,.4);background:#0f172a40}.bulk-summary-actions{display:flex;justify-content:space-between;align-items:center}.bulk-summary-undo-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#7f1d1d33;border:1px solid rgba(185,28,28,.35);border-radius:.5rem;color:#fca5a5;cursor:pointer;font-weight:500;font-size:.8rem;transition:all .2s ease}.bulk-summary-undo-btn:hover:not(:disabled){background:#b91c1c4d;border-color:#b91c1c80;color:#fecaca}.bulk-summary-undo-btn.confirm{background:#b91c1c59;border-color:#dc262699;color:#fecaca;animation:bulk-summary-pulse 1.5s ease-in-out infinite}.bulk-summary-undo-btn:disabled{opacity:.6;cursor:not-allowed}.bulk-summary-spinner{animation:bulk-summary-spin .8s linear infinite}@keyframes bulk-summary-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bulk-summary-pulse{0%,to{box-shadow:0 0 #dc262640}50%{box-shadow:0 0 0 4px #dc26261a}}.bulk-summary-done-btn{padding:.5rem 1.5rem;background:#15803d;border-radius:.5rem;border:none;color:#fff;cursor:pointer;font-weight:600;font-size:.82rem;transition:all .2s ease;box-shadow:0 1px 3px #0003}.bulk-summary-done-btn:hover:not(:disabled){background:#16a34a;box-shadow:0 2px 8px #22c55e40}.bulk-summary-done-btn:disabled{opacity:.35;cursor:not-allowed}.bulk-summary-undo-result{display:flex;justify-content:space-between;align-items:center}.bulk-summary-undo-result .undo-success{font-size:.82rem;font-weight:600;color:#4ade80}.bulk-summary-undo-result .undo-partial{font-size:.82rem;font-weight:600;color:#fb923c}@media(max-width:640px){.bulk-summary-modal{width:100%;max-height:95vh}.bulk-summary-receipt-header,.bulk-summary-line{grid-template-columns:1fr 3.5rem 4rem 4.5rem;gap:.25rem}.bulk-summary-receipt-header.with-profit,.bulk-summary-line.with-profit{grid-template-columns:1fr 3.5rem 4rem 4.5rem 4.5rem}.bulk-summary-line-name{font-size:.78rem}.bulk-summary-line-qty,.bulk-summary-line-price,.bulk-summary-line-total,.bulk-summary-line-profit{font-size:.75rem}}.confirm-modal{width:24rem}.confirm-modal-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.confirm-modal-title--danger{color:#f87171}.confirm-modal-text{color:#94a3b8;margin-bottom:1.5rem;font-size:.875rem}.confirm-modal-text strong{color:#fff}.confirm-modal-actions{display:flex;gap:.75rem}.confirm-modal-actions .btn{flex:1}.settings-section{margin-bottom:1.5rem}.settings-section-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.75rem}.settings-grid{display:grid;gap:1.5rem;margin-bottom:1.5rem}.settings-grid-narrow{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.settings-grid-wide{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.settings-format-row{display:flex;gap:.5rem}.settings-option-list{display:flex;flex-direction:column;gap:.5rem}.settings-option-row{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#334155;border-radius:.5rem;cursor:pointer}.settings-toggle-row{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#334155;border-radius:.5rem;cursor:pointer}.settings-toggle-row+.settings-toggle-row{margin-top:.5rem}.settings-option-checkbox{width:18px;height:18px;cursor:pointer;flex-shrink:0}.settings-option-text{font-size:.875rem}.settings-profit-label{font-size:.875rem;flex:1}.settings-password-row{margin-top:1.5rem;padding:1rem 0;border-top:1px solid rgb(71,85,105);display:flex;justify-content:center;align-items:center}.settings-password-link{background:none;border:none;color:#60a5fa;cursor:pointer;font-size:.875rem;text-decoration:underline;padding:0}.settings-password-link:hover{color:#93c5fd}.settings-format-btn{flex:1;padding:.75rem;border-radius:.5rem;border:none;color:#fff;cursor:pointer;font-weight:500;transition:background .2s}.settings-format-btn-active{background:#2563eb}.settings-format-btn-inactive{background:#475569}.settings-modal-container{background:#1e293b;padding:1.5rem;border-radius:.75rem;width:48rem;max-width:90vw;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgb(51,65,85);color:#d1d5db}.settings-modal-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem}.settings-tabs{display:flex;gap:0;border-bottom:1px solid rgb(51,65,85);margin-bottom:1.5rem}.settings-tab{background:transparent;border:none;color:#94a3b8;padding:.625rem 1.25rem;font-size:.875rem;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.settings-tab:hover{color:#e2e8f0}.settings-tab-active{color:#60a5fa;border-bottom-color:#60a5fa}.settings-tab-content{min-height:200px}.settings-modal-footer{display:flex;justify-content:flex-end;border-top:1px solid rgb(71,85,105);padding-top:1.5rem}.settings-done-btn{padding:.75rem 1.5rem;background:#2563eb;border-radius:.5rem;border:none;color:#fff;cursor:pointer;font-weight:500;font-size:.875rem;transition:background .2s}.settings-done-btn:hover{background:#1d4ed8}.settings-notifications-tab{display:flex;flex-direction:column;gap:1.5rem}.settings-notification-section{display:flex;flex-direction:column;gap:.5rem}.settings-notification-section-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.25rem}.settings-notification-list{display:flex;flex-direction:column;gap:.5rem}.settings-notification-toggle{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#334155;border-radius:.5rem;cursor:pointer}.settings-notification-checkbox{width:18px;height:18px;cursor:pointer;flex-shrink:0}.settings-notification-toggle-content{flex:1}.settings-notification-toggle-label{font-size:.875rem;margin-bottom:.25rem}.settings-notification-toggle-desc{font-size:.75rem;color:#9ca3af}.sound-picker{display:flex;flex-direction:column;gap:.5rem}.sound-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.sound-picker-option{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#334155;border:2px solid transparent;border-radius:.5rem;color:#d1d5db;font-size:.8125rem;cursor:pointer;transition:border-color .2s,background .2s}.sound-picker-option:hover{background:#475569}.sound-picker-option-active{border-color:#60a5fa;background:#60a5fa1a}.sound-picker-option-label{pointer-events:none}.sound-picker-play-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:.75rem;padding:.125rem .25rem;border-radius:.25rem;transition:color .15s;line-height:1}.sound-picker-play-btn:hover{color:#60a5fa}.sound-picker-file-input{display:none}.notif-volume-section{margin-bottom:.75rem;padding:.75rem 1rem;background:#1e293b;border:1px solid rgb(71,85,105);border-radius:.5rem}.notif-volume-row{display:flex;align-items:center;gap:.75rem}.notif-volume-label{color:#d1d5db;font-size:.875rem;font-weight:500;white-space:nowrap}.notif-volume-slider{flex:1;height:6px;appearance:none;background:#334155;border-radius:3px;outline:none;cursor:pointer}.notif-volume-slider::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:#60a5fa;cursor:pointer;border:none}.notif-volume-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#60a5fa;cursor:pointer;border:none}.notif-volume-value{color:#94a3b8;font-size:.8125rem;min-width:2.5rem;text-align:right}.changelog-modal{width:34rem;max-height:80vh;display:flex;flex-direction:column}.changelog-header{flex-shrink:0}.changelog-body{overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1rem;padding-right:.25rem}.changelog-release{display:flex;flex-direction:column;gap:.75rem}.changelog-release-header{display:flex;align-items:baseline;gap:.75rem;border-bottom:1px solid rgb(51,65,85);padding-bottom:.5rem}.changelog-version{font-size:1rem;font-weight:700;color:#d1d5db}.changelog-date{font-size:.8rem;color:#64748b}.changelog-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;padding:0;margin:0}.changelog-item{display:flex;align-items:flex-start;gap:.6rem}.changelog-item-text{font-size:.875rem;color:#cbd5e1;line-height:1.5}.changelog-badge{flex-shrink:0;font-size:.65rem;font-weight:700;padding:.15rem .45rem;border-radius:.25rem;margin-top:.15rem;text-transform:uppercase;letter-spacing:.05em}.changelog-badge--new{background:#1d4ed8;color:#fff}.changelog-badge--fix{background:#b91c1c;color:#fff}.changelog-badge--improved{background:#166534;color:#fff}.changelog-badge--tip{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.changelog-badge--removed{background:#713f12;color:#fde047}.price-alert-modal-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.price-alert-modal-icon{color:#ef4444}.price-alert-modal-title{font-size:1.25rem;font-weight:700;color:#d1d5db}.price-alert-modal-item-name{font-size:.875rem;color:#94a3b8;margin-bottom:1rem}.price-alert-current-prices{display:flex;gap:1rem;margin-bottom:1rem;padding:.75rem;background:#0f172a;border-radius:.5rem}.price-alert-current-price{display:flex;flex-direction:column;gap:.125rem;flex:1}.price-alert-current-label{font-size:.75rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.price-alert-current-value{font-size:.9375rem;font-weight:600;color:#4ade80;font-family:monospace}.price-alert-modal-fields{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.price-alert-field{display:flex;flex-direction:column;gap:.25rem}.price-alert-field-label{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:#cbd5e1;font-weight:500}.price-alert-field-icon-up{color:#4ade80}.price-alert-field-icon-down{color:#ef4444}.price-alert-input{width:100%;padding:.5rem .75rem;background:#334155;border-radius:.375rem;border:2px solid transparent;color:#fff;font-size:.875rem;font-family:monospace;outline:none;transition:border-color .2s;box-sizing:border-box}.price-alert-input:focus{border-color:#3b82f6}.price-alert-input::placeholder{color:#64748b}.price-alert-error{color:#ef4444;font-size:.8125rem;margin-bottom:.5rem}.price-alert-modal-actions{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.price-alert-modal-actions-right{display:flex;gap:.5rem;margin-left:auto}.price-alert-btn-delete{display:flex;align-items:center;justify-content:center;padding:.5rem;background:#7f1d1d;color:#fca5a5;border:none;border-radius:.375rem;cursor:pointer;transition:background .2s}.price-alert-btn-delete:hover{background:#991b1b}.stock-name-bell{display:inline-flex;align-items:center;justify-content:center;padding:.125rem;margin-left:auto;background:none;border:none;cursor:pointer;color:#64748b;transition:color .2s;vertical-align:middle;flex-shrink:0}.stock-name-bell:hover{color:#cbd5e1}.stock-name-bell-active{color:#ef4444}.stock-name-bell-active:hover{color:#f87171}.stock-name-link{cursor:pointer}.stock-name-link:hover{text-decoration:underline}.notification-alerts-list{max-height:320px;overflow-y:auto}.notification-alert-item{display:flex;align-items:flex-start;gap:.625rem;padding:.75rem 1rem;border-bottom:1px solid rgb(51,65,85);transition:background .15s}.notification-alert-item:hover{background:#1e293b}.notification-alert-item:last-child{border-bottom:none}.notification-alert-icon{width:24px;height:24px;border-radius:4px;image-rendering:pixelated;flex-shrink:0}.notification-alert-info{flex:1;min-width:0}.notification-alert-name{font-size:.8125rem;font-weight:600;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-alert-thresholds{display:flex;gap:.5rem;margin-top:.125rem}.notification-alert-threshold{display:flex;align-items:center;gap:.25rem;font-size:.6875rem;font-family:monospace}.notification-alert-threshold-high{color:#4ade80}.notification-alert-threshold-low{color:#ef4444}.notification-alert-triggered{font-size:.6875rem;color:#94a3b8;margin-top:.125rem}.notification-alert-status{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .375rem;border-radius:.25rem;flex-shrink:0}.notification-alert-status-active{color:#4ade80;background:#4ade801a}.notification-alert-status-triggered{color:#fbbf24;background:#fbbf241a}.notification-alert-actions{display:flex;gap:.25rem;flex-shrink:0}.notification-alert-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;border-radius:.25rem;cursor:pointer;color:#94a3b8;transition:color .15s,background .15s}.notification-alert-action-btn:hover{color:#e2e8f0;background:#334155}.notification-alert-action-btn-delete:hover{color:#ef4444}.notification-alerts-header{padding:.5rem 1rem;border-bottom:1px solid rgb(51,65,85)}.notification-alerts-new-btn{width:100%;padding:.375rem .75rem;background:#334155;color:#cbd5e1;border:1px dashed rgb(71,85,105);border-radius:.375rem;cursor:pointer;font-size:.8125rem;font-weight:500;transition:background .2s,border-color .2s}.notification-alerts-new-btn:hover{background:#475569;border-color:#64748b}.notification-alert-live-prices{display:flex;gap:.5rem;font-size:.6875rem;color:#64748b;margin-top:.125rem;font-family:monospace}.archive-modal{width:36rem;max-height:80vh;overflow-y:auto}.archive-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.archive-modal-title{font-size:1.5rem;font-weight:700}.archive-modal-empty{color:#94a3b8}.archive-modal-list{display:flex;flex-direction:column;gap:.5rem}.archive-modal-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#334155;border-radius:.5rem;gap:1rem}.archive-modal-item-info{display:flex;align-items:center;gap:.5rem;flex:1}.archive-modal-item-icon{width:20px;height:20px;object-fit:contain;image-rendering:pixelated}.archive-modal-item-name{font-weight:600;color:#fff}.archive-modal-item-meta{font-size:.75rem;color:#94a3b8}.global-search-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#1e293b;border:1px solid rgb(51,65,85);border-radius:.5rem;color:#94a3b8;cursor:pointer;font-size:.8125rem;transition:border-color .2s,color .2s}.global-search-trigger:hover{border-color:#a855f7;color:#c084fc;background:#a855f71a}.global-search-shortcut{font-size:.6875rem;padding:.125rem .375rem;background:#334155;border-radius:.25rem;color:#94a3b8;font-family:monospace}.global-search-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:flex-start;justify-content:center;padding-top:15vh;z-index:100}.global-search-modal{width:100%;max-width:560px;background:#1e293b;border:1px solid rgb(71,85,105);border-top:2px solid rgb(168,85,247);border-radius:.75rem;box-shadow:0 25px 50px -12px #00000080,0 0 40px -8px #a855f726;overflow:hidden}.global-search-input-wrapper{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border-bottom:1px solid rgb(51,65,85)}.global-search-input-icon{color:#60a5fa;flex-shrink:0}.global-search-input{flex:1;background:none;border:none;outline:none;color:#fff;font-size:1rem}.global-search-input::placeholder{color:#64748b}.global-search-close{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background:#334155;border:none;border-radius:.25rem;color:#94a3b8;cursor:pointer;flex-shrink:0;transition:background .15s}.global-search-close:hover{background:#475569;color:#fff}.global-search-results{max-height:400px;overflow-y:auto;padding:.5rem}.global-search-empty{padding:2rem 1rem;text-align:center;color:#64748b;font-size:.875rem}.global-search-section{margin-bottom:.25rem}.global-search-section-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem .25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.global-search-section-stock .global-search-section-header{color:#a855f7}.global-search-section-category .global-search-section-header{color:#60a5fa}.global-search-section-transaction .global-search-section-header{color:#4ade80}.global-search-section-ge-item .global-search-section-header{color:#fb923c}.global-search-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem .75rem;background:none;border:none;border-radius:.5rem;color:#fff;cursor:pointer;text-align:left;font-size:.875rem;transition:background .1s}.global-search-item:hover,.global-search-item-selected{background:#334155}.global-search-item-selected{border-left:2px solid rgb(168,85,247)}.global-search-item-icon{flex-shrink:0}.global-search-icon-stock{color:#a855f7}.global-search-icon-category{color:#60a5fa}.global-search-icon-transaction{color:#4ade80}.global-search-icon-ge-item{color:#fb923c}.global-search-item-content{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.global-search-item-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-item-detail{font-size:.75rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-tx-badge{font-size:.6875rem;font-weight:600;padding:.125rem .5rem;border-radius:9999px;flex-shrink:0}.global-search-tx-buy{background:#22c55e26;color:#4ade80}.global-search-tx-sell{background:#ef444426;color:#fca5a5}.global-search-tx-remove{background:#94a3b826;color:#94a3b8}.btn{padding:.5rem 1rem;border-radius:.5rem;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-size:.875rem;transition:all .25s ease}.btn:hover{transform:scale(1.03)}.btn-primary{background:#1d4ed8}.btn-primary:hover{background:#1e40af}.btn-success{background:#15803d}.btn-success:hover{background:#166534}.btn-sell{background:#b91c1c}.btn-sell:hover{background:#991b1b}.btn-remove{background:#a855f7}.btn-remove:hover{background:#9333ea}.btn-danger{background:#7f1d1d}.btn-danger:hover{background:#450a0a}.btn-info{background:#4338ca}.btn-info:hover{background:#3730a3}.btn-secondary{background:#475569}.btn-secondary:hover{background:#334155}.btn-purple{background:#a855f7}.btn-purple:hover{background:#9333ea}.btn-sm{padding:.25rem .75rem;font-size:.75rem}.btn-warning{background:#d97706}.btn-warning:hover{background:#b45309}.btn-blue{background:#3b82f6}.btn-blue:hover{background:#1d4ed8}.badge{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;white-space:nowrap;min-width:80px}.badge-ok{background:#15803d}.badge-timer{background:#ca8a04;color:#000}.badge-hold{background:#4f46e5}.badge-low{background:#dc2626}.badge-purple{background:#4f46e5}.action-buttons{display:flex;justify-content:center;gap:.25rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#334155;border-radius:.5rem;cursor:pointer;position:relative}.checkbox-input{width:18px;height:18px;cursor:pointer}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#475569;color:#9ca3af;font-size:.75rem;font-weight:700;cursor:help}.tooltip{position:absolute;bottom:100%;right:0;margin-bottom:.5rem;padding:.5rem .75rem;background:#0f172a;border:1px solid rgb(71,85,105);border-radius:.5rem;font-size:.75rem;color:#d1d5db;white-space:nowrap;z-index:1000;box-shadow:0 10px 15px -3px #0000004d}.setting-tooltip-wrapper{position:relative;cursor:help}.setting-tooltip{white-space:normal;width:16rem;right:auto;left:0}.link-primary{color:#60a5fa;text-decoration:none;transition:color .2s}.link-primary:hover{color:#93c5fd}.link-support{padding:.5rem 1rem;background:#fb923c;border-radius:.5rem;color:#fff;text-decoration:none;font-weight:500;transition:background .2s}.link-support:hover{background:#f97316}.page-container{min-height:100vh;background:#0f172a;color:#fff;padding:2rem}.page-content{max-width:800px;margin:0 auto}.page-title{font-size:2rem;font-weight:700;margin-bottom:2rem}.section{margin-bottom:2rem}.section-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.section-text{line-height:1.6;color:#cbd5e1}.text-muted{color:#9ca3af}.modal-container{background:#1e293b;padding:1.5rem;border-radius:.75rem;width:28rem;max-width:90vw;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgb(51,65,85);color:#fff}.modal-container-lg{padding:2rem}.modal-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:#d1d5db}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.btn-modal-cancel{padding:.5rem 1rem;background:#334155;color:#fff;border-radius:.375rem;border:none;cursor:pointer;transition:background .2s}.btn-modal-cancel:hover{background:#475569}.btn-modal-confirm{padding:.5rem 1rem;background:#3b82f6;color:#fff;border-radius:.375rem;border:none;cursor:pointer;transition:background .2s}.btn-modal-confirm:hover{background:#2563eb}.loading-container{min-height:100vh;background:#0f172a;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem}.item-icon-fallback{display:inline-flex;align-items:center;justify-content:center;background:#334155;border:1px solid rgb(71,85,105);border-radius:.25rem;color:#cbd5e1;font-size:.7rem;font-weight:700;line-height:1;object-fit:contain;text-transform:uppercase;-webkit-user-select:none;user-select:none}.input-step-wrapper{display:flex;align-items:stretch;width:100%;gap:.25rem}.input-step-field{flex:1;min-width:0}.input-step-btns{display:flex;flex-direction:column;gap:2px}.input-step-btn{width:22px;flex:1;background:#475569;border:none;color:#cbd5e1;cursor:pointer;border-radius:.25rem;display:flex;align-items:center;justify-content:center;font-size:.625rem;line-height:1;padding:0;transition:background .15s}.input-step-btn:hover{background:#64748b;transform:none}.input-step-wrapper input[type=number]::-webkit-inner-spin-button,.input-step-wrapper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-step-wrapper input[type=number]{-moz-appearance:textfield}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top left,#0f172a,#1e1b4b,#000);color:#fff}#root{min-height:100vh}table{border-collapse:collapse;width:100%}::-webkit-scrollbar{height:10px}::-webkit-scrollbar-thumb{background:#64748b80;border-radius:8px}button{transition:all .25s ease}button:hover{transform:scale(1.03)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeIn{animation:fadeIn .25s ease-out}table{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;border-collapse:collapse}th,td{border:1px solid rgba(100,116,139,.2)}thead th{background-color:#1e293bf2;text-transform:uppercase;letter-spacing:.05em}tbody tr:hover{background-color:#33415580}tbody td:hover{background-color:#94a3b81a;cursor:pointer}
