:root{color-scheme:dark;--accent: #7dd3a7;--background: #0b0f14;--border: #243140;--border-strong: #273545;--card: #101820;--card-alt: #111922;--danger: #ff7b7b;--muted: #8da0b4;--muted-strong: #9dafc1;--positive: #5ee08f;--row-border: #1f2b37;--sidebar: #0f151c;--sidebar-hover: #17212c;--sidebar-selected: #1b2734;--table-header: #14202b;--text: #e6edf3;--text-strong: #f4f7fb;color:var(--text);background:var(--background);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}:root[data-theme=light]{color-scheme:light;--accent: #2f7750;--background: #f4f7f5;--border: #d7dfda;--border-strong: #dce3df;--card: #ffffff;--card-alt: #ffffff;--danger: #b34040;--muted: #687586;--muted-strong: #52606f;--positive: #177245;--row-border: #edf0ee;--sidebar: #edf2ef;--sidebar-hover: #f8faf9;--sidebar-selected: #ffffff;--table-header: #f7f9f8;--text: #18212f;--text-strong: #172033}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}button{font:inherit}.app-shell{background:var(--background);min-height:100vh}.topbar{align-items:center;background:var(--card);border-bottom:1px solid var(--border);display:flex;gap:24px;justify-content:space-between;min-height:56px;padding:10px 18px;position:sticky;top:0;z-index:10}.topbar div{align-items:baseline;display:flex;flex-wrap:wrap;gap:12px}.topbar span{color:var(--muted);font-size:13px}.topbar strong{color:var(--text-strong);font-size:15px}.topbar-nav{align-items:center;display:flex;gap:6px}.nav-button{background:transparent;border:1px solid transparent;border-radius:6px;color:var(--muted-strong);cursor:pointer;font-size:13px;padding:6px 9px}.nav-button:hover{background:var(--sidebar-hover);color:var(--text)}.nav-button.active{background:var(--sidebar-selected);border-color:var(--border-strong);color:var(--text-strong)}.workspace{display:grid;grid-template-columns:320px minmax(0,1fr);height:calc(100vh - 56px);min-height:calc(100vh - 56px);overflow:hidden}.theme-list{background:var(--sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:4px;overflow:auto;padding:10px}.theme-list-row{display:flex;flex-direction:column;gap:4px}.theme-list-item{align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text);cursor:pointer;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 34px;min-height:42px;padding:8px 10px;text-align:left;width:100%}.theme-list-item:hover{background:var(--sidebar-hover)}.theme-list-item.selected{background:var(--sidebar-selected);border-color:var(--border-strong)}.theme-list-item span{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-list-item strong{color:var(--accent);font-size:14px;text-align:right}.theme-detail{min-width:0;overflow:auto;padding:18px}.theme-list-detail{display:none}.theme-header{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) auto;margin-bottom:18px}.theme-header h1{font-size:24px;letter-spacing:0;line-height:1.2;margin:0 0 8px}.theme-header p{color:var(--muted-strong);font-size:14px;margin:0;max-width:920px}.theme-rs{display:flex;gap:10px}.theme-rs div{background:var(--card-alt);border:1px solid var(--border-strong);border-radius:6px;min-width:90px;padding:10px 12px}.theme-rs span{color:var(--muted-strong);display:block;font-size:12px}.theme-rs strong{color:var(--text-strong);display:block;font-size:22px;line-height:1.2}.stock-table-wrap{background:var(--card);border:1px solid var(--border-strong);border-radius:6px;overflow:auto}.stock-table{border-collapse:collapse;min-width:980px;width:100%}.rs-stock-table{min-width:720px}.stock-card-list{display:none}.stock-table th,.stock-table td{border-bottom:1px solid var(--row-border);font-size:13px;padding:9px 10px;text-align:right;vertical-align:middle;white-space:nowrap}.stock-table th{background:var(--table-header);color:var(--muted-strong);font-weight:600;position:sticky;top:0;z-index:1}.stock-table th:first-child,.stock-table td:first-child{text-align:left}.stock-table td:first-child span{color:var(--muted);display:block;font-size:12px;max-width:260px;overflow:hidden;text-overflow:ellipsis}.positive{color:var(--positive)}.negative{color:var(--danger)}.neutral{color:var(--muted)}.ticker-tag{align-items:center;display:flex;justify-content:flex-end;min-height:32px;min-width:140px}.ticker-tag-fallback{color:var(--muted);font-size:12px}.screen-message{align-items:center;background:var(--background);color:var(--muted-strong);display:flex;gap:10px;justify-content:center;min-height:100vh}.inline-message{align-items:center;background:var(--card);border:1px solid var(--border-strong);border-radius:6px;color:var(--muted-strong);display:flex;gap:10px;justify-content:center;min-height:96px}.rs-page{height:calc(100vh - 56px);overflow:auto;padding:18px}.rs-page-header{align-items:end;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) auto;margin-bottom:18px}.rs-page-header h1{font-size:24px;letter-spacing:0;line-height:1.2;margin:0 0 8px}.rs-page-header p{color:var(--muted-strong);font-size:14px;margin:0}.rs-date-form{align-items:end;display:grid;gap:8px;grid-template-columns:auto auto}.rs-date-form label{color:var(--muted-strong);font-size:12px;grid-column:1 / -1}.rs-date-form input{background:var(--card);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font:inherit;height:34px;padding:5px 8px}.rs-date-form button{background:var(--sidebar-selected);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);cursor:pointer;height:34px;padding:5px 12px}.rs-date-form button:disabled{color:var(--muted);cursor:progress}.rs-summary{color:var(--muted-strong);display:flex;flex-wrap:wrap;font-size:13px;gap:12px;margin:0 0 10px}.theme-toggle{align-items:center;background:var(--sidebar-selected);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);cursor:pointer;display:inline-flex;height:32px;justify-content:center;width:32px}.theme-toggle:hover{background:var(--sidebar-hover)}.theme-toggle svg{height:16px;width:16px}@media(max-width:840px){.topbar{align-items:stretch;gap:10px}.topbar-nav{order:3;width:100%}.nav-button{flex:1}.rs-page{height:calc(100vh - 100px);padding:12px}.rs-page-header{align-items:stretch;grid-template-columns:1fr}.rs-date-form{grid-template-columns:minmax(0,1fr) auto}.workspace{display:block;height:calc(100vh - 100px);min-height:calc(100vh - 100px)}.theme-list{border-right:0;height:100%;max-height:none}.theme-header{grid-template-columns:1fr}.theme-detail-page{display:none}.theme-list-detail{border:1px solid var(--border-strong);border-radius:6px;display:flex;flex-direction:column;max-height:calc(100vh - 132px);padding:12px}.theme-list-detail .theme-header{gap:12px;margin-bottom:12px}.theme-list-detail .theme-header h1{font-size:18px}.theme-list-detail .theme-rs{flex-wrap:wrap}.stock-table-wrap{display:none}.stock-card-list{display:grid;gap:10px}.stock-card{background:var(--card);border:1px solid var(--border-strong);border-radius:6px;display:grid;gap:12px;padding:12px}.stock-card-header{align-items:start;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto}.stock-card-header strong{color:var(--text-strong);display:block;font-size:15px;line-height:1.2}.stock-card-header span{color:var(--muted);display:block;font-size:12px;line-height:1.35;margin-top:3px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.stock-card-metrics{display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.stock-card-rs-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.stock-card-metric{background:var(--card-alt);border:1px solid var(--row-border);border-radius:6px;min-width:0;padding:7px 8px}.stock-card-metric span{color:var(--muted);display:block;font-size:11px;line-height:1.1;margin-bottom:4px}.stock-card-metric strong{color:var(--text-strong);display:block;font-size:13px;line-height:1.2;overflow-wrap:anywhere}.stock-card-metric strong.positive{color:var(--positive)}.stock-card-metric strong.negative{color:var(--danger)}.stock-card-metric strong.neutral{color:var(--muted)}.stock-card .ticker-tag{min-width:118px}}
