.chart-compare-container{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;flex-shrink:0;min-width:0}.chart-compare__toggle{font-size:var(--type-xs);padding:4px 10px;line-height:1;background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-rule);border-radius:3px;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}.chart-compare__toggle:hover{background:var(--color-surface-2);border-color:var(--color-accent)}.chart-compare__toggle--active{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.chart-compare__toggle--active:hover{background:var(--color-accent);opacity:.9}.chart-compare__toggle-label{display:inline}.chart-compare__badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:600;border-radius:8px;background:var(--color-badge, #ff5252);color:#fff;margin-left:0;line-height:1}.chart-compare__pill-bar{display:flex;align-items:center;gap:6px;padding:2px 0;margin-top:2px;flex-wrap:wrap;min-height:20px;cursor:pointer}.chart-compare__pill-bar--active{opacity:1}.chart-compare__pill{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:var(--color-surface-2);border-radius:10px;font-size:var(--type-xs);border:1px solid var(--color-rule);transition:background .15s}.chart-compare__pill:hover{background:var(--color-surface-3, #e8e8ea)}.chart-compare__pill-dot{position:relative;width:8px;height:8px;display:flex;align-items:center;justify-content:center}.chart-compare__pill-text{font-weight:500;color:var(--color-ink)}.chart-compare__pill-spinner{display:inline-block;width:8px;height:8px;border:1.5px solid var(--color-rule);border-top-color:var(--color-accent);border-radius:50%;animation:chart-compare-pulse .8s linear infinite}@keyframes chart-compare-pulse{to{transform:rotate(360deg)}}.chart-compare__pill-close{background:none;border:none;cursor:pointer;font-size:var(--type-sm);padding:0;color:var(--color-rule);line-height:1;transition:color .15s;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--chart-mini-btn-size);min-width:var(--chart-mini-btn-size);height:var(--chart-mini-btn-size)}.chart-compare__pill-close:hover{color:var(--color-bear)}.chart-compare__dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:100;width:clamp(240px,24vw,400px);background:var(--color-bg);border:1px solid var(--color-rule);border-radius:6px;box-shadow:var(--shadow-md);padding:10px}.chart-compare__input{width:100%;padding:6px 10px;border:1px solid var(--color-rule);border-radius:4px;font-size:var(--type-sm);box-sizing:border-box;transition:border-color .15s}.chart-compare__input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #2962ff26}.chart-compare__input:disabled{background:var(--color-surface-2);cursor:not-allowed;opacity:.6}.chart-compare__list{max-height:220px;overflow-y:auto}.chart-compare__item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:6px 8px;cursor:pointer;border:none;background:none;text-align:left;font-size:var(--type-sm);border-radius:3px;transition:background .15s;color:var(--color-ink)}.chart-compare__item:hover:not(:disabled){background:var(--color-surface-2)}.chart-compare__item:disabled{color:var(--color-rule);cursor:not-allowed}.chart-compare__item-symbol{font-weight:500}.chart-compare__item-status{font-size:var(--type-xs);color:var(--color-accent);font-style:italic}.chart-compare__empty{font-size:var(--type-sm);color:#888;text-align:center;padding:12px 0 8px}.chart-compare__max-message{font-size:var(--type-xs);color:var(--color-bear);text-align:center;padding:6px 0;font-weight:500}.chart-compare__pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--color-rule)}.chart-symbol-search{position:relative;display:inline-block;flex-shrink:0;min-width:120px}.chart-symbol-search__input{width:clamp(120px,10vw,200px);padding:4px 8px;font-size:var(--type-xs);line-height:1.5;background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-rule);border-radius:3px;outline:none;transition:width .2s ease,border-color .15s ease;font-family:var(--type-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.chart-symbol-search__input:focus{width:clamp(160px,14vw,280px);border-color:var(--color-accent)}@media(max-width:640px){.chart-symbol-search{flex-shrink:1;min-width:0}.chart-symbol-search__input{width:80px;font-size:var(--type-xs)}.chart-symbol-search__input:focus{width:80px}.chart-symbol-search__dropdown{max-width:calc(100vw - 80px)}}.chart-symbol-search__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;min-width:100%;max-width:300px;max-height:200px;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-rule);border-radius:3px;box-shadow:var(--shadow-lg, 0 4px 12px rgba(0, 0, 0, .15));margin:0;padding:0;list-style:none;contain:layout style paint}.chart-symbol-search__item{display:block;width:100%;text-align:left;padding:4px 8px;font-size:var(--type-xs);line-height:1.4;background:transparent;border:none;cursor:pointer;color:var(--color-ink)}.chart-symbol-search__item:hover{background:var(--color-surface-2)}.chart-symbol-search__item-symbol{font-weight:700;font-family:var(--font-mono, "SF Mono", "Fira Code", monospace);margin-right:6px}.chart-symbol-search__name{display:inline;color:var(--color-ink-muted);font-weight:400}.chart-symbol-search__item--empty{color:var(--color-ink-muted);font-size:var(--type-xs);text-align:center;cursor:default;font-style:italic}.chart-symbol-search__item--empty:hover{background:transparent}@media(max-width:420px){.chart-symbol-search{min-width:0;flex:1 1 auto}.chart-symbol-search__input{width:60px}.chart-symbol-search__input:focus{width:100px}}.add-indicator-modal{position:fixed;inset:0;z-index:1000;pointer-events:none}.add-indicator-modal__backdrop{position:absolute;inset:0;background:#0000004d;cursor:pointer;pointer-events:auto}.add-indicator-modal__panel{position:absolute;top:50%;left:50%;transform:translate(-50%,calc(-50% + 30px));max-width:400px;max-height:60vh;background:var(--color-surface-1);border:1px solid var(--color-rule);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:1;pointer-events:auto}.add-indicator-modal__search{width:100%;padding:8px 12px;border:none;border-bottom:1px solid var(--color-rule);border-radius:0;font-size:var(--type-sm);background:var(--color-surface-1);color:var(--color-ink);outline:none;box-sizing:border-box}.add-indicator-modal__search::placeholder{color:var(--color-placeholder)}.add-indicator-modal__search:focus{border-bottom-color:var(--color-accent)}.add-indicator-modal__list{max-height:calc(60vh - 60px);overflow-y:auto;margin-top:0;padding:0;list-style:none}.add-indicator-modal__info-section{padding:0 12px}.add-indicator-modal__info-title{font-size:var(--type-xs);text-transform:uppercase;color:var(--color-muted);padding:12px 0 6px;font-weight:600}.add-indicator-modal__info-desc{font-size:var(--type-sm);color:var(--color-ink);line-height:1.5;padding:0 0 8px}.add-indicator-modal__info-items{border-top:1px solid var(--color-rule);margin-top:8px;padding-top:0}.add-indicator-modal__info-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--color-rule-2);gap:8px;min-height:48px}.add-indicator-modal__info-item:last-child{border-bottom:none}.add-indicator-modal__info-item--active{background:color-mix(in srgb,var(--color-accent) 12%,var(--color-surface-1));margin:0 -12px;padding:12px;border-radius:4px}.add-indicator-modal__info-item--active .add-indicator-modal__info-item-label{color:var(--color-accent);font-weight:600}.add-indicator-modal__info-item:not(.add-indicator-modal__info-item--active){border-left:3px solid transparent;padding-left:7px;padding-top:12px;padding-bottom:12px}.add-indicator-modal__info-item-label{font-size:var(--type-sm);font-weight:500;flex:1;color:inherit}.add-indicator-modal__info-item-badge{color:var(--color-accent);font-size:var(--type-sm);font-weight:700;flex-shrink:0;margin-left:8px;line-height:1}.add-indicator-modal__info-item-info{min-width:var(--chart-icon-btn-size);min-height:var(--chart-icon-btn-size);width:var(--chart-icon-btn-size);height:var(--chart-icon-btn-size);padding:0;border:none;border-radius:50%;background:transparent;color:var(--color-muted);font-size:var(--type-sm);font-weight:600;line-height:1;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.add-indicator-modal__info-item-info:hover{background:var(--color-surface-2);color:var(--color-ink)}.add-indicator-modal__info-item-info:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.add-indicator-modal__info-item-toggle{display:flex;align-items:center;background:none;border:0;padding:0;gap:8px;cursor:pointer;color:inherit;font-size:inherit;font-family:inherit;text-align:left;flex:1}.add-indicator-modal__info-item-toggle:hover{opacity:.8}.add-indicator-modal__info-item-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.add-indicator-modal__meta{border-top:1px solid var(--color-rule-2);background:var(--color-surface-2);padding:8px 12px 10px}.add-indicator-modal__meta-line{font-size:var(--type-xs);line-height:1.5;color:var(--color-ink);margin-bottom:4px}.add-indicator-modal__meta-line:last-child{margin-bottom:0}.add-indicator-modal__meta-label{font-weight:600;color:var(--color-ink)}.add-indicator-modal__meta-text{color:var(--color-ink)}.add-indicator-modal__empty{color:var(--color-muted);text-align:center;padding:20px;font-size:var(--type-sm)}.add-indicator-modal__bundles{border-top:1px solid var(--color-rule);margin-top:4px;padding:8px 0}.add-indicator-modal__bundles-title{font-size:var(--type-xs);text-transform:uppercase;color:var(--color-muted);padding:0 12px;margin-bottom:4px}.add-indicator-modal__bundle-row{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;border-radius:var(--radius-sm, 4px);cursor:pointer;color:var(--color-ink);font-size:var(--type-sm);text-align:left;transition:background-color var(--duration-fast, .12s) ease;padding:8px 12px;gap:8px;overflow:hidden;text-overflow:ellipsis;white-space:normal;box-sizing:border-box}.add-indicator-modal__bundle-row:hover{background:var(--color-surface-2)}.add-indicator-modal__bundle-row:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.add-indicator-modal__bundle-row--active{border-left:3px solid var(--color-accent);padding-left:9px}.add-indicator-modal__bundle-name{font-weight:600;display:block}.add-indicator-modal__bundle-desc{color:var(--color-muted);font-style:italic;display:block;font-size:var(--type-xs);margin-top:2px}.add-indicator-modal__badge{color:var(--color-accent);font-weight:700;font-size:var(--type-base);flex-shrink:0;margin-left:8px}@media(max-width:640px){.add-indicator-modal__info-item-info{width:44px;height:44px;max-height:44px;min-width:44px;min-height:44px}.add-indicator-modal__info-item{padding:16px 0;min-height:52px}.add-indicator-modal__bundle-row{padding:14px 12px}}.chart-layouts-modal{position:fixed;inset:0;z-index:999;pointer-events:none}.chart-layouts-modal__backdrop{position:absolute;inset:0;background:#0000004d;cursor:pointer;pointer-events:auto}.chart-layouts-modal__panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:clamp(280px,42vw,520px);max-height:80vh;background:var(--color-surface-1);border:1px solid var(--color-rule);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:1;pointer-events:auto;overflow:hidden}.chart-layouts-modal__tabs{display:flex;border-bottom:1px solid var(--color-rule)}.chart-layouts-modal__tab{flex:1;padding:12px;background:none;border:none;border-right:1px solid var(--color-rule);font-size:var(--type-sm);font-weight:500;color:var(--color-ink);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:background var(--duration-fast, .12s) ease,color var(--duration-fast, .12s) ease}.chart-layouts-modal__tab:last-child{border-right:none}.chart-layouts-modal__tab:hover{background:var(--color-surface-2)}.chart-layouts-modal__tab--active,.chart-layouts-modal__tab--active:hover{color:var(--color-accent);background:var(--color-surface-2)}.chart-layouts-modal__content{overflow-y:auto;padding:var(--space-4, 1rem)}.chart-layouts-modal__form{display:flex;flex-direction:column;gap:12px}.chart-layouts-modal__input{width:100%;padding:8px 12px;border:1px solid var(--color-rule);border-radius:var(--radius-sm, 4px);font-size:var(--type-sm);background:var(--color-surface);color:var(--color-ink);outline:none;box-sizing:border-box}.chart-layouts-modal__input:focus{border-color:var(--color-accent)}.chart-layouts-modal__input-error{border-color:var(--color-error)}.chart-layouts-modal__error-text{color:var(--color-error);font-size:var(--type-xs);margin-top:-8px}.chart-layouts-modal__success-text{color:var(--color-accent);font-size:var(--type-sm);text-align:center;padding:16px}.chart-layouts-modal__save-btn{padding:8px 16px;background:var(--color-accent);color:var(--color-on-accent);border:none;border-radius:var(--radius-md, 8px);font-size:var(--type-sm);font-weight:500;cursor:pointer;transition:background-color var(--duration-fast, .12s) ease,box-shadow var(--duration-fast, .12s) ease}.chart-layouts-modal__save-btn:hover{background:var(--color-accent-hover, #0052cc)}.chart-layouts-modal__save-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.chart-layouts-modal__save-btn:disabled{opacity:.5;cursor:not-allowed}.chart-layouts-modal__layout-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.chart-layouts-modal__layout-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-sm, 4px);gap:var(--space-2, .5rem)}.chart-layouts-modal__layout-info{flex:1;min-width:0}.chart-layouts-modal__layout-name{font-weight:500;font-size:var(--type-sm);color:var(--color-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-layouts-modal__layout-summary{font-size:var(--type-xs);color:var(--color-muted);margin-top:2px}.chart-layouts-modal__apply-btn{padding:4px 12px;background:var(--color-accent);color:var(--color-on-accent);border:none;border-radius:var(--radius-sm, 4px);font-size:var(--type-xs);font-weight:500;cursor:pointer;transition:background-color var(--duration-fast, .12s) ease,box-shadow var(--duration-fast, .12s) ease;flex-shrink:0}.chart-layouts-modal__apply-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.chart-layouts-modal__apply-btn:hover{opacity:.85}.chart-layouts-modal__delete-btn{width:var(--chart-icon-btn-size);height:var(--chart-icon-btn-size);padding:0;background:none;border:1px solid var(--color-rule);border-radius:var(--radius-md, 8px);color:var(--color-muted);font-size:var(--type-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background-color var(--duration-fast, .12s) ease,color var(--duration-fast, .12s) ease}.chart-layouts-modal__delete-btn:hover{background:var(--color-error);color:var(--color-on-accent);border-color:var(--color-error)}.chart-layouts-modal__delete-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.chart-layouts-modal__empty{color:var(--color-muted);text-align:center;padding:24px 16px;font-size:var(--type-sm)}.date-range-selector{display:inline-flex;border:1px solid var(--color-rule);border-radius:4px;overflow:hidden}.date-range-selector__btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:var(--chart-pill-btn-height, 26px);padding:4px 14px;font-size:13px;line-height:1;background:var(--color-surface);color:var(--color-ink);border:none;border-right:1px solid var(--color-rule);cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.date-range-selector__btn:last-child{border-right:none}.date-range-selector__btn:hover{background:var(--color-surface-2)}.date-range-selector__btn--active,.date-range-selector__btn--active:hover{background:#0052cc;color:#fff;font-weight:600;border-left:3px solid rgba(255,255,255,.6);box-shadow:0 1px 4px #00000026}@media(max-width:480px){.date-range-selector{flex-wrap:wrap;width:100%}.date-range-selector__btn{font-size:var(--type-xs);min-height:44px}}.chart-top-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;width:100%;min-width:0;overflow:hidden}.chart-top-toolbar__symbol{font-size:var(--type-xl);font-weight:var(--weight-bold);margin:0 auto 0 0}.chart-top-toolbar__ind-btn{box-sizing:border-box;display:inline-flex;align-items:center;flex-shrink:0;min-height:var(--chart-pill-btn-height, 26px);font-size:13px;line-height:1;padding:4px 10px;background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-rule);border-radius:var(--radius-md, 8px);cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.chart-top-toolbar__ind-btn:hover{background-color:var(--color-surface-2);transition:background-color .15s ease}.chart-top-toolbar__ind-btn:active{transform:translateY(1px)}.chart-top-toolbar__ind-btn:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.chart-top-toolbar__ind-btn--active,.chart-top-toolbar__ind-btn--active:hover,.chart-top-toolbar__ind-btn--volume.chart-top-toolbar__ind-btn--active,.chart-top-toolbar__ind-btn--volume.chart-top-toolbar__ind-btn--active:hover{background:var(--color-accent);color:#fff}.chart-top-toolbar__ind-btn--add{font-weight:600}.chart-top-toolbar__ind-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;border-radius:8px;background:var(--color-accent);color:#fff;margin-left:6px;vertical-align:middle}.chart-top-toolbar__ind-pills{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;background:var(--color-surface)}.chart-top-toolbar__ind-pill{display:inline-flex;align-items:center;font-size:12px;font-weight:600;line-height:1.2;background:var(--color-surface-2);color:var(--color-ink-muted);border:1px solid var(--color-rule);border-radius:10px;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap;padding:2px 8px}.chart-top-toolbar__ind-pill{color:color-mix(in srgb,var(--color-accent) 90%,#000 10%)}[data-theme=dark] .chart-top-toolbar__ind-pill{color:color-mix(in srgb,var(--color-accent) 85%,#fff 15%)}.chart-top-toolbar__ind-pill:hover{background:color-mix(in srgb,var(--color-accent) 20%,var(--color-surface))}.chart-top-toolbar__ind-pill abbr{text-decoration:none;cursor:inherit}@media(max-width:759px){.chart-top-toolbar__ind-pills,.chart-top-toolbar__ind-badge{display:none}}.chart-top-toolbar__fsbtn{box-sizing:border-box;min-width:var(--chart-icon-btn-size);min-height:var(--chart-icon-btn-size);padding:4px;font-size:var(--type-base);line-height:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-rule);background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-md, 8px);cursor:pointer;flex-shrink:0;transition:background-color .15s ease}.chart-top-toolbar__fsbtn svg{width:16px;height:16px}.chart-top-toolbar__fsbtn:hover{background-color:var(--color-surface-2);transition:background-color .15s ease}.chart-top-toolbar__fsbtn:active{transform:translateY(1px)}.chart-top-toolbar__fsbtn:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.chart-top-toolbar__fsbtn--shortcuts{min-width:var(--chart-icon-btn-size);min-height:var(--chart-icon-btn-size);padding:6px;font-size:var(--type-base);line-height:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-rule);background:var(--color-surface);color:var(--color-ink-muted);border-radius:var(--radius-md, 8px);cursor:pointer;transition:background-color .15s ease}.chart-top-toolbar__fsbtn--shortcuts svg{width:16px;height:16px}.chart-top-toolbar__fsbtn--shortcuts:hover{background-color:var(--color-surface-2);transition:background-color .15s ease}.chart-top-toolbar__fsbtn--shortcuts:active{transform:translateY(1px)}.chart-top-toolbar__fsbtn--shortcuts:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.chart-top-toolbar__btn-sprite{display:inline-flex;align-items:center;justify-content:center;width:var(--chart-icon-btn-size);height:var(--chart-icon-btn-size);padding:0;border:1px solid var(--color-rule);border-radius:var(--radius-md, 8px);background:var(--color-surface);color:var(--color-ink);cursor:pointer;flex-shrink:0;transition:background-color .15s ease}.chart-top-toolbar__btn-sprite svg{width:16px;height:16px}.chart-top-toolbar__btn-sprite:hover{background-color:var(--color-surface-2);transition:background-color .15s ease}.chart-top-toolbar__btn-sprite:active{transform:translateY(1px)}.chart-top-toolbar__btn-sprite:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.chart-top-toolbar__btn-sprite--active,.chart-top-toolbar__btn-sprite--active:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.chart-top-toolbar__segmented{display:inline-flex;border:1px solid color-mix(in srgb,var(--color-ink) 15%,transparent);border-radius:6px;overflow:hidden;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 6%,transparent);background:var(--color-surface)}.chart-top-toolbar__segmented-btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:var(--chart-pill-btn-height, 26px);padding:2px 12px;font-size:13px;line-height:1;background:var(--color-surface);color:var(--color-ink);border:none;border-right:1px solid color-mix(in srgb,var(--color-ink) 10%,transparent);cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.chart-top-toolbar__segmented-btn:last-child{border-right:none}.chart-top-toolbar__segmented-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px;border-radius:2px}.chart-top-toolbar__segmented-btn:hover{background:color-mix(in srgb,var(--color-surface) 60%,var(--color-ink) 40%)}.chart-top-toolbar__segmented-btn--active,.chart-top-toolbar__segmented-btn--active:hover{background:#0052cc;color:#fff;font-weight:600;border-left:3px solid rgba(255,255,255,.6);box-shadow:inset 0 -1px color-mix(in srgb,#fff 30%,transparent)}@media(max-width:480px){.chart-top-toolbar__segmented{flex-wrap:wrap;width:100%}.chart-top-toolbar__segmented-btn{white-space:normal;font-size:var(--type-xs);min-height:44px}}@media(max-width:640px){.chart-top-toolbar__ind-btn{flex:1 1 calc(33.333% - 6px);min-width:0;white-space:nowrap;text-align:center;min-height:44px;padding:8px 6px}.chart-top-toolbar__ind-btn--volume{flex:1 1 calc(33.333% - 6px)}.chart-top-toolbar__fsbtn{flex-shrink:0;min-width:44px;min-height:44px;width:44px;height:44px;padding:0}.chart-top-toolbar__ind-group{flex:0 0 auto}.chart-top-toolbar__segmented,.chart-top-toolbar__segmented-btn{flex:1 1 auto}.chart-top-toolbar__segmented{flex-wrap:wrap;width:100%}.chart-top-toolbar__segmented-btn{white-space:normal;font-size:var(--type-xs);text-align:center;min-height:44px}.chart-top-toolbar__gear-btn{min-width:44px;min-height:44px;width:44px;height:44px;padding:0}.chart-top-toolbar__fsbtn--shortcuts,.chart-top-toolbar__ind-btn-colorpicker{min-width:44px;min-height:44px}.indicator-settings-panel__reset-btn{min-height:44px;padding:10px 16px}.indicator-settings-panel__apply-btn{min-height:44px;padding:10px 20px}}.chart-top-toolbar__ind-group{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.chart-top-toolbar__ind-btn-with-color{position:relative;display:inline-flex;align-items:center}.chart-top-toolbar__gear-btn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--chart-icon-btn-size);min-height:var(--chart-icon-btn-size);margin-left:2px;background:transparent;color:color-mix(in srgb,var(--color-ink) 40%,transparent);border:none;border-radius:2px;cursor:pointer;transition:color .15s,background .15s;font-size:var(--type-sm);line-height:1;padding:6px}.chart-top-toolbar__gear-btn:hover,.chart-top-toolbar__gear-btn--active{color:var(--color-accent);background:var(--color-surface-2)}.indicator-settings-panel{background:var(--color-surface);border:1px solid var(--color-rule);border-radius:6px;box-shadow:0 4px 16px #00000026;padding:0;min-width:220px;max-width:320px;display:inline-flex;flex-direction:column}.indicator-settings-panel__header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;border-bottom:1px solid var(--color-rule);background:var(--color-surface-1)}.indicator-settings-panel__title{font-size:var(--type-xs);font-weight:600;color:var(--color-ink)}.indicator-settings-panel__close-btn{background:none;border:none;cursor:pointer;color:var(--color-ink-muted);font-size:var(--type-xs);padding:0;line-height:1}.indicator-settings-panel__close-btn:hover{color:var(--color-ink)}.indicator-settings-panel__fields{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px}.indicator-settings-panel__field{display:flex;flex-direction:column;gap:2px;min-width:70px}.indicator-settings-panel__field-label{font-size:var(--type-xs);color:var(--color-ink-muted)}.indicator-settings-panel__input{width:clamp(64px,6vw,96px);font-size:var(--type-sm);padding:3px 6px;border:1px solid var(--color-rule);border-radius:3px;background:var(--color-bg);color:var(--color-ink)}.indicator-settings-panel__input:focus{outline:none;border-color:var(--color-accent)}.indicator-settings-panel__actions{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;border-top:1px solid var(--color-rule);background:var(--color-surface-1)}.indicator-settings-panel__reset-btn{font-size:var(--type-xs);color:var(--color-ink-muted);background:none;border:1px solid var(--color-rule);border-radius:var(--radius-md, 8px);padding:6px 12px;min-height:36px;cursor:pointer;transition:background-color .15s ease}.indicator-settings-panel__reset-btn:hover{color:var(--color-ink);background-color:var(--color-surface-2);border-color:var(--color-accent);transition:background-color .15s ease}.indicator-settings-panel__reset-btn:active{transform:translateY(1px)}.indicator-settings-panel__reset-btn:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.indicator-settings-panel__apply-btn{font-size:var(--type-xs);font-weight:600;color:#fff;background:var(--color-accent);border:none;border-radius:var(--radius-md, 8px);padding:6px 16px;min-height:36px;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease}.indicator-settings-panel__apply-btn:hover{box-shadow:0 2px 8px #2962ff4d;transition:background-color .15s ease,box-shadow .15s ease}.indicator-settings-panel__apply-btn:active{transform:translateY(1px)}.indicator-settings-panel__apply-btn:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.chart-top-toolbar__settings-overlay{position:fixed;inset:0;z-index:1101;display:flex;align-items:flex-start;justify-content:center;padding:72px 16px 16px;pointer-events:auto}.chart-top-toolbar__settings-panel-wrap{pointer-events:auto}.chart-top-toolbar__ind-btn-with-color .chart-top-toolbar__ind-btn{display:inline-flex;align-items:center;gap:4px}.chart-top-toolbar__ind-btn-colorpicker{position:absolute;top:-2px;right:-2px;min-width:32px;min-height:32px;padding:6px;border:none;border-radius:50%;cursor:pointer;opacity:0;transition:opacity .15s ease;pointer-events:none}.chart-top-toolbar__ind-btn-with-color:hover .chart-top-toolbar__ind-btn-colorpicker,.chart-top-toolbar__ind-btn-colorpicker:focus{opacity:1;pointer-events:auto}.chart-tool-rail__btn--shortcuts{color:var(--color-accent);margin-top:4px}@media(max-width:420px){.chart-top-toolbar__symbol{font-size:var(--type-base);margin:0}.chart-top-toolbar__segmented{flex-wrap:wrap;width:100%}.chart-top-toolbar__segmented-btn{font-size:var(--type-xs);white-space:normal}.chart-top-toolbar__ind-btn{flex:0 0 auto;font-size:11px}.chart-top-toolbar__ind-pills{display:none}.chart-top-toolbar__btn-sprite{flex-shrink:0}}@media(min-width:1024px){.chart-top-toolbar--compact{padding:4px 0!important}.chart-top-toolbar--compact .chart-top-toolbar__btn-sprite{width:24px!important;height:24px!important;border-radius:3px}.chart-top-toolbar--compact .chart-top-toolbar__btn-sprite svg{width:14px;height:14px}.chart-top-toolbar--compact .chart-top-toolbar__fsbtn{min-width:28px!important;min-height:28px!important;padding:2px!important}.chart-top-toolbar--compact .chart-top-toolbar__fsbtn svg{width:14px;height:14px}.chart-top-toolbar--compact .chart-top-toolbar__gear-btn{min-width:28px!important;min-height:28px!important;padding:3px!important}.chart-top-toolbar--compact .chart-top-toolbar__fsbtn--shortcuts{min-width:28px!important;min-height:28px!important;padding:5px!important}.chart-top-toolbar--compact .chart-top-toolbar__fsbtn--shortcuts svg{width:14px;height:14px}.chart-top-toolbar--compact .chart-top-toolbar__ind-btn{padding:2px 8px!important;min-height:24px!important}.chart-top-toolbar--compact .chart-top-toolbar__segmented-btn{padding:1px 8px!important}.chart-top-toolbar--compact .chart-top-toolbar__btn-sprite{margin-left:1px;margin-right:1px}}.chart-price-header{display:flex;flex-direction:row;gap:16px;align-items:center;padding:10px 16px;background:var(--color-bg);box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005;font-size:var(--type-sm);flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;color:var(--color-ink, #0a0a0a);border:1px solid color-mix(in srgb,var(--color-rule) 50%,transparent);border-radius:0 0 8px 8px;width:100%;box-sizing:border-box}.chart-price-header[data-fade-right]{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent 100%);mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent 100%)}@media(min-width:1024px){.chart-price-header{padding:6px 16px}}.chart-price-header .price-value{font-variant-numeric:tabular-nums;font-weight:500;color:var(--color-ink, #0a0a0a)}.chart-price-header .price-label{font-weight:600;color:var(--color-ink-muted, #5e5e63);min-width:14px;-webkit-user-select:none;user-select:none}.chart-price-header .price-cell .price-value.bullish,.chart-price-header .price-cell .price-label.bullish{color:var(--color-bull)}.chart-price-header .price-cell .price-value.bearish,.chart-price-header .price-cell .price-label.bearish{color:var(--color-bear)}.chart-price-header .price-cell{display:flex;gap:4px}.chart-price-header .indicator-cell{padding-inline-start:4px}.chart-price-header .indicator-separator{border-left:1px solid var(--color-rule, #e5e5e7);margin-inline-start:8px;padding-inline-start:12px}.chart-price-header__section{display:flex;flex-direction:column;min-width:0;flex-shrink:0;min-height:40px;transition:opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out);background:var(--color-surface, #f7f7f8);border-radius:6px;padding:6px 10px;transition:box-shadow var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out);box-shadow:0 1px 2px #00000008,0 1px 3px #00000003;border:1px solid color-mix(in srgb,var(--color-rule) 40%,transparent)}.chart-price-header__section:hover{box-shadow:0 2px 6px #0000000f,0 1px 3px #00000008}.chart-price-header__section--collapsed{opacity:.5}.chart-price-header__section-header{display:inline-flex;align-items:center;gap:4px;padding:2px 0;flex-shrink:0}.chart-price-header__section-label{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-muted, #5e5e63);white-space:nowrap}.chart-price-header__toggle{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:6px;border:none;border-radius:4px;background:transparent;color:var(--color-ink-muted, #5e5e63);cursor:pointer;font-size:13px;line-height:1;transition:background-color .15s ease,color .15s ease}.chart-price-header__toggle:hover{background-color:var(--color-surface-2, #e9e9e9)}.chart-price-header__toggle:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.chart-price-header__toggle--expanded{color:var(--color-ink, #0a0a0a)}.chart-price-header__section-content{overflow:hidden;transition:max-height var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out);max-height:300px;opacity:1;margin-top:2px}.chart-price-header__section--collapsed .chart-price-header__section-content{max-height:0;opacity:0}@media(max-width:640px){.chart-price-header{padding:4px 8px;font-size:var(--type-xs);gap:8px}.chart-price-header .indicator-separator{margin-inline-start:4px;padding-inline-start:6px}.chart-price-header__toggle{min-width:44px;min-height:44px;width:44px;height:44px}.chart-price-header__section-label{max-width:40px;overflow:hidden;text-overflow:ellipsis}}@media(max-width:420px){.chart-price-header{overflow-x:hidden;flex-wrap:wrap}.chart-price-header .price-cell,.chart-price-header__section,.chart-price-header__section .price-cell{flex-shrink:1;min-width:0}}.chart-axis-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.chart-axis-overlay__touch{pointer-events:auto}.chart-axis-overlay__right{position:absolute;right:0;top:0;width:44px;height:100%;background:transparent}.chart-axis-overlay__bottom{position:absolute;left:0;right:0;bottom:0;height:44px;background:transparent}@media(min-width:768px){.chart-axis-overlay__touch{display:none}}.chart-tool-rail-shell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;height:100%;min-height:0;overflow:visible;box-sizing:border-box}.chart-tool-rail-shell--collapsed{align-items:stretch;padding:6px 2px;overflow:hidden}.chart-tool-rail__collapse-toggle{width:40px;height:40px;border:1px solid var(--color-rule);border-radius:var(--radius-sm, 4px);background:var(--color-surface-1, var(--color-bg));color:var(--color-accent, #2962ff);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--type-md);line-height:1;flex-shrink:0}.chart-tool-rail__collapse-toggle:hover{background:var(--color-surface-2, var(--color-hover))}.chart-tool-rail__collapse-toggle:focus-visible{outline:2px solid var(--color-accent, #2962ff);outline-offset:2px}.chart-tool-rail__collapse-toggle-icon{display:block;font-size:var(--type-md);font-weight:700;line-height:1}.chart-tool-rail__watchlist-toggle{width:40px;height:40px;border:1px solid var(--color-rule);border-radius:var(--radius-sm, 4px);background:var(--color-surface-1, var(--color-bg));color:var(--color-ink);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--type-md)}.chart-tool-rail__watchlist-toggle:hover{background:var(--color-surface-2, var(--color-hover))}.chart-tool-rail__watchlist-toggle:focus-visible{outline:2px solid var(--color-accent, #2962ff);outline-offset:2px}.chart-tool-rail{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;height:100%;width:100%}.chart-tool-rail__btn{width:40px;height:40px;border:1px solid var(--color-rule);border-radius:var(--radius-md, 8px);background:var(--color-surface, var(--color-surface-1, var(--color-bg)));color:var(--color-ink);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--type-md);transition:background-color .15s ease}.chart-tool-rail__btn:hover{background-color:var(--color-surface-2);transition:background-color .15s ease}.chart-tool-rail__btn:active{transform:translateY(1px)}.chart-tool-rail__btn:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}.chart-tool-rail__btn-glyph{display:block;line-height:1}.chart-tool-rail__btn-name{display:none;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1;color:var(--color-ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-tool-rail__btn--active{background:var(--color-accent, #2962ff);color:#fff;border-color:var(--color-accent, #2962ff)}.chart-tool-rail__btn--clear{margin-top:8px;color:var(--color-bear)}.chart-tool-rail__btn--shortcuts{color:var(--color-accent);margin-top:4px;border-radius:var(--radius-md, 8px);border:1px dashed var(--color-accent);background:var(--color-surface-2)}.chart-tool-rail__btn-icon{font-size:var(--type-xs);font-weight:600;line-height:1;display:block}.chart-tool-rail__actions{border-top:1px solid var(--color-rule);margin-top:4px;padding-top:6px;display:flex;flex-direction:column;align-items:center;gap:4px}.chart-tool-rail__btn--undo,.chart-tool-rail__btn--redo{width:auto;min-width:60px;min-height:40px;padding:0 6px;font-size:var(--type-sm);color:var(--color-accent, #2962ff);border-color:var(--color-accent, #2962ff);font-weight:500;flex-direction:column;gap:2px;line-height:1}.chart-tool-rail__btn--undo:hover,.chart-tool-rail__btn--redo:hover{background:var(--color-accent, #2962ff);color:#fff}.chart-tool-rail__btn--undo:disabled,.chart-tool-rail__btn--redo:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.chart-tool-rail__btn-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;line-height:1;margin-top:2px;color:var(--color-ink, #000);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-tool-rail__btn--undo .chart-tool-rail__btn-label,.chart-tool-rail__btn--redo .chart-tool-rail__btn-label{color:var(--color-accent, #2962ff);font-size:var(--type-sm)}.chart-tool-rail__btn--undo:hover .chart-tool-rail__btn-label,.chart-tool-rail__btn--redo:hover .chart-tool-rail__btn-label{color:#fff}.chart-tool-rail__btn--shortcuts{color:var(--color-accent);margin-top:4px;border:1px dashed var(--color-accent);background:var(--color-surface-2)}.chart-tool-rail__btn--shortcuts:hover{color:#fff;background:var(--color-accent)}.chart-tool-rail__btn--shortcuts[aria-expanded=true]{background:var(--color-accent);color:#fff}.chart-tool-rail__btn-icon{font-size:var(--type-md);font-weight:600;line-height:1;display:block}@media(max-width:1024px){.chart-tool-rail-shell{padding:0;gap:0;align-items:stretch;height:auto;overflow:visible}.chart-tool-rail__collapse-toggle{display:none}.chart-tool-rail__btn{min-width:44px;min-height:44px;font-size:var(--type-sm)}.chart-tool-rail__actions{border-top:0;border-left:1px solid var(--color-rule);margin-top:0;margin-left:4px;padding-top:0;padding-left:6px;flex-direction:row}.chart-tool-rail__btn--clear,.chart-tool-rail__btn--shortcuts{margin-top:0}.chart-tool-rail__watchlist-toggle{display:none}}@media(min-width:1025px){.chart-tool-rail-shell[data-rail-collapsed=true] .chart-tool-rail,.chart-tool-rail-shell[data-rail-collapsed=true] .shortcuts-panel{display:none}.chart-tool-rail-shell[data-rail-collapsed=true] .chart-tool-rail__collapse-toggle{width:100%}}@media(min-width:1025px){.chart-tool-rail{overflow-y:auto}.chart-tool-rail>*{flex-shrink:0}.chart-tool-rail__btn{flex-direction:column;gap:3px;width:100%;max-width:76px;height:52px}.chart-tool-rail__btn-name{display:block}.chart-tool-rail__btn--active .chart-tool-rail__btn-name{color:#fff}}@media(max-width:768px){.chart-tool-rail__btn{min-width:44px;min-height:44px}}.chart-tool-rail__btn--snap{scroll-snap-align:start;flex-shrink:0}.shortcuts-panel{position:fixed;bottom:56px;right:calc(var(--gutter) + 24px);background:var(--color-bg);border:1px solid var(--color-rule);border-radius:var(--radius-lg);padding:0;z-index:100;box-shadow:0 4px 12px #00000014;min-width:380px;max-width:500px;max-height:calc(100vh - 96px);overflow:auto}.shortcuts-panel__content{padding:0}.shortcuts-panel__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;border-bottom:1px solid var(--color-rule)}.shortcuts-panel__title{font-size:var(--type-sm);font-weight:600;margin:0;color:var(--color-ink)}.shortcuts-panel__close{background:none;border:none;cursor:pointer;font-size:var(--type-base);color:var(--color-ink-muted);min-width:44px;min-height:44px;padding:12px;line-height:1;border-radius:4px;display:flex;align-items:center;justify-content:center}.shortcuts-panel__close:hover{background:var(--color-surface-2);color:var(--color-ink)}.shortcuts-panel__content{padding:8px 16px 16px}.shortcuts-panel__category{font-size:var(--type-xs);font-weight:600;color:var(--color-ink-muted);margin-top:12px;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.shortcuts-panel__category:first-child{margin-top:0}.shortcuts-panel__row{display:flex;align-items:center;gap:8px;font-size:var(--type-sm);padding:3px 0;color:var(--color-ink)}.shortcuts-panel__row--active{color:var(--color-accent);font-weight:500}.shortcuts-panel__desc{flex:1;color:var(--color-ink)}.shortcuts-panel__category-label{color:var(--color-ink-muted);font-size:var(--type-xs);text-transform:uppercase;letter-spacing:.5px}.shortcuts-panel__row kbd{display:inline-block;padding:1px 6px;font-size:var(--type-xs);font-family:var(--font-mono, monospace);background:var(--color-surface-1, var(--color-bg));border:1px solid var(--color-rule);border-radius:4px;color:var(--color-ink);white-space:nowrap;line-height:1.5}.shortcuts-panel__row kbd+kbd{margin-left:4px}@media(max-width:640px){.shortcuts-panel{right:8px;left:8px;bottom:60px;min-width:unset;max-width:unset;width:calc(100% - 16px)}}.stock-chart__empty{display:flex;align-items:center;justify-content:center;height:24rem;background-color:var(--color-surface);border-radius:var(--radius-lg)}.stock-chart__empty-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:0 1.5rem;text-align:center}.stock-chart__empty-text,.stock-chart__empty-hint{color:var(--color-ink-muted);margin:0}.stock-chart__empty-link{color:var(--color-accent, var(--color-bull));text-decoration:underline}.stock-chart__container{width:100%;height:100%;border:1px solid var(--color-rule);border-radius:var(--radius-lg);box-shadow:0 1px 2px #0000000a;flex:1;min-height:0;overflow:hidden}.stock-chart__container.tool-cursor{cursor:grab}.stock-chart__container.tool-drawing{cursor:crosshair}@media(max-width:640px){.stock-chart__container{min-height:320px}}@media(max-width:480px){.stock-chart__container{min-height:260px}}.watchlist{border:none!important;box-shadow:none!important;border-radius:0!important;background:transparent!important;min-width:0}.watchlist .ant-card-head{display:none!important;border:none!important;padding:0!important;margin:0!important}.watchlist .ant-card-body{padding:0!important;margin:0!important}.watchlist__tabs{display:flex;align-items:center;gap:4px;padding:var(--space-2) var(--space-2) 0;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.watchlist__tab{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:9999px;font-size:var(--type-xs);font-weight:500;font-family:var(--font-sans);color:var(--color-ink-muted, #6b7280);background:transparent;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background .15s var(--ease-out),color .15s var(--ease-out),border-color .15s var(--ease-out),box-shadow .15s var(--ease-out);-webkit-user-select:none;user-select:none;flex-shrink:0}.watchlist__tab:hover{background:var(--color-surface-1, #f3f4f6);color:var(--color-ink, #374151)}.watchlist__tab--active{background:var(--color-surface-2, #efeff2);color:var(--color-ink, #0a0a0a);font-weight:600}.watchlist__tab-input{font-size:var(--type-xs);padding:2px 8px;border:1px solid var(--color-accent, #0066ff);border-radius:9999px;outline:none;width:clamp(72px,8vw,120px);font-family:var(--font-sans);background:var(--color-bg);color:var(--color-ink)}.watchlist__tab-input:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 20%,transparent)}.watchlist__add-list-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--color-rule, #e5e5e7);background:transparent;cursor:pointer;font-size:var(--type-sm);color:var(--color-ink-faint, #8a8a90);line-height:1;flex-shrink:0;margin-left:auto;transition:background .15s var(--ease-out),border-color .15s var(--ease-out),color .15s var(--ease-out)}.watchlist__add-list-btn:hover{background:var(--color-surface-1, #f3f4f6);border-color:var(--color-accent, #0066ff);color:var(--color-accent, #0066ff)}.watchlist__remove-list-btn{display:inline-flex;align-items:center;justify-content:center;padding:0;min-width:auto;height:16px;width:16px;font-size:10px;line-height:1;border-radius:50%;border:none;background:transparent;color:var(--color-ink-faint, #8a8a90);cursor:pointer;opacity:0;transition:opacity .15s var(--ease-out),color .15s var(--ease-out),background .15s var(--ease-out);flex-shrink:0}.watchlist__tab:hover .watchlist__remove-list-btn,.watchlist__tab--active .watchlist__remove-list-btn{opacity:.6}.watchlist__remove-list-btn:hover{color:var(--color-bear);background:color-mix(in srgb,var(--color-bear) 10%,transparent)}.watchlist__search-input{margin:var(--space-2);padding:6px 12px;font-size:var(--type-sm);font-weight:400;font-family:var(--font-sans);border-radius:var(--radius-sm, 4px);border:1px solid var(--color-rule, #e5e5e7);background:var(--color-surface-1, #f7f7f8);color:var(--color-ink, #0a0a0a);outline:none;transition:border-color .15s var(--ease-out),box-shadow .15s var(--ease-out),background .15s var(--ease-out);width:calc(100% - var(--space-4));box-sizing:border-box}.watchlist__search-input::placeholder{color:var(--color-placeholder);font-weight:400}.watchlist__search-input:focus{border-color:var(--color-accent, #0066ff);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent, #0066ff) 20%,transparent);background:var(--color-bg, #ffffff)}.watchlist__add-btn{margin:calc(var(--space-2));margin-bottom:0;padding:8px 12px;font-size:var(--type-sm);font-weight:600;font-family:var(--font-sans);border:2px solid var(--color-accent, #0066ff);border-radius:var(--radius-sm, 4px);background:var(--color-accent, #0066ff);color:#fff;cursor:pointer;transition:background .15s var(--ease-out),border-color .15s var(--ease-out),color .15s var(--ease-out),box-shadow .15s var(--ease-out);width:calc(100% - var(--space-4));box-sizing:border-box}.watchlist__add-btn:hover{background:color-mix(in srgb,var(--color-accent, #0066ff) 85%,white);border-color:color-mix(in srgb,var(--color-accent, #0066ff) 90%,black);color:#fff}.watchlist__list{display:flex;flex-direction:column;gap:2px;padding:0 var(--space-2) var(--space-2);min-height:50px}.watchlist__row{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius-sm, 4px);background:var(--color-surface-1, #f7f7f8);border:1px solid transparent;transition:background .15s var(--ease-out),border-color .15s var(--ease-out),box-shadow .15s var(--ease-out);position:relative}.watchlist__row:hover{background:var(--color-bg, #ffffff);border-color:var(--color-rule, #e5e5e7);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .04))}[data-theme=dark] .watchlist__row:hover{background:var(--color-surface-2, #1d1d24);border-color:var(--color-rule-strong, #353540);box-shadow:0 1px 3px #0003}.watchlist__row--dragging{opacity:.4}.watchlist__row--drag-over{border-top:2px solid var(--color-accent, #0066ff)!important}.watchlist__row--drag-over:last-child{border-bottom:2px solid var(--color-accent, #0066ff)!important}[data-theme=dark] .watchlist__row--drag-over{border-top-color:var(--color-accent, #4d8bff)!important}.watchlist__drag-handle{font-size:var(--type-xs);color:var(--color-rule-strong, #d0d0d4);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;width:16px;text-align:center;line-height:1;transition:color .15s var(--ease-out)}.watchlist__row:hover .watchlist__drag-handle{color:var(--color-ink-faint, #8a8a90)}.watchlist__drag-handle:active{cursor:grabbing}.watchlist__symbol-link{font-size:var(--type-sm);font-weight:600;color:var(--color-ink, #0a0a0a);text-decoration:none;min-width:40px;transition:color .15s var(--ease-out)}.watchlist__symbol-link:hover{color:var(--color-accent, #0066ff)}[data-theme=dark] .watchlist__symbol-link{color:var(--color-ink, #f5f5f7)}[data-theme=dark] .watchlist__symbol-link:hover{color:var(--color-accent, #4d8bff)}.watchlist__price{font-size:var(--type-xs);font-weight:400;color:var(--color-ink-muted, #5e5e63);text-align:right;flex:1;font-family:var(--font-mono);transition:color .15s var(--ease-out)}.watchlist__change{font-size:var(--type-xs);font-weight:500;padding:1px 6px;border-radius:4px;min-width:52px;text-align:center;flex-shrink:0;font-family:var(--font-mono);border-left:2px solid transparent;transition:color .15s var(--ease-out),background .15s var(--ease-out),border-color .15s var(--ease-out)}.watchlist__change--bull{color:var(--color-bull);background:color-mix(in srgb,var(--color-bull) 10%,transparent);border-left-color:var(--color-bull)}.watchlist__change--bear{color:var(--color-bear);background:color-mix(in srgb,var(--color-bear) 10%,transparent);border-left-color:var(--color-bear)}.watchlist__change--big-move{font-weight:700;box-shadow:0 0 0 1px currentColor inset}.watchlist__change--big-move.watchlist__change--bull:before{content:"▲ ";font-size:9px}.watchlist__change--big-move.watchlist__change--bear:before{content:"▼ ";font-size:9px}.watchlist__remove-btn{font-size:var(--type-sm);padding:0;min-width:20px;height:20px;line-height:1;border:none;background:transparent;color:var(--color-ink-faint, #8a8a90);cursor:pointer;flex-shrink:0;opacity:0;transition:color .15s var(--ease-out),opacity .15s var(--ease-out),background .15s var(--ease-out);border-radius:4px;display:flex;align-items:center;justify-content:center}.watchlist__row:hover .watchlist__remove-btn{opacity:1}.watchlist__remove-btn:hover{color:var(--color-bear);background:color-mix(in srgb,var(--color-bear) 10%,transparent)}@media(hover:none){.watchlist__remove-btn{opacity:.6;min-width:32px;height:32px}}.watchlist__row-actions{display:inline-flex;flex-direction:column;gap:1px;opacity:0;transition:opacity .15s var(--ease-out);flex-shrink:0}.watchlist__reorder-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:17px;padding:0;font-size:10px;line-height:1;border:none;border-radius:3px;background:transparent;color:var(--color-ink-faint, #8a8a90);cursor:pointer;flex-shrink:0;transition:color .15s var(--ease-out),background .15s var(--ease-out)}.watchlist__row:hover .watchlist__row-actions,.watchlist__row:focus-within .watchlist__row-actions{opacity:1}.watchlist__reorder-btn:hover:not(:disabled){color:var(--color-accent, #0066ff);background:color-mix(in srgb,var(--color-accent, #0066ff) 10%,transparent)}.watchlist__reorder-btn:disabled{cursor:default;opacity:.35}.watchlist__reorder-btn:focus-visible{outline:2px solid var(--color-accent, #0066ff);outline-offset:1px}@media(hover:none){.watchlist__row-actions{opacity:.6}}.watchlist__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 12px;text-align:center;font-size:var(--type-sm);color:var(--color-ink-muted, #5e5e63);font-family:var(--font-sans);border:1px dashed var(--color-rule, #e5e5e7);border-radius:var(--radius-sm, 4px);background:var(--color-surface-1, #f7f7f8);transition:color .15s var(--ease-out),border-color .15s var(--ease-out),background .15s var(--ease-out)}[data-theme=dark] .watchlist__empty{color:var(--color-ink-muted, #a3a3aa);border-color:var(--color-rule, #25252c);background:var(--color-surface-1, #15151a)}.watchlist__row:focus-visible{outline:2px solid var(--color-accent, #0066ff);outline-offset:-2px}.watchlist__tab:focus-visible{outline:2px solid var(--color-accent, #0066ff);outline-offset:1px}.watchlist__add-btn:focus-visible,.watchlist__search-input:focus-visible{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent, #0066ff) 20%,transparent)}@media(min-width:1024px){.watchlist__row{padding:10px 14px;gap:var(--space-2);min-height:44px}.watchlist__symbol-link{font-size:var(--type-base);min-width:48px}.watchlist__price{font-size:var(--type-sm)}.watchlist__change{min-width:56px}}.watchlist__price-skeleton{flex:1;height:12px}.chart-insights{padding:0 var(--space-3) var(--space-3)}.chart-insights__title{font:var(--type-xs) var(--font-sans);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-muted);margin:var(--space-3) 0 var(--space-2) 0;padding:0}.chart-insights__empty{padding:var(--space-2) var(--space-1);text-align:center;color:var(--color-ink-muted);font:var(--type-xs) var(--font-sans);margin:0}.chart-insights__alert-status{padding:var(--space-2) var(--space-3);margin:0 0 var(--space-2) 0;border-radius:var(--radius-lg);font:var(--type-xs) var(--font-sans);font-weight:var(--weight-medium);text-align:center}.chart-insights__alert-status--ok{color:#fff;background:var(--color-bull)}.chart-insights__alert-status--err{color:var(--color-bear);background:#ef44441a;border:1px solid var(--color-bear)}.chart-insights__level{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font:var(--type-xs) var(--font-mono);color:var(--color-ink-muted);font-variant-numeric:tabular-nums;margin:0}.chart-insights__level-set-alert{background:none;border:none;color:var(--color-accent);font:var(--type-xs) var(--font-sans);font-weight:var(--weight-medium);cursor:pointer;padding:2px 6px;border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);flex-shrink:0}.chart-insights__level-set-alert:hover{background:#6366f11a;color:var(--color-accent-hover)}.chart-insights__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.chart-insights__row{border:1px solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-2) var(--space-3)}.chart-insights__header{display:flex;align-items:center;flex-wrap:nowrap;gap:var(--space-2);margin-bottom:4px}.chart-insights__pattern{font:var(--type-xs) var(--font-sans);font-weight:var(--weight-bold);color:var(--color-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.chart-insights__chip{font:var(--type-xs) var(--font-sans);font-weight:var(--weight-bold);padding:2px 8px;border-radius:9999px;white-space:nowrap;flex-shrink:0}.chart-insights__chip--bull{color:#fff;background-color:var(--color-bull)}.chart-insights__chip--bear{color:#fff;background-color:var(--color-bear)}.chart-insights__chip:not(.chart-insights__chip--bull):not(.chart-insights__chip--bear){color:var(--color-ink-muted);background-color:var(--color-rule)}.chart-insights__level{font:var(--type-xs) var(--font-mono);color:var(--color-ink-muted);font-variant-numeric:tabular-nums;margin:0}.insight-freshness{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;font:var(--type-xs) var(--font-sans);font-weight:var(--weight-medium);color:var(--color-ink-muted);margin-left:auto;white-space:nowrap;line-height:1.1}.insight-freshness:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px;vertical-align:middle}.insight-freshness--fresh:before{background:#22c55e}.insight-freshness--stale:before{background:#f59e0b}.insight-freshness--old:before{background:#ef4444}.insight-media{flex-shrink:0}.insight-media--list{width:48px;aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0}.insight-media__image,.insight-media__fallback{width:100%;height:100%;display:block;object-fit:cover}:root{--chart-transition-duration: .2s;--chart-transition-easing: ease-out;--chart-icon-btn-size: 32px;--chart-mini-btn-size: 20px;--chart-pill-btn-height: 26px}@keyframes chart-panel-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes chart-panel-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}.chart-panel-enter{animation:chart-panel-enter var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out) both}.chart-panel-exit{animation:chart-panel-exit var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out) both}.chart-root{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.chart-workspace{display:grid;grid-template-columns:96px 1fr 340px;grid-template-rows:minmax(0,1fr);flex:1;min-height:0;overflow:hidden}.chart-workspace[data-watchlist-collapsed=true]{grid-template-columns:96px 1fr 0}.chart-workspace[data-rail-collapsed=true]{grid-template-columns:24px 1fr 340px}.chart-workspace[data-watchlist-collapsed=true][data-rail-collapsed=true]{grid-template-columns:24px 1fr 0}.chart-root>.chart-workspace{overflow:hidden}.chart-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-rule);background:var(--color-bg);flex-shrink:0;overflow:visible}.chart-header__title{font:var(--type-lg) var(--font-mono);font-weight:var(--weight-bold);color:var(--color-ink);margin:0;letter-spacing:.04em;min-width:3em;text-align:center;overflow:visible;flex-shrink:0}.chart-header .watch-toggle{flex-shrink:0}.chart-header__refresh{margin-left:auto}.chart-root--uncovered{background:radial-gradient(circle at top,rgba(255,255,255,.85),transparent 36%),linear-gradient(180deg,var(--color-bg) 0%,var(--color-surface-1) 100%)}.chart-unknown-symbol{display:flex;flex:1;align-items:center;justify-content:center;padding:clamp(24px,4vw,56px);min-height:0}.chart-unknown-symbol__card{width:min(760px,100%);padding:clamp(24px,4vw,40px);border:1px solid var(--color-rule);border-radius:var(--radius-xl, 24px);background:var(--color-surface);box-shadow:var(--shadow-lg, 0 16px 48px rgba(0, 0, 0, .08))}.chart-unknown-symbol__eyebrow{margin:0 0 var(--space-2);color:var(--color-accent);font:var(--type-sm) var(--font-mono);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.chart-unknown-symbol__title{margin:0;color:var(--color-ink);font:var(--type-2xl) var(--font-sans);font-weight:var(--weight-bold);line-height:1.15}.chart-unknown-symbol__body{margin:var(--space-4) 0 0;max-width:58ch;color:var(--color-ink-muted);font:var(--type-base) var(--font-sans);line-height:1.65}.chart-unknown-symbol__search{margin-top:var(--space-5)}.chart-unknown-symbol__search-label{margin-bottom:var(--space-2);color:var(--color-ink);font:var(--type-sm) var(--font-sans);font-weight:var(--weight-medium)}.chart-unknown-symbol__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}.chart-unknown-symbol__action-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-ink);color:var(--color-bg);text-decoration:none;font:var(--type-sm) var(--font-sans);font-weight:var(--weight-semibold);transition:transform .15s ease,background-color .15s ease,color .15s ease,border-color .15s ease}.chart-unknown-symbol__action-link:hover{transform:translateY(-1px);background:var(--color-hover);color:var(--color-ink)}.chart-unknown-symbol__action-link--secondary{background:transparent;color:var(--color-ink)}.chart-unknown-symbol__action-link--secondary:hover{background:var(--color-surface-1)}.chart-workspace__rail{border-right:1px solid var(--color-rule);background:var(--color-bg);overflow:hidden}.chart-workspace__main{display:flex;flex-direction:column;overflow:hidden;min-height:0;min-width:0;grid-column:2;transition:grid-column var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),grid-row var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}.chart-workspace__main__chart{min-height:0;height:auto!important}.chart-workspace__watchlist{border-left:1px solid var(--color-rule);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;background:var(--color-bg);display:flex;flex-direction:column;grid-column:3;transition:grid-column var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),grid-row var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),max-height var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}.chart-workspace__watchlist-header{padding:12px;border-bottom:1px solid var(--color-rule);flex-shrink:0}.chart-workspace__watchlist-mobile{display:none}.chart-workspace__watchlist-desktop{display:flex;transition:opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),transform var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}.chart-workspace__watchlist-mobile-inner{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;border-left:none;background:var(--color-bg)}.chart-workspace__watchlist-desktop .chart-workspace__watchlist{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.chart-workspace__watchlist-desktop-inner{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;background:var(--color-bg)}.stock-chart__uncovered{display:flex;align-items:center;justify-content:center;flex:1;background:var(--color-surface-1);padding:var(--gutter)}.stock-chart__uncovered-content{max-width:500px;text-align:center}.stock-chart__uncovered-text{font:var(--type-base) var(--font-sans);color:var(--color-ink);margin-bottom:var(--space-4);line-height:1.6}.stock-chart__uncovered-text a{color:var(--color-link);text-decoration:underline}.stock-chart__uncovered-actions{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.stock-chart__uncovered-link{color:var(--color-link);text-decoration:none;font-weight:var(--weight-medium);padding:var(--space-2) var(--space-3);border:1px solid var(--color-rule);border-radius:var(--radius-md);transition:background-color .15s ease}.stock-chart__uncovered-link:hover{background:var(--color-hover)}.stock-chart__uncovered-separator{color:var(--color-faint);font-size:var(--type-sm)}.stock-chart__uncovered-link--secondary{color:var(--color-faint)}@media(max-width:1024px){.chart-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto}.chart-tool-rail{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:6px 8px;gap:4px;flex-shrink:0;background:var(--color-bg);border-bottom:1px solid var(--color-rule);grid-row:1;grid-column:1}.chart-workspace__main{grid-row:2;grid-column:1;min-height:60vh;transition:opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}.chart-workspace__watchlist,.chart-workspace__watchlist-mobile{grid-row:3;grid-column:1}.chart-workspace__watchlist{transition:opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}}@media(max-width:1024px){.shortcuts-panel{right:8px;left:8px;min-width:unset;max-width:unset;bottom:60px}}@media(max-width:640px){.chart-workspace__main{min-height:420px}.chart-workspace__watchlist-mobile{display:flex;flex-direction:column;flex:1;min-height:15vh;opacity:0;transform:translateY(12px);transition:opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),transform var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out);animation:chart-panel-enter var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}.chart-workspace__watchlist-desktop{display:none;opacity:0;transform:translateY(-12px);transition:opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),transform var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}.chart-workspace__watchlist{display:flex;flex-direction:column;flex:1;min-height:0;transition:opacity var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out),max-height var(--chart-transition-duration, .2s) var(--chart-transition-easing, ease-out)}}@media(min-width:641px){.chart-workspace__watchlist-mobile{display:none}.chart-workspace__watchlist-desktop{display:flex}}@media(min-width:641px)and (max-width:1024px){.chart-workspace__watchlist-desktop .chart-workspace__watchlist{grid-column:1}}@media(max-width:1024px){.chart-workspace[data-watchlist-collapsed=true],.chart-workspace[data-rail-collapsed=true],.chart-workspace[data-watchlist-collapsed=true][data-rail-collapsed=true]{grid-template-columns:minmax(0,1fr)}}.chart-load-history{text-align:center;padding:1rem 0}.chart-load-history-btn{background:var(--color-surface-1);border:1px solid var(--color-rule);border-radius:var(--radius-md);padding:.5rem 1.25rem;color:var(--color-ink);cursor:pointer;font-size:var(--type-xs);transition:background-color .2s}.chart-load-history-btn:hover{background:var(--color-surface-2)}.chart-load-history-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton{background:var(--color-surface-2);border-radius:var(--radius-sm, 4px);animation:skeleton-pulse 1.5s ease-in-out infinite}.chart-skeleton{position:absolute;inset:0;display:flex;flex-direction:column;gap:8px;padding:8px;pointer-events:none}.chart-skeleton__header{width:100%;height:32px;flex-shrink:0}.chart-skeleton__canvas{flex:1;min-height:200px;border-radius:0}@keyframes chart-spin{to{transform:rotate(360deg)}}.chart-loading__text{color:var(--color-ink, var(--color-ink));font:var(--type-sm) var(--font-sans);font-weight:var(--weight-medium);white-space:nowrap}.chart-no-data{display:flex;flex:1;align-items:center;justify-content:center;padding:clamp(24px,4vw,56px);min-height:0}.chart-no-data__card{width:min(760px,100%);padding:clamp(24px,4vw,40px);border:1px solid var(--color-rule);border-radius:var(--radius-xl, 24px);background:var(--color-surface);box-shadow:var(--shadow-lg, 0 16px 48px rgba(0, 0, 0, .08));text-align:center}.chart-no-data__eyebrow{margin:0 0 var(--space-2);color:var(--color-ink-muted);font:var(--type-sm) var(--font-mono);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.chart-no-data__title{margin:0;color:var(--color-ink);font:var(--type-2xl) var(--font-sans);font-weight:var(--weight-bold);line-height:1.15}.chart-no-data__body{margin:var(--space-4) 0 0;max-width:58ch;color:var(--color-ink-muted);font:var(--type-base) var(--font-sans);line-height:1.65}.chart-no-data__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-top:var(--space-5)}.chart-no-data__action-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-ink);color:var(--color-bg);text-decoration:none;font:var(--type-sm) var(--font-sans);font-weight:var(--weight-semibold);transition:transform .15s ease,background-color .15s ease}.chart-no-data__action-link:hover{transform:translateY(-1px);background:var(--color-hover);color:var(--color-ink)}.chart-no-data__action-link--secondary{background:transparent;color:var(--color-ink)}.chart-no-data__action-link--secondary:hover{background:var(--color-surface-1)}@media(min-width:1440px){.chart-workspace{grid-template-columns:96px 1fr 360px}.chart-workspace[data-rail-collapsed=true]{grid-template-columns:24px 1fr 360px}}@media(min-width:1680px){.chart-workspace{grid-template-columns:96px 1fr 380px}.chart-workspace[data-rail-collapsed=true]{grid-template-columns:24px 1fr 380px}}@media(min-width:1920px){.chart-workspace{grid-template-columns:96px 1fr 420px}.chart-workspace[data-rail-collapsed=true]{grid-template-columns:24px 1fr 420px}}@media(min-width:2560px){.chart-workspace{grid-template-columns:96px 1fr 480px}.chart-workspace[data-rail-collapsed=true]{grid-template-columns:24px 1fr 480px}}@media(min-width:1024px){.chart-header{padding:8px var(--space-6)}.chart-workspace__main__chart{margin:var(--space-4) var(--space-5) var(--space-4) var(--space-4);background:var(--color-surface);border:1px solid var(--color-rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.chart-workspace__watchlist-header{padding:var(--space-3) var(--space-4)}}@media(min-width:1440px){.chart-header__title{font-size:var(--type-xl)}}@media(min-width:1025px){main.site-layout__content:has(>.chart-root){max-width:none;padding-inline:0}}.chart-mobile-tabs{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.chart-mobile-tabs__bar{display:flex;gap:6px;padding:6px;border:1px solid color-mix(in srgb,var(--color-ink) 12%,transparent);border-radius:var(--radius-lg, 12px);background:var(--color-surface);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 5%,transparent);flex-shrink:0;position:sticky;top:0;z-index:1}.chart-mobile-tabs__tab{box-sizing:border-box;flex:1;min-width:0;min-height:44px;padding:10px 8px;background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-ink) 10%,transparent);border-radius:var(--radius-md, 8px);font-family:var(--font-sans);font-size:var(--type-sm);font-weight:var(--weight-medium);color:var(--color-ink-muted);cursor:pointer;position:relative;transition:background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.chart-mobile-tabs__tab--active,.chart-mobile-tabs__tab[aria-selected=true]{background:var(--color-accent);border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 18%,transparent);color:#fff}.chart-mobile-tabs__tab:active{background-color:var(--color-surface-2);transform:translateY(1px)}.chart-mobile-tabs__tab:focus-visible{outline:2px solid var(--color-focus, #0066cc);outline-offset:2px}@media(hover:hover){.chart-mobile-tabs__tab:hover{background:var(--color-surface-2);border-color:color-mix(in srgb,var(--color-ink) 16%,transparent);color:var(--color-ink)}.chart-mobile-tabs__tab--active:hover,.chart-mobile-tabs__tab[aria-selected=true]:hover{background:var(--color-accent);border-color:var(--color-accent);color:#fff}}.chart-mobile-tabs__panel{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.chart-mobile-tabs__panel-content{flex:1;min-height:1px}.financial-info{display:flex;flex-direction:column;gap:var(--space-4);padding:0 var(--space-3) var(--space-4)}.financial-info__section{border:1px solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-3)}.financial-info__section-title{font:var(--type-xs) var(--font-sans);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-muted);margin:0 0 var(--space-2) 0;padding:0}.financial-info__info{display:flex;flex-direction:column;gap:var(--space-1)}.financial-info__info-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.financial-info__info-label{font:var(--type-xs) var(--font-sans);color:var(--color-ink-muted);font-weight:var(--weight-medium);flex-shrink:0}.financial-info__info-value{font:var(--type-xs) var(--font-sans);color:var(--color-ink);text-align:right;word-break:break-all}.financial-info__info-value--mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.financial-info__stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.financial-info__stat{display:flex;flex-direction:column;gap:2px}.financial-info__stat-label{font:var(--type-xs) var(--font-sans);color:var(--color-ink-muted);font-weight:var(--weight-medium)}.financial-info__stat-value{font:var(--type-sm) var(--font-mono);font-weight:var(--weight-bold);color:var(--color-ink);font-variant-numeric:tabular-nums}.financial-info__bull{color:var(--color-bull)}.financial-info__bear{color:var(--color-bear)}.financial-info__empty{padding:var(--space-4) var(--space-3);text-align:center;color:var(--color-ink-muted)}.financial-info__empty-title{font:var(--type-xs) var(--font-sans);font-weight:var(--weight-bold);color:var(--color-ink);margin:0 0 var(--space-1) 0}.financial-info__empty-desc{font:var(--type-xs) var(--font-sans);margin:0}.watch-toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-ink);font:var(--type-sm) var(--font-sans);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.watch-toggle:hover{background:var(--color-surface-1);border-color:var(--color-ink-muted)}.watch-toggle--watched{border-color:var(--color-primary);color:var(--color-primary)}.watch-toggle--watched:hover{background:var(--color-primary);color:var(--color-fg)}.watch-toggle__icon{font-size:var(--type-base);line-height:1}.watch-toggle__label{font-variant-numeric:tabular-nums}
