/* Shared presentation layer. Existing page scripts retain data and behavior ownership. */
:root{--ink:#202c3d;--muted:#5e6c7e;--line:#dce2e9;--paper:#fff;--bg:#f2f4f7;--brand:#315bba;--brand-dark:#254991;--green:#166954;--amber:#89591d;--red:#a83740;--gain:#c43a3a;--loss:#16805c;color-scheme:light;font-synthesis:none}
*{box-sizing:border-box;scrollbar-color:#abb8c9 #f2f4f7;scrollbar-width:thin}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.65 "Microsoft YaHei","PingFang SC",sans-serif;font-variant-numeric:tabular-nums}
[hidden]{display:none!important}::selection{background:#dce7ff;color:#173468}
a{text-underline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--brand);outline-offset:3px}input{caret-color:var(--brand)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}
header.topbar,header.nav{width:100%;max-width:none;min-height:66px;height:auto;margin:0;padding:10px 32px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;background:#fff;border:0;border-bottom:1px solid var(--line)}
header .brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:16px;font-weight:700;letter-spacing:0;text-decoration:none;flex-shrink:0}
header .brand span{margin:0}header .brand .brand-mark{display:grid;place-items:center;width:32px;height:32px;margin:0;border:0;border-radius:5px;background:#263d67;color:white;font:700 11px/1 Arial,sans-serif}
header .brand>span:last-child{display:block}header .brand strong,header .brand small{display:block}header .brand strong{font-size:16px;line-height:1.35}header .brand small{font-size:11px;font-weight:400;line-height:1.5;margin-top:2px;color:var(--muted)}
header nav.product-nav{height:auto;display:flex;align-items:center;flex-wrap:wrap;gap:22px}header nav.product-nav a{height:auto;padding:6px 0;border:0;font-size:13px;font-weight:400;white-space:nowrap;color:var(--muted);text-decoration:none}header nav.product-nav a[aria-current]{color:var(--brand);font-weight:700}header nav.product-nav a:hover{color:var(--brand)}
.eyebrow{display:none}
h1,h2,h3{letter-spacing:0;line-height:1.5}h1{font-size:28px}h2{font-size:19px}h3{font-size:16px}
/* Home: a clear query entrance, then existing product and account evidence. */
.cq-home main,.cq-home footer{max-width:1440px;margin:auto;padding-left:32px;padding-right:32px}
.cq-home .hero{grid-template-columns:1.25fr 1fr;gap:64px;padding:58px 0 48px;align-items:center}
.cq-home h1{font-size:36px;line-height:1.65;font-weight:700;margin-bottom:18px}
.cq-home .lead{font-size:14px;line-height:2;max-width:560px}
.cq-home form{margin-top:26px}.cq-home label{color:var(--muted);font-size:12px}
.cq-home .search{border:1px solid #b7c2d0;border-radius:4px}.cq-home input{padding:13px 14px;font-size:15px}.cq-home button{background:var(--brand)}.cq-home button:hover{background:var(--brand-dark)}
.cq-home .guide{border:1px solid var(--line);border-radius:0;padding:26px;background:#fff}
.cq-home .guide-top{font-size:14px}.cq-home .guide article{gap:18px;margin-top:22px}.cq-home .guide article>b{color:#315bba;font:12px/1.8 Arial,sans-serif}.cq-home .guide h2{font-size:15px}.cq-home .guide p{font-size:12px}
.cq-home .tools{padding:30px 0 34px}.cq-home .section-head h2{font-size:22px}
.cq-home .tool-grid{gap:0;border:1px solid var(--line);background:white;margin-top:20px}.cq-home .tool{border:0;border-radius:0;background:transparent;padding:24px}.cq-home .tool+.tool{border-left:1px solid var(--line)}.cq-home .tool:hover{background:#f8faff}.cq-home .tool h3{font-size:18px;margin-top:10px}.cq-home .tool p{font-size:12px;line-height:1.95;min-height:68px}
.cq-home .account-strip{padding:28px;border:1px solid var(--line);border-radius:0;background:#fff}.cq-home .account-strip h2{font-size:22px}.cq-home .account-values b{font-size:22px}.cq-home .method{gap:48px;padding:40px 0}.cq-home .method h2{font-size:22px}.cq-home .method>p{font-size:13px}.cq-home footer{padding-top:22px;padding-bottom:28px}
/* Watch: preserve every control and notification; use a consistent working surface. */
.watch-main{width:min(1376px,calc(100% - 64px));padding:30px 0 48px}
.watch-heading{padding-bottom:20px}.watch-heading h1{font-size:25px;margin:0}.watch-as-of{font-size:11px;max-width:none}.watch-as-of time{font-weight:400}
.universe-toolbar{padding:20px 0;gap:20px}.universe-tabs{border:1px solid #b7c2d0;border-radius:4px;overflow:hidden}.universe-tab{font-size:13px}.universe-tab.is-active{background:var(--brand)}
.add-stock-form{flex-wrap:wrap}.add-stock-form button{border-color:var(--brand);background:var(--brand);font-size:12px}.add-stock-form input,.add-stock-form select{font-size:12px}.add-stock-form p{min-width:0;font-size:11px}
.notification-center,.market-weather{background:#fff;padding:24px;border:1px solid var(--line);margin-top:20px}.notification-center>p{font-size:12px;color:var(--muted);margin-top:0}
.notification-heading h2{font-size:18px}.notification-preferences{font-size:12px}.notification-heading span,.notification-copy p,.notification-meta{color:var(--muted)}.notification-item.is-read{opacity:1;background:#f8f9fb}.notification-item.is-read .notification-copy strong{font-weight:400}
.weather-heading h2{font-size:21px;color:var(--ink)}.weather-interpretation{font-size:13px}.weather-state{padding:10px 0;border-left:0;border-top:1px solid var(--line)}.weather-state strong{font-size:22px}.weather-context{border-left:1px solid var(--line);background:#f5f7fa}
.daily-directive{margin-top:20px;background:#fff;border:1px solid var(--line);padding:18px 24px}.daily-directive p{font-size:14px}.watch-summary{background:#fff;border:1px solid var(--line);border-top:0}.watch-summary div{padding:18px 24px}.watch-summary strong{font-size:25px}
.watch-section{padding:28px 0 0}.watch-section-heading h2{font-size:18px}.watch-section-heading p{font-size:12px}.watch-list{background:white;border:1px solid var(--line)}.watch-row{border-left-width:1px;padding:18px;gap:18px}.watch-row:hover{background:#f8faff}.watch-row.is-viewed{opacity:1;background:#f8f9fb}.watch-row>div span{color:var(--muted)}.watch-row>div strong{font-size:13px}.watch-stock strong{font-size:15px!important}.watch-next strong{font-size:12px!important;line-height:1.8!important}.watch-empty{color:var(--muted);background:#fff}.watch-page footer{width:min(1376px,calc(100% - 64px));font-size:11px}
/* Paper account: align chart and table surfaces without changing gain/loss semantics. */
.cq-paper .page{max-width:1440px;margin:auto;padding:30px 32px 48px}.cq-paper .page-head{margin-bottom:22px}.cq-paper h1{font-size:25px}.cq-paper .page-head p{line-height:1.9;font-size:12px}
.cq-paper .metrics{border-radius:0}.cq-paper .metric{padding:20px 24px;min-height:120px}.cq-paper .metric.primary{border-top:0;padding-top:20px}.cq-paper .metric strong{font:600 25px/1.4 Arial,sans-serif}.cq-paper .metric span{font-size:12px}.cq-paper .metric small{font-size:11px}
.cq-paper .panel{border-radius:0;padding:24px;margin-top:20px}.cq-paper .panel-head h2{font-size:18px}.cq-paper .panel-head p{font-size:12px;line-height:1.8}.cq-paper .count-badge{color:#254991;background:#eaf0fb;border-radius:4px}.cq-paper .area{fill:rgba(49,91,186,.08)}
.cq-paper th{background:#f5f7fa;color:var(--muted);padding:12px}.cq-paper td{padding:15px 12px;font-size:12px}.cq-paper tbody tr:hover{background:#f8faff}.cq-paper .mobile-card{border-radius:0}.cq-paper footer{font-size:11px}.cq-paper .empty-state{color:var(--muted)}
@media(max-width:1100px){.cq-home .hero{gap:30px}.cq-home h1{font-size:30px}.universe-toolbar{align-items:flex-start;flex-direction:column}.add-stock-form{width:100%}.watch-row{grid-template-columns:1fr 1fr;gap:14px}.watch-next,.watch-actions{grid-column:1/-1}.watch-actions{display:flex;flex-wrap:wrap;justify-content:space-between}}
@media(max-width:700px){header.topbar,header.nav{padding:14px 16px;flex-direction:column;align-items:flex-start;gap:12px}header nav.product-nav{width:100%;justify-content:space-between;gap:10px}header nav.product-nav a{font-size:12px}header .brand small{font-size:10px}
.cq-home main,.cq-home footer{padding-left:16px;padding-right:16px}.cq-home .hero{grid-template-columns:1fr;gap:24px;padding:32px 0}.cq-home h1{font-size:27px;line-height:1.65}.cq-home .lead{font-size:13px}.cq-home .guide{padding:20px}.cq-home .tool-grid{grid-template-columns:1fr}.cq-home .tool+.tool{border-left:0;border-top:1px solid var(--line)}.cq-home .tool p{min-height:0}.cq-home .account-strip{padding:22px}.cq-home .account-values{gap:20px}.cq-home .account-values b{font-size:19px}.cq-home .method{grid-template-columns:1fr;gap:16px}.cq-home .search button{font-size:12px;padding:0 10px}
.watch-main{width:calc(100% - 24px);padding-top:24px}.watch-heading{flex-direction:column;align-items:flex-start;gap:10px}.watch-heading h1{font-size:23px}.watch-as-of{text-align:left}.notification-center,.market-weather{padding:18px 16px}.notification-heading{gap:10px}.notification-heading h2{font-size:16px}.notification-actions{flex-shrink:0}.notification-actions strong{font-size:11px}.notification-actions strong span{font-size:17px}.notification-preferences{font-size:11px}.weather-states{grid-template-columns:1fr 1fr;gap:12px}.weather-state span{font-size:11px}.weather-state strong{font-size:20px}.weather-heading{gap:12px}.weather-heading h2{font-size:19px}.weather-comparison{flex-wrap:wrap;gap:10px}.weather-date time{font-size:11px}.daily-directive{padding:16px;gap:12px;align-items:flex-start}.watch-summary div{padding:16px 12px}.watch-summary strong{font-size:23px}.watch-row{padding:16px 12px}.watch-section-heading{flex-wrap:wrap;gap:6px}.watch-page footer{width:calc(100% - 24px)}
.cq-paper .page{padding:24px 12px 36px}.cq-paper h1{font-size:23px}.cq-paper .metrics{grid-template-columns:1fr 1fr}.cq-paper .metric,.cq-paper .metric.primary{padding:16px;min-height:112px;border-top:0}.cq-paper .metric:nth-child(n+3){border-top:1px solid var(--line)}.cq-paper .metric:nth-child(odd){border-left:0}.cq-paper .metric:nth-child(even){border-left:1px solid var(--line)}.cq-paper .metric strong{font-size:20px}.cq-paper .panel{padding:18px 14px}.cq-paper .page-head{display:flex;flex-wrap:wrap;gap:12px}.cq-paper .page-head button{margin:0}.cq-paper .panel-head{gap:12px}.cq-paper .panel-head h2{font-size:17px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
