.sidebar{border-left:1px solid var(--color-divider);background:var(--color-bg);flex-shrink:0;width:320px;display:flex}.sidebar .rail{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2);border-right:1px solid var(--color-divider);flex-direction:column;display:flex}.sidebar .rail .rail-top{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.sidebar .rail .rail-top .rail-btn{margin-top:0}.sidebar .rail .rail-btn{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:8px;margin-top:auto;padding:8px}.sidebar .rail .rail-btn:hover{background:var(--color-surface-subtle)}.sidebar .rail .rail-btn.active{background:var(--color-surface-subtle);color:var(--color-brand)}.sidebar .content{flex:1;min-width:0;overflow-y:auto}.item-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;font-size:.8125rem;list-style:none;display:flex}.item-list li{align-items:center;gap:var(--space-2);display:flex}.item-name{align-items:center;gap:var(--space-2);color:inherit;flex:1;min-width:0;text-decoration:none;display:flex}.item-name .name{font-weight:600;display:block}.item-name .sub{font-size:.75rem;display:block}.item-value{text-align:right;white-space:nowrap;flex-direction:column;gap:1px;display:flex}.ranked .rank{width:1.25em;color:var(--color-text-tertiary);font-weight:700}.invest-holdings-list{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.invest-holdings-list .dim-note{color:var(--color-text-tertiary);font-size:.8125rem}.invest-holdings-list .invest-summary{padding-bottom:var(--space-2);flex-direction:column;gap:2px;display:flex}.invest-holdings-list .invest-summary .total{font-size:1.25rem;font-weight:800}.invest-holdings-list .pnl-row{gap:var(--space-2);font-size:.875rem;display:flex}.invest-holdings-list .holding-pnl{font-weight:600}.invest-holdings-list .holding-pnl.positive{color:var(--color-positive)}.invest-holdings-list .holding-pnl.negative{color:var(--color-negative)}.invest-holdings-list .holding-pnl.neutral{color:var(--color-text-secondary)}.invest-holdings-list .invest-controls{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.invest-holdings-list .sort-link{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:600}.invest-holdings-list .holdings-scroll{gap:var(--space-2);flex-direction:column;display:flex;overflow-y:auto}.invest-holdings-list .group-section{border-top:1px solid var(--color-divider);padding-top:var(--space-2)}.invest-holdings-list .group-header{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) 0;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;font-size:.875rem;font-weight:700;display:flex}.invest-holdings-list .group-header .chevron{color:var(--color-text-tertiary);margin-left:auto;transition:transform .15s}.invest-holdings-list .group-header .chevron.closed{transform:rotate(180deg)}.watchlist-view{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.watchlist-view .dim-note{color:var(--color-text-tertiary);font-size:.8125rem}.watchlist-view .invest-controls{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.watchlist-view .sort-link{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8125rem;font-weight:600}.watchlist-view .group-section{border-top:1px solid var(--color-divider);padding-top:var(--space-2)}.watchlist-view .group-header{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) 0;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;font-size:.875rem;font-weight:700;display:flex}.watchlist-view .group-header .chevron{color:var(--color-text-tertiary);margin-left:auto;transition:transform .15s}.watchlist-view .group-header .chevron.closed{transform:rotate(180deg)}.recently-viewed-list{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.recently-viewed-list .dim-note{color:var(--color-text-tertiary);font-size:.8125rem}.recently-viewed-list .remove-btn{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;padding:2px}.feedback-pane{padding:var(--space-3);gap:var(--space-3);flex-direction:column;display:flex}.feedback-pane .dim-note{color:var(--color-text-tertiary);font-size:.8125rem}.feedback-pane .feedback-title{margin:0;font-weight:700}.feedback-pane .rating-row{gap:var(--space-2);display:flex}.feedback-pane .rating-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);border-radius:var(--radius-control);padding:var(--space-2) 0;cursor:pointer;flex:1;font-weight:700}.feedback-pane .rating-btn.active{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.feedback-pane .rating-labels{justify-content:space-between;margin-top:-6px;display:flex}.feedback-pane textarea{resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;color:var(--color-text-primary);font:inherit;padding:var(--space-2);box-sizing:border-box}.feedback-pane .error-note{color:var(--color-positive);margin:0;font-size:.8125rem}.feedback-pane .submit-btn{background:var(--color-brand);color:#fff;border-radius:var(--radius-control);padding:var(--space-2);cursor:pointer;border:none;font-weight:700}.feedback-pane .submit-btn:disabled{opacity:.5;cursor:not-allowed}.rankings-list{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.order-history-list{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.order-history-list .dim-note{color:var(--color-text-tertiary);font-size:.8125rem}.order-history-list .orders-section{border-top:1px solid var(--color-divider);padding-top:var(--space-2);gap:var(--space-2);flex-direction:column;display:flex}.order-history-list .orders-header{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) 0;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;font-size:.875rem;font-weight:700;display:flex}.order-history-list .orders-header .chevron{color:var(--color-text-tertiary);margin-left:auto;transition:transform .15s}.order-history-list .orders-header .chevron.closed{transform:rotate(180deg)}.order-history-list .orders-list li{align-items:flex-start}.order-history-list .orders-list .empty{justify-content:center}.order-history-list .order-date{flex-shrink:0;width:2.25em;font-size:.75rem}.order-history-list .cancel-order-btn{border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;margin-top:2px;padding:2px 8px;font-size:.75rem}.order-history-list .cancel-order-btn:disabled{opacity:.4;cursor:not-allowed}.settings-modal{z-index:100;padding:var(--space-4);background:#0a0c128c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal .dialog{background:var(--color-surface);border-radius:var(--radius-panel);border:1px solid var(--color-border);width:100%;max-width:560px;min-height:280px;display:flex;overflow:hidden}.settings-modal .dialog .category-nav{background:var(--color-surface-subtle);border-right:1px solid var(--color-divider);width:140px;padding:var(--space-3);flex-direction:column;flex-shrink:0;gap:2px;display:flex}.settings-modal .dialog .category{color:var(--color-text-secondary);font:inherit;text-align:left;border-radius:var(--radius-control);cursor:pointer;background:0 0;border:none;padding:8px 10px;font-size:.875rem;font-weight:600}.settings-modal .dialog .category.active{background:var(--color-surface);color:var(--color-text-primary)}.settings-modal .dialog .settings-content{min-width:0;padding:var(--space-4);gap:var(--space-4);flex-direction:column;flex:1;display:flex}.settings-modal .dialog .settings-content header{justify-content:space-between;align-items:center;display:flex}.settings-modal .dialog .settings-content h3{color:var(--color-text-primary);margin:0;font-size:1rem}.settings-modal .dialog .settings-content .row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.settings-modal .dialog .settings-content .label{color:var(--color-text-primary);font-size:.875rem}.settings-modal .dialog .icon-btn{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;display:inline-flex}.settings-modal .dialog .icon-btn:hover{background:var(--color-surface-subtle)}.item-group-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.item-group-overlay .item-group-modal{background:var(--color-surface);border-radius:var(--radius-panel);flex-direction:column;width:min(640px,92vw);max-height:80vh;display:flex;overflow:hidden}.item-group-overlay .item-group-modal .modal-header{padding:var(--space-4);border-bottom:1px solid var(--color-divider);justify-content:space-between;align-items:center;display:flex}.item-group-overlay .item-group-modal .modal-header h3{margin:0;font-size:1rem}.item-group-overlay .item-group-modal .modal-header .item-group-close-btn{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none}.item-group-overlay .item-group-modal .modal-body{flex:1;min-height:0;display:flex}.item-group-overlay .item-group-modal .modal-body .groups-col{border-right:1px solid var(--color-divider);width:180px;padding:var(--space-3);gap:var(--space-2);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.item-group-overlay .item-group-modal .modal-body .groups-col .add-group{color:var(--color-brand);cursor:pointer;padding:var(--space-1) 0;background:0 0;border:none;align-items:center;gap:4px;font-size:.8125rem;font-weight:700;display:flex}.item-group-overlay .item-group-modal .modal-body .groups-col .group-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.item-group-overlay .item-group-modal .modal-body .groups-col .group-list li{align-items:center;gap:2px;display:flex}.item-group-overlay .item-group-modal .modal-body .groups-col .group-list li:hover .group-actions{display:flex}.item-group-overlay .item-group-modal .modal-body .groups-col .group-item{border-radius:var(--radius-control);padding:var(--space-2);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;flex:1;justify-content:space-between;min-width:0;font-size:.8125rem;font-weight:700;display:flex}.item-group-overlay .item-group-modal .modal-body .groups-col .group-item .count{color:var(--color-text-tertiary);font-weight:400}.item-group-overlay .item-group-modal .modal-body .groups-col .group-item.active{background:var(--color-surface-subtle);color:var(--color-text-primary)}.item-group-overlay .item-group-modal .modal-body .groups-col .group-actions{gap:2px;display:none}.item-group-overlay .item-group-modal .modal-body .groups-col .group-actions button{color:var(--color-text-tertiary);cursor:pointer;background:0 0;border:none;padding:2px}.item-group-overlay .item-group-modal .modal-body .members-col{flex-direction:column;flex:1;min-width:0;display:flex}.item-group-overlay .item-group-modal .modal-body .members-col .members-header{align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-divider);display:flex}.item-group-overlay .item-group-modal .modal-body .members-col .members-header select{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text-secondary);padding:var(--space-1) var(--space-2);font-size:.8125rem}.item-group-overlay .item-group-modal .modal-body .members-col .members-header .sort-label{color:var(--color-text-tertiary);margin-left:auto;font-size:.8125rem}.item-group-overlay .item-group-modal .modal-body .members-col .member-list{padding:var(--space-2);flex:1;margin:0;list-style:none;overflow-y:auto}.item-group-overlay .item-group-modal .modal-body .members-col .member-list li{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-control);display:flex}.item-group-overlay .item-group-modal .modal-body .members-col .member-list li:hover{background:var(--color-surface-subtle)}.item-group-overlay .item-group-modal .modal-body .members-col .member-list .grip{color:var(--color-text-tertiary);cursor:grab;display:flex}.item-group-overlay .item-group-modal .modal-body .members-col .member-list .name{font-size:.875rem;font-weight:600}.item-group-overlay .item-group-modal .modal-body .members-col .member-list .empty{color:var(--color-text-tertiary);justify-content:center;font-size:.8125rem}@media (width<=768px),(height<=500px) and (orientation:landscape){.sidebar{display:none}.settings-modal .dialog{width:100%;max-width:100vw}}
