.screener-page{background-color:var(--bg,#0a0e17);min-height:100vh;color:var(--tx-primary,#f0f6fc);font-family:var(--font-ui,system-ui, -apple-system, sans-serif);padding-bottom:60px}.screener-nav{background:var(--surface-1,#111824);border-bottom:1px solid var(--bd-dim,#ffffff14);z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:center;padding:14px 28px;display:flex;position:sticky;top:0}.screener-brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.screener-brand h1{background:linear-gradient(90deg,#38bdf8,#818cf8);-webkit-text-fill-color:#0000;-webkit-background-clip:text;align-items:center;gap:8px;margin:0;font-size:1.25rem;font-weight:700;display:flex}.screener-nav-links{align-items:center;gap:12px;display:flex}.nav-pill-link{color:var(--tx-second,#8b949e);background:var(--surface-2,#161d2a);border:1px solid var(--bd-faint,#ffffff0a);border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.nav-pill-link:hover{color:var(--tx-primary,#f0f6fc);background:var(--surface-3,#1e2636);border-color:var(--bd-dim,#ffffff1a)}.nav-pill-link.active{color:var(--accent,#38bdf8);background:var(--accent-soft,#38bdf81f);border-color:var(--bd-accent,#38bdf873)}.screener-container{max-width:1440px;margin:0 auto;padding:24px 28px}.screener-hero{background:var(--surface-1,#111824);border:1px solid var(--bd-dim,#ffffff14);border-radius:12px;flex-direction:column;gap:20px;margin-bottom:24px;padding:24px;display:flex;box-shadow:0 4px 20px #0003}.screener-hero-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.screener-title-block h2{color:var(--tx-primary,#f0f6fc);margin:0 0 6px;font-size:1.5rem;font-weight:700}.screener-title-block p{color:var(--tx-second,#8b949e);margin:0;font-size:.9rem}.screener-actions-block{align-items:center;gap:12px;display:flex}.btn-scan-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7,#2563eb);border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 22px;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 2px 10px #0284c759}.btn-scan-primary:hover:not(:disabled){background:linear-gradient(135deg,#0369a1,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 14px #0284c773}.btn-scan-primary:disabled{opacity:.6;cursor:not-allowed}.btn-scan-stop{border:1px solid var(--bear-soft,#f851494d);color:var(--bear-light,#ff7a8a);cursor:pointer;background:#f8514926;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-scan-stop:hover{background:#f8514940}.preset-categories-tabs{scrollbar-width:none;border-bottom:1px solid var(--bd-dim,#ffffff14);align-items:center;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.preset-categories-tabs::-webkit-scrollbar{display:none}.category-tab-btn{color:var(--tx-second,#8b949e);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:500;transition:all .2s;display:inline-flex}.category-tab-btn .cat-icon{font-size:.95rem;line-height:1}.category-tab-btn .cat-name{letter-spacing:.2px}.category-tab-btn .cat-count{background:var(--surface-2,#161d2a);color:var(--tx-muted,#6e7681);border-radius:10px;padding:1px 6px;font-size:.7rem;font-weight:600}.category-tab-btn:hover:not(:disabled){color:var(--tx-primary,#f0f6fc)}.category-tab-btn.active{color:var(--accent,#38bdf8);border-bottom-color:var(--accent,#38bdf8);background:#38bdf80d;border-top-left-radius:8px;border-top-right-radius:8px;font-weight:600}.category-tab-btn.active .cat-count{background:var(--accent-soft,#38bdf826);color:var(--accent,#38bdf8)}.category-tab-btn:disabled{opacity:.5;cursor:not-allowed}.presets-row{flex-wrap:wrap;align-items:center;gap:8px;padding-top:4px;display:flex}.preset-btn{background:var(--surface-2,#161d2a);border:1px solid var(--bd-dim,#ffffff14);color:var(--tx-second,#8b949e);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.preset-btn .preset-pill-count{background:var(--surface-3,#1e2636);color:var(--tx-muted,#8b949e);border-radius:8px;padding:1px 5px;font-size:.7rem;font-weight:600}.preset-btn:hover:not(:disabled){color:var(--tx-primary,#f0f6fc);background:var(--surface-3,#1e2636)}.preset-btn.active{background:var(--accent-soft,#38bdf826);border-color:var(--accent,#38bdf8);color:var(--accent,#38bdf8);font-weight:600}.preset-btn.active .preset-pill-count{background:var(--accent-soft,#38bdf840);color:var(--accent,#38bdf8)}.preset-meta-info{background:var(--surface-2,#161d2a99);border:1px solid var(--bd-dim,#ffffff0d);color:var(--tx-second,#8b949e);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:6px 12px;font-size:.8rem;display:flex}.preset-meta-info .preset-desc{flex:1;line-height:1.4}.preset-meta-info .preset-count-badge{background:var(--surface-3,#1e2636);border:1px solid var(--bd-dim,#ffffff14);color:var(--accent,#38bdf8);border-radius:12px;flex-shrink:0;padding:2px 8px;font-size:.75rem;font-weight:600}.custom-input-box{width:100%;margin-top:8px}.custom-input-box input{background:var(--surface-2,#161d2a);border:1px solid var(--bd-dim,#ffffff1f);width:100%;color:var(--tx-primary,#f0f6fc);box-sizing:border-box;border-radius:8px;padding:10px 14px;font-size:.9rem}.custom-input-box input:focus{border-color:var(--accent,#38bdf8);box-shadow:0 0 0 2px var(--accent-soft,#38bdf833);outline:none}.custom-input-box .custom-hint{color:var(--tx-muted,#484f58);margin-top:4px;font-size:.78rem}.scan-progress-bar-container{flex-direction:column;gap:6px;display:flex}.scan-progress-header{color:var(--tx-second,#8b949e);justify-content:space-between;font-size:.82rem;display:flex}.progress-track{background:var(--surface-3,#1e2636);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#38bdf8,#10b981);border-radius:3px;height:100%;transition:width .3s}.screener-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:24px;display:grid}.metric-card{background:var(--surface-1,#111824);border:1px solid var(--bd-dim,#ffffff14);border-radius:10px;flex-direction:column;gap:8px;padding:16px 20px;transition:transform .2s,border-color .2s;display:flex}.metric-card:hover{border-color:var(--bd-soft,#ffffff29);transform:translateY(-2px)}.metric-card.card-buy{border-left:4px solid var(--bull,#10b981)}.metric-card.card-buy .metric-value{color:var(--bull,#10b981)}.metric-card.card-exit{border-left:4px solid var(--bear,#f85149)}.metric-card.card-exit .metric-value{color:var(--bear,#f85149)}.metric-card.card-wait{border-left:4px solid var(--warn,#f59e0b)}.metric-card.card-wait .metric-value{color:var(--warn,#f59e0b)}.metric-card.card-avoid{border-left:4px solid var(--tx-second,#8b949e)}.metric-card.card-avoid .metric-value{color:var(--tx-second,#8b949e)}.metric-card.card-scanned{border-left:4px solid var(--accent,#38bdf8)}.metric-card.card-scanned .metric-value{color:var(--accent,#38bdf8)}.metric-label{text-transform:uppercase;color:var(--tx-second,#8b949e);letter-spacing:.5px;font-size:.8rem;font-weight:600}.metric-value{font-size:1.75rem;font-weight:700;font-family:var(--font-mono,monospace);line-height:1}.metric-sub{color:var(--tx-muted,#484f58);font-size:.75rem}.screener-filter-bar{background:var(--surface-1,#111824);border:1px solid var(--bd-dim,#ffffff14);border-bottom:none;border-radius:10px 10px 0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.filter-tabs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-tab-btn{background:var(--surface-2,#161d2a);border:1px solid var(--bd-dim,#ffffff14);color:var(--tx-second,#8b949e);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:.85rem;font-weight:500;transition:all .2s}.filter-tab-btn:hover{color:var(--tx-primary,#f0f6fc);background:var(--surface-3,#1e2636)}.filter-tab-btn.active{background:var(--surface-3,#1e2636);color:var(--accent,#38bdf8);border-color:var(--accent,#38bdf8);font-weight:600}.search-box{background:var(--surface-2,#161d2a);border:1px solid var(--bd-dim,#ffffff1a);border-radius:6px;align-items:center;gap:8px;min-width:240px;padding:6px 12px;display:flex}.search-box input{color:var(--tx-primary,#f0f6fc);background:0 0;border:none;outline:none;width:100%;font-size:.85rem}.search-box input::placeholder{color:var(--tx-muted,#484f58)}.table-wrapper{background:var(--surface-1,#111824);border:1px solid var(--bd-dim,#ffffff14);border-radius:0 0 10px 10px;overflow-x:auto;box-shadow:0 4px 20px #00000026}.screener-table{border-collapse:collapse;text-align:left;width:100%;font-size:.88rem}.screener-table th{background:var(--surface-2,#161d2a);color:var(--tx-second,#8b949e);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--bd-dim,#ffffff14);white-space:nowrap;padding:12px 16px;font-size:.78rem;font-weight:600}.screener-table td{border-bottom:1px solid var(--bd-faint,#ffffff0a);color:var(--tx-primary,#f0f6fc);vertical-align:middle;padding:14px 16px}.screener-table tr:hover td{background:#ffffff05}.stock-symbol-cell{flex-direction:column;gap:2px;display:flex}.stock-symbol-cell .symbol-name{color:var(--tx-primary,#f0f6fc);font-weight:700;font-family:var(--font-mono,monospace)}.stock-symbol-cell .company-name{color:var(--tx-second,#8b949e);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:.75rem;overflow:hidden}.price-cell{font-family:var(--font-mono,monospace);white-space:nowrap;font-weight:600}.badge-signal{letter-spacing:.5px;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.badge-signal.signal-buy{background:var(--bull-soft,#10b98126);color:var(--bull,#10b981);border:1px solid #10b98159}.badge-signal.signal-exit{background:var(--bear-soft,#f8514926);color:var(--bear,#f85149);border:1px solid #f8514959}.badge-signal.signal-hold{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b59}.badge-signal.signal-no-trade{background:var(--surface-3,#1e2636);color:var(--tx-second,#8b949e);border:1px solid var(--bd-dim,#ffffff14)}.badge-action{text-transform:uppercase;border-radius:4px;margin-top:3px;padding:2px 6px;font-size:.72rem;font-weight:600;display:inline-block}.badge-action.action-enter{color:var(--bull-light,#4de8b8)}.badge-action.action-exit{color:var(--bear-light,#ff7a8a)}.badge-action.action-wait{color:var(--warn,#f59e0b)}.badge-action.action-avoid{color:var(--tx-second,#8b949e)}.badge-regime{letter-spacing:.3px;white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-block}.badge-regime.regime-bull{color:#10b981;background:#10b9811f}.badge-regime.regime-bear{color:#f85149;background:#f851491f}.badge-regime.regime-side{background:var(--surface-3,#1e2636);color:#8b949e}.score-cell{font-family:var(--font-mono,monospace);white-space:nowrap;font-size:.82rem;font-weight:600}.score-cell .bull-score{color:var(--bull,#10b981)}.score-cell .score-slash{color:var(--tx-muted,#484f58);margin:0 2px}.score-cell .bear-score{color:var(--bear,#f85149)}.adx-cell{font-family:var(--font-mono,monospace);align-items:center;gap:6px;font-size:.82rem;display:flex}.adx-cell .adx-strong{color:#38bdf8;font-weight:600}.adx-cell .adx-weak{color:var(--tx-muted,#484f58)}.reason-cell{max-width:280px;color:var(--tx-second,#8b949e);font-size:.8rem;line-height:1.4}.reason-cell.reason-buy{color:var(--bull-light,#4de8b8);font-weight:500}.reason-cell.reason-exit{color:var(--bear-light,#ff7a8a);font-weight:500}.reason-cell.reason-avoid{color:var(--bear,#f85149)}.table-actions-cell{white-space:nowrap;align-items:center;gap:8px;display:flex}.btn-table-action{cursor:pointer;border-radius:5px;align-items:center;gap:4px;padding:5px 10px;font-size:.78rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn-table-action.btn-chart{background:var(--surface-2,#161d2a);border:1px solid var(--bd-soft,#ffffff24);color:var(--tx-primary,#f0f6fc)}.btn-table-action.btn-chart:hover{background:var(--surface-3,#1e2636);border-color:var(--accent,#38bdf8);color:var(--accent,#38bdf8)}.btn-table-action.btn-details{background:var(--accent-soft,#38bdf81f);border:1px solid var(--bd-accent,#38bdf859);color:var(--accent,#38bdf8)}.btn-table-action.btn-details:hover{background:var(--accent-soft,#38bdf838);border-color:var(--accent,#38bdf8)}.table-empty-state{text-align:center;color:var(--tx-second,#8b949e);padding:48px 24px}.table-empty-state .empty-icon{opacity:.6;margin-bottom:12px;font-size:2.5rem}.table-empty-state p{margin:0 0 16px;font-size:.95rem}@media (max-width:900px){.screener-container,.screener-hero{padding:16px}.screener-hero-header{flex-direction:column}.screener-actions-block{justify-content:flex-start;width:100%}}.screener-auth-loading{min-height:50vh;color:var(--tx-second,#8b949e);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:.95rem;display:flex}.screener-auth-loading .signal-spinner{border:3px solid var(--bd-dim,#ffffff1a);border-top-color:var(--accent,#38bdf8);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.screener-lock-wrapper{justify-content:center;align-items:center;min-height:calc(85vh - 70px);padding:24px;display:flex}.lock-card{background:var(--surface-1,#111824);border:1px solid var(--bd-dim,#ffffff1f);text-align:center;border-radius:16px;width:100%;max-width:460px;padding:36px 32px;position:relative;overflow:hidden;box-shadow:0 10px 40px #0006}.lock-card:before{content:"";background:linear-gradient(90deg,#0284c7,#38bdf8,#818cf8);height:3px;position:absolute;top:0;left:0;right:0}.lock-card .lock-icon-circle{background:var(--accent-soft,#38bdf81f);border:1px solid var(--bd-accent,#38bdf859);width:68px;height:68px;color:var(--accent,#38bdf8);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;display:flex;box-shadow:0 0 20px #38bdf833}.lock-card h2{color:var(--tx-primary,#f0f6fc);margin:0 0 10px;font-size:1.35rem;font-weight:700}.lock-card .lock-subtitle{color:var(--tx-second,#8b949e);margin:0 0 24px;font-size:.88rem;line-height:1.5}.lock-form{flex-direction:column;gap:16px;display:flex}.lock-input-group{background:var(--surface-2,#161d2a);border:1px solid var(--bd-dim,#ffffff24);border-radius:10px;align-items:center;padding:4px 12px;transition:all .2s;display:flex}.lock-input-group:focus-within{border-color:var(--accent,#38bdf8);box-shadow:0 0 0 3px var(--accent-soft,#38bdf833)}.lock-input-group .lock-input-icon{color:var(--tx-second,#8b949e);align-items:center;margin-right:8px;display:flex}.lock-input-group input{color:var(--tx-primary,#f0f6fc);letter-spacing:.5px;background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-size:.95rem}.lock-input-group input::placeholder{color:var(--tx-muted,#484f58);letter-spacing:normal}.lock-input-group .btn-toggle-eye{color:var(--tx-second,#8b949e);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:6px;transition:color .15s;display:flex}.lock-input-group .btn-toggle-eye:hover{color:var(--tx-primary,#f0f6fc)}.auth-error-banner{color:var(--bear-light,#ff7a8a);text-align:left;background:#f851491f;border:1px solid #f8514959;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.btn-unlock{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7,#2563eb);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 16px #0284c759}.btn-unlock:hover:not(:disabled){background:linear-gradient(135deg,#0369a1,#1d4ed8);transform:translateY(-1px);box-shadow:0 6px 20px #0284c773}.btn-unlock:disabled{opacity:.5;cursor:not-allowed}.lock-footer-hint{color:var(--tx-muted,#484f58);margin-top:20px;font-size:.78rem}.nav-lock-btn{color:var(--bear-light,#ff7a8a);cursor:pointer;background:#f851491f;border:1px solid #f8514940;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:500;transition:all .15s;display:inline-flex}.nav-lock-btn:hover{background:#f8514938}
