:root{font-family:'Noto Sans SC',system-ui,sans-serif;color:#eaf0f7;background:#0b111c;font-synthesis:none;--muted:#8f9db1;--line:#243044;--buy:#ff7b7e;--sell:#46ceb1;--accent:#b3c6ff}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 80% 0%,#192942 0,transparent 42%),#0b111c}main{max-width:1180px;margin:auto;padding:0 36px}header{display:flex;align-items:center;justify-content:space-between;padding:30px 0;border-bottom:1px solid var(--line)}a{color:inherit}.brand{text-decoration:none;font-size:21px;font-weight:700;display:flex;gap:12px;align-items:center}.brand-icon{display:inline-flex;width:35px;height:35px;align-items:center;justify-content:center;border:1px solid #516b9a;border-radius:10px;background:#263853;color:#d5e1ff}.brand-sub{font-weight:400;font-size:13px;color:var(--muted);padding-left:12px;border-left:1px solid var(--line)}.version{font-size:12px;color:var(--muted);background:#172132;border:1px solid var(--line);padding:7px 12px;border-radius:30px}.intro{padding:48px 0 32px}.eyebrow{color:#9aaed2;letter-spacing:3px;font-size:10px;font-weight:600}h1{font-size:44px;font-weight:600;line-height:1.35;letter-spacing:-1px;margin:16px 0}h1 span{color:var(--accent)}.intro p{color:var(--muted);font-size:14px;margin:16px 0 0}.toolbar{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:24px;padding:24px;background:#131e2e;border:1px solid #2d3c53;border-radius:16px}label{display:block;font-size:12px;color:#b7c3d5;margin-bottom:10px}label span{font-size:10px;color:#73849d;margin-left:10px}.search-row{display:flex;gap:10px}input,select,button{font:inherit;font-size:14px;border-radius:8px;border:1px solid #34435c;min-height:44px}input,select{background:#0d1726;color:#eff5ff;padding:10px 12px;width:100%;min-width:0}input{font-size:19px;letter-spacing:2px;font-variant-numeric:tabular-nums}button{background:#c7d7ff;color:#14243c;padding:10px 16px;font-weight:600;cursor:pointer;white-space:nowrap}button:hover{background:#e1eaff}button:disabled{opacity:.6;cursor:wait}input:focus-visible,select:focus-visible,button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #98b4ff;outline-offset:3px}.definition{font-size:12px;line-height:1.8;color:#8b9bb3;margin:17px 0 25px}.definition span{color:#b6c7e1;margin-right:10px}.message{padding:20px 22px;border:1px solid var(--line);background:#141e2c;border-radius:12px;font-size:14px;line-height:1.8;margin-bottom:24px}.message.error{color:#ffb8b3;border-color:#754d51;background:#271c24}.message.info{color:#bccce5}.stock-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 0 20px}.stock-heading h2{display:inline;font-size:23px;font-weight:600;margin:0 12px 0 0}.stock-heading #stock-code{color:var(--muted);font-size:13px}.timestamp{display:grid;gap:5px;text-align:right;font-size:11px;color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.metric{background:#131d2c;border:1px solid var(--line);border-radius:13px;padding:24px;overflow:hidden}.metric.buy{background:linear-gradient(150deg,#2d222d,#141e2c 80%);border-top:2px solid #ac5a67}.metric.sell{background:linear-gradient(150deg,#17302f,#141e2c 80%);border-top:2px solid #338977}.metric.net{border-top:2px solid #5777ac}.metric-label{font-size:13px;color:#c2cbda;display:flex;align-items:center;gap:7px}.metric-label i{width:6px;height:6px;border-radius:50%;background:var(--buy)}.sell .metric-label i{background:var(--sell)}.metric-value{display:flex;align-items:baseline;gap:9px;margin:18px 0 10px;flex-wrap:wrap}.metric strong{font-size:32px;line-height:1.2;font-weight:600;letter-spacing:-1px;font-variant-numeric:tabular-nums}.buy strong,.buy-text{color:var(--buy)}.sell strong,.sell-text{color:var(--sell)}.net strong{color:#c2d3ff}.unit-label{color:var(--muted);font-size:12px}.metric p{font-size:10px;color:var(--muted);margin:0}.visuals{display:grid;grid-template-columns:1fr 1.35fr;gap:16px;margin-top:18px}.panel{background:#111b29;border:1px solid var(--line);border-radius:13px;padding:24px;min-width:0}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.panel-title h3{font-size:15px;font-weight:500;margin:0}.panel-title>span{font-size:10px;color:var(--muted)}.ratio-label{display:flex;justify-content:space-between;font-size:12px;margin-top:32px}.ratio-label b{font-size:20px;font-weight:500;margin-left:5px}.ratio-track{height:14px;display:flex;gap:4px;margin:15px 0;border-radius:4px;overflow:hidden;background:#253146}#buy-bar{background:var(--buy);width:50%}#sell-bar{background:var(--sell);width:50%}.muted{color:var(--muted);font-size:11px;line-height:1.8}.coverage{display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--line);padding-top:20px;margin-top:22px;font-size:11px;color:var(--muted)}.coverage div{display:flex;justify-content:space-between;gap:10px}.coverage strong{font-weight:400;color:#d3deed;font-variant-numeric:tabular-nums}#chart{height:198px;margin-top:15px;display:flex;align-items:center;justify-content:center}#chart svg{width:100%;height:100%;overflow:visible}#chart text{font-family:system-ui,sans-serif;font-size:10px;fill:#92a3bc}.detail-panel{margin-top:18px}.small-button{font-size:11px;min-height:32px;padding:6px 12px;background:#1c2a40;color:#d1def6}.table-scroll{overflow-x:auto;margin-top:18px;max-height:400px}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}th{color:#8193ae;font-size:11px;font-weight:400;background:#111b29;position:sticky;top:0}th,td{text-align:right;padding:13px 10px;border-bottom:1px solid #202c3e}th:first-child,td:first-child{text-align:left}tbody tr:hover{background:#172436}.badge{padding:3px 8px;border-radius:4px;font-size:10px}.badge.buy-text{background:#35232d}.badge.sell-text{background:#18382f}.method{margin:30px 0;border:1px solid var(--line);border-radius:12px;padding:20px 24px;color:#b7c4d7}.method summary{font-size:13px;cursor:pointer}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.method h4{font-size:12px;font-weight:500;margin:22px 0 8px}.method p{font-size:11px;color:var(--muted);line-height:1.9;margin:0}footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:10px;color:#7f90a8;padding:0 0 30px;line-height:1.8}footer a{text-underline-offset:4px}[hidden]{display:none!important}
.volume-panel{margin-top:18px}.volume-scroll{overflow-x:auto}#volume-chart{display:flex;gap:6px;min-width:620px;padding:10px 0 0;height:248px;align-items:stretch}.volume-column{flex:1;min-width:30px;display:flex;flex-direction:column;justify-content:flex-end;padding:4px 2px;background:transparent;border:1px solid transparent;color:var(--muted);border-radius:6px}.volume-column:hover,.volume-column.active{background:#223047;border-color:#516b9a}.paired-bars{height:200px;display:flex;align-items:flex-end;justify-content:center;gap:3px;width:100%;border-bottom:1px solid #40516c;background:repeating-linear-gradient(to top,transparent 0,transparent 49px,#243044 50px)}.volume-bar{width:40%;max-width:24px;border-radius:3px 3px 0 0}.volume-bar.buy{background:var(--buy)}.volume-bar.sell{background:var(--sell)}.volume-time{font-size:10px;padding-top:9px}#volume-hint{min-height:36px;color:#c9d7ee;font-size:13px;line-height:1.8;margin-bottom:0}.intro{padding:25px 0}.intro h1{font-size:32px;margin:10px 0}.intro br{display:none}
@media(min-width:900px){.intro br{display:none}.intro h1{font-size:32px}.intro h1 span{margin-left:10px}}
@media(max-width:720px){main{padding:0 18px}header{padding:20px 0}.brand{font-size:18px}.brand-sub{display:none}.intro{padding:30px 0 25px}h1{font-size:33px}.toolbar{grid-template-columns:1fr 1fr;gap:18px;padding:18px}#search{grid-column:1/-1}.search-row input{flex:1}.toolbar select{font-size:12px}.stock-heading{align-items:start;gap:15px}.stock-heading h2{font-size:19px;display:block;margin-bottom:5px}.timestamp{font-size:10px;max-width:180px}.metrics{gap:10px;grid-template-columns:1fr 1fr}.metric{padding:18px 14px}.metric.net{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.metric.net p{width:100%}.metric.net .metric-value{margin:0}.metric strong{font-size:27px}.metric-label{font-size:12px}.metric p{font-size:9px}.visuals{grid-template-columns:1fr}.panel{padding:20px 17px}.method{padding:18px}.method-grid{grid-template-columns:1fr;gap:0}.definition{font-size:11px}.detail-panel .panel-title>span{order:3;width:100%}.version{font-size:10px;padding:6px 10px}.metric-value{gap:5px}.table-scroll{max-height:350px}.small-button{margin-left:auto}}
