:root{--tg-bg: var(--tg-theme-bg-color, #0e1117);--tg-bg-secondary: var(--tg-theme-secondary-bg-color, #171b23);--tg-text: var(--tg-theme-text-color, #e8ecf2);--tg-hint: var(--tg-theme-hint-color, #8b93a3);--tg-link: var(--tg-theme-link-color, #6ab2f2);--tg-button: var(--tg-theme-button-color, #2ea6ff);--tg-button-text: var(--tg-theme-button-text-color, #ffffff);--tg-destructive: var(--tg-theme-destructive-text-color, #ef5b5b);--up: #2fbf71;--down: #ef5b5b;--warn: #e7b84c;--neutral: #8b93a3;--card-radius: 16px;--border: color-mix(in srgb, var(--tg-hint) 18%, transparent)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--tg-bg);color:var(--tg-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased;overscroll-behavior:none}#root{min-height:100vh;padding-bottom:calc(24px + env(safe-area-inset-bottom))}.app-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:color-mix(in srgb,var(--tg-bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.app-title{font-size:17px;font-weight:700;margin:0}.app-subtitle{font-size:12px;color:var(--tg-hint);margin:0}.screen{padding:12px 12px 0;max-width:640px;margin:0 auto}.btn{border:none;border-radius:12px;background:var(--tg-button);color:var(--tg-button-text);font-size:15px;font-weight:600;padding:12px 16px;width:100%;cursor:pointer}.btn:disabled{opacity:.5}.btn-small{width:auto;padding:8px 14px;font-size:13px;border-radius:10px}.btn-ghost{background:transparent;color:var(--tg-link);border:1px solid var(--border)}.btn-danger{background:transparent;color:var(--tg-destructive);border:1px solid var(--border)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;letter-spacing:.4px;padding:3px 8px;border-radius:999px;text-transform:uppercase}.badge-long{background:color-mix(in srgb,var(--up) 18%,transparent);color:var(--up)}.badge-short{background:color-mix(in srgb,var(--down) 18%,transparent);color:var(--down)}.badge-wait{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.badge-neutral{background:color-mix(in srgb,var(--neutral) 18%,transparent);color:var(--neutral)}.badge-plan{background:color-mix(in srgb,var(--tg-link) 16%,transparent);color:var(--tg-link)}.symbol-card{background:var(--tg-bg-secondary);border:1px solid var(--border);border-radius:var(--card-radius);margin-bottom:10px;overflow:hidden}.symbol-row{display:flex;align-items:center;gap:12px;width:100%;padding:14px;background:none;border:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.symbol-row .sym{font-weight:700;font-size:15px}.symbol-row .price{font-size:12px;color:var(--tg-hint)}.symbol-row .grow{flex:1;min-width:0}.symbol-row .score{font-weight:700;font-variant-numeric:tabular-nums}.score-pos{color:var(--up)}.score-neg{color:var(--down)}.score-flat{color:var(--neutral)}.chevron{color:var(--tg-hint);transition:transform .2s ease}.chevron.open{transform:rotate(180deg)}.symbol-detail{padding:0 14px 14px;border-top:1px solid var(--border);display:grid;gap:14px}.detail-section-title{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--tg-hint);margin:12px 0 6px}.tf-bars{display:grid;gap:6px}.tf-bar-row{display:grid;grid-template-columns:34px 1fr 48px;align-items:center;gap:8px}.tf-bar-label{font-size:12px;color:var(--tg-hint);font-weight:600}.tf-bar-track{position:relative;height:8px;border-radius:4px;background:color-mix(in srgb,var(--tg-hint) 14%,transparent);overflow:hidden}.tf-bar-mid{position:absolute;left:50%;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--tg-hint) 40%,transparent)}.tf-bar-fill{position:absolute;top:0;bottom:0;border-radius:4px}.tf-bar-value{font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.indicator-grid{display:grid;grid-template-columns:56px repeat(4,1fr);gap:4px;font-size:12px}.indicator-grid .head{color:var(--tg-hint);font-weight:600;font-size:11px;text-align:center;padding:2px 0}.indicator-grid .rowname{color:var(--tg-hint);font-weight:600;align-self:center}.ind-cell{text-align:center;padding:5px 2px;border-radius:8px;font-variant-numeric:tabular-nums;background:color-mix(in srgb,var(--tg-hint) 8%,transparent)}.ind-up{color:var(--up);background:color-mix(in srgb,var(--up) 12%,transparent)}.ind-down{color:var(--down);background:color-mix(in srgb,var(--down) 12%,transparent)}.ind-flat{color:var(--neutral)}.levels{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.level-item{background:color-mix(in srgb,var(--tg-hint) 8%,transparent);border-radius:10px;padding:8px 10px}.level-item .lbl{font-size:11px;color:var(--tg-hint)}.level-item .val{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.reason-box{font-size:12px;color:var(--tg-hint);background:color-mix(in srgb,var(--warn) 8%,transparent);border:1px solid color-mix(in srgb,var(--warn) 24%,transparent);border-radius:10px;padding:8px 10px}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0000008c;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:640px;background:var(--tg-bg-secondary);border-radius:20px 20px 0 0;padding:8px 16px calc(20px + env(safe-area-inset-bottom));max-height:86vh;overflow-y:auto}.sheet-handle{width:36px;height:4px;border-radius:2px;background:color-mix(in srgb,var(--tg-hint) 40%,transparent);margin:6px auto 12px}.sheet h3{margin:0 0 4px;font-size:17px}.sheet .sheet-sub{color:var(--tg-hint);font-size:13px;margin:0 0 14px}.plan-option{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border);border-radius:14px;padding:12px 14px;margin-bottom:8px;cursor:pointer;background:none;color:inherit;width:100%;font:inherit;text-align:left}.plan-option.selected{border-color:var(--tg-button)}.plan-option .plan-name{font-weight:700}.plan-option .plan-desc{font-size:12px;color:var(--tg-hint)}.plan-option .plan-price{font-weight:700;white-space:nowrap}.search-input,.num-input,.select{width:100%;background:color-mix(in srgb,var(--tg-hint) 10%,transparent);color:var(--tg-text);border:1px solid var(--border);border-radius:12px;padding:10px 12px;font-size:15px;outline:none}.symbol-list{display:grid;gap:4px;margin-top:10px}.symbol-list button{background:none;border:none;color:inherit;font:inherit;text-align:left;padding:10px 8px;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between}.symbol-list button:hover{background:color-mix(in srgb,var(--tg-hint) 10%,transparent)}.alert-side-card{background:var(--tg-bg-secondary);border:1px solid var(--border);border-radius:var(--card-radius);padding:14px;margin-bottom:12px}.alert-side-card h4{margin:0;font-size:15px}.field-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.field-row label{font-size:14px}.field-row .hint{display:block;font-size:11px;color:var(--tg-hint)}.inline-inputs{display:flex;gap:8px}.inline-inputs .select{width:76px;flex:none}.inline-inputs .num-input{flex:1}.switch{position:relative;width:44px;height:26px;flex:none}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:1}.switch .track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:13px;background:color-mix(in srgb,var(--tg-hint) 30%,transparent);transition:background .15s ease}.switch input:checked+.track{background:var(--tg-button)}.switch .thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s ease}.switch input:checked+.track .thumb{transform:translate(18px)}.tf-condition{display:grid;grid-template-columns:64px 70px 1fr 34px;gap:6px;align-items:center;margin-top:8px}.icon-btn{background:none;border:none;color:var(--tg-destructive);font-size:18px;cursor:pointer;padding:4px}.banner{display:flex;gap:10px;align-items:flex-start;background:color-mix(in srgb,var(--warn) 10%,transparent);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent);border-radius:12px;padding:10px 12px;font-size:13px;margin-bottom:12px}.banner.ok{background:color-mix(in srgb,var(--up) 10%,transparent);border-color:color-mix(in srgb,var(--up) 30%,transparent)}.empty-state{text-align:center;color:var(--tg-hint);padding:48px 20px}.spinner{width:22px;height:22px;margin:40px auto;border:2.5px solid color-mix(in srgb,var(--tg-hint) 30%,transparent);border-top-color:var(--tg-button);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.footer-note{text-align:center;font-size:11px;color:var(--tg-hint);padding:16px 0}
