:root{color-scheme:dark;--bg: #1a2235;--bg-card: #242d44;--border: #34405c;--text: #e6edf7;--muted: #8b97ab;--up: #22c55e;--down: #fca5a5;--flat: #8b97ab;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text)}.app{max-width:960px;margin:0 auto;padding:24px 16px 64px}.app__header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.app__title{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0}.app__status{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.app__status-next{opacity:.7}.app__error{background:#ef44441f;border:1px solid rgba(239,68,68,.4);color:#fecaca;padding:10px 12px;border-radius:8px;font-size:13px;margin-bottom:12px}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;font-size:13px}.controls__group{display:inline-flex;background:var(--bg-card);border:1px solid var(--border);border-radius:999px;padding:3px}.controls__chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--muted);padding:6px 12px;border-radius:999px;font-size:13px;cursor:pointer;transition:color .12s ease,background .12s ease}.controls__chip:hover{color:var(--text)}.controls__chip--active{background:var(--border);color:var(--text)}.controls__search{background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:8px;font-size:13px;font-family:inherit;min-width:180px;flex:1 1 180px;max-width:280px}.controls__search::placeholder{color:var(--muted)}.controls__search:focus{outline:2px solid var(--up);outline-offset:-1px}.controls__chip:disabled{opacity:.45;cursor:default}.controls__sort{display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.controls__label{font-size:12px}.controls__select{background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:8px;font-size:13px;font-family:inherit}.controls__add{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--up);color:#0b0f17;border:0;font-family:inherit;font-size:13px;font-weight:600;padding:7px 14px;border-radius:8px;cursor:pointer;transition:background .12s ease,transform 80ms ease}.controls__add:hover{background:#4ade80}.controls__add:active{transform:translateY(1px)}.controls__add:focus-visible{outline:2px solid var(--up);outline-offset:2px}.controls__count{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums}.search{flex:1 1 100%;display:flex;flex-direction:column;gap:6px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:10px 12px}.search__row{display:flex;align-items:center;gap:8px}.search__input{flex:1;background:transparent;border:0;color:var(--text);font-size:14px;font-family:inherit;padding:6px 4px;outline:none}.search__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--muted);font-size:20px;line-height:1;padding:2px 8px;border-radius:6px;cursor:pointer}.search__close:hover{color:var(--text)}.search__hint{font-size:12px;color:var(--muted);padding:4px 4px 2px}.search__hint--error{color:var(--down)}.search__results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto}.search__result{display:flex;align-items:center;gap:12px;padding:6px 4px;border-radius:6px}.search__result:hover{background:#ffffff08}.search__result-main{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.search__result-symbol{font-size:13px;font-weight:600;letter-spacing:.02em}.search__result-desc{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search__result-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);border:0;color:var(--text);font-size:12px;padding:5px 12px;border-radius:6px;cursor:pointer;font-family:inherit}.search__result-add:hover:not(:disabled){background:#455372}.search__result-add:disabled{color:var(--muted);cursor:default}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.empty{text-align:center;padding:56px 20px;border:1px dashed var(--border);border-radius:12px;color:var(--muted)}.empty__title{margin:0 0 6px;font-size:16px;color:var(--text)}.empty__hint{margin:0;font-size:13px}.card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}.card__remove{position:absolute;top:6px;right:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--muted);font-size:18px;line-height:1;padding:2px 6px;border-radius:6px;cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease,background .12s ease}.card:hover .card__remove,.card__remove:focus-visible{opacity:1}.card__remove:hover{color:var(--down);background:#fca5a51a}.card__row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.card__id{display:inline-flex;align-items:center;gap:6px;min-width:0}.card__focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;cursor:pointer;font-size:14px;line-height:1;color:var(--muted)}.card__focus:hover{color:var(--text)}.card__focus--on{color:#f5c518}.card__symbol{font-weight:700;font-size:14px;letter-spacing:.02em}.card__name{font-size:12px;color:var(--muted)}.card__price{font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}.card__live{margin-left:8px;padding:1px 6px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.06em;vertical-align:middle;color:#fff;background:var(--up);animation:card__live-pulse 1.6s ease-in-out infinite}@keyframes card__live-pulse{0%,to{opacity:1}50%{opacity:.55}}.card__change{font-size:13px;font-variant-numeric:tabular-nums}.card__change--up{color:var(--up)}.card__change--down{color:var(--down)}.card__change--flat{color:var(--flat)}.card__meta{font-size:11px;color:var(--muted);margin-top:4px}.card--unsupported{opacity:.55}.card--clickable{cursor:pointer;transition:border-color .12s ease,transform 80ms ease}.card--clickable:hover{border-color:#455372}.card--clickable:active{transform:translateY(1px)}.card--clickable:focus-visible{outline:2px solid var(--up);outline-offset:2px}.card__spark{display:block;margin:2px 0 4px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b0f17b3;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal__panel{width:100%;max-width:560px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:16px}.modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.modal__title{font-size:20px;font-weight:700;letter-spacing:.02em}.modal__subtitle{font-size:13px;color:var(--muted);margin-top:2px}.modal__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--muted);font-size:24px;line-height:1;padding:0 8px;border-radius:6px;cursor:pointer}.modal__close:hover{color:var(--text)}.modal__spans{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.modal__span{background:var(--bg-card);border:1px solid var(--border);color:var(--muted);border-radius:6px;padding:4px 9px;font-size:12px;cursor:pointer;transition:color .12s ease,background .12s ease}.modal__span:hover{color:var(--text)}.modal__span--active{background:var(--up);color:#0b0f17;border-color:var(--up)}.modal__chart{background:#ffffff05;border-radius:8px;padding:8px}.chart{position:relative;width:100%}.chart svg{display:block;touch-action:none}.chart__grid{stroke:var(--border);stroke-width:1;opacity:.35}.chart__baseline{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 3;opacity:.7}.chart__crosshair{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 2}.chart__vol{opacity:.35}.chart__vol--up{fill:var(--up)}.chart__vol--down{fill:var(--down)}.chart__ytag-bg{fill:var(--bg-card);stroke:var(--border);stroke-width:1}.chart__ytag{fill:var(--text);font-size:10px;font-weight:600;text-anchor:end;dominant-baseline:middle}.chart__ylabel{fill:var(--muted);font-size:10px;text-anchor:end;dominant-baseline:middle}.chart__xlabel{fill:var(--muted);font-size:10px}.chart__tip{position:absolute;top:6px;transform:translate(-50%);pointer-events:none;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:4px 8px;white-space:nowrap;box-shadow:0 2px 8px #0006}.chart__tip-price{font-size:13px;font-weight:600;color:var(--text)}.chart__tip-time,.chart__tip-vol{font-size:11px;color:var(--muted)}.modal__chart-hint{font-size:12px;color:var(--muted);padding:4px 2px 0}.modal__chart-hint--error{color:var(--down)}.modal__retry{margin-left:8px;background:var(--bg-card);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:2px 8px;font-size:12px;cursor:pointer}.modal__retry:hover{border-color:var(--muted)}.modal__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.modal__stat{background:#ffffff05;border-radius:8px;padding:8px 10px}.modal__stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.modal__stat-value{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;margin-top:2px}.modal__stat-value--up{color:var(--up)}.modal__stat-value--down{color:var(--down)}.modal__stat-value--flat{color:var(--flat)}.modal__list{display:flex;flex-direction:column;border-top:1px solid var(--border);padding-top:12px;gap:2px}.modal__list-row{display:grid;grid-template-columns:90px 1fr auto;align-items:baseline;gap:8px;font-size:12px;font-variant-numeric:tabular-nums;padding:3px 4px;border-radius:4px}.modal__list-row:hover{background:#ffffff08}.modal__list-time{color:var(--text)}.modal__list-rel{color:var(--muted)}.modal__list-price{font-weight:600}.modal__empty{font-size:13px;color:var(--muted);padding:8px;text-align:center}.account{position:relative;align-self:center}.account__trigger{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);background:transparent;border:1px solid var(--border);border-radius:999px;padding:4px 10px;cursor:pointer;max-width:200px}.account__trigger:hover{color:var(--text);border-color:var(--muted)}.account__trigger--loading{width:84px;height:28px;opacity:.5}.account__trigger-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account__caret{font-size:9px;opacity:.7}.account__avatar{width:20px;height:20px;border-radius:50%;border:1px solid var(--border);flex-shrink:0}.account__avatar--initial{display:inline-flex;align-items:center;justify-content:center;background:var(--border);color:var(--text);font-size:11px;font-weight:600}.account__menu{position:absolute;top:calc(100% + 6px);right:0;z-index:20;min-width:200px;display:flex;flex-direction:column;gap:6px;padding:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 28px #0006}.account__menu--signin{width:256px}.account__menu-email{font-size:11px;color:var(--muted);padding:2px 6px 6px;border-bottom:1px solid var(--border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account__menu-label{font-size:11px;color:var(--muted);padding:2px 2px 4px}.account__menu-item{display:flex;align-items:center;gap:8px;width:100%;font-size:13px;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:8px;padding:8px 10px;cursor:pointer;text-decoration:none}.account__menu-item:hover{border-color:var(--muted);background:#ffffff08}.account__ms-mark{width:14px;height:14px;flex-shrink:0;background:linear-gradient(#f25022 0,#f25022 0) 0 0 / 6px 6px no-repeat,linear-gradient(#7fba00 0,#7fba00 0) 8px 0 / 6px 6px no-repeat,linear-gradient(#00a4ef 0,#00a4ef 0) 0 8px / 6px 6px no-repeat,linear-gradient(#ffb900 0,#ffb900 0) 8px 8px / 6px 6px no-repeat}.account__google{display:flex;justify-content:center;color-scheme:light}
