.today-screen{padding:20px 24px 32px;background:var(--bg-soft)}.today-shell{max-width:1120px;margin:0 auto}.today-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.today-title{margin:0;font-size:var(--fs-h1);font-weight:600;letter-spacing:-.01em;color:var(--text)}.today-sub{margin:6px 0 0;font-size:12px;color:var(--text-faint)}.today-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.today-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;font-size:12px;border-radius:999px;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-secondary);white-space:nowrap}.today-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--text-faint)}.today-chip.is-ready:before{background:var(--success)}.today-chip.is-local:before{background:var(--warn)}.today-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 12px;font-size:12px;font-family:inherit;color:var(--text);background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.today-btn:hover{border-color:var(--border-strong)}.today-btn:active{transform:translateY(1px)}.today-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.today-btn[disabled]{opacity:.6;cursor:not-allowed}.today-btn.is-accent{color:var(--text-on-accent);background:var(--accent);border-color:var(--accent)}.today-layout{margin-bottom:16px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-soft)}.today-layout[hidden]{display:none}.today-layout-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px;font-size:12px;color:var(--text-secondary)}.today-layout-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.today-layout-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius);background:var(--bg);border:1px solid var(--border);font-size:13px}.today-layout-item>span{flex:1;min-width:0}.today-layout-item button{min-width:30px;min-height:28px;font-size:12px;font-family:inherit;color:var(--text-secondary);background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer}.today-layout-item button:hover{color:var(--text);border-color:var(--border-strong)}.today-layout-item button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.today-layout-item button[aria-pressed=true]{color:var(--text-faint)}.today-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);align-items:stretch}.today-card{overflow:hidden}.today-card-head{padding:var(--sp-3) var(--sp-4) 0}.today-card-title{font-size:var(--fs-card);font-weight:600}.today-card-meta{font-size:var(--fs-meta)}.today-card-actions{gap:var(--sp-1)}.today-icon-btn{width:28px;height:28px;padding:0;font-size:var(--fs-meta);font-family:inherit;border-radius:var(--r-control)}.today-icon-btn:hover{color:var(--text);background:var(--surface-2);border-color:var(--border)}.today-body{padding:var(--sp-2) var(--sp-4) var(--sp-3);min-height:104px}.today-card.is-collapsed .today-body,.today-card.is-collapsed .today-foot{display:none}.today-card-foot{margin-top:auto;padding:var(--sp-2) var(--sp-4);font-size:var(--fs-meta);line-height:1.6;color:var(--text-faint);border-top:1px solid var(--border)}.today-card-foot a{color:var(--accent);text-decoration:none}.today-card-foot a:hover{text-decoration:underline}.today-list{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:232px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.today-row{display:flex;align-items:baseline;gap:8px;width:100%;min-width:0;padding:6px;border:0;border-radius:4px;background:transparent;color:var(--text);font-family:inherit;font-size:13px;text-align:left;text-decoration:none;cursor:pointer}.today-row:hover{background:var(--surface-2)}.today-row:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.today-rank{flex:0 0 18px;font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-faint);text-align:right}.today-rank.is-top{color:var(--danger);font-weight:600}.today-row-main{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-row-sub{flex:0 0 auto;font-size:11px;color:var(--text-faint);font-variant-numeric:tabular-nums}.today-back{display:inline-flex;align-items:center;justify-content:center;min-width:26px;min-height:26px;color:var(--text-secondary);text-decoration:none;border-radius:4px}.today-back:hover{color:var(--text);background:var(--bg)}.today-quote{display:flex;align-items:baseline;gap:8px;padding:6px;border-radius:4px}.today-quote:hover{background:var(--bg)}.today-quote-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.today-quote-price{font-size:13px;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.today-quote-pct{flex:0 0 62px;text-align:right;font-size:12px;font-variant-numeric:tabular-nums}.today-up{color:var(--danger)}.today-down{color:var(--success)}.today-flat{color:var(--text-faint)}:root[data-quote-color=intl] .today-up{color:var(--success)}:root[data-quote-color=intl] .today-down{color:var(--danger)}.today-feed-src{flex:0 0 auto;max-width:34%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--text-faint)}.today-state{display:grid;gap:6px;padding:10px 2px;font-size:12px;line-height:1.7;color:var(--text-secondary)}.today-state b{color:var(--text);font-size:13px}.today-state-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.today-state-actions a,.today-state-actions button{text-decoration:none}.today-skel{height:12px;margin:8px 6px;border-radius:6px;background:linear-gradient(90deg,var(--border) 25%,var(--bg) 37%,var(--border) 63%);background-size:300% 100%;animation:today-shimmer 1.4s ease-in-out infinite}.today-skel:nth-child(2){width:82%}.today-skel:nth-child(3){width:64%}@keyframes today-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (max-width: 900px){.today-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 480px){.today-screen{padding:26px 16px 8px}.today-head{align-items:flex-start}.today-tools{width:100%}.today-title{font-size:18px}.today-card-head{padding:9px 12px}.today-body{padding:6px 10px 10px}.today-card-foot{padding:6px 10px}.today-quote-pct{flex-basis:54px}}@media (prefers-reduced-motion: reduce){.today-skel{animation:none}.today-btn:active{transform:none}}
