:root{--bg:#f5f7fa;--surface:#fff;--surface-2:#eef2f6;--ink:#111827;--muted:#687385;--line:#d9e0e8;--blue:#2864e8;--teal:#0ea98c;--red:#cc4058;--orange:#dd7c21;color-scheme:light;font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-synthesis:none}:root[data-theme=dark]{--bg:#0b111a;--surface:#121b28;--surface-2:#192433;--ink:#edf3fb;--muted:#9aa7ba;--line:#2a384c;--blue:#75a4ff;--teal:#42d2b4;--red:#ff7087;--orange:#ffad5a;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.app-shell{min-height:100vh;background:radial-gradient(circle at 92% 4%,color-mix(in srgb,var(--teal) 8%,transparent),transparent 26%),var(--bg)}.topbar{height:67px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--surface) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:11px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--ink);border-radius:10px;font:800 11px ui-monospace;letter-spacing:-.04em}.brand b{display:block;font-size:14px}.brand small{display:block;margin-top:2px;font:600 8px ui-monospace;color:var(--muted);letter-spacing:.06em}.top-meta{display:flex;align-items:center;gap:16px;font:650 12px ui-monospace}.icon-button{width:35px;height:35px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.disclaimer{text-align:center;padding:6px 12px;background:var(--ink);color:var(--bg);font-size:10px;letter-spacing:.02em}main{width:min(1700px,100%);margin:auto;padding:31px 30px 76px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:22px}.eyebrow{font:700 10px ui-monospace;letter-spacing:.13em;color:var(--teal)}.page-heading h1{margin:9px 0 7px;font-size:clamp(36px,4vw,58px);line-height:1;letter-spacing:-.055em}.page-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.7;max-width:900px}.timing-card{min-width:235px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--teal)}.timing-card small{display:block;color:var(--teal);font:700 9px ui-monospace;letter-spacing:.1em}.timing-card b{display:block;margin-top:7px;font:750 18px ui-monospace}.timing-card span{display:block;margin-top:3px;color:var(--muted);font-size:10px}.controlbar{position:relative;z-index:10;display:flex;align-items:flex-end;gap:13px;flex-wrap:wrap;padding:12px 14px;margin-bottom:13px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.controlbar label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font:650 9px ui-monospace}.ticker-form{display:flex;align-items:flex-end;gap:7px}.ticker-form input,.controlbar select{height:35px;border:1px solid var(--line);background:var(--surface-2);border-radius:6px;padding:7px 10px;outline:none}.ticker-form input{width:190px;text-transform:uppercase}.ticker-form input:focus,.controlbar select:focus{border-color:var(--blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 13%,transparent)}.controlbar button{height:35px;border:1px solid var(--line);background:var(--surface-2);border-radius:6px;padding:0 11px;font-size:10px;font-weight:700}.controlbar button.primary{background:var(--blue);color:#fff;border-color:var(--blue);padding:0 17px}.search-wrap{position:relative}.suggestions{position:absolute;top:39px;left:0;width:410px;max-width:calc(100vw - 40px);max-height:380px;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 55px #00000038;padding:5px}.suggestions button{width:100%;height:auto;min-height:43px;border:0;background:transparent;display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:8px;text-align:left;padding:8px}.suggestions button:hover{background:var(--surface-2)}.suggestions b{color:var(--blue);font:750 11px ui-monospace}.suggestions span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.suggestions small{font-size:9px;color:var(--muted);max-width:90px;overflow:hidden;text-overflow:ellipsis}.range-buttons,.zoom-buttons{display:flex;gap:3px}.range-buttons button.active{color:#fff;background:var(--blue);border-color:var(--blue)}.toggle{flex-direction:row!important;align-items:center;padding:0 4px 8px;white-space:nowrap}.toggle input{accent-color:var(--teal)}.zoom-buttons{margin-left:auto}.zoom-buttons button:nth-child(2){font:750 9px ui-monospace}.spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--teal);border-radius:50%;animation:spin .7s linear infinite;margin:0 4px 8px}.spinner.large{width:30px;height:30px;margin:0}.alert{padding:11px 13px;margin:0 0 13px;border-left:3px solid var(--orange);background:color-mix(in srgb,var(--orange) 10%,var(--surface));color:var(--muted);font-size:11px}.alert.fatal{border-color:var(--red);background:color-mix(in srgb,var(--red) 9%,var(--surface))}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:9px}.summary-card{min-width:0;padding:13px 14px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.summary-card small{display:block;color:var(--teal);font:750 8px ui-monospace;letter-spacing:.08em}.summary-card b{display:block;margin-top:7px;font:750 19px ui-monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-card span{display:block;margin-top:4px;color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 10px 0}.stock-chart{width:100%;min-height:500px;transition:height .2s}.stock-chart.auto{height:clamp(520px,calc(100vh - 330px),760px)}.stock-chart.standard{height:850px}.chart-status{display:flex;gap:24px;justify-content:flex-end;border-top:1px solid var(--line);padding:8px 16px;color:var(--muted);font:600 9px ui-monospace}.chart-status span:first-child{color:var(--ink)}.method-note{margin-top:12px;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--teal)}.method-note small{color:var(--teal);font:750 9px ui-monospace;letter-spacing:.12em}.method-note p{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.65}.state-card{height:520px;background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.state-card h2{font-size:17px}.state-card p{color:var(--muted)}.state-card button{border:1px solid var(--line);background:var(--surface-2);padding:8px 15px;border-radius:6px}footer{text-align:center;border-top:1px solid var(--line);padding:25px;color:var(--muted);font-size:9px;letter-spacing:.06em}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1000px){main{padding:25px 18px 60px}.page-heading{align-items:flex-start}.summary-grid{grid-template-columns:1fr 1fr}.zoom-buttons{margin-left:0}.stock-chart.auto{height:650px}.chart-status{justify-content:flex-start;flex-wrap:wrap}}@media(max-width:650px){.topbar{height:60px;padding:0 12px}.brand small{display:none}.top-meta>span{display:none}.disclaimer{font-size:9px}.page-heading{flex-direction:column;gap:14px}.page-heading h1{font-size:42px}.timing-card{width:100%}.controlbar{align-items:center;gap:9px;padding:10px}.ticker-form{width:100%}.ticker-form label{flex:1}.ticker-form input{width:100%}.range-buttons{order:4;width:100%}.range-buttons button{flex:1}.controlbar>label:not(.toggle){order:5;flex:1}.controlbar select{width:100%}.toggle{order:5;padding:10px 2px 0}.zoom-buttons{order:6;width:100%}.zoom-buttons button{flex:1}.summary-grid{grid-template-columns:1fr 1fr}.summary-card{padding:11px}.summary-card b{font-size:16px}.stock-chart.auto,.stock-chart.standard{height:650px;min-height:650px}.chart-panel{padding-left:0;padding-right:0}.chart-status{gap:7px;padding:8px 10px}.chart-status span:last-child{display:none}.suggestions{width:calc(100vw - 42px)}main{padding-left:10px;padding-right:10px}}@media(max-width:390px){.stock-chart.auto,.stock-chart.standard{height:620px;min-height:620px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation-duration:1.4s}}
