:root{--bg:#f7f7f8;--surface:#fff;--border:#e8e8ea;--text:#1a1a1a;--muted:#8c8c8c;--muted-light:#b0b0b5;--accent:#1a1a1a;--rise:#e03e3e;--fall:#1a9e6f;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000d;--font-body:"Source Sans 3", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:64px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{min-width:320px;font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}#root{min-height:100vh}::selection{color:var(--text);background:#1a1a1a1f}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-layout{background:var(--bg);min-height:100vh}.app-header.ant-layout-header{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:56px;padding:0 clamp(20px,5vw,40px);line-height:1;display:flex;overflow:hidden}.app-header{z-index:100;position:sticky;top:0}.app-brand{align-items:baseline;gap:10px;display:flex}.app-brand-eyebrow{color:var(--muted);letter-spacing:.02em;font-size:12px}.app-brand-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:600}.app-header-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.app-status-time{color:var(--muted);white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:6px;margin:0;padding:0;font-size:12px;line-height:1;display:inline-flex}.app-status-time-icon{color:var(--muted-light);flex-shrink:0;font-size:13px}.app-status-time-text{font-family:var(--font-mono);letter-spacing:.02em;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.app-settings-btn{font-size:13px;color:var(--muted)!important;height:32px!important;padding-inline:8px!important}.app-settings-btn:hover{color:var(--text)!important;background:var(--bg)!important}@media (width<=640px){.app-brand-eyebrow{display:none}.app-header-right{gap:8px}.app-status-time-text{font-size:11px}}.app-content{padding:clamp(28px,5vw,48px) clamp(20px,5vw,40px) 56px}.content-inner{max-width:1080px;margin:0 auto}.section-gap{height:32px}.app-hero{margin-bottom:36px}.app-hero-headline{color:var(--text);letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(1.5rem,3.5vw,1.875rem);font-weight:600;line-height:1.3}.app-hero-desc{color:var(--muted);max-width:48ch;margin:0;font-size:15px;line-height:1.6}.panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:12px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:20px 24px 0;display:flex}.panel-title{color:var(--text);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:600}.panel-extra{flex-shrink:0}.panel-body{padding:20px 24px 24px}.sector-block-label{color:var(--text);margin-bottom:12px;font-size:13px;font-weight:600;display:block}.rank-badge{min-width:26px;height:22px;font-family:var(--font-mono);color:var(--muted);justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:500;display:inline-flex}.rank-badge--top3{color:var(--text);font-weight:600}.kv-item-value.kv-item-value--rise,.flow-value.flow-value--rise{color:var(--rise);font-weight:600}.kv-item-value.kv-item-value--fall,.flow-value.flow-value--fall{color:var(--fall);font-weight:600}.flow-value{font-family:var(--font-mono);font-size:13px}.stock-search-bar{gap:10px;max-width:360px;display:flex}.stock-search-bar .ant-input{font-family:var(--font-mono);letter-spacing:.06em}.stock-search-hint{color:var(--muted-light);margin-top:16px;font-size:13px;display:block}.stock-batch-actions{align-items:center;gap:12px;margin-top:12px;display:flex}.stock-batch-count{color:var(--muted);font-size:13px}.kv-item-label{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.kv-item-value{font-family:var(--font-mono);color:var(--text);word-break:break-all;font-size:14px;font-weight:500;display:block}.kv-empty{color:var(--muted-light);font-size:13px}.stock-dashboard{margin-top:24px}.stock-hero{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:20px}.stock-hero-name{color:var(--text)!important;letter-spacing:-.02em!important;margin:0 0 4px!important;font-weight:600!important}.stock-hero-code{font-family:var(--font-mono);margin-left:12px;font-weight:500;color:var(--muted)!important;font-size:.75em!important}.stock-hero-tday{color:var(--muted);font-size:13px}.data-card{overflow:visible;border:1px solid var(--border)!important;background:var(--surface)!important;box-shadow:none!important;border-radius:10px!important}.data-card .ant-card-body{padding:16px;overflow:visible}.data-card .ant-card-head{border-bottom:1px solid var(--border);min-height:44px;padding:0 16px}.data-card .ant-card-head-title{color:var(--text);padding:12px 0;font-size:13px;font-weight:600}.stock-dashboard .ant-row{align-items:flex-start}.stock-dashboard .ant-card{overflow:visible}.settings-drawer .ant-drawer-header{border-bottom:1px solid var(--border)}.settings-drawer .ant-drawer-title{letter-spacing:-.01em;font-weight:600}.settings-section-title{color:var(--text);margin-bottom:6px;font-size:14px;font-weight:600}.settings-section-desc{color:var(--muted)!important;margin-bottom:12px!important;font-size:13px!important;line-height:1.55!important}.app-footer{text-align:center;color:var(--muted-light);background:0 0;border-top:none;padding:20px;font-size:12px}.ant-table-wrapper .ant-table{background:0 0}.ant-table-thead>tr>th{font-size:12px;font-weight:500;color:var(--muted)!important;background:0 0!important}.ant-table-thead>tr>th:before{display:none!important}.ant-table-tbody>tr>td{border-bottom:1px solid var(--border)!important}.ant-segmented{border:1px solid var(--border);border-radius:8px;padding:2px}.ant-segmented-item-selected{box-shadow:var(--shadow-sm);font-weight:600}.ant-collapse{border:1px solid var(--border)!important;background:var(--bg)!important;border-radius:8px!important}.ant-collapse>.ant-collapse-item{border-bottom:1px solid var(--border)!important}.ant-collapse-header{font-size:13px;font-weight:500}.industry-flow-collapse.ant-collapse,.industry-flow-collapse .ant-collapse-content{overflow:visible}.industry-flow-collapse .ant-collapse-content-box{padding-top:8px!important;padding-bottom:4px!important}
