.loft-chart-studio{--cs-radius: var(--radius-md, 8px);--cs-radius-sm: var(--radius-sm, 6px)}.loft-chart-studio__canvas-wrap,.loft-chart-studio__stage-host{position:relative;width:100%;height:100%;min-height:0}.loft-chart-studio__canvas-wrap{background:repeating-conic-gradient(var(--bg-elevated) 0% 25%,transparent 0% 50%) 50% / 24px 24px;overflow:hidden}.loft-chart-studio__splash-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto;padding:clamp(16px,3vw,40px)}.loft-chart-studio__coach{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:5;width:min(460px,calc(100% - 32px));padding:12px 14px;background:var(--bg-elevated);border:1px solid var(--accent-cyan);border-radius:var(--cs-radius);box-shadow:0 10px 34px var(--color-cyan-bg-soft)}.loft-chart-studio__coach-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:.85rem;font-weight:700;color:var(--text-primary)}.loft-chart-studio__coach-head i{color:var(--accent-cyan)}.loft-chart-studio__coach-x{margin-left:auto;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--text-muted);border-radius:var(--cs-radius-sm);cursor:pointer}.loft-chart-studio__coach-x:hover{color:var(--text-primary)}.loft-chart-studio__coach-steps{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:.8rem;line-height:1.5;color:var(--text-secondary)}.loft-chart-studio__coach-steps strong{color:var(--text-primary);font-weight:600}.loft-chart-studio__coach-body{margin:0;font-size:.8rem;line-height:1.5;color:var(--text-secondary)}.loft-chart-studio__coach-body strong{color:var(--text-primary);font-weight:600}.loft-chart-studio__ctxbar{gap:4px;flex-wrap:wrap}.loft-chart-studio__toolbtn,.loft-chart-studio__file-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border-subtle);border-radius:var(--cs-radius);background:transparent;color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease,border-color .12s ease}.loft-chart-studio__file-btn{position:relative}.loft-chart-studio__toolbtn:hover:not(:disabled),.loft-chart-studio__file-btn:hover{color:var(--text-primary);border-color:var(--accent-cyan)}.loft-chart-studio__toolbtn.is-active{background:var(--color-cyan-bg-medium);color:var(--accent-cyan);border-color:var(--accent-cyan)}.loft-chart-studio__toolbtn:disabled{opacity:.4;cursor:not-allowed}.loft-chart-studio__toolbtn i,.loft-chart-studio__file-btn i{font-size:1rem}.loft-chart-studio__toolbtn--auto{color:var(--cat-finance);border-color:color-mix(in srgb,var(--cat-finance) 45%,transparent)}.loft-chart-studio__toolbtn--auto:hover:not(:disabled){color:var(--cat-finance);border-color:var(--cat-finance);background:color-mix(in srgb,var(--cat-finance) 14%,transparent)}.loft-chart-studio__est{margin-left:auto;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--cat-finance);border:1px solid color-mix(in srgb,var(--cat-finance) 45%,transparent);border-radius:var(--cs-radius);padding:1px 6px;cursor:help}.loft-chart-studio__stats{display:flex;flex-direction:column;gap:6px;margin:0}.loft-chart-studio__stats>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.loft-chart-studio__stats dt{font-size:.78rem;color:var(--text-secondary)}.loft-chart-studio__stats dd{margin:0;font-size:.82rem;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.loft-chart-studio__stats dd.is-gain{color:var(--color-success)}.loft-chart-studio__stats dd.is-loss{color:var(--raw-cat-cooking)}.loft-chart-studio__stat-sub{font-weight:400;color:var(--text-secondary)}.loft-chart-studio__panel-note{margin:10px 0 0;font-size:.68rem;line-height:1.4;color:var(--text-secondary);opacity:.8}.loft-chart-studio__quant-toggles{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.loft-chart-studio__chip{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;font-size:.72rem;font-weight:600;border:1px solid var(--border-subtle);border-radius:var(--cs-radius);background:transparent;color:var(--text-secondary);cursor:pointer}.loft-chart-studio__chip:hover{color:var(--text-primary);border-color:var(--accent-cyan)}.loft-chart-studio__chip.is-on{color:var(--accent-cyan);border-color:var(--accent-cyan);background:var(--color-cyan-bg-medium)}.loft-chart-studio__chip i{font-size:.9rem}.loft-chart-studio__toolgroup{position:relative;display:inline-flex}.loft-chart-studio__caret{font-size:.7rem!important;opacity:.55;margin-left:-2px}.loft-chart-studio__toolmenu{position:fixed;z-index:60;display:flex;flex-direction:column;min-width:190px;padding:4px;background:var(--color-surface-primary);border:1px solid var(--border-hover);border-radius:var(--cs-radius);box-shadow:0 10px 28px #00000080}.loft-chart-studio__toolmenu-item{display:flex;align-items:center;gap:8px;padding:7px 9px;border:0;background:transparent;color:var(--text-secondary);font-size:.82rem;font-weight:500;border-radius:calc(var(--cs-radius) - 2px);cursor:pointer;text-align:left}.loft-chart-studio__toolmenu-item:hover{background:var(--color-cyan-bg-medium);color:var(--text-primary)}.loft-chart-studio__toolmenu-item.is-active{color:var(--accent-cyan)}.loft-chart-studio__toolmenu-item i{font-size:1rem}.loft-chart-studio__toolmenu-item span{flex:1}.loft-chart-studio__toolmenu-item kbd{font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:4px;padding:1px 5px}.loft-chart-studio__rail{display:flex;flex-direction:column;gap:12px;padding:12px;overflow-y:auto}.loft-chart-studio__rail-title{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:12px 12px 6px}.loft-chart-studio__objlist{padding-bottom:12px;overflow-y:auto}.loft-chart-studio__objlist ul{list-style:none;margin:0;padding:0 6px}.loft-chart-studio__obj-empty{font-size:.82rem;color:var(--text-muted);padding:0 12px;line-height:1.5}.loft-chart-studio__obj-row{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:var(--cs-radius-sm)}.loft-chart-studio__obj-row.is-selected{background:var(--color-cyan-bg-soft)}.loft-chart-studio__obj-eye,.loft-chart-studio__obj-del{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;background:transparent;color:var(--text-muted);border-radius:var(--cs-radius-sm);cursor:pointer}.loft-chart-studio__obj-eye:hover,.loft-chart-studio__obj-del:hover{color:var(--text-primary)}.loft-chart-studio__obj-name{flex:1;display:flex;align-items:center;gap:8px;min-width:0;padding:6px 4px;border:0;background:transparent;color:var(--text-secondary);font-size:.82rem;text-align:left;text-transform:capitalize;cursor:pointer}.loft-chart-studio__obj-row.is-selected .loft-chart-studio__obj-name{color:var(--text-primary)}.loft-chart-studio__obj-dot{flex-shrink:0;width:10px;height:10px;border-radius:3px}.loft-chart-studio__panel{display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--cs-radius)}.loft-chart-studio__panel-head{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:700;color:var(--text-primary)}.loft-chart-studio__panel-head i{color:var(--accent-cyan)}.loft-chart-studio__panel-badge{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:600;color:var(--color-success)}.loft-chart-studio__panel-hint{font-size:.78rem;line-height:1.5;color:var(--text-muted);margin:0}.loft-chart-studio__panel-status{font-size:.76rem;line-height:1.45;color:var(--text-secondary);margin:0}.loft-chart-studio__cal-row{display:flex;gap:6px;align-items:center}.loft-chart-studio__cal-pick{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;flex-shrink:0;border:1px solid var(--border-subtle);border-radius:var(--cs-radius);background:transparent;color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer}.loft-chart-studio__cal-pick.is-active{border-color:var(--accent-cyan);color:var(--accent-cyan);background:var(--color-cyan-bg-soft)}.loft-chart-studio__cal-pick.is-done{color:var(--color-success);border-color:var(--color-success)}.loft-chart-studio__cal-value{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--border-subtle);border-radius:var(--cs-radius);background:var(--bg-elevated);color:var(--text-primary);font-size:.82rem;font-family:var(--font-mono, monospace)}.loft-chart-studio__cal-value:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:1px}.loft-chart-studio__cal-scale{display:flex;gap:0;border:1px solid var(--border-subtle);border-radius:var(--cs-radius);overflow:hidden;width:max-content}.loft-chart-studio__seg{padding:5px 14px;border:0;background:transparent;color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer}.loft-chart-studio__seg.is-active{background:var(--color-cyan-bg-medium);color:var(--accent-cyan)}.loft-chart-studio__cal-actions{display:flex;gap:6px;flex-wrap:wrap}.loft-chart-studio__btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border-subtle);border-radius:var(--cs-radius);background:transparent;color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer}.loft-chart-studio__btn:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent-cyan)}.loft-chart-studio__btn:disabled{opacity:.5;cursor:not-allowed}.loft-chart-studio__btn--accent{color:var(--accent-cyan);border-color:var(--accent-cyan);background:var(--color-cyan-bg-soft)}.loft-chart-studio__btn--danger{color:var(--color-error);border-color:var(--color-error);margin-top:4px}.loft-chart-studio__field{display:flex;flex-direction:column;gap:6px}.loft-chart-studio__field--row{flex-direction:row;align-items:center;justify-content:space-between}.loft-chart-studio__field-label{font-size:.76rem;font-weight:600;color:var(--text-secondary)}.loft-chart-studio__swatches{display:flex;gap:6px;flex-wrap:wrap}.loft-chart-studio__swatch{width:26px;height:26px;border-radius:var(--cs-radius-sm);border:2px solid transparent;cursor:pointer;padding:0}.loft-chart-studio__swatch.is-active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-elevated) inset}.loft-chart-studio__toggle{position:relative;width:40px;height:22px;border-radius:999px;border:1px solid var(--border-subtle);background:transparent;cursor:pointer;padding:0}.loft-chart-studio__toggle.is-on{background:var(--accent-cyan);border-color:var(--accent-cyan)}.loft-chart-studio__toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--text-secondary);transition:transform .14s ease,background .14s ease}.loft-chart-studio__toggle.is-on .loft-chart-studio__toggle-knob{transform:translate(18px);background:var(--bg-elevated)}.loft-chart-studio__text-input{padding:6px 8px;border:1px solid var(--border-subtle);border-radius:var(--cs-radius);background:var(--bg-elevated);color:var(--text-primary);font-size:.82rem}.loft-chart-studio__text-input:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:1px}.loft-chart-studio__price-readout{font-family:var(--font-mono, monospace);font-size:.8rem;font-weight:600;color:var(--accent-cyan)}@media(max-width:1024px){.loft-chart-studio__toolbtn span,.loft-chart-studio__file-btn span{display:none}.loft-chart-studio__toolbtn,.loft-chart-studio__file-btn{padding:6px 8px}}@media(max-width:768px){.loft-chart-studio__rail{padding:8px}.loft-chart-studio__panel{padding:10px}}@media(max-width:480px){.loft-chart-studio__cal-pick span{display:none}}
