:root{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#17191b;background:#fafafa;font-synthesis:none;letter-spacing:0;--bg: #fafafa;--surface: #fff;--sidebar: #e7f3fc;--ink: #17191b;--muted: #63676b;--line: #242628;--grid: #979b9d;--soft-line: #d5d9db;--sky: #a3cef4;--coral: #ff9c8b;--lemon: #f5de77;--astro: #c9b4ed;--east: #a5dfc3;--market: #ffb29c;--earnings-us: #a3cef4;--earnings-cn: #f1bdc9;--earnings-hk: #b8c9c3;--gann: #dfa947;--hover: #f0f5f8;--shadow: #17191b;--wood: #40b043;--fire: #c50000;--earth: #8d7047;--metal: #d89114;--water: #3973f1}:root[data-theme=dark]{color-scheme:dark;--bg: #242627;--surface: #292b2c;--sidebar: #22282d;--ink: #f0f1ed;--muted: #b2b7b9;--line: #aeb5b8;--grid: #62696b;--soft-line: #484e50;--sky: #9fc4e4;--coral: #dfa092;--lemon: #d9c674;--astro: #bba7d5;--east: #9bcbb3;--market: #d6a18d;--earnings-us: #9fc4e4;--earnings-cn: #d7a6b3;--earnings-hk: #afc6bf;--gann: #d8a454;--hover: #343c41;--shadow: #101213;--wood: #40b043;--fire: #da5e5e;--earth: #987e59;--metal: #d89114;--water: #4c81f2}.earnings-us{--color: var(--earnings-us)}.earnings-cn{--color: var(--earnings-cn)}.earnings-hk{--color: var(--earnings-hk)}.solar-term-strip{display:flex;align-items:center;gap:16px;min-height:58px;border-top:2px solid var(--line);border-bottom:2px solid var(--line);padding:12px 0;margin:0 0 12px}.solar-term-strip>span{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:650}.solar-term-strip button{display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px;border:0;border-left:3px solid var(--east);padding:4px 10px;text-align:left}.solar-term-strip button:hover{background:var(--hover)}.solar-term-strip strong{font-size:16px}.solar-term-strip time,.solar-term-strip>small{font-size:11px;color:var(--muted)}.solar-term-strip>small{margin-left:auto;white-space:nowrap}.season-summary{border-top:2px solid var(--line);border-bottom:1px solid var(--soft-line);padding:14px 0;margin:20px 0 0}.season-summary header{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.season-summary>div{display:flex;align-items:baseline;gap:12px;margin:8px 0 12px}.season-summary strong{font-size:26px}.season-summary span,.season-summary p{font-size:11px}.season-summary p{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;color:var(--muted)}.season-summary b{color:var(--ink)}.season-summary time{margin-left:auto}.earnings-sync{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--muted);font-size:11px;margin:0 0 14px}.earnings-sync[hidden]{display:none}.earnings-panel{padding:20px 0;border-bottom:2px solid var(--line)}.earnings-panel>h3{font-size:15px;margin-bottom:12px}.earnings-panel summary{cursor:pointer;font-size:13px}.earnings-panel summary>span{display:block;color:var(--muted);font-size:11px;margin:7px 0 0 16px;line-height:1.6}.earnings-panel details[open]>summary{margin-bottom:14px}.earnings-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;font-size:11px;color:var(--muted);padding:12px 0}.earnings-search{margin:0 0 8px;gap:7px}.earnings-search input{padding:9px 7px;font-size:12px;width:100%}.earnings-list{list-style:none;margin:0;padding:0}.earnings-list li{padding:12px 0;border-bottom:1px solid var(--soft-line)}.earnings-list strong{display:block;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.earnings-list li>div:first-child>span{display:block;font-size:10px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.earnings-row-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px;margin:7px 0 0;font-size:10px}.earnings-row-meta b{font-weight:550}.earnings-list small{display:block;font-size:10px;color:var(--muted);margin-top:6px;line-height:1.6}.earnings-pagination{display:flex;justify-content:space-between;align-items:center;padding-top:10px}.earnings-pagination span{font-size:11px;color:var(--muted)}.earnings-pagination .icon-button{width:32px;height:32px}.earnings-note,.earnings-empty{font-size:11px;color:var(--muted);line-height:1.7;margin-top:10px}.earnings-source{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:10px}.earnings-source button{padding:5px}@media(min-width:1041px){.app-shell .main-calendar{height:100dvh;min-height:0;overflow:hidden;grid-template-rows:minmax(0,1fr)}.calendar-workspace,.inspector{min-height:0;height:100%;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}.calendar-workspace,.inspector{padding-right:8px}.main-calendar>.inspector{padding-right:12px}.calendar-workspace .agenda{overflow:visible;max-height:none}.main-calendar>.error-banner{position:fixed;bottom:12px;left:240px;z-index:20}}@media(max-width:700px){.main-calendar .mobile-layers .layers{flex-wrap:wrap;justify-content:flex-start;gap:5px 14px}.solar-term-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:11px 0}.solar-term-strip>span{flex-basis:calc(100% - 70px)}.solar-term-strip>small{order:-1;justify-self:end}.solar-term-strip>span{order:-2}.solar-term-strip button{flex-direction:column;align-items:flex-start;min-width:0;min-height:48px;padding:3px 8px}.solar-term-strip time{font-size:10px}.earnings-panel{padding-top:18px}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit;letter-spacing:0}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button,input,textarea{border-radius:2px}button{background:none}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #3c84bc;outline-offset:4px}svg{flex-shrink:0}h1,h2,h3,p{margin:0}button,a,label,input,textarea{touch-action:manipulation}input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:0;accent-color:var(--color, var(--sky));cursor:pointer}input:not([type=checkbox]),textarea{min-width:0;color:var(--ink);background:var(--surface);border:1.5px solid var(--line);padding:12px}textarea{resize:vertical;min-height:120px;line-height:1.7}input::placeholder,textarea::placeholder{color:var(--muted)}.app-shell{min-height:100dvh}.skip-link{position:fixed;top:-100px;left:16px;padding:12px;z-index:100;background:var(--lemon);color:#17191b}.skip-link:focus{top:12px}.icon-button{border:1.5px solid transparent;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;padding:0}.icon-button:hover{border-color:var(--line);background:var(--hover)}.button{border:2px solid var(--line);min-height:44px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:650;font-size:15px;background:var(--surface)}.button.sky,.button.coral{box-shadow:4px 4px 0 var(--shadow);color:#17191b;border-color:#17191b}.button.sky{background:var(--sky)}.button.coral{background:var(--coral)}.button:not(:disabled):hover{transform:translate(-1px,-1px)}.button:not(:disabled):active{transform:translate(2px,2px);box-shadow:none}.text-button{border:0;padding:4px 0;display:inline-flex;align-items:center;gap:3px;font-size:13px;white-space:nowrap}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.muted{color:var(--muted);font-size:13px}.macro{--color: var(--lemon)}.gann{--color: var(--gann)}.astro{--color: var(--astro)}.east{--color: var(--east)}.market{--color: var(--market)}.layer-dot{display:inline-block;background:var(--color);border:1.5px solid #242628;width:16px;height:16px;flex-shrink:0;border-radius:1px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:218px;background:var(--sidebar);border-right:2px solid var(--line);display:flex;flex-direction:column;padding:65px 19px 24px;z-index:20;overflow-y:auto}.brand{border:0;padding:0 12px;text-align:left;width:fit-content;line-height:1}.brand strong{display:block;font-size:62px;font-weight:900}.brand span{display:block;font-size:18px;font-weight:800;margin-top:8px}html[lang=en] .brand{max-width:100%;padding:0}html[lang=en] .brand strong{font-size:26px}html[lang=en] .brand span{font-size:12px}.sidebar nav{display:flex;flex-direction:column;gap:24px;margin-top:46px}.nav-item{border:2px solid transparent;display:flex;align-items:center;gap:12px;padding:14px;min-height:58px;text-align:left;font-size:20px;font-weight:700}.nav-item>svg{flex-shrink:0}.nav-item.active{background:var(--sky);color:#17191b;border-color:#17191b;box-shadow:5px 5px 0 var(--shadow)}.nav-item:not(.active):hover{background:var(--hover);border-color:var(--line)}.nav-item small{font-size:12px;margin-left:auto;font-weight:500}.sidebar-layers{margin-top:min(12vh,125px);border-top:1px solid var(--line);padding-top:23px}.layers{margin:0;border:0;padding:0;display:flex;flex-direction:column;gap:16px}.layers legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.layer-filter{display:flex;align-items:center;gap:13px;min-height:24px;cursor:pointer;font-size:18px;font-weight:650}.layer-filter .layer-dot{width:12px;height:12px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:36px}.market-summary{border-top:1px solid var(--line);padding-top:22px;display:flex;gap:10px;align-items:center}.market-summary strong{font-size:20px}.market-summary>span{font-size:11px;color:var(--muted);margin-left:auto}.timezone{display:flex;align-items:center;gap:7px;font-size:12px;margin:14px 0 20px}.timezone span{font-size:11px;margin-left:auto;color:var(--muted)}.sidebar-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.sidebar-actions{display:grid;gap:8px;margin-top:12px}.sidebar-action{display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:6px 10px;border:1.5px solid var(--line);border-radius:2px;background:var(--surface);color:var(--ink);text-align:left;box-shadow:2px 2px 0 var(--shadow)}.sidebar-action>svg{flex-shrink:0}.sidebar-action>span{display:grid;gap:1px;min-width:0}.sidebar-action strong{font-size:13px;font-weight:700}.sidebar-action small{font-size:11px;line-height:1.3;color:var(--muted)}.sidebar-action:hover{background:var(--hover);transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--shadow)}.sidebar-action:active{transform:translate(1px,1px);box-shadow:none}.theme-control{display:inline-flex;border:1px solid var(--line);border-radius:2px;padding:2px;gap:2px;flex-shrink:0;background:var(--surface)}.theme-control .icon-button{width:31px;height:31px}.theme-control .icon-button.active{background:var(--sky);border-color:#17191b;color:#17191b}.local-label{border:0;padding:0;margin-top:16px;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.status-dot{width:6px;height:6px;display:inline-block;background:#91989b;border-radius:50%;flex-shrink:0}.status-dot.online{background:#40855d}.main-calendar{margin-left:218px;display:grid;grid-template-columns:minmax(0,1fr) 326px;padding:37px 25px 16px 27px;gap:26px;min-height:100dvh}.calendar-workspace{min-width:0}.page-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--line);padding-bottom:28px;height:94px;gap:12px}.page-heading>div:first-child{display:flex;gap:20px;align-items:center}.page-heading h1{font-size:48px;line-height:1.2;font-weight:850}.demo-badge{display:inline-block;background:var(--lemon);border:1.5px solid #17191b;color:#17191b;padding:5px 10px;font-size:14px;line-height:1.4;font-weight:650;white-space:nowrap}.data-badge:hover{box-shadow:2px 2px 0 var(--shadow)}.calendar-tools{display:flex;align-items:center;gap:10px}.spinning>svg,svg.spinning{animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.daily-market{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}.daily-market header{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:14px}.daily-market header>span{color:var(--muted);font-size:12px}.market-close{font-size:30px;font-weight:750;margin:10px 0;overflow-wrap:anywhere}.market-close small{font-size:12px;color:var(--muted);font-weight:500;margin-left:7px}.daily-market dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}.daily-market dt{color:var(--muted);font-size:12px}.daily-market dd{margin:4px 0 0;font-size:14px}.daily-market>button{margin-top:12px;white-space:normal;text-align:left}.settlement-summary{margin-top:10px;display:grid;gap:5px;font-size:13px;font-variant-numeric:tabular-nums}.settlement-summary>span{display:flex;justify-content:space-between;gap:12px}.settlement-summary time{color:var(--muted)}.sources-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.sources-toolbar>span{line-height:1.5}.sources-toolbar button{flex-shrink:0}.sync-message{font-size:13px;line-height:1.6;padding:10px 0;color:var(--muted)}.source-row{border-top:1px solid var(--soft-line);padding:15px 0}.source-row header{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:15px}.source-row p,.source-privacy p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:6px;overflow-wrap:anywhere}.source-state{font-size:12px;white-space:nowrap;border:1px solid var(--line);padding:3px 6px;color:#17191b}.source-state.ok{background:var(--east)}.source-state.stale,.source-state.partial{background:var(--lemon)}.source-state.error{background:var(--coral)}.source-row a,.fred-context a,.source-privacy a,.source-link{color:inherit;display:inline-flex;align-items:center;gap:4px;text-underline-offset:3px;font-size:13px;line-height:1.7}.source-row a{margin-top:5px}.source-link{margin-top:14px}.fred-context,.source-privacy{border-top:1px solid var(--line);padding-top:20px;margin-top:10px}.fred-context h3{font-size:17px;margin-bottom:8px}.fred-context>p{line-height:1.6}.fred-context dl{margin:8px 0 0}.fred-context dl>div{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--soft-line)}.fred-context dd{margin:0;text-align:right;font-weight:650;font-variant-numeric:tabular-nums}.fred-context small{display:block;font-weight:400;font-size:11px;color:var(--muted);margin-top:6px;line-height:1.5}.demo-toggle{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.6}.source-privacy details{margin-top:16px}.source-privacy summary{cursor:pointer;font-size:14px}.source-detail dd{overflow-wrap:anywhere}@media(prefers-reduced-motion:reduce){.spinning>svg,svg.spinning{animation:none}}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:17px 0 18px;min-height:46px}.period-control{display:flex;align-items:center;gap:9px;min-width:0}.period-control h2{font-size:23px;line-height:1.2;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}.period-control .icon-button{border:1.5px solid var(--line);width:38px;height:42px}.today-button{border:1.5px solid var(--line);height:42px;padding:0 15px;font-size:14px;white-space:nowrap;margin-left:4px;background:var(--surface)}.today-button:hover{background:var(--hover)}.view-control{display:inline-flex;border:2px solid var(--line);border-radius:2px;box-shadow:3px 3px 0 var(--shadow);flex-shrink:0;background:var(--surface);overflow:hidden}.view-control button{min-width:57px;min-height:42px;border:0;border-right:1px solid var(--line);padding:9px 14px;font-size:14px;font-weight:650;border-radius:0}.view-control button:last-child{border-right:0}.view-control button.active{background:var(--sky);color:#17191b}.view-control button:not(.active):hover{background:var(--hover)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:47px repeat(5,minmax(0,1fr));min-height:750px;height:calc(100dvh - 264px);border:2px solid var(--line);box-shadow:4px 4px 0 var(--shadow);background:var(--surface)}.calendar-grid.rows-6{grid-template-rows:47px repeat(6,minmax(0,1fr));min-height:880px}.calendar-grid.rows-4{grid-template-rows:47px repeat(4,minmax(0,1fr));min-height:620px}.weekday{display:flex;justify-content:center;align-items:center;font-size:14px;font-weight:650;border-right:1px solid var(--grid);border-bottom:1px solid var(--grid);background:var(--bg)}.weekday:nth-child(7){border-right:none}.day-cell{position:relative;border:0;border-right:1px solid var(--grid);border-bottom:1px solid var(--grid);border-radius:0;padding:10px 12px 22px;display:flex;flex-direction:column;min-width:0;align-items:stretch;text-align:left;background:var(--surface)}.day-cell:nth-child(7n){border-right:none}.day-cell:nth-last-child(-n+7){border-bottom:none}.day-cell:hover{background:var(--hover)}.day-cell.selected{background:var(--sky);color:#17191b}.day-cell.selected .muted,.day-cell.selected .cell-note{color:#333f48}.day-cell.outside{color:#a0a4a6;background:var(--bg)}.day-cell.outside .cell-events{opacity:.6}.day-cell.outside.selected{background:var(--sky);color:#17191b}.day-number{font-size:26px;font-weight:750;line-height:1.2;font-variant-numeric:tabular-nums;display:flex;align-items:center;justify-content:space-between}.day-lunar{font-size:11px;line-height:1.3;font-weight:500;margin-left:auto;padding-left:4px}.day-lunar.solar-term{font-weight:750;text-decoration:underline;text-decoration-color:var(--east);text-decoration-thickness:3px;text-underline-offset:4px}.agenda-lunar{display:block;font-size:10px;margin-top:4px;color:var(--muted)}.today-indicator{display:none;width:5px;height:5px;border-radius:50%;background:currentColor}.is-today .today-indicator{display:block}.cell-events{margin-top:9px;display:flex;flex-direction:column;gap:3px;min-width:0}.cell-event{display:flex;align-items:center;gap:7px;font-size:16px;line-height:1.3;min-width:0}.cell-event .layer-dot{width:15px;height:15px}.cell-event>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-note{position:absolute;bottom:7px;right:9px;display:flex;gap:3px;align-items:center;font-size:10px;color:var(--muted)}.event-more{font-size:11px;color:var(--muted)}.calendar-footer{display:flex;justify-content:space-between;align-items:center;min-height:35px;margin-top:12px;color:var(--muted);font-size:11px}.calendar-footer>span{display:flex;align-items:center;gap:6px}.calendar-footer .text-button{font-size:11px}.inspector{border-left:2px solid var(--line);padding:44px 0 0 25px;min-width:0}.date-large{display:block;font-size:78px;font-weight:850;line-height:1;font-variant-numeric:tabular-nums}.date-heading-meta h2{font-size:30px;line-height:1.3;margin-top:8px;font-weight:750}.date-heading-meta>span{display:none}.overlap-badge{display:inline-block;background:var(--lemon);color:#17191b;border:1.5px solid #17191b;font-size:17px;font-weight:700;padding:6px 11px;margin-top:18px}.inspector-events{margin-top:26px}.inspector-event{border-top:1px solid var(--line);padding:17px 0 20px}.inspector-event header{display:flex;align-items:center;justify-content:space-between}.category{display:inline-flex;align-items:center;gap:10px;font-weight:750;font-size:24px}.category .layer-dot{width:19px;height:19px}.inspector-event h3{font-size:24px;margin-top:13px;line-height:1.4;font-weight:700}.inspector-event p{margin-top:7px;font-size:16px;color:var(--muted);line-height:1.6}.add-observation{width:calc(100% - 4px);min-height:64px;font-size:20px;margin:3px 0 30px}.inspector-event .text-button{font-size:15px}.inspector-notes{border-top:1px solid var(--line);padding-top:20px}.inspector-notes>header{display:flex;justify-content:space-between;align-items:center}.inspector-notes h3{font-size:16px}.inspector-notes h3 span{color:var(--muted);font-size:12px;margin-left:7px;font-weight:500}.inspector-empty{padding:24px 0 35px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.inspector-empty p{margin-top:10px}.no-notes{padding:24px 0}.note-item{display:flex;gap:18px;justify-content:space-between;border-bottom:1px solid var(--soft-line);padding:24px 0}.note-item:last-child{border-bottom:0}.note-body{min-width:0}.note-date{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:650}.note-date small{font-size:10px;border:1px solid var(--soft-line);color:var(--muted);padding:1px 4px}.note-item p{font-size:15px;line-height:1.7;margin-top:11px;white-space:pre-wrap;overflow-wrap:anywhere}.note-item.compact{display:block;padding:21px 0 0}.compact .note-date{font-size:12px}.compact p{font-size:13px}.item-actions{display:flex;align-items:flex-start;gap:2px}.compact .item-actions{justify-content:flex-end;margin-top:5px}.item-actions .icon-button{width:32px;height:32px}.item-actions .icon-button svg{width:16px;height:16px}.calendar-scroll.week{overflow-x:auto;padding-bottom:7px}.calendar-grid.week{grid-template-rows:47px 1fr;min-width:720px;height:auto;min-height:490px}.week .day-cell{padding:16px 9px}.week .day-number{font-size:19px}.week .cell-events{margin-top:24px;gap:14px}.week .cell-event{display:flex;flex-wrap:wrap;background:var(--color);color:#17191b;border:1.5px solid #17191b;padding:8px;gap:5px;font-weight:650}.week .cell-event .layer-dot{display:none}.week .cell-event>span{white-space:normal;overflow-wrap:anywhere}.week .cell-event small{flex-basis:100%;font-size:10px;font-weight:400;line-height:1.6}.agenda{position:relative;border:2px solid var(--line);box-shadow:4px 4px 0 var(--shadow);background:var(--surface);min-height:300px}.agenda-day{display:flex;align-items:center;gap:22px;width:100%;padding:20px 22px;text-align:left;border:0;border-bottom:1px solid var(--grid);border-radius:0}.agenda-day:last-child{border-bottom:0}.agenda-day.selected{background:var(--hover);box-shadow:inset 4px 0 0 var(--sky)}.agenda-day:hover{background:var(--hover)}.agenda-date{display:flex;align-items:center;gap:14px;min-width:105px}.agenda-date strong{font-size:33px;line-height:1;font-variant-numeric:tabular-nums}.agenda-date>span{font-size:12px;display:flex;flex-direction:column;gap:3px;white-space:nowrap}.agenda-date i{font-size:10px;font-style:normal;color:var(--muted)}.agenda-content{display:flex;flex-direction:column;gap:10px;flex:1;min-width:0}.agenda-event{display:flex;align-items:center;gap:8px;min-width:0;font-size:14px}.agenda-event small{color:var(--muted);font-size:11px;margin-left:auto}.agenda-note{display:flex;gap:5px;align-items:center;font-size:11px;color:var(--muted)}.agenda-arrow{flex-shrink:0;color:var(--muted)}.main-library{margin-left:218px;padding:37px 42px}.library{max-width:1120px;margin:0 auto}.library-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:34px 0}.library-toolbar h2{font-size:24px;margin-bottom:9px}.search-field{display:flex;align-items:center;border:1.5px solid var(--line);padding:0 14px;max-width:480px;background:var(--surface)}.search-field input{border:0;padding:13px;flex:1;width:100%;background:transparent;font-size:14px}.notes-list{margin-top:20px}.library-footer{display:flex;justify-content:space-between;align-items:center;padding:26px 0;margin-top:30px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.anchor-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.anchor-item{border:2px solid var(--line);padding:23px;background:var(--surface);box-shadow:4px 4px 0 var(--shadow);border-radius:3px;min-width:0}.anchor-item>header{display:flex;justify-content:space-between;gap:12px}.eyebrow{font-size:11px;color:var(--muted)}.anchor-item h3{font-size:20px;margin-top:9px;overflow-wrap:anywhere;line-height:1.4}.anchor-date{display:flex;align-items:center;gap:8px;margin:24px 0 20px;font-size:14px}.anchor-date>span{color:var(--muted);font-size:11px}.anchor-windows{border-top:1px solid var(--line)}.anchor-windows button{width:100%;display:flex;align-items:center;gap:12px;border:0;border-bottom:1px solid var(--soft-line);padding:14px 0;font-size:13px;text-align:left}.anchor-windows button:hover{background:var(--hover)}.anchor-windows button>strong{margin-left:auto;font-size:13px;font-variant-numeric:tabular-nums}.anchor-windows button:last-child{border-bottom:0}.empty{padding:80px 20px;display:flex;align-items:center;flex-direction:column;gap:20px;color:var(--muted);grid-column:1 / -1}.empty p{font-size:15px}.dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;border:2px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);box-shadow:7px 7px 0 var(--shadow);padding:26px}.dialog::backdrop{background:#11181b80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:25px}.dialog-heading h2{font-size:23px;font-weight:750}.field{display:flex;flex-direction:column;gap:10px;font-size:14px;font-weight:600;margin-bottom:22px}.field input,.field textarea{width:100%;font-size:16px;font-weight:400}.form-meta{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:12px;line-height:1.7}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px;padding-bottom:4px}.dialog-copy{font-size:15px;line-height:1.8}.cycle-field{border:0;padding:0;margin:0 0 20px}.cycle-field legend{font-size:14px;font-weight:600;margin-bottom:16px}.cycle-field>div{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cycle-option{display:flex;align-items:center;gap:9px;font-size:14px}.source-detail h3{font-size:24px;margin-top:17px}.source-detail dl{display:grid;grid-template-columns:65px 1fr;font-size:14px;row-gap:15px;margin:25px 0}.source-detail dt{color:var(--muted)}.source-detail dd{margin:0}.source-detail p,.about-content p{font-size:14px;line-height:1.9;color:var(--muted)}.about-content p{margin-top:19px}.data-count{display:flex;gap:22px;font-size:14px;border-top:1px solid var(--soft-line);padding-top:20px;margin-top:22px}.error-banner{grid-column:1 / -1;padding:10px 16px;background:var(--lemon);color:#17191b;font-size:13px;display:flex;justify-content:space-between;gap:10px}.toast,.update-banner{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--bg);border:1px solid var(--line);padding:13px 20px;font-size:14px;z-index:70;box-shadow:4px 4px 0 var(--shadow);max-width:calc(100vw - 30px);white-space:nowrap}.update-banner{bottom:76px}.update-banner>button:not(.icon-button){background:var(--sky);color:#17191b;border:0;padding:6px 12px}.offline-pill{position:fixed;bottom:14px;right:14px;display:flex;align-items:center;gap:5px;padding:5px 8px;background:var(--surface);border:1px solid var(--line);font-size:11px;z-index:35}.mobile-header,.mobile-bottom,.mobile-layers,.menu-scrim{display:none}@media(min-width:1700px){.main-calendar{grid-template-columns:minmax(0,1fr) 360px;gap:34px;padding-left:34px;padding-right:34px}.inspector{padding-left:34px}.day-cell{padding:10px 17px 22px}.cell-event{font-size:16px}}@media(max-width:1270px)and (min-width:701px){.sidebar{width:178px;padding:32px 14px 20px}.brand{padding-left:8px}.brand strong{font-size:48px}.brand span{font-size:16px}.nav-item{font-size:16px;gap:8px;padding:12px 10px}.sidebar nav{margin-top:35px;gap:18px}.sidebar-layers{margin-top:65px}.layer-filter{font-size:16px}.main-calendar{margin-left:178px;padding:28px 20px 14px;grid-template-columns:minmax(0,1fr) 255px;gap:20px}.page-heading{height:82px;padding-bottom:22px}.page-heading h1{font-size:36px}.page-heading>div:first-child{gap:13px}.calendar-toolbar{flex-wrap:wrap;gap:12px}.period-control{flex:1;justify-content:flex-start}.period-control h2{font-size:20px}.period-control .icon-button{width:33px;height:38px}.today-button{height:38px;padding:0 12px}.view-control button{min-width:45px;min-height:36px;padding:7px 12px}.calendar-grid{min-height:660px;height:calc(100dvh - 236px)}.day-cell{padding:10px 7px 22px}.day-number{font-size:21px}.cell-event{font-size:11px;gap:4px}.cell-event .layer-dot{width:10px;height:10px}.inspector{padding:24px 0 0 20px}.date-large{font-size:62px}.category{font-size:17px}.inspector-event h3{font-size:18px}.inspector-event{padding:18px 0}.overlap-badge{font-size:15px}.main-library{margin-left:178px;padding:28px}.anchor-list{grid-template-columns:1fr}}@media(max-width:1040px)and (min-width:701px){.main-calendar{grid-template-columns:minmax(0,1fr);padding:24px}.calendar-toolbar{flex-wrap:nowrap}.calendar-grid{height:650px}.inspector{display:grid;grid-template-columns:180px 1fr;column-gap:25px;border-left:0;border-top:2px solid var(--line);padding:24px 0}.date-heading{grid-column:1}.overlap-badge{grid-column:1;align-self:start;justify-self:start}.inspector-events{grid-column:2;grid-row:1 / 4;margin-top:0}.daily-market .market-close{font-size:24px}.daily-market .market-close small{display:block;margin:5px 0 0}.inspector-event:first-child{border-top:0;padding-top:0}.add-observation{grid-column:1;height:48px;min-height:48px;font-size:15px}.inspector-notes{grid-column:1 / -1;margin-top:15px}.cell-event{font-size:12px}}@media(max-height:850px)and (min-width:701px){.sidebar{padding-top:28px}.sidebar nav{margin-top:32px;gap:15px}.sidebar-layers{margin-top:45px;padding-top:20px}.layers{gap:11px}.sidebar-bottom{padding-top:26px}.timezone{margin-bottom:10px}.local-label{margin-top:10px}}@media(max-width:700px){body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.mobile-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;background:var(--sidebar);border-bottom:2px solid var(--line);padding:max(10px,env(safe-area-inset-top)) 14px 10px;gap:10px;min-height:63px}.mobile-header .icon-button{width:40px;height:40px;flex-shrink:0}.mobile-brand{border:0;font-weight:850;font-size:27px;display:flex;gap:8px;align-items:baseline;padding:0;min-width:0}html[lang=en] .mobile-brand{font-size:22px}html[lang=en] .mobile-brand span{display:none}.mobile-brand span{font-size:13px;font-weight:750}.sidebar{transform:translate(-100%);width:250px;z-index:45;padding:32px 24px 22px;box-shadow:6px 0 0 var(--shadow)}.sidebar.mobile-open{transform:translate(0)}.sidebar:not(.mobile-open){visibility:hidden;pointer-events:none;box-shadow:none}.sidebar .brand strong{font-size:49px}.sidebar nav{margin-top:30px;gap:15px}.sidebar-layers{margin-top:35px}.sidebar-bottom{padding-top:30px}.sidebar .layers{gap:12px}.menu-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#11181b80;z-index:40;border:0;border-radius:0}.main-calendar{margin:0;display:block;padding:22px 17px 0}.page-heading{border-bottom:0;padding:0;height:45px;align-items:flex-start}.page-heading h1{font-size:28px}.page-heading>div:first-child{gap:12px}.demo-badge{font-size:11px;padding:4px 7px}.desktop-theme{display:none}.calendar-toolbar{flex-wrap:wrap;margin:15px 0 18px;gap:17px}.period-control{width:100%;gap:9px}.period-control h2{font-size:22px;flex:1;min-width:0;text-align:center}.period-control h2.week-title{font-size:18px;white-space:normal}.period-control .icon-button{width:36px;height:40px}.today-button{height:40px;padding:0 12px;margin-left:2px;font-size:13px}.view-control{width:100%;box-shadow:3px 3px 0 var(--shadow)}.view-control button{flex:1;min-height:40px;font-size:14px}.mobile-layers{display:block;margin-bottom:19px}.mobile-layers .layers{flex-direction:row;gap:0;justify-content:space-between}.mobile-layers .layer-filter{font-size:12px;gap:5px;font-weight:550;min-height:28px}.mobile-layers input[type=checkbox]{width:16px;height:16px;flex-basis:16px}.mobile-layers .layer-dot{display:none}.calendar-grid{height:390px;min-height:390px;grid-template-rows:35px repeat(5,minmax(0,1fr))}.calendar-grid.rows-6{height:440px;min-height:440px;grid-template-rows:35px repeat(6,minmax(0,1fr))}.calendar-grid.rows-4{grid-template-rows:35px repeat(4,minmax(0,1fr));min-height:390px}.weekday{font-size:11px}.day-cell{padding:8px 5px 16px}.day-number{font-size:18px}.month .cell-events{flex-direction:row;flex-wrap:wrap;gap:3px;margin-top:10px}.month .cell-event .layer-dot{width:7px;height:7px;border-width:1px}.month .cell-event>span{display:none}.month .cell-note{bottom:4px;right:4px;font-size:9px}.month .cell-note svg{width:10px;height:10px}.event-more{display:none}.calendar-scroll.week{overflow-x:auto;padding-bottom:7px}.calendar-grid.week{min-width:720px;height:auto;min-height:380px;grid-template-rows:35px 1fr}.week .cell-event{font-size:12px}.agenda{max-height:388px;overflow-y:auto;min-height:140px;overscroll-behavior:contain}.agenda-day{padding:17px 12px;gap:14px}.agenda-date{gap:8px;min-width:77px}.agenda-date strong{font-size:30px}.agenda-date>span{font-size:11px}.agenda-event{gap:6px;font-size:13px}.agenda-event .layer-dot{width:12px;height:12px}.agenda-event small{display:none}.agenda-arrow{width:15px}.agenda-content{gap:9px}.calendar-footer{margin-top:9px;min-height:30px}.inspector{border-left:0;border-top:2px solid var(--line);margin-top:24px;padding:24px 0 20px}.date-heading{display:flex;align-items:center;gap:16px}.date-large{font-size:54px}.date-heading-meta h2{font-size:23px;margin-top:0}.date-heading-meta>span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.overlap-badge{font-size:14px;padding:5px 8px;margin-top:16px}.inspector-events{margin-top:22px}.inspector-event{padding:18px 0}.category{font-size:17px}.category .layer-dot{width:17px;height:17px}.inspector-event h3{font-size:18px;margin-top:11px}.inspector-event p{font-size:13px}.add-observation{font-size:17px;min-height:51px;margin-top:8px}.mobile-bottom{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:2px solid var(--line);z-index:30;padding:7px 9px calc(7px + env(safe-area-inset-bottom))}.mobile-bottom button{display:flex;align-items:center;flex-direction:column;gap:4px;border:1px solid transparent;padding:7px 0;font-size:11px;min-height:49px}.mobile-bottom button.active{background:var(--sky);border-color:#17191b;color:#17191b}.mobile-bottom button:last-child{color:var(--ink)}.main-library{margin:0;padding:23px 17px}.library .page-heading>.theme-control{display:none}.library-toolbar{margin:25px 0 28px;gap:10px}.library-toolbar h2{font-size:22px}.library-toolbar .button{padding:9px 12px;font-size:13px;gap:5px}.anchor-list{grid-template-columns:1fr;gap:22px}.anchor-item{padding:19px}.anchor-item h3{font-size:18px}.anchor-windows button{gap:8px}.anchor-windows button>strong{font-size:12px}.note-item{gap:7px;padding:21px 0}.note-item p{font-size:14px}.note-item .item-actions{flex-direction:column}.compact .item-actions{flex-direction:row}.dialog{padding:22px;max-height:calc(100dvh - 32px)}.dialog-heading h2{font-size:22px}.toast{bottom:calc(90px + env(safe-area-inset-bottom));font-size:13px}.update-banner{bottom:calc(145px + env(safe-area-inset-bottom))}.offline-pill{bottom:calc(83px + env(safe-area-inset-bottom))}.empty{padding:60px 15px}}@media(max-width:360px){.main-calendar,.main-library{padding-left:12px;padding-right:12px}.period-control{gap:5px}.period-control h2{font-size:19px}.today-button{padding:0 9px}.mobile-layers .layer-filter{font-size:11px;gap:3px}.cycle-field>div{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:no-preference){.button{transition:transform .1s ease}.sidebar{transition:transform .16s ease}.toast{animation:appear .15s ease}@keyframes appear{0%{opacity:0;bottom:5px}to{opacity:1}}}.day-context{margin-top:22px;padding-top:15px;border-top:1px solid var(--line)}.context-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1.5px solid var(--line)}.context-tabs button{min-width:0;min-height:40px;display:flex;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:650;border:0;background:var(--surface);color:var(--ink)}.context-tabs button+button{border-left:1px solid var(--line)}.context-tabs button[aria-selected=true]{background:var(--astro);color:#17191b}.context-tabs button:last-child[aria-selected=true]{background:var(--east)}.context-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px;font-size:10px;line-height:1.6;color:var(--muted);margin:12px 0}.zodiac-wheel{width:100%;max-width:284px;aspect-ratio:1;display:block;margin:0 auto 12px;overflow:visible}.wheel-face,.wheel-center{fill:var(--surface);stroke:var(--line);stroke-width:1.5px}.wheel-center{fill:var(--astro)}.wheel-line,.wheel-ring{stroke:var(--line);stroke-width:1px;fill:none}.wheel-orbit{fill:none;stroke:var(--grid);stroke-width:.5px;opacity:.45}.wheel-pointer{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3}.wheel-sign{fill:var(--ink);font-size:9px;text-anchor:middle;dominant-baseline:middle}.wheel-sign.sign-0{font-weight:800}.aspect-chord{stroke-width:.8px;opacity:.28;transition:opacity .2s}.aspect-chord.related{stroke-width:1.4px;opacity:.9}.aspect-chord.tone-harmonious{stroke:var(--water)}.aspect-chord.tone-tense{stroke:var(--fire)}.aspect-chord.tone-conjunction{stroke:var(--ink);stroke-dasharray:2 2}.wheel-planet{cursor:pointer;outline:none}.wheel-planet-disc{fill:var(--surface);stroke:var(--line);stroke-width:1px;transition:r .15s}.wheel-planet-raised{pointer-events:none}.wheel-planet.selected .wheel-planet-disc,.wheel-planet-raised.selected .wheel-planet-disc{fill:var(--astro);stroke-width:1.5px}.wheel-planet-raised:not(.selected) .wheel-planet-disc{stroke-width:2px}.wheel-planet.hovered .wheel-planet-disc,.wheel-planet:focus-visible .wheel-planet-disc{stroke-width:2px}.wheel-planet-symbol{fill:var(--ink);font-size:7.5px;text-anchor:middle;dominant-baseline:central;font-family:Georgia,Segoe UI Symbol,serif;pointer-events:none}.wheel-planet.selected .wheel-planet-symbol,.wheel-planet-raised.selected .wheel-planet-symbol{fill:#17191b;font-size:9px}.wheel-retrograde{fill:var(--fire);font-size:5.5px;font-weight:800;pointer-events:none}.wheel-label{fill:var(--ink);font-size:9px;font-weight:700;text-anchor:middle;paint-order:stroke;stroke:var(--surface);stroke-width:3px;stroke-linejoin:round;pointer-events:none}.wheel-timeline{display:flex;align-items:center;gap:8px;margin:-4px 0 10px;min-height:30px}.wheel-timeline button{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;padding:0;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}.wheel-timeline .wheel-play{background:var(--astro);color:#17191b}.wheel-timeline button:disabled{opacity:.5;cursor:progress}.wheel-timeline input[type=range]{flex:1;min-width:0;accent-color:var(--astro)}.wheel-timeline time,.wheel-hint{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.wheel-symbol{fill:#17191b;font-size:23px;text-anchor:middle;dominant-baseline:middle;font-family:Georgia,Segoe UI Symbol,serif}.moon-summary{display:flex;gap:8px;align-items:center;padding:9px 0;border-block:1px solid var(--grid)}.moon-disk{width:36px;height:36px;flex:0 0 36px}.moon-summary>div{display:grid;gap:3px}.moon-summary strong{font-size:13px}.moon-summary div>span{font-size:11px;color:var(--muted)}.context-method{font-size:10px;color:var(--muted);margin-left:auto}.planet-positions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin-top:12px}.planet-positions button{display:flex;align-items:center;text-align:left;gap:7px;border:0;border-bottom:1px solid var(--grid);min-height:52px;min-width:0;padding:6px 4px;background:none;color:var(--ink)}.planet-positions button:hover,.planet-positions button.active{background:var(--hover)}.planet-positions button.active{box-shadow:inset 2px 0 0 var(--ink)}.planet-symbol{font-family:Georgia,Segoe UI Symbol,serif;font-size:21px;width:22px;flex:0 0 22px;text-align:center}.planet-positions button>span:last-child{display:grid;gap:4px;min-width:0}.planet-positions strong{font-size:12px;line-height:1.2;font-weight:600}.planet-positions button>span>span{font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}.retrograde{display:inline-block;font-size:9px;font-weight:500;padding:1px 3px;margin-left:4px;background:var(--coral);color:#17191b}.context-details{margin-top:15px;border-top:1px solid var(--grid);padding-top:12px}.context-details summary{font-size:12px;font-weight:650;cursor:pointer}.context-details summary>span{color:var(--muted);font-size:10px;font-weight:400;margin-left:6px}.context-details>p{font-size:12px;color:var(--muted);margin-top:10px}.aspect-list{list-style:none;padding:0;margin:8px 0 0}.aspect-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-bottom:1px solid var(--grid);font-size:12px}.aspect-list small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.aspect-list li>span:last-child{font-size:10px;color:var(--muted);white-space:nowrap}.context-caveat{font-size:10px;color:var(--muted);line-height:1.8;margin-top:12px}.context-source{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--muted);margin-top:7px}.east-date{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:18px 0 14px}.east-date strong{font-size:20px}.east-date>span{font-size:12px;color:var(--muted)}.three-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--grid)}.three-pillars>div{display:grid;justify-content:center;gap:10px;text-align:center;padding:14px 0}.three-pillars>div+div{border-left:1px solid var(--grid)}.three-pillars>div>span{font-size:11px;color:var(--muted)}.three-pillars .pillar-stack{display:flex;flex-direction:column;align-items:center;gap:6px}.three-pillars .pillar-glyph{position:relative;display:block;width:1em;font-size:26px;line-height:1.15;text-align:center}.three-pillars .pillar-glyph .glyph{display:block}.three-pillars .pillar-glyph small{position:absolute;top:50%;left:calc(100% + 5px);transform:translateY(-50%);font-size:9px;font-weight:500;line-height:1;white-space:nowrap}.element-wood{color:var(--wood)}.element-fire{color:var(--fire)}.element-earth{color:var(--earth)}.element-metal{color:var(--metal)}.element-water{color:var(--water)}[data-theme=dark] .element-wood{color:var(--wood)}[data-theme=dark] .element-fire{color:var(--fire)}[data-theme=dark] .element-earth{color:var(--earth)}[data-theme=dark] .element-metal{color:var(--metal)}[data-theme=dark] .element-water{color:var(--water)}.east-facts{margin:14px 0}.east-facts>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-bottom:1px solid var(--grid);padding:9px 0;font-size:12px}.east-facts dt{color:var(--muted);font-size:11px;flex-shrink:0}.east-facts dd{margin:0;text-align:right;overflow-wrap:anywhere}.almanac-line{display:flex;align-items:baseline;gap:9px;margin-top:12px}.almanac-line>strong{font-size:12px;padding:3px;background:var(--east);color:#17191b;flex:0 0 21px;text-align:center}.almanac-line.avoid>strong{background:var(--coral)}.almanac-line p{font-size:12px;line-height:1.9;margin:0}@media(max-width:1040px)and (min-width:701px){.inspector{display:block}.date-heading{display:flex;align-items:center;gap:16px}.date-heading-meta h2{margin-top:0}.inspector-events{margin-top:24px}.zodiac-wheel{max-width:260px}}@media(max-width:380px){.day-lunar{font-size:9px}.planet-positions{gap:0 8px}}@media(max-width:1040px){.calendar-grid.month .day-number{display:block;position:relative}.calendar-grid.month .day-lunar{display:block;font-size:10px;line-height:1.4;font-weight:500;margin:4px 0 0;padding:0;white-space:nowrap}.calendar-grid.month .today-indicator{position:absolute;right:0;top:5px}}.day-cell{cursor:default;container-type:inline-size}.day-select{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:0;background:transparent;border-radius:0}.day-cell:has(.day-select:focus-visible){outline:3px solid var(--ink);outline-offset:-3px;z-index:2}.day-select:focus-visible{outline:none}.day-cell>.day-number,.day-cell>.cell-events,.day-cell>.cell-note{pointer-events:none}.day-cell .event-more{display:inline-flex;align-items:center;gap:7px;width:fit-content;max-width:100%;padding:2px 0;margin-top:3px;position:relative;z-index:2;background:transparent;border:0;text-align:left;font-size:11px;line-height:1.4}.day-cell .event-more:hover{text-decoration:underline}.month .day-cell .event-more{position:absolute;left:12px;bottom:7px;margin:0;min-height:14px}@media(min-width:701px){.calendar-grid.month .day-cell{overflow:hidden;padding-bottom:6px}.month .day-cell .event-more{position:relative;left:auto;bottom:auto;margin-top:auto}}@container (max-width: 96px){.event-more .more-label,.event-more .hidden-categories{display:none}}.day-cell.selected .event-more{color:#293b48}.hidden-categories{display:flex;gap:3px;flex-shrink:0}.hidden-category{width:7px;height:7px;border:1px solid #292b2c;background:var(--color)}.preview-popover{z-index:120;width:min(460px,calc(100vw - 24px));max-height:min(760px,calc(100dvh - 24px));overflow-y:auto;overscroll-behavior:contain;background:var(--surface);color:var(--ink);border:2px solid var(--line);box-shadow:5px 5px 0 var(--shadow);border-radius:4px}.preview-heading{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:2px solid var(--line);position:sticky;top:0;z-index:3;background:var(--surface)}.preview-heading>span{margin-right:auto;font-size:12px;font-weight:650;overflow-wrap:anywhere}.preview-heading .icon-button{width:28px;height:28px;border:0;background:transparent;box-shadow:none;flex:0 0 28px}.preview-heading .is-pinned{background:var(--lemon);color:#17191b}.company-preview-body{padding:16px}.company-profile-title{display:flex;align-items:flex-start;gap:10px}.company-profile-title>div{min-width:0;flex:1}.company-profile-title h3{margin:0 0 4px;font-size:17px;line-height:1.4;overflow-wrap:anywhere}.company-profile-title>div>span{font-size:10px;color:var(--muted)}.company-profile-title>button{flex:0 0 28px;width:28px;height:28px;border:0}.company-logo{position:relative;flex:0 0 30px;width:30px;height:30px;border:1px solid var(--soft-line);border-radius:3px;overflow:hidden;display:grid;place-items:center;background:#fff;color:#30383e;font-size:14px;font-weight:750}.company-logo img{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;object-fit:contain;padding:3px}.company-logo.logo-ready img{opacity:1;background:#fff}.company-logo.logo-ready>span{visibility:hidden}.company-trigger{display:flex;gap:9px;align-items:flex-start;width:100%;border:0;padding:3px 0;text-align:left;background:transparent}.company-trigger:hover .company-name>strong{text-decoration:underline;text-underline-offset:3px}.company-name{flex:1;min-width:0}.company-name>span{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.company-cap{flex:0 0 auto;text-align:right;max-width:95px;padding-top:3px}.company-cap b{display:block;font-size:11px;font-weight:650;font-variant-numeric:tabular-nums}.company-cap small{margin-top:3px;font-size:9px}.earnings-sort{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:5px 0 9px}.earnings-sort label{display:flex;align-items:center;gap:4px}.earnings-sort select{border:0;background:transparent;color:var(--ink);max-width:140px;font-size:11px;padding:4px 2px}.earnings-sort>span{font-size:9px;color:var(--muted);margin-left:auto}.earnings-default-context{font-size:10px;line-height:1.7;color:var(--muted);margin:0 0 3px}.stock-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 0 9px;padding:12px 0;gap:14px 12px;border-block:1px solid var(--soft-line)}.stock-metrics dt{font-size:10px;color:var(--muted);margin-bottom:5px}.stock-metrics dd{margin:0;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stock-basis{font-size:9px;line-height:1.6;color:var(--muted);margin:4px 0;overflow-wrap:anywhere}.stock-chart-heading{display:flex;align-items:center;justify-content:space-between;margin:17px 0 8px}.stock-chart-heading>strong,.revenue-section strong{font-size:12px}.mini-segments{display:flex;gap:0;border:1px solid var(--line)}.mini-segments button{min-width:35px;height:25px;padding:0 5px;border:0;border-right:1px solid var(--line);border-radius:0;font-size:10px;background:transparent}.mini-segments button:last-child{border-right:0}.mini-segments button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.candle-values{display:flex;flex-wrap:wrap;gap:4px 8px;min-height:28px;color:var(--muted);font-size:9px;font-variant-numeric:tabular-nums}.stock-chart{height:310px;width:100%;min-width:0;margin:2px 0 8px}.quote-band{position:relative;display:flex;min-width:0;border-bottom:1px solid var(--soft-line);margin:0 0 4px}.quote-rail{display:flex;flex:1;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:none;scrollbar-width:thin;padding:13px 0 10px}.quote-item{flex:0 0 157px;min-width:0;padding:0 14px;scroll-snap-align:start;font-variant-numeric:tabular-nums;border:0;border-right:1px solid var(--soft-line);text-align:left;background:transparent;cursor:pointer}.quote-item:first-child{padding-left:14px;flex-basis:157px}.quote-item>div{display:flex;align-items:baseline;justify-content:space-between;gap:5px}.quote-item strong{font-size:11px;white-space:nowrap}.quote-item b{font-size:16px;line-height:1.8;font-weight:750}.quote-item span{font-size:10px}.quote-item small{font-size:8px;line-height:1.6;color:var(--muted)}.quote-item>small{display:block}.quote-item>div:first-child{min-height:31.6px}.quote-up{color:#23805f}.quote-down{color:#c04c4c}[data-theme=dark] .quote-up{color:#88d1ae}[data-theme=dark] .quote-down{color:#efa4a4}.quote-settings.icon-button{align-self:flex-start;margin:13px 0 0 6px;width:28px;height:28px;border:0;box-shadow:none;flex:0 0 28px}.quote-preferences{position:absolute;top:46px;right:0;z-index:30;background:var(--surface);border:2px solid var(--line);box-shadow:4px 4px 0 var(--shadow);width:min(285px,100%);padding:12px}.quote-preferences>header,.quote-preferences>div{display:flex;align-items:center;justify-content:space-between;min-height:34px}.quote-preferences>header{font-size:13px;border-bottom:1px solid var(--soft-line);padding-bottom:6px;margin-bottom:5px}.quote-preferences label{display:flex;align-items:center;gap:7px;font-size:12px}.quote-preferences>div>span{display:flex}.quote-preferences .icon-button{width:28px;height:28px;box-shadow:none;border:0}.company-tabs{display:flex;margin:15px -16px 12px;padding:0 16px;border-bottom:1px solid var(--soft-line);gap:18px}.earnings-markets button[data-market=us][aria-selected=true]{background:var(--earnings-us)}.earnings-markets button[data-market=cn][aria-selected=true]{background:var(--earnings-cn)}.earnings-markets button[data-market=hk][aria-selected=true]{background:var(--earnings-hk)}.company-tabs>button{border:0;border-bottom:2px solid transparent;background:transparent;font-size:12px;padding:10px 0;white-space:nowrap}.company-tabs>button[aria-selected=true]{border-bottom-color:var(--ink);font-weight:700}.chart-indicator-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.chart-indicator-toolbar>.icon-button{width:28px;height:28px;border:0;box-shadow:none}.company-logo-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.company-logo-trigger{width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;background:transparent;flex:0 0 32px}.company-logo-trigger:hover{outline:1px solid var(--ink);outline-offset:2px}.earnings-leaders{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:11px 0;border-bottom:1px solid var(--soft-line);margin-bottom:12px}.earnings-leaders>span,.earnings-leaders>small{color:var(--muted);font-size:9px}.earnings-leaders>span{flex-basis:100%}.day-preview-companies{margin-top:9px}.day-preview-companies>small{display:block;font-size:9px;color:var(--muted);margin-top:7px}.day-preview-list .company-logo{display:grid;margin:0;color:#30383e;font-size:14px}.day-preview-list .company-logo>span{margin:0;color:inherit;font-size:inherit}.cell-event .cell-company-logos{display:none}.company-industry{display:grid;grid-template-columns:65px minmax(0,1fr);font-size:12px;gap:10px;line-height:1.7;margin:16px 0}.company-industry dt{color:var(--muted)}.company-industry dd{margin:0;overflow-wrap:anywhere}.etf-holdings{padding:0;margin:10px 0;list-style:none}.etf-holdings>li{display:flex;gap:12px;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--soft-line)}.etf-holdings>li>span{min-width:0}.etf-holdings>li>span:last-child{text-align:right;flex-shrink:0}.etf-holdings strong,.etf-holdings b{display:block;font-size:12px}.etf-holdings small{display:block;font-size:10px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.ipo-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:16px 0 10px}.ipo-heading>strong{font-size:12px}.ipo-heading>span{font-size:9px;color:var(--muted)}.ipo-inputs{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}.ipo-inputs label{display:grid;gap:6px;font-size:10px;color:var(--muted);min-width:0;flex:1 1 140px}.ipo-inputs input,.ipo-inputs select{max-width:100%;min-width:0;width:100%;height:34px;border:1px solid var(--soft-line);background:var(--surface);color:var(--ink);padding:4px 6px;border-radius:3px;font-size:11px}.ipo-inputs .icon-button{width:34px;height:34px;border:1px solid var(--soft-line);box-shadow:none}.ipo-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--soft-line);padding:14px 0;margin:14px 0}.ipo-pillars>div{display:grid;grid-template-rows:18px 72px 16px 18px;justify-items:center;gap:7px;border-right:1px solid var(--soft-line)}.ipo-pillars>div:last-child{border-right:0}.ipo-pillars small{font-size:10px;color:var(--muted)}.ipo-pillars strong{font-size:28px;display:flex;align-items:center;line-height:1}.ipo-pillars>div>span{font-size:10px;color:var(--muted)}.ipo-flow{display:grid;gap:7px;padding:8px 0}.ipo-flow strong{font-size:11px}.ipo-flow>span{font-size:12px}.ipo-years{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(49px,1fr);overflow-x:auto;margin:10px 0 18px;border-block:1px solid var(--soft-line)}.ipo-years>div{display:grid;grid-template-rows:18px 56px;justify-items:center;gap:7px;padding:10px 0}.ipo-years small{font-size:9px;color:var(--muted)}.ipo-years b{font-size:21px;line-height:1}.ipo-years .active,.ipo-periods .active{background:var(--hover);box-shadow:inset 0 -2px 0 var(--ink)}.ipo-periods{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:72px;overflow-x:auto;gap:1px;background:var(--soft-line);border:1px solid var(--soft-line);margin:12px 0}.ipo-periods>div,.ipo-periods>button{display:grid;grid-template-rows:18px 16px 60px 14px;justify-items:center;align-items:center;gap:4px;background:var(--surface);padding:10px 5px;text-align:center;border:0;min-height:75px}.ipo-periods b{display:block;font-size:22px;line-height:1}.ipo-periods span{font-size:10px;color:var(--muted)}@media(min-width:1700px){.calendar-grid.month{height:auto;min-height:0;grid-template-rows:47px repeat(5,minmax(174px,1fr))}.calendar-grid.month.rows-6{grid-template-rows:47px repeat(6,minmax(174px,1fr))}.calendar-grid.month.rows-4{grid-template-rows:47px repeat(4,minmax(174px,1fr))}.cell-event .cell-company-logos{display:flex;gap:3px;margin-top:4px}.cell-company-logos .company-logo{width:18px;height:18px;flex-basis:18px;font-size:9px}.cell-company-logos img{padding:1px}}@media(max-width:720px){.quote-item{flex-basis:151px}.quote-item:first-child{flex-basis:137px}.quote-preferences .icon-button,.company-logo-trigger{min-width:40px;min-height:40px}.company-tabs>button{min-height:44px}.ipo-inputs input,.ipo-inputs select{height:40px;font-size:12px}}.stock-source-line{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:3px 8px;font-size:9px;line-height:1.5;color:var(--muted);margin:7px 0}.stock-source-line a{display:flex;align-items:center;gap:2px;color:var(--muted)}.revenue-section{margin:16px 0;padding-top:13px;border-top:1px solid var(--soft-line)}.revenue-section>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.revenue-section>header>span{font-size:10px;color:var(--muted)}.revenue-bars{display:grid;gap:9px;margin:14px 0}.revenue-year{display:grid;grid-template-columns:32px minmax(30px,1fr) 83px 50px;gap:7px;align-items:center;font-size:10px;font-variant-numeric:tabular-nums}.revenue-year>span,.revenue-year>small{text-align:right}.revenue-year>small{color:var(--muted);font-size:9px}.revenue-track{height:12px;background:var(--hover)}.revenue-track>i{display:block;height:12px;background:var(--east);border:1px solid var(--line);min-width:1px}.revenue-track.is-missing{background:transparent;border-bottom:1px dashed var(--soft-line)}.revenue-track.is-missing>i{display:none}.latest-results{margin:4px 0 14px;padding:12px 0 4px;border-bottom:1px solid var(--soft-line)}.latest-results>header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.latest-results>header>strong{font-size:12px}.latest-results>header>span{font-size:10px;color:var(--muted)}.results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:10px 0 6px}.results-grid dt{font-size:10px;color:var(--muted);margin-bottom:3px}.results-grid dd{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.results-grid dd small{font-size:10px;font-weight:600}.results-surprise{display:grid;gap:3px;margin-top:10px;padding:8px 10px;background:var(--hover);font-size:10px}.results-surprise>span{color:var(--muted)}.results-surprise>strong{font-size:12px;font-variant-numeric:tabular-nums}.results-surprise>strong>small{font-size:11px}.results-surprise>.stock-basis{margin:0}.news-filters{width:fit-content;margin-bottom:6px}.news-list{list-style:none;margin:4px 0 10px;padding:0}.news-list>li{display:grid;gap:3px;padding:8px 0;border-bottom:1px solid var(--soft-line)}.news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 7px;font-size:9px;color:var(--muted);font-variant-numeric:tabular-nums}.news-kind{font-style:normal;font-weight:700;padding:0 4px;border:1px solid currentColor}.news-notice{color:#9a6a12}.news-press{color:#2f6fa8}[data-theme=dark] .news-notice{color:#e2bd6f}[data-theme=dark] .news-press{color:#8fc1ee}.news-list a{color:var(--ink);font-size:12px;line-height:1.5;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.news-list a:hover,.news-list a:focus-visible{text-decoration:underline}.news-original{color:var(--muted);font-size:10px;line-height:1.4;overflow-wrap:anywhere}.machine-translation{margin-left:6px;padding:0 4px;border:1px solid var(--soft-line);color:var(--muted);font-size:9px;font-style:normal;font-weight:600;vertical-align:middle}.stock-disclaimer,.stock-load,.stock-unavailable{font-size:11px;line-height:1.7;color:var(--muted);margin:12px 0}.stock-disclaimer{font-size:9px;padding-top:10px;border-top:1px solid var(--soft-line)}.calendar-preview{width:min(360px,calc(100vw - 24px))}.calendar-preview-body{padding:2px 14px 14px}.day-preview-list{list-style:none;padding:0;margin:0}.day-preview-list>li{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid var(--soft-line)}.day-preview-list .layer-dot{flex:0 0 10px;width:10px;height:10px;margin-top:4px}.day-preview-list>li>div{min-width:0}.day-preview-list strong{display:block;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.day-preview-list span{display:block;color:var(--muted);font-size:10px;line-height:1.7;margin-top:3px}.preview-day-action{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-top:13px;padding:8px 0;font-size:11px;border:0;background:transparent}.calendar-preview-notes{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted)}.preview-backdrop{z-index:120;background:#0007}@media(max-width:720px){body:has(.company-preview.preview-sheet) .preview-backdrop:has(.calendar-preview){visibility:hidden}.preview-popover.preview-sheet{position:fixed;inset:auto 0 0;width:100%;max-width:100%;max-height:88dvh;border-radius:6px 6px 0 0;box-shadow:none;padding-bottom:env(safe-area-inset-bottom)}.preview-heading{padding:10px 14px}.preview-heading .icon-button{width:40px;height:40px;flex-basis:40px}.company-preview-body{padding:16px}.preview-sheet .mini-segments button{height:32px;min-width:38px}.preview-sheet .company-profile-title>button{width:36px;height:36px;flex-basis:36px}.day-cell .event-more{font-size:9px;padding:1px 0;min-height:20px}}@media(max-width:480px){.day-cell .event-more .more-label,.day-cell .hidden-categories{display:none}.stock-metrics dd{font-size:16px}.revenue-year{grid-template-columns:30px minmax(20px,1fr) 75px 43px;gap:5px}}@media(max-width:700px){.month .day-cell .cell-events{position:absolute;left:5px;bottom:6px;margin:0}.month .day-cell .event-more{position:absolute;left:auto;right:4px;bottom:2px;margin:0;min-height:16px;line-height:1}.month .day-cell .event-more .more-label,.month .day-cell .hidden-categories{display:none}.month .day-cell .cell-note{top:9px;right:4px;bottom:auto;font-size:0}.month .day-cell .cell-note svg{width:7px;height:7px}}.feature-library{min-width:0}.feature-library .page-heading h1{font-size:28px}.feature-library .page-heading>div{flex-wrap:wrap;gap:12px}.feature-library .page-heading .button{font-size:12px;padding:8px 10px}.feature-library h2{font-size:17px}.workbench-tabs{margin:24px 0;width:fit-content}.instrument-logo{display:inline-grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;overflow:hidden;font-size:10px;font-weight:750;color:#173d50;background:#cde4ee;font-style:normal}.instrument-logo img{width:100%;height:100%;object-fit:contain}.instrument-sse,.instrument-csi300,.instrument-chinext{background:#f5dad7;color:#7b302e}.instrument-hsi,.instrument-hstech{background:#d8e9da;color:#285c41}.quote-item .quote-name{display:inline-flex;align-items:center;gap:6px}.quote-preferences label .instrument-logo{width:20px;height:20px;flex-basis:20px}.quote-preferences>div{min-height:42px}.workbench-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}.workbench-toolbar select{min-width:0;height:36px;background:var(--surface);color:var(--ink);border:1px solid var(--grid);border-radius:2px;padding:0 8px;font:inherit;font-size:12px}.instrument-picker{display:flex;align-items:center;gap:8px}.instrument-picker select{width:142px}.swing-strength{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.workbench-toolbar .button{min-height:36px;padding:7px 10px;font-size:12px}.gann-layer-controls,.chart-indicator-switches{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;font-size:12px}.gann-layer-controls{padding:12px 0;border-top:1px solid var(--soft-line)}.gann-layer-controls label,.chart-indicator-switches label{display:inline-flex;align-items:center;gap:5px}.gann-layer-controls input,.chart-indicator-switches input{accent-color:#a77419;width:14px;height:14px;margin:0}.workbench-split{display:grid;grid-template-columns:minmax(0,1fr) 270px;border-top:2px solid var(--line)}.workbench-split .workbench-chart{border-top:0;margin-top:0;padding-right:22px}.workbench-chart .resource-empty{min-height:460px;display:grid;align-content:center;text-align:center;background:var(--hover)}.gann-inspector{min-width:0;border-left:1px solid var(--soft-line);padding:22px 0 20px 20px;max-height:760px;overflow-y:auto;overscroll-behavior:contain}.gann-inspector>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.gann-inspector h2{margin:0;font-size:16px}.gann-inspector h3{font-size:12px;margin:22px 0 8px}.gann-inspector header>span{color:var(--muted);font-size:10px}.gann-baseline{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid var(--soft-line);font-variant-numeric:tabular-nums}.gann-baseline>small,.gann-baseline b small{font-size:10px;color:var(--muted);font-weight:400}.gann-baseline>strong{font-size:17px}.gann-baseline>b{font-size:24px}.gann-inspector .cycle-windows{grid-template-columns:1fr}.gann-inspector .cycle-windows>button{padding:10px 0;gap:5px;background:transparent;color:var(--ink)}.swing-list{display:grid}.swing-list>button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:0;border-bottom:1px solid var(--soft-line);padding:10px 4px;background:transparent;color:var(--ink);font:inherit;font-size:11px}.swing-list small{display:block;margin-top:4px;font-size:9px;color:var(--muted)}.swing-list button[aria-pressed=true]{background:var(--hover);box-shadow:inset 2px 0 #a77419}.swing-list button:disabled{opacity:.65}.chart-event-list{display:grid}.chart-event-list button{display:flex;gap:10px;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--soft-line);padding:9px 0;text-align:left;font-size:11px}.chart-event-list time{color:var(--muted);flex:0 0 36px}.chart-event-list span{overflow-wrap:anywhere}.chart-event-list button:disabled{opacity:.6}.workbench-advanced{margin:18px 0;border-top:1px solid var(--soft-line);border-bottom:1px solid var(--soft-line)}.workbench-advanced summary{cursor:pointer;padding:16px 0;font-size:13px;font-weight:600}.workbench-advanced .workbench-form{padding-top:8px}.chart-shell{min-width:0}.chart-plot{position:relative;min-width:0}.chart-fullscreen .chart-plot{display:flex;flex:1;flex-direction:column;min-height:0}.chart-fullscreen .chart-plot .stock-chart{flex:1;height:0;min-height:0}.main-chart{margin-left:64px;padding:0;height:100dvh;display:flex;flex-direction:column;min-width:0;overflow:hidden}.chart-workspace{flex:1;min-height:0;min-width:0;background:var(--surface)}.chart-terminal{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;padding:0;background:var(--surface)}.chart-terminal.chart-fullscreen{padding:0}.chart-terminal .chart-toolbar{flex-wrap:nowrap;justify-content:flex-start;gap:0;padding:6px 10px;border-bottom:1px solid var(--soft-line);flex-shrink:0}.chart-terminal button{border-radius:2px;box-shadow:none;transform:none}.chart-symbol-picker{display:flex;align-items:center;gap:6px;flex:0 1 190px;min-width:110px}.chart-symbol-picker .instrument-logo{flex-shrink:0}.chart-symbol-picker select,.chart-type-picker{height:32px;max-width:100%;min-width:0;padding:0 6px;border:0;color:var(--ink);background:var(--surface);font-size:12px;cursor:pointer}.chart-symbol-picker select{width:100%;font-weight:650}.chart-terminal .mini-segments{border:0;border-left:1px solid var(--soft-line);padding:0 8px;flex-shrink:0}.chart-terminal .mini-segments button{border:0;background:transparent;min-width:36px;height:32px;padding:0 7px;font-size:12px}.chart-terminal button[aria-pressed=true]{color:#2962ff;background:#2962ff12}[data-theme=dark] .chart-terminal button[aria-pressed=true]{color:#83a8ff;background:#2962ff22}.chart-type-picker{border-left:1px solid var(--soft-line);width:78px}.chart-terminal .chart-tool-icons{align-items:center;position:relative;gap:2px;border-left:1px solid var(--soft-line);padding-left:8px}.chart-terminal .chart-tool-icons .icon-button{border:0;height:32px;width:32px}.chart-command{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 8px;height:32px;border:0;font-size:12px;background:transparent}.chart-terminal button:hover,.chart-terminal select:hover{background:var(--hover)}.chart-theme{margin-left:auto;padding-left:10px}.chart-theme .theme-control{border:0;box-shadow:none;padding:0;gap:0;background:transparent}.chart-theme .theme-control .icon-button{width:30px;height:30px;border:0;background:transparent}.chart-theme .theme-control svg{width:17px;height:17px}.chart-terminal .chart-plot{flex:1;min-height:0;display:flex}.chart-terminal .chart-plot .stock-chart{height:100%;min-height:0}.chart-terminal .candle-values{position:absolute;top:9px;left:12px;right:82px;z-index:2;align-content:flex-start;min-height:0;gap:4px 12px;font-size:11px;pointer-events:none;color:var(--muted)}.chart-terminal .candle-values strong{color:var(--ink);font-size:12px}.chart-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;font-size:12px;color:var(--muted)}.chart-footer{display:flex;align-items:center;gap:8px;padding:4px 10px;border-top:1px solid var(--soft-line);flex-shrink:0;min-height:38px;font-size:10px;color:var(--muted)}.chart-ranges{display:flex;gap:1px;flex-shrink:0}.chart-footer button{border:0;height:28px;padding:0 7px;background:transparent;font-size:11px;white-space:nowrap;flex-shrink:0}.chart-source{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.chart-timezone{white-space:nowrap;flex-shrink:0}.chart-menu-panel{position:absolute;top:calc(100% + 9px);right:0;z-index:10;width:244px;max-width:calc(100vw - 20px);padding:6px 0;border:1px solid var(--soft-line);border-radius:4px;background:var(--surface);box-shadow:0 6px 20px #0000001a}.chart-menu-panel>strong{display:block;padding:8px 14px;font-size:12px;border-bottom:1px solid var(--soft-line)}.chart-menu-panel label{display:flex;align-items:center;gap:10px;padding:11px 14px;font-size:12px;cursor:pointer}.chart-menu-panel label:hover{background:var(--hover)}.chart-menu-panel input{accent-color:#2962ff;flex-shrink:0}.chart-menu-panel label>span{display:grid;gap:4px}.chart-menu-panel small{font-size:10px;color:var(--muted)}.chart-terminal>.stock-unavailable{position:absolute;bottom:45px;left:12px;font-size:12px;color:var(--ink)}@media(min-width:701px){.app-shell{--navigation-width: 218px}.app-shell>main{margin-left:var(--navigation-width)}.app-shell .sidebar{width:var(--navigation-width)}.app-shell.nav-compact{--navigation-width: 72px}.app-shell.nav-hidden{--navigation-width: 0px}.nav-hidden .sidebar{visibility:hidden;padding:0;border:0}.nav-compact .sidebar{padding:26px 8px}.nav-compact .sidebar .brand{padding:0}.nav-compact .sidebar .brand strong{font-size:20px}.nav-compact .sidebar .brand>span,.nav-compact .sidebar-layers,.nav-compact .sidebar-bottom{display:none}.nav-compact .sidebar nav{margin-top:34px;gap:10px}.nav-compact .sidebar .nav-item{width:44px;min-height:44px;padding:0;justify-content:center;gap:0;border-width:2px}.nav-compact .sidebar .nav-item>span,.nav-compact .sidebar .nav-item>small{display:none}}.desktop-navigation-control{display:flex;gap:2px;flex-shrink:0}.desktop-navigation-control .icon-button{width:30px;height:32px}.btc-gann-panel{padding:22px 0;border-bottom:1px solid var(--soft-line);min-width:0}.btc-gann-panel>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.btc-gann-panel h3{font-size:15px}.btc-gann-panel header>div{display:flex}.btc-gann-panel .icon-button{width:28px;height:30px}.btc-window{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;padding:14px 0;border-bottom:1px solid var(--soft-line);font-size:12px}.btc-window:last-child{border:0}.btc-window.is-placeholder>*{visibility:hidden}.btc-window-title{border:0;padding:0;background:transparent;color:var(--ink);text-align:left;font-weight:700;line-height:1.5;overflow-wrap:anywhere}.btc-window-title:hover{text-decoration:underline;text-underline-offset:3px}.btc-window-status{font-size:10px;color:var(--muted);white-space:nowrap}.btc-window-status.current{color:var(--ink);border-bottom:3px solid var(--gann)}.btc-window small{font-size:10px;color:var(--muted);grid-column:1 / -1}.btc-settings{padding-top:16px}.btc-settings fieldset{padding:12px 0;border:0;border-top:1px solid var(--soft-line);min-width:0}.btc-settings legend{font-size:11px;font-weight:700;padding:0 6px 0 0}.btc-cycle-options{display:flex;flex-wrap:wrap;gap:12px;font-size:11px}.btc-cycle-options label{display:flex;align-items:center;gap:5px}.btc-anchor-options{max-height:240px;overflow-y:auto}.btc-anchor-row{display:flex;align-items:center;gap:8px}.btc-anchor-options label{display:flex;flex:1;min-width:0;align-items:center;gap:8px;padding:8px 0;font-size:11px}.btc-anchor-options label>span{flex:1}.btc-anchor-options small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.btc-settings input{accent-color:var(--gann)}.btc-push-control{padding-top:12px;border-top:1px solid var(--soft-line)}.btc-push-control .button{font-size:11px;padding:9px;min-height:38px}.btc-event-evidence{padding:12px 0;font-size:12px}.btc-event-evidence>div{display:grid;gap:8px;padding:14px 0;border-bottom:1px solid var(--soft-line)}.btc-event-evidence p{color:var(--muted);font-size:11px;line-height:1.7}.source-detail>p{white-space:pre-line}.ipo-origin-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 12px;padding:12px 0;border-bottom:1px solid var(--soft-line);font-size:11px}.ipo-origin-heading>strong{font-size:13px;white-space:nowrap}.ipo-origin-heading>small{color:var(--muted);font-size:10px}.chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}@media(min-width:701px)and (max-width:1270px){.app-shell:not(.nav-compact):not(.nav-hidden){--navigation-width: 178px}}@media(max-width:700px){.desktop-navigation-control{display:none}.main-chart{margin:0;height:calc(100dvh - 139px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:280px}.chart-terminal .chart-toolbar{flex-wrap:wrap;padding:4px 6px;row-gap:4px}.chart-symbol-picker{flex:1 1 110px}.chart-terminal .chart-tool-icons{margin-left:auto;padding-left:2px;gap:0;border:0}.chart-terminal .chart-tool-icons .icon-button{width:28px;height:32px}.chart-command{padding:0 7px}.chart-terminal .mini-segments{order:2;border:0;padding-left:0;flex-basis:calc(100% - 80px)}.chart-type-picker{order:3}.chart-theme{display:none}.chart-terminal .candle-values{left:8px;top:8px;gap:4px 8px;font-size:10px}.chart-footer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:0 4px;padding:4px 6px}.chart-source{grid-row:2;grid-column:1 / -1;padding:5px 2px 0;font-size:9px}.chart-timezone{display:none}.chart-terminal.chart-fullscreen{height:100dvh}}@media(max-width:360px){.chart-command>span{display:none}.chart-command{width:28px;padding:0}}.chart-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;padding-bottom:12px}.chart-tool-icons{display:flex;gap:4px}.chart-tool-icons .icon-button{width:30px;height:30px;box-shadow:none;border:1px solid var(--soft-line)}.chart-indicator-switches{padding-bottom:10px;color:var(--muted);font-size:11px}.chart-shell .candle-values{display:flex;flex-wrap:wrap;gap:5px 12px;min-height:30px}.chart-shell .stock-chart{height:390px;width:100%;min-width:0}.workbench-chart .stock-chart{height:480px}.chart-formulas{min-height:16px;overflow-wrap:anywhere}.chart-annotation{font-size:11px;min-height:16px;margin:4px 0;color:var(--muted);overflow-wrap:anywhere}.chart-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;background:var(--surface);color:var(--ink);padding:22px;display:flex;flex-direction:column}.chart-fullscreen .stock-chart{flex:1;min-height:100px;height:0}.preview-popover:has(.chart-fullscreen){transform:none!important;will-change:auto!important;overflow:visible}@media(max-width:1100px){.workbench-split{grid-template-columns:minmax(0,1fr)}.workbench-split .workbench-chart{padding-right:0}.gann-inspector{border-left:0;border-top:1px solid var(--soft-line);padding-left:0;max-height:none;overflow:visible}.gann-inspector .cycle-windows{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.feature-library .workbench-tabs{margin:12px 0 16px}.workbench-toolbar{gap:10px}.workbench-toolbar .mini-segments{margin-left:auto}.workbench-toolbar .swing-strength{flex:1}.gann-layer-controls{gap:12px;font-size:11px}.workbench-chart .stock-chart{height:360px}.chart-shell .candle-values{font-size:10px;min-height:42px}.chart-toolbar{gap:6px}.chart-toolbar .mini-segments button{padding:6px 8px}.chart-fullscreen{padding:12px}.gann-inspector .cycle-windows{grid-template-columns:1fr}}.workbench-form{padding-bottom:12px}.field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.field-grid .field{min-width:0;margin:0}.field select,.field-grid input,.field-grid select,.radar-toolbar input,.radar-toolbar select,.inline-field input,.company-watch-form input,.company-watch-form select,.reminder-row select{min-width:0;max-width:100%;width:100%;height:38px;padding:7px 9px;border:1px solid var(--grid);border-radius:2px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px}.field-grid input[type=checkbox],.radar-toolbar input[type=checkbox]{width:16px;height:16px;padding:0}.workbench-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:18px 0}.workbench-actions .button{font-size:12px;padding:9px 12px}.cycle-windows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px;margin-bottom:12px}.cycle-windows>button{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px 0;border:0;border-bottom:1px solid var(--soft-line);text-align:left;min-width:0}.cycle-windows>button span{font-size:11px;color:var(--muted);grid-column:1 / -1}.cycle-windows>button strong{font-size:14px}.cycle-windows>button:disabled{opacity:.6}.workbench-section{padding:22px 0;border-top:2px solid var(--line);margin-top:16px;min-width:0}.workbench-section>header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.workbench-section>header h2{font-size:17px;margin:0}.workbench-section>header .muted{font-size:11px}.workbench-ipo{max-width:820px;margin-top:24px}.chart-options{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;margin-bottom:18px}.chart-options label{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:11px;min-width:0}.chart-options label input[type=checkbox]{flex:0 0 16px}.inline-field{display:flex;align-items:center;gap:8px;font-size:11px}.inline-field input{width:100px}.table-scroll{overflow-x:auto;max-width:100%;overscroll-behavior-x:contain}.research-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:12px}.research-table th{text-align:left;font-size:11px;color:var(--muted);font-weight:500}.research-table td,.research-table th{padding:11px 12px;border-bottom:1px solid var(--soft-line);white-space:nowrap}.research-table th:first-child,.research-table td:first-child{padding-left:0}.research-table td small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.resource-empty{padding:28px 0;font-size:12px;color:var(--muted);line-height:1.8}.quote-track,.quote-group{display:flex;width:max-content;flex:0 0 auto}.quote-item{width:174px;flex-basis:174px;-webkit-user-select:none;user-select:none}.quote-item:first-child{width:174px;flex-basis:174px;padding-left:14px}.quote-item:hover{background:var(--hover)}.quote-rail{scroll-behavior:auto;cursor:grab;scrollbar-width:none;-ms-overflow-style:none}.quote-rail::-webkit-scrollbar{display:none;width:0;height:0}.chart-engine-select{margin-left:auto;min-width:100px;max-width:160px;height:30px;padding:0 5px;border:0;border-left:1px solid var(--soft-line);background:var(--surface);color:var(--muted);font-size:10px}.kline-trial{display:flex;flex-direction:column;height:100%;min-height:0;width:100%;background:var(--surface)}.kline-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;height:100dvh}.kline-toolbar{display:flex;align-items:center;gap:4px;padding:5px 8px;border-bottom:1px solid var(--soft-line);flex-shrink:0;min-width:0}.kline-toolbar>select:not(.chart-engine-select){color:var(--ink);background:var(--surface);border:0;height:30px;font-size:11px;width:70px}.kline-toolbar .mini-segments{border:0;flex-shrink:0}.kline-toolbar .mini-segments button{min-width:36px;height:30px;padding:0 5px}.kline-toolbar .icon-button,.kline-draw-toolbar .icon-button,.kline-indicators .icon-button{width:30px;height:30px;border:0;box-shadow:none;background:transparent;color:var(--muted);border-radius:2px;flex-shrink:0}.kline-toolbar .icon-button:hover,.kline-draw-toolbar .icon-button:hover{background:var(--hover)}.kline-draw-toolbar .icon-button[aria-pressed=true]{background:var(--sky);color:#17191b}.kline-main{display:flex;flex:1;min-height:0;min-width:0}.kline-draw-toolbar{display:flex;flex-direction:column;gap:8px;width:42px;flex:0 0 42px;align-items:center;padding-top:12px;border-right:1px solid var(--soft-line)}.kline-canvas-wrap{flex:1;min-width:0;min-height:0;position:relative}.kline-canvas{width:100%;height:100%;min-height:0;touch-action:none;background:#fff}html[data-theme=dark] .kline-canvas{background:#242424}.kline-trial{--plus-primary: #ffdb33;--plus-accent: #fae583;--plus-border: #000000}html[data-theme=dark] .kline-trial{--plus-border: #5c5c5c}.kline-toolbar .mini-segments{gap:4px}.kline-toolbar .mini-segments button,.kline-toolbar .mini-segments button:last-child{min-width:28px;height:28px;padding:0 6px;border:2px solid currentColor;border-radius:6px;box-shadow:2px 2px 0 0 var(--plus-border);background:var(--surface);font-size:12px;font-weight:700}.kline-toolbar .mini-segments button:hover{background:var(--plus-accent);color:#000}.kline-toolbar .mini-segments button:active{transform:translate(2px,2px);box-shadow:none}.kline-toolbar .mini-segments button[aria-pressed=true],.kline-draw-toolbar .icon-button[aria-pressed=true],.kline-footer .chart-ranges button[aria-pressed=true]{background:var(--plus-primary);color:#000}.kline-footer .chart-ranges button:hover{background:var(--plus-accent);color:#000}.kline-symbol{position:absolute;top:5px;left:8px;z-index:1;pointer-events:none;font-size:11px;font-weight:650;color:var(--ink);background:var(--surface)}.kline-empty{position:absolute;top:20px;right:0;bottom:0;left:0;display:flex;gap:16px;justify-content:center;align-items:center;background:var(--surface);color:var(--muted);font-size:12px}.kline-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 16px;padding:8px;border-top:1px solid var(--soft-line);font-size:9px;color:var(--muted);flex-shrink:0;line-height:1.5}.kline-indicators{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:10px 12px;border-bottom:1px solid var(--soft-line);font-size:11px}.kline-indicators label{display:flex;align-items:center;gap:5px}.kline-indicators input[type=number]{width:60px;height:26px;border:1px solid var(--soft-line);background:var(--surface);color:var(--ink);padding-left:5px}.kline-error{display:flex;justify-content:space-between;color:var(--fire);padding:6px 12px;font-size:11px}@media(max-width:700px){.chart-engine-select{min-width:110px;margin-left:0;font-size:9px;flex:0 0 auto}.kline-toolbar{flex-wrap:wrap;gap:0;padding:4px}.kline-toolbar .chart-symbol-picker{flex:1;min-width:80px}.kline-toolbar .chart-engine-select{margin-left:auto;max-width:145px}.kline-draw-toolbar{width:34px;flex-basis:34px;gap:6px}.kline-symbol{top:3px;font-size:10px}.kline-footer{font-size:8px}}.calendar-market-context{margin-top:8px;border-bottom:1px solid var(--soft-line)}.appearance-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.language-control{display:inline-flex;align-items:center;gap:6px;color:var(--ink);flex-shrink:0;justify-content:center;width:86px;height:32px;padding:0 8px;border:1px solid var(--soft-line);border-radius:4px;background:var(--surface);font-size:11px;font-weight:650;box-shadow:none}.language-control:hover,.language-control[aria-expanded=true]{background:var(--hover)}.language-control:focus-visible,.language-menu button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.language-menu{z-index:1200;width:144px;padding:5px;border:1px solid var(--ink);border-radius:4px;box-shadow:3px 3px 0 var(--ink);background:var(--surface);color:var(--ink)}.language-menu button{display:flex;align-items:center;justify-content:space-between;width:100%;height:38px;padding:0 9px;border:0;border-radius:2px;color:inherit;background:transparent;font-size:12px}.language-menu button:hover,.language-menu button:focus,.language-menu button[aria-checked=true]{background:var(--hover)}.layer-select-all{display:flex;align-items:center;gap:8px;padding:8px 0 10px;margin-bottom:5px;border-bottom:1px solid var(--soft-line);font-size:11px;font-weight:700}.calendar-legend{display:flex;flex-wrap:wrap;gap:6px 16px;padding:7px 3px;font-size:10px;color:var(--muted)}.calendar-legend span{display:inline-flex;align-items:center;gap:5px}.calendar-legend i{display:inline-block;width:13px;height:11px}.legend-window{background:#fff0d5;border:1px solid #d7b475}html[data-theme=dark] .legend-window{background:#3b3326;border-color:#8d7444}.legend-target{border-bottom:3px solid #b58b35}.legend-term{border-top:3px solid var(--east)}.legend-selected{background:var(--sky);border:1px solid var(--ink)}.analysis-controls{position:relative;border-bottom:1px solid var(--soft-line);padding:6px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;flex-shrink:0}.analysis-switches{display:flex;flex-wrap:wrap;align-items:center;gap:6px 13px}.analysis-switches label{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.analysis-switches input{width:12px;height:12px;margin:0;accent-color:var(--ink)}.analysis-switches small{color:var(--muted);font-variant-numeric:tabular-nums}.analysis-evidence{flex-shrink:0}.analysis-evidence>summary{cursor:pointer;color:var(--muted)}.analysis-evidence[open]{position:absolute;top:0;right:0;width:min(460px,100%);padding:10px 14px;max-height:56vh;overflow-y:auto;z-index:12;background:var(--surface);border:1px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.analysis-evidence p{color:var(--muted);line-height:1.7}.analysis-evidence h4{font-size:12px;margin:12px 0 4px}.analysis-result{display:flex;flex-direction:column;gap:3px;padding:7px 0;border-top:1px solid var(--soft-line);line-height:1.5}.analysis-result span{color:var(--muted)}.chart-ranges{display:flex;align-items:center;gap:5px}.chart-ranges button{min-width:28px;min-height:24px;justify-content:center;font-size:10px}.chart-ranges button[aria-pressed=true]{color:var(--ink);background:var(--sky)}.kline-toolbar{flex-wrap:wrap}.kline-footer>span:nth-last-child(2){flex-basis:100%}.news-routine-toggle{display:flex;align-items:center;gap:6px;font-size:11px;margin-bottom:10px;color:var(--muted)}.official-news article p{font-size:11px;color:var(--muted);line-height:1.65;margin:5px 0}.official-news .news-body{display:grid;gap:3px;min-width:0}.official-news .news-topic{justify-self:start;padding:0 6px;border:1px solid var(--soft-line);color:var(--muted);font-size:10px;line-height:1.7}.official-news article details{font-size:10px;margin:2px 0}.official-news article details>summary{cursor:pointer;color:var(--muted)}html[lang=en] .layer-filter{min-height:36px;height:auto}html[lang=en] .layer-filter>span{line-height:1.35;overflow-wrap:anywhere}@media(max-width:700px){.analysis-controls{align-items:flex-start;font-size:9px;padding:5px 8px}.analysis-controls{flex-wrap:wrap}.analysis-controls .gann-readout{order:3;flex:1 0 100%;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none}.wave-projection-zone small,.wave-projection>small{display:none}.analysis-switches{gap:5px 8px}.analysis-evidence>summary{max-width:90px;line-height:1.5}.mobile-header .language-control{width:65px;height:40px;padding:0 6px}.mobile-header .language-control>svg:first-child{display:none}.kline-main{min-height:320px}.kline-trial{min-height:640px}.kline-footer{padding:5px 8px}}@media(max-width:700px),(pointer:coarse)and (max-height:520px){.kline-fullscreen{min-height:0;overflow:hidden;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.kline-fullscreen .analysis-controls,.kline-fullscreen .wave-candidate-bar,.kline-fullscreen .chart-engine-select,.kline-fullscreen .chart-theme{display:none}.kline-fullscreen .kline-footer{padding:3px 8px}.kline-fullscreen .kline-footer>:not(.kline-source,.kline-history-error){display:none}.kline-fullscreen .kline-main{flex:1 1 auto;min-height:0}}@media(pointer:coarse)and (max-height:520px){.kline-fullscreen .kline-toolbar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.kline-fullscreen .kline-full-toggle{position:sticky;right:0;z-index:1;flex:none;background:var(--surface)}}.price-axis-auto{position:absolute;z-index:3;height:20px;padding:0 4px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-size:10px;font-weight:700;cursor:pointer}.calendar-market-context>summary{padding:10px 0;color:var(--muted);font-size:11px;cursor:pointer}.calendar-market-context .crypto-overview{margin-block:8px 18px}.day-cell.gann-window-day{background:#fff0d5}html[data-theme=dark] .day-cell.gann-window-day{background:#3b3326}.day-cell.gann-target-day{box-shadow:inset 0 -3px 0 var(--gann)}.day-cell.solar-term-day{border-top:3px solid var(--east);padding-top:7px}.day-cell.selected,html[data-theme=dark] .day-cell.selected{background:var(--sky)}.day-cell.selected.gann-window-day{outline:2px solid var(--gann);outline-offset:-3px}.day-cell.selected.gann-target-day{box-shadow:inset 0 -3px 0 var(--gann)}.day-cell.is-today .day-number{text-decoration:underline;text-underline-offset:4px}.cell-window-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:var(--ink);margin-top:6px;pointer-events:none}.window-label-compact{display:none}@container (max-width: 125px){.window-label-full{display:none}.window-label-compact{display:inline}}@media(min-width:1271px){@container (max-width: 125px){.month .cell-event{font-size:14px;gap:6px}.month .cell-event .layer-dot{width:13px;height:13px}}}.gann-window-summary{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:color-mix(in srgb,var(--gann) 12%,var(--surface));border-left:3px solid var(--gann);font-size:12px;line-height:1.6}.gann-window-group{display:grid;gap:2px}.gann-window-group p{margin:0}.btc-event-evidence>details{margin-block:12px}.btc-event-evidence>details>summary{cursor:pointer;font-size:12px;color:var(--muted)}.wave-candidate-bar{--wave-color: #7543ad;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:5px 10px;border-bottom:1px solid var(--soft-line);font-size:10px;flex-shrink:0}html[data-theme=dark] .wave-candidate-bar{--wave-color: #c2a0f5}.gann-readout{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 14px;padding:4px 8px;border-left:3px solid var(--gann);background:color-mix(in srgb,var(--gann) 9%,transparent);font-size:11px;font-variant-numeric:tabular-nums}.gann-readout strong{color:color-mix(in srgb,var(--gann) 70%,var(--ink))}.wave-projection{flex-basis:100%;display:grid;gap:2px;padding:5px 8px;border:1px dashed var(--wave-color);background:color-mix(in srgb,var(--wave-color) 6%,transparent);font-size:11px}.wave-projection p{margin:0}.wave-projection-zone{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.wave-projection-zone strong{min-width:112px}.wave-projection-zone span,.wave-projection-zone time{font-variant-numeric:tabular-nums;font-weight:650;color:var(--ink)}.wave-projection-zone em{font-style:normal;font-size:10px;padding:0 5px;border:1px solid var(--wave-color);color:var(--wave-color)}.wave-projection-zone small,.wave-projection>small{color:var(--muted)}.wave-projection-invalid{font-weight:650}.wave-color-key{width:16px;height:2px;background:var(--wave-color)}.wave-candidate-bar strong{color:var(--wave-color);font-size:11px}.wave-candidate-nav{display:flex;align-items:center;gap:3px}.wave-candidate-nav>span{width:36px;text-align:center;font-variant-numeric:tabular-nums}.wave-candidate-nav .icon-button,.wave-point-detail .icon-button{width:28px;height:28px;border:0;background:transparent;box-shadow:none}.wave-candidate-nav .icon-button:hover{background:var(--hover)}.wave-candidate-bar time,.wave-candidate-bar small{color:var(--muted)}.wave-state{color:var(--muted)}.wave-state.forming{border-bottom:1px dashed currentColor}.wave-state.invalid{color:var(--danger, #be4d47)}.wave-pivot-buttons{display:flex;gap:3px}.wave-pivot-buttons button{min-width:25px;height:26px;padding:0 5px;border:1px solid var(--soft-line);border-radius:2px;background:var(--surface);color:var(--wave-color);font-size:11px;font-weight:700}.wave-pivot-buttons button:hover{background:var(--hover);border-color:var(--wave-color)}.wave-point-detail{position:absolute;right:12px;bottom:12px;z-index:5;width:min(330px,calc(100% - 24px));padding:12px;max-height:calc(100% - 24px);overflow-y:auto;border:1px solid var(--ink);border-radius:4px;box-shadow:3px 3px 0 var(--ink);background:var(--surface);font-size:11px}.wave-point-detail header{display:flex;align-items:center;justify-content:space-between;gap:8px}.wave-point-detail dl{display:grid;grid-template-columns:auto 1fr;gap:7px 14px;margin:10px 0}.wave-point-detail dt{color:var(--muted)}.wave-point-detail dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.wave-point-detail p,.wave-point-detail small{line-height:1.6;color:var(--muted)}@media(max-width:700px){.window-label-full{display:none}.window-label-compact{display:inline}.wave-candidate-bar{gap:4px 7px;padding:5px 8px}.wave-candidate-bar time{font-size:9px}.wave-candidate-bar small{display:none}.wave-candidate-nav .icon-button{width:32px;height:32px}.wave-pivot-buttons button{min-width:30px;height:32px}}.schedule-date-nav{display:flex;gap:8px;align-items:center;padding-block:10px 16px;border-bottom:1px solid var(--soft-line)}.schedule-date-nav>.icon-button{flex:0 0 28px;width:28px;height:36px;border:0;box-shadow:none}.schedule-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));flex:1;min-width:0}.schedule-week button{display:grid;justify-items:center;gap:4px;background:transparent;color:var(--ink);border:0;border-radius:2px;padding:6px 2px 3px}.schedule-week button[aria-pressed=true]{background:var(--sky);color:#17191b;box-shadow:inset 0 -2px var(--line)}.schedule-week button:hover{background:var(--hover)}.schedule-week button[aria-current=date] strong{text-decoration:underline;text-underline-offset:4px}.schedule-week small{color:var(--muted);font-size:10px}.schedule-week strong{font-size:19px;font-variant-numeric:tabular-nums}.schedule-week button>span{display:flex;gap:3px;min-height:4px}.term-mark,.gann-mark{width:5px;height:4px;display:inline-block;background:var(--east)}.gann-mark{background:var(--gann)}.schedule-date-nav>input{width:125px;min-width:0;padding:7px;background:var(--surface);color:var(--ink);border:1px solid var(--soft-line);font-size:11px}.schedule-filters{display:flex;align-items:center;gap:12px;padding:14px 0;flex-wrap:wrap}.schedule-filters>div{display:flex;gap:2px;flex-wrap:wrap}.schedule-filters button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:11px;padding:7px 8px;white-space:nowrap}.schedule-filters button[aria-pressed=true]{color:var(--ink);border-color:var(--ink);font-weight:700}.schedule-important{display:flex;gap:5px;align-items:center;font-size:11px;margin-left:auto}.schedule-search{display:flex;align-items:center;gap:6px;color:var(--muted)}.schedule-search input{width:100px;border:0;border-bottom:1px solid var(--soft-line);padding:6px 0;background:transparent;color:var(--ink);font-size:11px}.schedule-summary{display:flex;align-items:center;gap:12px;margin:4px 0 16px;flex-wrap:wrap}.schedule-summary strong{font-size:13px}.schedule-summary>span{font-size:10px;color:var(--muted)}.schedule-summary .text-button{margin-left:auto;font-size:10px}.schedule-table-head,.schedule-row{display:grid;grid-template-columns:56px 74px 48px minmax(0,1fr) 30px;column-gap:12px}.schedule-table-head{padding:10px 8px;background:var(--hover);color:var(--muted);font-size:10px}.schedule-list{margin:0;padding:0;list-style:none}.schedule-row{padding:17px 8px;border-bottom:1px solid var(--soft-line);align-items:start}.schedule-row>time{font-size:13px;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.6}.schedule-region{font-size:11px;padding-top:3px}.schedule-importance{font-size:10px;color:var(--muted);padding-top:4px}.schedule-importance.high{color:var(--fire);font-weight:700}.schedule-event-body{min-width:0}.schedule-event-title{border:0;padding:0;text-align:left;background:transparent;color:var(--ink);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.schedule-event-title:hover{text-decoration:underline}.schedule-event-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:9px;margin-top:6px;line-height:1.5}.schedule-event-meta .layer-dot{width:7px;height:7px}.schedule-event-meta em{font-style:normal}.schedule-basis{display:block;color:var(--muted);font-size:9px;line-height:1.7;margin-top:5px}.schedule-row .schedule-remind{border:0;box-shadow:none;width:28px;height:28px;background:transparent;color:var(--muted)}.schedule-row .schedule-remind.active{color:var(--ink);background:var(--lemon)}.schedule-gann{border-left:3px solid var(--gann);padding-left:5px}.schedule-term{border-left:3px solid var(--east);padding-left:5px}.schedule-earnings{margin-top:10px;font-size:11px}.schedule-earnings>summary{cursor:pointer;color:var(--muted)}.schedule-earnings .earnings-market{margin-top:15px}.schedule-empty{padding:36px 8px;color:var(--muted);font-size:12px;line-height:1.8}.schedule-coverage{padding:14px 0;font-size:10px;color:var(--muted);line-height:1.8}.official-news{padding:20px 0;border-top:1px solid var(--soft-line);margin-top:20px}.official-news>header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.official-news h3{margin:0;font-size:13px}.official-news article{display:grid;grid-template-columns:110px minmax(0,1fr);gap:5px 14px;padding:12px 0;border-bottom:1px solid var(--soft-line)}.official-news time,.official-news small{font-size:10px;color:var(--muted);line-height:1.7}.official-news .news-body>a{font-size:12px;color:var(--ink);line-height:1.6;overflow-wrap:anywhere}.official-news .news-body>a svg{display:inline;vertical-align:middle;margin-left:5px}.official-news .news-body>small{font-size:9px}.official-news footer{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--muted);font-size:9px;padding-top:15px;line-height:1.7}@media(max-width:700px){.month .cell-window-label{font-size:8px;line-height:12px}.day-cell.solar-term-day{padding-top:4px}.schedule-date-nav{display:grid;grid-template-columns:24px minmax(0,1fr) 24px;gap:3px;padding-top:4px}.schedule-date-nav>input{grid-column:2 / 4;justify-self:end;margin:6px 0 0 auto}.schedule-week strong{font-size:18px}.schedule-date-nav>.icon-button{width:24px;flex-basis:24px}.schedule-filters{gap:8px}.schedule-filters>div{width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.schedule-filters button{padding-inline:8px;font-size:11px}.schedule-important{margin-left:0}.schedule-search{margin-left:auto}.schedule-summary{gap:7px}.schedule-summary .text-button{margin-left:0}.schedule-table-head{display:none}.schedule-row{grid-template-columns:44px minmax(0,1fr) 26px;column-gap:9px;row-gap:6px;padding:16px 0}.schedule-row>time{grid-row:1 / 3;font-size:12px}.schedule-region{grid-column:2;grid-row:1;font-size:10px;color:var(--muted);padding-top:0}.schedule-importance{grid-column:3;grid-row:1;padding:0;text-align:center}.schedule-event-body{grid-column:2;grid-row:2}.schedule-row .schedule-remind{grid-column:3;grid-row:2}.schedule-event-title{font-size:13px}.schedule-gann,.schedule-term{padding-left:5px}.official-news article{grid-template-columns:minmax(0,1fr);gap:4px}.official-news article>small{grid-column:1}}.quote-rail:active{cursor:grabbing}.quote-controls{display:flex;flex-direction:column;justify-content:center;gap:2px;border-left:1px solid var(--soft-line);padding-left:5px}.quote-controls .icon-button{width:28px;height:30px;border:0;box-shadow:none}.quote-item .stream-live{color:#23805f}[data-theme=dark] .quote-item .stream-live{color:#88d1ae}.ganzhi-text>span{display:inline-block;font-size:inherit}.ganzhi-text.yin-pair>span,.three-pillars .pillar-stack.yin-pair .glyph{transform:skew(-9deg);transform-origin:center}.ganzhi-text,.ganzhi-text>span{font-style:normal;font-synthesis:none}.ganzhi-text{display:inline-block}.ganzhi-text.ganzhi-vertical{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;line-height:1}.ganzhi-vertical>span{width:1em;height:1em;line-height:1;text-align:center;font-variant-east-asian:normal}.workbench-form .cycle-field>div{display:flex;flex-wrap:wrap;gap:12px 24px}.ganzhi-text>.element-wood{color:var(--wood)}.ganzhi-text>.element-fire{color:var(--fire)}.ganzhi-text>.element-earth{color:var(--earth)}.ganzhi-text>.element-metal{color:var(--metal)}.ganzhi-text>.element-water{color:var(--water)}.ipo-periods b .ganzhi-text{font-size:inherit}.ipo-periods small{font-size:9px;color:var(--muted);display:block;margin:0}.ipo-periods .ipo-strip-year{font-size:12px;color:var(--ink);font-variant-numeric:tabular-nums}.ipo-periods .ipo-strip-current{min-height:14px}.ipo-flow-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--soft-line)}.ipo-flow-pillars>div{display:grid;justify-items:center;gap:10px;padding:12px 0}.ipo-flow-pillars>div+div{border-left:1px solid var(--soft-line)}.ipo-flow-pillars small{color:var(--muted);font-size:10px}.ipo-flow-pillars .ganzhi-vertical{font-size:21px}.company-security-picker{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:10px 16px 0;color:var(--muted);font-size:11px}.company-security-picker select{max-width:180px;padding:5px 8px;border:1px solid var(--soft-line);border-radius:2px;color:var(--ink);background:var(--surface)}.company-preview-body{min-height:min(620px,calc(100dvh - 130px))}.panel-failure{padding:20px 0;font-size:12px;color:var(--muted)}.ipo-periods button[aria-pressed=true]{background:var(--hover);box-shadow:inset 0 -2px 0 var(--ink)}.ipo-periods button:hover{background:var(--hover)}.ipo-comparison-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin-block:16px 8px}.ipo-comparison{width:100%;min-width:520px;table-layout:fixed;border-collapse:collapse;text-align:center}.ipo-comparison th,.ipo-comparison td{padding:10px 3px;border-bottom:1px solid var(--soft-line);font-size:11px}.ipo-comparison-groups th{text-align:left;vertical-align:top;padding:10px 12px;background:var(--hover);font-weight:400}.ipo-comparison-groups strong{font-size:13px;margin-right:10px}.ipo-comparison-groups span,.ipo-comparison-groups small{display:block;margin-top:6px;font-size:10px;color:var(--muted);line-height:1.5}.ipo-comparison-groups th+th,.ipo-comparison th:nth-child(5),.ipo-comparison td:nth-child(5){border-left:2px solid var(--soft-line)}.ipo-comparison td>strong{display:block;padding:4px 0 12px;font-size:25px;font-weight:650}.ipo-comparison td>small{display:block;margin-top:8px;font-size:10px;color:var(--muted)}.ipo-comparison-elements{font-size:11px}.ipo-current-decade{margin-bottom:18px}@media(min-width:721px){.company-preview:has(.ipo-panel){width:min(740px,calc(100vw - 24px))}}.btc-calendar-strip{margin:0 0 12px;padding:10px 0;border-block:1px solid var(--soft-line);min-width:0}.btc-calendar-strip header,.btc-calendar-strip header strong{display:flex;align-items:center;gap:8px}.btc-calendar-strip header{flex-wrap:wrap;font-size:12px}.btc-calendar-strip header>span,.btc-calendar-strip footer,.btc-calendar-strip>p{color:var(--muted);font-size:10px}.btc-calendar-strip header>span{margin-left:auto}.btc-calendar-strip .icon-button{width:28px;height:28px;border:0;box-shadow:none}.btc-calendar-strip .layer-dot{background:var(--gann);width:10px;height:10px}.btc-calendar-windows{display:flex;align-items:center;min-height:69px;overflow-x:auto;gap:0;margin:8px 0;overscroll-behavior-x:contain}.btc-calendar-windows button{flex:0 0 auto;display:grid;gap:4px;min-width:108px;padding:6px 16px;text-align:left;border:0;border-left:3px solid var(--gann);border-radius:0;background:transparent;color:var(--ink)}.btc-calendar-windows button:hover{background:var(--hover)}.btc-calendar-windows time{font-size:12px;font-variant-numeric:tabular-nums}.btc-calendar-windows strong{font-size:14px}.btc-calendar-windows small,.btc-calendar-empty{font-size:10px;color:var(--muted)}.cell-btc-indicator{display:none;pointer-events:none}.cell-btc-indicator.is-hidden-row{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:9px;font-weight:700;color:var(--ink)}.btc-calendar-event{font-weight:650}.month .btc-calendar-event{font-size:12px}@media(max-width:700px){.calendar-grid.month .day-cell{padding:5px 4px 16px}.calendar-grid.month .day-number{line-height:20px}.calendar-grid.month .day-lunar{line-height:12px;margin-top:2px}.calendar-grid.month .day-cell.solar-term-day{padding-top:3px}.month .cell-btc-indicator{display:block;width:max-content;max-width:100%;margin-top:2px;padding:0;font-size:8px;font-weight:750;line-height:11px}.month .cell-window-label{margin-top:2px;font-size:8px;line-height:11px;white-space:nowrap}.btc-calendar-strip header>span{margin-left:0;font-size:9px}.btc-calendar-strip .icon-button{margin-left:auto}}@media(max-width:360px){.mobile-brand span{display:none}}.crypto-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--soft-line)}.crypto-metrics>div{min-width:0;padding:10px 12px 16px 0}.crypto-metrics span,.crypto-metrics small{display:block;font-size:11px;color:var(--muted);line-height:1.7}.crypto-metrics strong{display:block;font-size:21px;padding:7px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.crypto-metrics small{font-size:9px}.crypto-rankings{margin:15px 0;font-size:12px}.crypto-rankings summary,.crypto-source-list summary{cursor:pointer}.ranking-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:14px}.ranking-columns h3{font-size:12px;margin-bottom:12px}.ranking-columns small{color:var(--muted);font-size:10px}.ranking-row{display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid var(--soft-line);padding:8px 0;font-size:11px}.ranking-row span{overflow-wrap:anywhere;min-width:0}.ranking-row b{white-space:nowrap;font-weight:500}.supply-schedule{display:grid;gap:8px;padding:14px 0;border-block:1px solid var(--soft-line);font-size:12px}.supply-schedule small{font-size:10px;color:var(--muted);line-height:1.7}.coverage-note{font-size:11px;line-height:1.8;color:var(--muted);padding:12px 0}.crypto-source-list{font-size:11px;margin:8px 0}.crypto-source-list>div{display:flex;flex-wrap:wrap;gap:5px 12px;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--soft-line)}.crypto-source-list a{display:inline-flex;align-items:center;gap:4px;color:var(--ink)}.crypto-source-list span{font-size:10px;color:var(--muted)}.inspector .crypto-overview{margin-top:20px}.inspector .crypto-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.inspector .crypto-metrics strong{font-size:20px}.inspector .ranking-columns{grid-template-columns:minmax(0,1fr);gap:14px}.inspector-event>header{flex-wrap:wrap}.inspector-event>header>.icon-button{width:27px;height:27px;padding:4px;border:0;box-shadow:none}.radar-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:15px;margin:26px 0 18px}.radar-toolbar>label:not(.check-label){display:grid;gap:7px;font-size:11px;min-width:0}.check-label{display:flex;align-items:center;gap:7px;font-size:12px;min-height:38px}.radar-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px;padding:19px 0;border-block:2px solid var(--line);gap:12px}.radar-totals small{font-size:11px;color:var(--muted)}.radar-totals strong{display:block;font-size:26px;margin-top:10px}.radar-totals strong>span{font-size:11px;font-weight:400;color:var(--muted);margin-left:8px}.radar-event{display:grid;grid-template-columns:55px minmax(0,1fr) auto;gap:16px;align-items:start;padding:20px 0;border-bottom:1px solid var(--soft-line)}.radar-event>time{font-size:14px;font-weight:700;padding-top:3px;font-variant-numeric:tabular-nums}.radar-event p{font-size:11px;color:var(--muted);margin-top:7px;line-height:1.7}.event-title{display:block;border:0;background:transparent;padding:6px 0;color:var(--ink);font-size:14px;font-weight:600;line-height:1.6;text-align:left;overflow-wrap:anywhere}.event-title:hover{text-decoration:underline}.event-actions{display:flex;gap:5px}.event-actions .icon-button{width:32px;height:32px;border:1px solid var(--soft-line);box-shadow:none}.watch-columns{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:32px}.quote-preferences.watch-preferences{position:static;width:100%;border:0;border-right:1px solid var(--soft-line);box-shadow:none;padding:0 20px 0 0;z-index:auto}.company-watch-form{display:grid;grid-template-columns:75px minmax(0,1fr) minmax(0,1fr) 34px;align-items:end;gap:8px}.company-watch-form label{display:grid;min-width:0;gap:8px;font-size:10px}.company-watch-form .icon-button{height:38px;width:34px}.watched-company{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--soft-line);padding:10px 0;min-width:0}.watched-company .company-trigger{flex:1;min-width:0}.watched-company .company-cap{display:none}.watched-company .icon-button{flex-shrink:0}.reminder-row{display:grid;grid-template-columns:20px minmax(0,1fr) 100px 32px 32px;gap:12px;align-items:center;border-bottom:1px solid var(--soft-line);padding:14px 0}.reminder-row>div{min-width:0}.reminder-row .event-title{font-size:13px}.reminder-row small{display:block;font-size:10px;color:var(--muted);line-height:1.8}.reminder-row.due{border-left:3px solid var(--coral);padding-left:10px}.reminder-row .icon-button,.local-event-row .icon-button{width:32px;height:32px;box-shadow:none;border:1px solid var(--soft-line)}.local-event-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--soft-line)}.local-event-row .icon-button{flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:1040px){.field-grid,.crypto-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.watch-columns{grid-template-columns:minmax(0,1fr);gap:24px}.quote-preferences.watch-preferences{border-right:0;padding-right:0}}@media(max-width:700px){.feature-library .page-heading h1{font-size:23px}.feature-library{padding-bottom:90px}.workbench-section>header h2{font-size:15px}.feature-library .page-heading>div{gap:10px}.field-grid{gap:14px 10px}.field-grid .field{font-size:12px}.field-grid input,.field-grid select{font-size:14px}.cycle-windows{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.workbench-actions{gap:8px}.workbench-actions .button{padding:8px;font-size:11px}.chart-options{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-columns{grid-template-columns:minmax(0,1fr);gap:18px}.radar-toolbar{gap:12px}.radar-toolbar>label:not(.check-label){flex:1 1 130px}.radar-totals{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.radar-totals strong{font-size:22px}.radar-totals strong>span{display:block;margin:8px 0 0;font-size:10px}.radar-totals small{font-size:9px}.radar-event{grid-template-columns:39px minmax(0,1fr) 30px;gap:9px;padding:16px 0}.radar-event>time{font-size:12px}.event-actions{flex-direction:column;gap:7px}.event-actions .icon-button{width:30px;height:32px}.event-title{font-size:13px}.company-watch-form{grid-template-columns:70px minmax(0,1fr) 34px}.company-watch-form label:nth-child(3){grid-column:1 / 3;grid-row:2}.company-watch-form>button{grid-column:3;grid-row:2}.reminder-row{grid-template-columns:17px minmax(0,1fr) 30px 30px;gap:8px}.reminder-row select{grid-column:2;width:115px;grid-row:2}.reminder-row>button{grid-row:1}.reminder-row>button:nth-last-child(2){grid-column:3}.reminder-row>button:last-child{grid-column:4}.mobile-bottom button.active:last-child{color:#17191b}}.prediction-markets{display:grid;gap:16px;padding:22px 0 40px;min-width:0}.prediction-header{display:grid;gap:8px}.prediction-title{font-size:24px;font-weight:850}.prediction-lede{max-width:780px;font-size:13px;line-height:1.7;color:var(--muted)}.prediction-status{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.prediction-status a,.prediction-card-foot a{color:var(--ink)}.prediction-status .icon-button{width:30px;height:30px;margin-left:auto}.prediction-error{color:var(--ink)}.prediction-disclaimer{max-width:980px;padding:10px 12px;border:2px solid #17191b;background:var(--lemon);color:#17191b;font-size:12px;font-weight:600;line-height:1.7}.prediction-method,.prediction-sources,.prediction-excluded,.prediction-rules{font-size:11px;line-height:1.7;color:var(--muted)}.prediction-method summary,.prediction-sources summary,.prediction-excluded summary,.prediction-rules summary{cursor:pointer;color:var(--ink);font-weight:650}.prediction-method ul,.prediction-excluded ul{margin:6px 0 0;padding-left:18px}.prediction-tabs{display:flex;flex-wrap:wrap;gap:8px}.prediction-tabs button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:5px 10px;border:1.5px solid var(--line);background:var(--surface);font-size:12px;font-weight:650}.prediction-tabs button small{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.prediction-tabs button[aria-selected=true]{border-color:#17191b;background:var(--sky);color:#17191b;box-shadow:2px 2px 0 var(--shadow)}.prediction-tabs button[aria-selected=true] small{color:#17191b}.prediction-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,430px),1fr));gap:18px;align-items:stretch}.prediction-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:16px;border:2px solid var(--line);background:var(--surface);box-shadow:4px 4px 0 var(--shadow);content-visibility:auto;contain-intrinsic-size:auto 380px}.prediction-list.is-jumping .prediction-card{content-visibility:visible}.prediction-card.stale{border-style:dashed}.prediction-card.focused{outline:3px solid var(--astro);outline-offset:3px}.prediction-card-head{display:grid;gap:6px}.prediction-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.prediction-category,.prediction-flag{padding:2px 7px;border:1px solid #17191b;color:#17191b;font-size:11px;font-weight:700}.prediction-category{background:var(--sky)}.prediction-flag{background:var(--lemon)}.prediction-card h3{font-size:18px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}.prediction-original{font-size:11px;color:var(--muted)}.prediction-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:10px 0;border-block:1px solid var(--soft-line)}.prediction-meta div{min-width:0}.prediction-meta dt{font-size:10px;color:var(--muted)}.prediction-meta dd{margin:3px 0 0;font-size:12px;font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.prediction-meta dd small{font-size:10px;font-weight:400;color:var(--muted)}.prediction-calendar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px}.prediction-calendar-label{color:var(--muted)}.prediction-calendar-link{display:inline-flex;flex-wrap:wrap;align-items:center;gap:5px;min-height:30px;padding:4px 9px;border:1.5px solid var(--line);background:var(--surface);box-shadow:2px 2px 0 var(--shadow);font-size:11px;text-align:left}.prediction-calendar-link:not(:disabled):hover{background:var(--hover)}.prediction-calendar-link:not(:disabled):active{transform:translate(2px,2px);box-shadow:none}.prediction-calendar-link time{font-weight:750;font-variant-numeric:tabular-nums}.prediction-calendar-link small,.prediction-calendar-empty{font-size:10px;color:var(--muted)}.prediction-outcomes{display:grid;margin:0;padding:0;list-style:none}.prediction-outcome{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(60px,1fr) 64px;grid-template-areas:"label bar probability" "meta meta meta";align-items:center;gap:4px 10px;padding:8px 4px 8px 8px;border-left:3px solid transparent;border-bottom:1px solid var(--soft-line)}.prediction-outcome.leader{border-left-color:var(--line);background:var(--hover)}.prediction-outcome-label{grid-area:label;display:grid;min-width:0}.prediction-outcome-label b{font-size:13px;font-weight:700;overflow-wrap:anywhere}.prediction-outcome-label small{font-size:10px;color:var(--muted)}.prediction-bar{grid-area:bar;display:block;height:12px;border:1.5px solid var(--line);background:var(--surface)}.prediction-bar i{display:block;height:100%;background:var(--sky)}.prediction-outcome.leader .prediction-bar i{background:var(--coral)}.prediction-probability{grid-area:probability;font-size:15px;font-weight:800;text-align:right;font-variant-numeric:tabular-nums}.prediction-outcome-meta{grid-area:meta;display:flex;flex-wrap:wrap;gap:2px 12px;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.prediction-outcome-meta>span{white-space:nowrap}.prediction-outcome-meta>span>small{margin-right:2px}.prediction-notes em{margin-right:4px;padding:0 4px;border:1px solid #17191b;background:var(--lemon);color:#17191b;font-style:normal}.prediction-more{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:-6px;padding:6px 8px;border:1px dashed var(--soft-line);background:transparent;color:var(--ink);font:inherit;font-size:12px;cursor:pointer}.prediction-more:hover{background:var(--hover)}.prediction-more small{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.prediction-card-end{display:grid;gap:12px;margin-top:auto}.prediction-sum{font-size:11px;color:var(--muted)}.prediction-sum b{color:var(--ink);font-variant-numeric:tabular-nums}.prediction-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:11px;color:var(--muted)}.prediction-card-foot a{display:inline-flex;align-items:center;gap:3px;font-weight:650}.prediction-card-foot span{margin-left:auto;font-variant-numeric:tabular-nums}.prediction-rules p{margin-top:6px;overflow-wrap:anywhere}.prediction-sources>div{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:8px 0;border-bottom:1px solid var(--soft-line)}.prediction-sources>div>span:first-child{min-width:120px;color:var(--ink);font-weight:650}.prediction-empty{grid-column:1 / -1}@media(max-width:700px){.prediction-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.prediction-card{padding:13px;box-shadow:3px 3px 0 var(--shadow)}.prediction-outcome{grid-template-columns:minmax(0,1fr) 64px 58px}.prediction-card-foot span{margin-left:0}}.event-odds{display:grid;gap:8px;margin-top:6px}.event-odds section{display:grid;gap:4px;padding:7px 8px;border:1px solid var(--soft-line);background:color-mix(in srgb,var(--sky) 10%,var(--surface))}.event-odds header{display:flex;align-items:baseline;gap:6px;min-width:0}.event-odds header strong{font-size:12px;overflow-wrap:anywhere}.event-odds-source{flex:none;padding:0 4px;border:1px solid var(--line);font-size:9px;font-weight:700;line-height:1.6}.event-odds ul{display:grid;gap:3px;margin:0;padding:0;list-style:none}.event-odds li{display:grid;grid-template-columns:minmax(0,1fr) 54px 46px;align-items:center;gap:6px;font-size:11px}.event-odds li>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-odds li>i{display:block;height:6px;border:1px solid var(--line)}.event-odds li>i>b{display:block;height:100%;background:var(--coral)}.event-odds li>strong{text-align:right;font-variant-numeric:tabular-nums}.event-odds footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.event-odds footer small{color:var(--muted);font-size:10px}.event-odds-open{display:inline-flex;align-items:center;gap:2px;font-size:11px}.earnings-odds{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.earnings-odds-chip{display:inline-flex;align-items:baseline;gap:5px;padding:2px 6px;border:1px solid var(--line);background:color-mix(in srgb,var(--sky) 12%,var(--surface));color:var(--ink);font:inherit;font-size:10px;text-decoration:none;cursor:pointer}.earnings-odds-chip>span{font-size:9px;font-weight:700}.earnings-odds-chip>small{color:var(--muted);font-size:9px}.earnings-odds-card{margin:0 0 14px;padding:9px 10px;border:1px solid var(--soft-line);background:color-mix(in srgb,var(--sky) 10%,var(--surface))}.earnings-odds-card>header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.earnings-odds-card>header>strong{font-size:12px}.earnings-odds-card>header>span{font-size:10px;color:var(--muted)}.earnings-odds-card ul{display:grid;gap:8px;margin:8px 0 4px;padding:0;list-style:none}.earnings-odds-card li{display:grid;grid-template-columns:minmax(0,1fr) 60px 46px;align-items:center;gap:4px 6px;font-size:11px}.earnings-odds-card li>span{display:flex;flex-wrap:wrap;gap:2px 6px;min-width:0}.earnings-odds-card em,.earnings-market-rule em{font-style:normal;font-size:9px;color:var(--muted);border:1px solid var(--soft-line);padding:0 3px}.earnings-odds-card li>i,.earnings-market-odds>i{display:block;height:6px;border:1px solid var(--line)}.earnings-odds-card li>i>b,.earnings-market-odds>i>b{display:block;height:100%;background:var(--coral)}.earnings-odds-card li>strong{text-align:right;font-variant-numeric:tabular-nums}.earnings-odds-card li>.text-button{grid-column:1 / 2;justify-self:start;display:inline-flex;align-items:center;gap:2px;font-size:10px}.earnings-odds-card li>small{grid-column:2 / 4;text-align:right;color:var(--muted);font-size:9px}.earnings-market-list{grid-column:1 / -1;display:grid;gap:12px}.earnings-market-status{margin:0;font-size:11px;color:var(--muted)}.earnings-market-day>h3{margin:0 0 4px;font-size:13px}.earnings-market-day>ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.earnings-market-row{display:grid;grid-template-columns:30px minmax(90px,1.2fr) minmax(120px,1.4fr) minmax(110px,1fr) minmax(110px,auto) 22px;align-items:center;gap:10px;padding:7px 4px;border-bottom:1px solid var(--soft-line)}.earnings-market-row.is-focused{background:color-mix(in srgb,var(--sky) 25%,var(--surface))}.earnings-market-name{display:grid;min-width:0}.earnings-market-name>small{color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.earnings-market-rule{display:flex;flex-wrap:wrap;gap:2px 6px;font-size:11px}.earnings-market-odds{display:grid;grid-template-columns:minmax(40px,1fr) 50px;align-items:center;gap:6px}.earnings-market-odds>strong{text-align:right;font-variant-numeric:tabular-nums}.earnings-market-meta{color:var(--muted);font-size:10px;text-align:right}.earnings-market-row>a{display:grid;place-items:center;color:var(--ink)}.earnings-market-settled>summary{cursor:pointer;font-size:12px;padding:6px 0}@media(max-width:700px){.earnings-market-row{grid-template-columns:30px minmax(0,1fr) 96px 22px;gap:4px 8px}.earnings-market-rule{grid-column:2 / 3;grid-row:2}.earnings-market-odds{grid-column:3 / 4;grid-row:1}.earnings-market-meta{grid-column:3 / 5;grid-row:2}.earnings-market-row>a{grid-column:4;grid-row:1}}.option-expiry{--option-surface: color-mix(in srgb, var(--coral) 8%, var(--surface));position:relative;display:grid;gap:8px;margin-top:8px;padding:10px 12px;border:1px solid var(--soft-line);background:var(--option-surface)}.option-expiry header{display:grid;gap:2px}.option-expiry header strong{font-size:12px}.option-expiry header small,.option-expiry-market{color:var(--muted);font-size:10px;line-height:1.6}.option-expiry dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:0}.option-expiry dl>div{display:grid;gap:1px;min-width:0}.option-expiry dt{color:var(--muted);font-size:10px}.option-expiry dd{display:grid;margin:0;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.option-expiry dd small{color:var(--muted);font-size:10px;font-weight:500}.option-expiry-strikes{margin:0;font-size:11px;line-height:1.6;font-variant-numeric:tabular-nums}.option-expiry-market{margin:0;font-variant-numeric:tabular-nums}p.option-expiry-delivered{position:relative;margin:6px 0 0;font-size:12px}.option-expiry p{margin:0;font-size:11px;line-height:1.5}.option-expiry .option-expiry-market,.option-expiry .option-keys{font-size:10px}.option-expiry .option-readout{color:var(--ink)}.option-expiry-delivered small{color:var(--muted)}.option-term{cursor:help;text-decoration:underline dotted var(--grid);text-underline-offset:2px}.option-term:focus{outline:none}.option-term:focus-visible{outline:2px solid var(--line);outline-offset:1px}.option-term:hover:after,.option-term:focus:after{content:attr(data-tip);position:absolute;right:8px;left:8px;z-index:30;margin-top:1.6em;padding:6px 8px;border:1px solid var(--line);background:var(--surface);box-shadow:2px 2px 0 var(--shadow);color:var(--ink);font-size:11px;font-weight:500;line-height:1.5;text-align:left;white-space:normal;pointer-events:none}.option-expiry:has(.option-term:hover) .option-term:focus:not(:hover):after{display:none}.option-expiry .option-expiry-market{position:relative}.option-expiry-market .option-term:hover:after,.option-expiry-market .option-term:focus:after,p.option-expiry-delivered .option-term:hover:after,p.option-expiry-delivered .option-term:focus:after{right:0;bottom:calc(100% + 4px);left:0;margin-top:0}.option-chart{--call: #2a78d6;--put: #eb6834;--term: #1baf7a;display:grid;gap:4px;max-width:420px;font-size:11px}:root[data-theme=dark] .option-chart{--call: #3987e5;--put: #d95926;--term: #199e70}.option-chart header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;font-weight:700}.option-chart svg{display:block;max-width:100%;height:auto}.option-chart svg:focus{outline:none}.option-chart svg:focus-visible{outline:2px solid var(--line);outline-offset:2px}.option-legend,.option-keys{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;color:var(--muted);font-size:10px;font-weight:500;font-variant-numeric:tabular-nums}.option-legend i,.option-keys i{display:inline-block;margin-right:4px;vertical-align:middle}.option-legend i{width:8px;height:8px;border-radius:2px}.option-legend .call{background:var(--call)}.option-legend .put{background:var(--put)}.option-keys .forward{width:1px;height:10px;background:var(--ink)}.option-keys .pain{border-top:7px solid var(--ink);border-right:4px solid transparent;border-left:4px solid transparent}.call-bar{fill:var(--call)}.put-bar{fill:var(--put)}.option-hover{fill:var(--hover)}.option-hit{fill:transparent}.option-axis,.option-grid{stroke:var(--soft-line);stroke-width:1}.option-forward{stroke:var(--ink);stroke-width:1}.option-pain{fill:var(--ink)}.option-crosshair{stroke:var(--grid);stroke-width:1}.option-tick{fill:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.term-line{fill:none;stroke:var(--term);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.term-point{fill:var(--term);stroke:var(--option-surface);stroke-width:2}.term-point.current{fill:var(--ink)}.term-current{fill:var(--ink);font-size:11px;font-weight:700}.option-readout{margin:0;font-variant-numeric:tabular-nums}.option-chart details>summary{width:max-content;cursor:pointer;color:var(--muted);font-size:10px}.option-chart table{width:100%;margin-top:4px;border-collapse:collapse;font-size:10px;font-variant-numeric:tabular-nums}.option-chart th,.option-chart td{padding:2px 4px;border-bottom:1px solid var(--soft-line);text-align:right}.option-chart th:first-child,.option-chart td:first-child{text-align:left}.schedule-options,.preview-options{margin-top:4px}.schedule-options>summary,.preview-options>summary{cursor:pointer;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.preview-options>summary{font-size:10px}.schedule-options[open]>summary,.preview-options[open]>summary{color:var(--ink)}.schedule-options .option-expiry{max-width:460px}.cell-event.option-major>span{font-weight:700}.etf-holdings .etf-issuer{margin-left:6px;padding:0 4px;border:1px solid var(--soft-line);color:var(--muted);font-size:9px;font-style:normal;font-weight:600;vertical-align:middle}
