html,body{height:100%;margin:0}body{font-family:system-ui,-apple-system,sans-serif}.dialog-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100}.dialog{background:var(--surface, #1e222d);color:var(--text, #d1d4dc);border-radius:8px;box-shadow:0 12px 32px #0006;width:min(420px,100%);max-height:90vh;overflow-y:auto;padding:1.25rem}.dialog__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.dialog__title{font-size:1.1rem;margin:0;flex:1}.dialog__close{background:none;border:none;color:inherit;font-size:1.4rem;line-height:1;cursor:pointer;padding:0 .25rem}@media(prefers-color-scheme:light){.dialog{background:#fff;color:#131722}}:root{--quote-up: #26a69a;--quote-down: #ef5350;--quote-muted: #787b86;--pattern-bullish-rgb: 38, 166, 154;--pattern-bearish-rgb: 239, 83, 80;--pattern-neutral-rgb: 230, 167, 0;--pattern-band-opacity: .15}.pattern-overlay{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:3}.pattern-overlay--hidden{display:none}.pattern-band{position:absolute;top:0;bottom:0;box-sizing:border-box;pointer-events:none}.pattern-band--bullish{background-color:rgba(var(--pattern-bullish-rgb),var(--pattern-band-opacity));--pattern-edge: rgb(var(--pattern-bullish-rgb))}.pattern-band--bearish{background-color:rgba(var(--pattern-bearish-rgb),var(--pattern-band-opacity));--pattern-edge: rgb(var(--pattern-bearish-rgb))}.pattern-band--neutral{background-color:rgba(var(--pattern-neutral-rgb),var(--pattern-band-opacity));--pattern-edge: rgb(var(--pattern-neutral-rgb))}.pattern-band--active{border-left:2px solid var(--pattern-edge);border-right:2px solid var(--pattern-edge)}.pattern-marker{position:absolute;z-index:1;bottom:4px;transform:translate(-50%);box-sizing:border-box;width:20px;height:20px;padding:0;border:2px solid;border-radius:50%;background:#fff;font-size:13px;font-weight:700;line-height:16px;text-align:center;cursor:pointer;pointer-events:auto}.pattern-marker--bullish{border-color:rgb(var(--pattern-bullish-rgb));color:rgb(var(--pattern-bullish-rgb))}.pattern-marker--bearish{border-color:rgb(var(--pattern-bearish-rgb));color:rgb(var(--pattern-bearish-rgb))}.pattern-marker--neutral{border-color:rgb(var(--pattern-neutral-rgb));color:rgb(var(--pattern-neutral-rgb))}.pattern-node--hidden{display:none}
