:root{
--bg:#0F172A;--surface:#1E293B;--card:#111827;--border:#334155;--primary:#3B82F6;--primary-hover:#2563EB;--active:#1D4ED8;
--text:#F8FAFC;--muted:#94A3B8;--up:#22C55E;--emerald:#10B981;--success:#16A34A;--down:#EF4444;--danger:#DC2626;
--orange:#F97316;--warning:#F59E0B;--yellow:#EAB308;--purple:#8B5CF6;--wait:#64748B;--shadow:0 20px 60px rgba(2,6,23,.34);
}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);min-height:100vh}a{color:var(--primary);text-decoration:none}button,input,select{font:inherit}.brand{display:flex;align-items:center;gap:11px;color:var(--text);font-weight:800;font-size:21px;letter-spacing:-.5px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,var(--primary),var(--active));box-shadow:0 8px 24px rgba(59,130,246,.28)}
.auth-body{overflow-x:hidden}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(440px,.95fr)}.auth-visual{position:relative;overflow:hidden;padding:42px 6vw;background:radial-gradient(circle at 16% 15%,rgba(59,130,246,.23),transparent 30%),radial-gradient(circle at 86% 78%,rgba(139,92,246,.18),transparent 27%),#0B1222;border-right:1px solid rgba(51,65,85,.75);display:flex;flex-direction:column;justify-content:space-between}.auth-brand{position:relative;z-index:2}.auth-copy{max-width:610px;position:relative;z-index:2;margin:auto 0}.auth-copy h1{font-size:clamp(42px,5vw,72px);line-height:1.02;letter-spacing:-3px;margin:22px 0}.auth-copy p{font-size:18px;line-height:1.7;color:var(--muted);max-width:580px}.visual-stats{display:flex;gap:18px;margin-top:38px;flex-wrap:wrap}.visual-stats div{min-width:130px;padding:16px 18px;border:1px solid rgba(51,65,85,.9);background:rgba(17,24,39,.6);border-radius:16px}.visual-stats strong,.visual-stats span{display:block}.visual-stats strong{font-size:20px}.visual-stats span{font-size:12px;color:var(--muted);margin-top:4px}.visual-grid{position:absolute;inset:0;opacity:.2;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,transparent 4%,black 55%,transparent 100%)}.auth-panel{display:grid;place-items:center;padding:36px;background:var(--bg)}.auth-card{width:min(100%,430px);background:rgba(17,24,39,.96);border:1px solid var(--border);border-radius:24px;padding:34px;box-shadow:var(--shadow)}.auth-heading{margin-bottom:24px}.auth-heading h2{font-size:30px;margin:0 0 8px;letter-spacing:-1px}.auth-heading p{margin:0;color:var(--muted);line-height:1.6}.auth-heading.center{text-align:center}.mobile-brand{display:none;color:var(--primary);font-weight:900;margin-bottom:12px}.form-stack{display:grid;gap:16px}.form-stack label{display:grid;gap:8px;font-size:13px;color:#CBD5E1;font-weight:700}.form-stack input,.search-form input,.inline-form input,.inline-form select{width:100%;border:1px solid var(--border);background:#0B1220;color:var(--text);border-radius:12px;padding:13px 14px;outline:none}.form-stack input:focus,.search-form input:focus,.inline-form input:focus,.inline-form select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.14)}.password-field{display:flex;position:relative}.password-field input{padding-right:62px}.password-field button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--primary);font-size:12px;font-weight:800;cursor:pointer}.form-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.btn{border:0;border-radius:11px;padding:12px 16px;font-weight:800;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-block{width:100%}.btn-primary{background:var(--primary-hover)}.btn-primary:hover{background:var(--active)}.btn-secondary{background:var(--border)}.btn-success{background:var(--success)}.btn-danger{background:var(--danger)}.btn-warning{background:var(--warning);color:#201505}.btn-sm{padding:9px 11px;font-size:12px}.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;margin:22px 0}.divider:before,.divider:after{content:"";height:1px;background:var(--border);flex:1}.auth-switch{text-align:center;color:var(--muted);font-size:13px;margin:22px 0 0}.status-badge{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.status-live{color:#86EFAC;background:#16A34A22}.status-analyzing{color:#93C5FD;background:#3B82F622}.status-offline{color:#FCA5A5;background:#EF444422}.alert{border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin:0 0 16px;display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;cursor:pointer}.alert-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex:0 0 auto}.alert-success{background:#16A34A18}.alert-success .alert-dot{background:var(--success)}.alert-error{background:#EF444418}.alert-error .alert-dot{background:var(--down)}.alert-warning{background:#F59E0B18}.alert-warning .alert-dot{background:var(--warning)}.alert-info{background:#3B82F618}.alert-info .alert-dot{background:var(--primary)}.single-auth{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0,rgba(59,130,246,.18),transparent 35%),var(--bg)}.narrow-card{max-width:470px}.centered-brand{justify-content:center;margin-bottom:28px}.otp-input{text-align:center;font-size:28px!important;letter-spacing:10px;font-weight:900}.dev-box{padding:12px;background:#0B1220;border:1px dashed var(--warning);border-radius:12px;margin-bottom:16px;color:#FDE68A;font-size:12px}.dev-box pre{white-space:pre-wrap;margin:8px 0 0}.app-body{background:var(--bg)}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#0B1220;border-right:1px solid var(--border);padding:24px 15px;display:flex;flex-direction:column;z-index:30}.sidebar .brand{padding:0 11px 22px}.side-nav{display:grid;gap:5px}.side-link{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:11px;color:var(--muted);font-size:13px;font-weight:700}.side-link:hover,.side-link.active{background:var(--surface);color:var(--text)}.side-link.active{box-shadow:inset 3px 0 var(--primary)}.side-icon{width:22px;text-align:center;font-size:16px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border);padding-top:13px;display:grid;gap:5px}.admin-link{color:#C4B5FD}.app-shell{margin-left:250px;min-height:100vh}.topbar{height:88px;border-bottom:1px solid var(--border);background:rgba(15,23,42,.92);padding:0 30px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.topbar h1{font-size:22px;margin:3px 0 0}.eyebrow{font-size:10px;letter-spacing:1.3px;color:var(--muted);font-weight:900;margin:0;text-transform:uppercase}.topbar-actions{display:flex;align-items:center;gap:12px}.credit-pill{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);padding:9px 12px;border-radius:12px}.credit-pill span{font-size:11px;color:var(--muted);font-weight:800}.credit-pill strong{color:#93C5FD}.user-chip{display:flex;align-items:center;gap:10px}.avatar{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;font-weight:900;background:linear-gradient(145deg,var(--purple),var(--primary))}.user-chip strong,.user-chip span{display:block}.user-chip strong{font-size:13px}.user-chip span{font-size:10px;color:var(--muted);margin-top:2px}.mobile-menu{display:none}.icon-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:10px;width:38px;height:38px}.page-content{padding:30px;max-width:1500px;margin:0 auto}.welcome-card{background:linear-gradient(110deg,#111827 0%,#172554 100%);border:1px solid #334155;border-radius:22px;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow);overflow:hidden;position:relative}.welcome-card:after{content:"";position:absolute;width:320px;height:320px;border:60px solid rgba(59,130,246,.08);border-radius:50%;right:-100px;top:-140px}.welcome-card h2{font-size:30px;margin:8px 0}.welcome-card p{margin:0;color:var(--muted)}.plan-orb{width:120px;height:120px;border-radius:50%;border:1px solid rgba(147,197,253,.35);background:rgba(30,64,175,.2);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:2}.plan-orb span{font-size:10px;color:#BFDBFE;font-weight:900;letter-spacing:1px}.plan-orb strong{font-size:31px;margin:3px}.plan-orb small{color:var(--muted)}.upgrade-warning{margin-top:18px;padding:16px 18px;border:1px solid rgba(245,158,11,.38);background:rgba(245,158,11,.10);border-radius:15px;display:flex;justify-content:space-between;align-items:center;gap:18px}.upgrade-warning strong,.upgrade-warning span{display:block}.upgrade-warning span{color:#FDE68A;font-size:13px;margin-top:3px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:30px 0 16px}.section-heading h2{margin:5px 0 0;font-size:23px}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.feature-card{background:var(--card);border:1px solid var(--border);border-radius:17px;padding:20px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;color:var(--text)}.feature-card:hover{border-color:#475569;background:#131D2F}.feature-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--surface);font-size:20px;font-weight:900}.feature-card h3{margin:0 0 6px;font-size:16px}.feature-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.feature-arrow{color:var(--muted);font-size:20px}.tone-blue .feature-icon{color:#93C5FD;background:#3B82F622}.tone-purple .feature-icon{color:#C4B5FD;background:#8B5CF622}.tone-emerald .feature-icon,.tone-green .feature-icon{color:#86EFAC;background:#22C55E22}.tone-amber .feature-icon{color:#FDE68A;background:#F59E0B22}.tone-red .feature-icon{color:#FCA5A5;background:#EF444422}.market-tabs{display:flex;gap:7px;padding:6px;background:#0B1220;border:1px solid var(--border);border-radius:13px;width:max-content;margin-bottom:18px}.market-tab{color:var(--muted);padding:10px 18px;border-radius:9px;font-size:13px;font-weight:800}.market-tab.active{background:var(--primary-hover);color:white}.module-card{background:var(--card);border:1px solid var(--border);border-radius:19px;padding:25px;min-height:520px}.module-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border);padding-bottom:22px}.module-head h2{margin:13px 0 7px}.module-head p{margin:0;color:var(--muted)}.module-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:#8B5CF622;color:#C4B5FD;font-weight:900}.empty-workspace{min-height:380px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.empty-symbol{width:70px;height:70px;border-radius:20px;display:grid;place-items:center;background:var(--surface);color:#93C5FD;font-size:25px;font-weight:900}.empty-workspace h3{margin:18px 0 8px}.empty-workspace p{color:var(--muted);max-width:560px;line-height:1.6}.empty-workspace code{font-size:11px;color:#C4B5FD;background:#8B5CF615;padding:8px 10px;border-radius:8px}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.admin-stats div{background:var(--card);border:1px solid var(--border);border-radius:15px;padding:18px}.admin-stats span,.admin-stats strong{display:block}.admin-stats span{color:var(--muted);font-size:12px}.admin-stats strong{font-size:27px;margin-top:7px}.admin-card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:20px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.admin-toolbar h2{margin:4px 0 0}.search-form{display:flex;gap:8px}.search-form input{min-width:270px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:1100px}th,td{padding:13px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:12px}th{background:#0B1220;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.7px}td>span:not(.status-badge):not(.plan-badge){display:block;color:var(--muted);margin-top:4px}.inline-form{display:flex;gap:7px;align-items:center}.inline-form select{min-width:130px}.credit-input{width:88px!important}.plan-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--surface);font-weight:800}.plan-admin{background:#8B5CF622;color:#C4B5FD}.plan-premium{background:#F59E0B22;color:#FDE68A}.plan-standard{background:#3B82F622;color:#93C5FD}.plan-basic{background:#22C55E22;color:#86EFAC}.empty-table{text-align:center;color:var(--muted);padding:40px}.sidebar-backdrop{display:none}
@media(max-width:1100px){.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-shell{grid-template-columns:.9fr 1.1fr}.auth-copy h1{font-size:46px}.visual-stats{display:none}}
@media(max-width:820px){.auth-shell{display:block}.auth-visual{display:none}.auth-panel{min-height:100vh;padding:20px}.mobile-brand{display:block}.auth-card{padding:26px 22px}.sidebar{transform:translateX(-102%);transition:transform .16s ease}.sidebar.open{transform:translateX(0)}.sidebar-backdrop.show{display:block;position:fixed;inset:0;background:rgba(2,6,23,.7);z-index:25}.app-shell{margin-left:0}.mobile-menu{display:grid;place-items:center}.topbar{padding:0 16px;height:78px}.topbar .eyebrow{display:none}.user-chip div:not(.avatar){display:none}.page-content{padding:18px}.feature-grid{grid-template-columns:1fr}.welcome-card{padding:22px}.plan-orb{width:94px;height:94px;flex:0 0 auto}.plan-orb strong{font-size:24px}.admin-stats{grid-template-columns:1fr}.admin-toolbar{align-items:flex-start;gap:15px;flex-direction:column}.search-form{width:100%}.search-form input{min-width:0}.module-head{flex-direction:column}.module-icon{display:none}}
@media(max-width:520px){.topbar-actions{gap:7px}.credit-pill span{display:none}.credit-pill{padding:8px 10px}.topbar h1{font-size:18px}.welcome-card{align-items:flex-start}.welcome-card h2{font-size:24px}.welcome-card p{font-size:13px;line-height:1.55}.plan-orb{width:80px;height:80px}.plan-orb span,.plan-orb small{display:none}.upgrade-warning{align-items:flex-start;flex-direction:column}.upgrade-warning .btn{width:100%}.feature-card{padding:16px}.market-tabs{width:100%}.market-tab{flex:1;text-align:center}.module-card{padding:18px}.auth-card{border-radius:18px}.single-auth{padding:14px}}

/* Live Signal */
.live-signal-layout{display:grid;grid-template-columns:minmax(320px,.74fr) minmax(500px,1.26fr);gap:18px;align-items:stretch}.live-control-card,.live-result-card{background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 18px 50px rgba(2,6,23,.2)}.live-control-card{padding:24px}.live-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:22px;border-bottom:1px solid var(--border)}.live-control-head h2{font-size:22px;margin:14px 0 7px;letter-spacing:-.5px}.live-control-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.65;max-width:520px}.signal-orb{width:58px;height:58px;flex:0 0 auto;display:grid;place-items:center;border-radius:17px;background:#3B82F61A;border:1px solid rgba(59,130,246,.34);color:#93C5FD;font-weight:900;font-size:25px}.live-analysis-form{display:grid;gap:18px;padding-top:22px}.live-field{display:grid;gap:9px}.live-field>span{color:#CBD5E1;font-size:12px;font-weight:800}.live-field select{width:100%;appearance:none;border:1px solid var(--border);background-color:#0B1220;color:var(--text);border-radius:13px;padding:14px 44px 14px 14px;outline:none;background-image:linear-gradient(45deg,transparent 50%,#94A3B8 50%),linear-gradient(135deg,#94A3B8 50%,transparent 50%);background-position:calc(100% - 19px) calc(50% - 3px),calc(100% - 13px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.live-field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.13)}.live-analyse-btn{width:100%;min-height:50px}.live-result-card{min-height:510px;padding:26px;position:relative;overflow:hidden}.live-result-card:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:rgba(59,130,246,.055);right:-125px;top:-145px;pointer-events:none}.live-empty-result,.live-loading-state{min-height:455px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;position:relative;z-index:1}.live-empty-result[hidden],.live-loading-state[hidden]{display:none}.live-empty-icon{width:76px;height:76px;display:grid;place-items:center;border-radius:24px;background:#3B82F612;border:1px solid rgba(59,130,246,.25);color:#64748B;font-size:34px}.live-loading-state strong{font-size:16px;margin-top:20px}.live-loading-state span{font-size:12px;color:var(--muted);margin-top:7px}.live-spinner{width:54px;height:54px;border-radius:50%;border:4px solid rgba(59,130,246,.16);border-top-color:#3B82F6;animation:live-spin .8s linear infinite;box-shadow:0 0 32px rgba(59,130,246,.13)}@keyframes live-spin{to{transform:rotate(360deg)}}.live-result-content{position:relative;z-index:1}.signal-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:21px;border-bottom:1px solid var(--border)}.signal-result-head h2{font-size:30px;margin:7px 0 5px;letter-spacing:-1px}.signal-market-label{color:var(--muted);font-size:12px}.signal-ready-badge{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;color:#86EFAC;background:#16A34A1C;border:1px solid rgba(34,197,94,.25);font-size:10px;font-weight:900;letter-spacing:.7px}.direction-panel{display:flex;align-items:center;gap:18px;margin-top:22px;padding:21px;border-radius:18px;border:1px solid transparent;overflow:hidden;position:relative}.direction-panel:after{content:"";position:absolute;width:140px;height:140px;border-radius:50%;right:-50px;top:-68px;background:currentColor;opacity:.06}.direction-panel.direction-up{background:linear-gradient(115deg,rgba(34,197,94,.15),rgba(16,185,129,.055));border-color:rgba(34,197,94,.34);color:#86EFAC;box-shadow:inset 0 1px rgba(255,255,255,.025),0 12px 32px rgba(16,185,129,.07)}.direction-panel.direction-down{background:linear-gradient(115deg,rgba(239,68,68,.15),rgba(220,38,38,.055));border-color:rgba(239,68,68,.34);color:#FCA5A5;box-shadow:inset 0 1px rgba(255,255,255,.025),0 12px 32px rgba(239,68,68,.07)}.direction-icon{width:68px;height:68px;display:grid;place-items:center;flex:0 0 auto;border-radius:20px;background:rgba(15,23,42,.48);border:1px solid currentColor;font-size:37px;font-weight:950;line-height:1}.direction-copy{display:grid;gap:3px;position:relative;z-index:1}.direction-copy span{color:#CBD5E1;font-size:10px;font-weight:900;letter-spacing:1px}.direction-copy strong{font-size:34px;line-height:1;letter-spacing:1px}.direction-copy small{font-size:11px;font-weight:900;letter-spacing:.8px;color:currentColor}.strength-card{margin-top:14px;background:#0B1220;border:1px solid var(--border);border-radius:15px;padding:16px}.strength-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.strength-heading span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:900}.strength-heading strong{font-size:15px}.strength-track{height:9px;border-radius:999px;background:#1E293B;overflow:hidden;margin-top:13px}.strength-fill{height:100%;width:0;border-radius:inherit;transition:width .28s ease}.strength-fill-very-weak{background:var(--down)}.strength-fill-weak{background:var(--orange)}.strength-fill-medium{background:var(--yellow)}.strength-fill-strong{background:var(--up)}.strength-fill-very-strong{background:var(--emerald)}.signal-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.signal-metric-grid article{min-height:86px;background:#0B1220;border:1px solid var(--border);border-radius:14px;padding:15px;display:flex;flex-direction:column;justify-content:space-between}.signal-metric-grid article span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:900}.signal-metric-grid article strong{font-size:17px;margin-top:12px;overflow-wrap:anywhere}.strength-very-weak,.trap-high{color:var(--down)}.strength-weak{color:var(--orange)}.strength-medium,.trap-medium{color:var(--yellow)}.strength-strong{color:var(--up)}.strength-very-strong{color:var(--emerald)}.trend-bullish{color:var(--up)}.trend-bearish{color:var(--down)}.trend-sideways{color:var(--wait)}.trend-volatile{color:var(--warning)}.trap-low{color:var(--emerald)}.live-result-actions{display:flex;justify-content:flex-end;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.signal-modal[hidden]{display:none}.signal-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px}.signal-modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.78)}.signal-modal-panel{position:relative;width:min(620px,100%);max-height:min(760px,calc(100vh - 36px));overflow:auto;background:#111827;border:1px solid var(--border);border-radius:21px;box-shadow:0 30px 90px rgba(0,0,0,.48)}.signal-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:21px 22px;border-bottom:1px solid var(--border);position:sticky;top:0;background:#111827;z-index:2}.signal-modal-head h2{font-size:21px;margin:5px 0 0}.signal-modal-close{width:38px;height:38px;border-radius:11px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:25px;line-height:1;cursor:pointer}.signal-modal-body{display:grid;gap:14px;padding:22px}.logic-block{background:#0B1220;border:1px solid var(--border);border-radius:14px;padding:17px}.logic-block h3{font-size:13px;margin:0 0 12px;color:#CBD5E1}.logic-block ul{display:grid;gap:9px;padding-left:19px;margin:0;color:#FDE68A;font-size:13px;line-height:1.55}.logic-block p{margin:0;color:#CBD5E1;font-size:13px;line-height:1.75;white-space:pre-line}.modal-open{overflow:hidden}.signal-notice-panel{width:min(470px,100%)}.signal-notice-panel .signal-modal-body{text-align:center;justify-items:center;padding:28px 24px}.credit-alert-icon,.error-alert-icon{width:58px;height:58px;border-radius:17px;display:grid;place-items:center;font-size:26px;font-weight:950}.credit-alert-icon{background:#F59E0B1C;border:1px solid rgba(245,158,11,.36);color:#FDE68A}.error-alert-icon{background:#EF444418;border:1px solid rgba(239,68,68,.36);color:#FCA5A5}.credit-alert-text{color:#E2E8F0;font-size:14px;line-height:1.75;margin:0;max-width:370px}.signal-notice-panel .btn{min-width:120px}
@media(max-width:1050px){.live-signal-layout{grid-template-columns:1fr}.live-result-card{min-height:440px}.live-empty-result,.live-loading-state{min-height:385px}}
@media(max-width:620px){.live-control-card,.live-result-card{padding:18px;border-radius:17px}.live-control-head{flex-direction:column}.signal-orb{display:none}.signal-result-head{align-items:stretch;flex-direction:column}.signal-ready-badge{width:max-content}.direction-panel{padding:17px;gap:14px}.direction-icon{width:58px;height:58px;border-radius:17px;font-size:31px}.direction-copy strong{font-size:29px}.signal-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.signal-metric-grid article{min-height:83px;padding:13px}.signal-metric-grid article strong{font-size:14px}.live-result-actions .btn{width:100%}.signal-result-head h2{font-size:25px}.signal-modal{padding:10px}.signal-modal-panel{max-height:calc(100vh - 20px);border-radius:17px}}
@media(prefers-reduced-motion:reduce){.live-spinner{animation-duration:1.5s}.strength-fill{transition:none}}

.chart-analyser-layout{max-width:930px;margin:0 auto}.chart-upload-card,.chart-loading-card{background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 18px 50px rgba(2,6,23,.2)}.chart-upload-card{padding:26px}.chart-upload-head{text-align:center;max-width:590px;margin:0 auto}.chart-upload-head h2{font-size:26px;margin:14px 0 8px;letter-spacing:-.7px}.chart-upload-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.chart-dropzone{min-height:330px;margin-top:24px;border:1px dashed #475569;border-radius:18px;background:linear-gradient(145deg,rgba(59,130,246,.075),rgba(15,23,42,.24));display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px;cursor:pointer;outline:none}.chart-dropzone:hover,.chart-dropzone.is-dragging{border-color:var(--primary);background:linear-gradient(145deg,rgba(59,130,246,.14),rgba(15,23,42,.3))}.chart-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.chart-upload-icon{width:78px;height:78px;border-radius:23px;display:grid;place-items:center;background:#3B82F617;border:1px solid rgba(59,130,246,.32);color:#93C5FD;font-size:36px;font-weight:900}.chart-dropzone strong{font-size:18px;margin-top:20px}.chart-dropzone>span:not(.chart-upload-icon){color:#CBD5E1;font-size:13px;margin-top:7px}.chart-dropzone small{color:var(--muted);font-size:11px;margin-top:13px}.chart-analysis-stage[hidden],.chart-loading-card[hidden],.chart-result-card[hidden]{display:none}.chart-loading-card{min-height:520px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:26px}.chart-loading-card strong{font-size:17px;margin-top:20px}.chart-loading-card span{font-size:12px;color:var(--muted);margin-top:7px}.chart-result-card{min-height:0}.direction-panel.direction-wait{background:linear-gradient(115deg,rgba(100,116,139,.17),rgba(51,65,85,.07));border-color:rgba(148,163,184,.3);color:#CBD5E1;box-shadow:inset 0 1px rgba(255,255,255,.025),0 12px 32px rgba(51,65,85,.08)}.chart-result-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
@media(max-width:620px){.chart-upload-card{padding:18px;border-radius:17px}.chart-upload-head h2{font-size:23px}.chart-dropzone{min-height:285px;padding:22px}.chart-upload-icon{width:68px;height:68px;border-radius:20px;font-size:31px}.chart-loading-card{min-height:420px;border-radius:17px}.chart-result-actions{grid-template-columns:1fr}.chart-result-actions .btn{width:100%}}

/* Future Signal */
.future-signal-layout{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:20px;align-items:start}.future-control-card,.future-result-card{background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 18px 50px rgba(2,6,23,.2)}.future-control-card{padding:24px}.future-control-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--border)}.future-control-head h2{font-size:25px;letter-spacing:-.7px;margin:13px 0 7px}.future-control-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.65;max-width:520px}.future-orb{width:58px;height:58px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;font-size:28px;font-weight:900;color:#C4B5FD;background:rgba(139,92,246,.13);border:1px solid rgba(139,92,246,.3)}.future-form{display:grid;gap:17px;margin-top:20px}.future-field{display:grid;gap:8px}.future-field>span{font-size:12px;font-weight:800;color:#CBD5E1}.future-field select,.future-field input{width:100%;border:1px solid var(--border);background:#0B1220;color:var(--text);border-radius:12px;padding:13px 14px;outline:none}.future-field select:focus,.future-field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.14)}.future-field small{font-size:10px;color:var(--muted)}.selected-pair-box{min-height:74px;background:#0B1220;border:1px solid var(--border);border-radius:14px;padding:11px}.selected-pair-empty{height:50px;display:grid;place-items:center;color:#64748B;font-size:12px}.selected-pair-empty[hidden]{display:none}.selected-pair-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:136px;overflow-y:auto;overflow-x:hidden;padding-right:3px}.selected-pair-list::-webkit-scrollbar{width:5px}.selected-pair-list::-webkit-scrollbar-thumb{background:#334155;border-radius:999px}.selected-pair-chip{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:8px 7px 8px 9px;border-radius:10px;background:rgba(59,130,246,.12);border:1px solid rgba(59,130,246,.25);color:#DBEAFE}.selected-pair-chip b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;letter-spacing:.1px}.selected-pair-chip button{width:20px;height:20px;flex:0 0 auto;padding:0;border:0;border-radius:7px;background:rgba(239,68,68,.15);color:#FCA5A5;cursor:pointer;font-size:15px;line-height:1}.future-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.future-filter-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--border);background:rgba(30,41,59,.55);border-radius:14px;padding:14px 15px;cursor:pointer}.future-filter-row>span{display:grid;gap:4px}.future-filter-row strong{font-size:13px}.future-filter-row small{font-size:10px;line-height:1.45;color:var(--muted)}.future-filter-row input{position:absolute;opacity:0;pointer-events:none}.future-filter-row i{width:43px;height:24px;flex:0 0 auto;border-radius:999px;background:#334155;position:relative;border:1px solid #475569}.future-filter-row i:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;left:3px;top:3px;background:#94A3B8}.future-filter-row input:checked+i{background:rgba(37,99,235,.85);border-color:#3B82F6}.future-filter-row input:checked+i:after{left:22px;background:#fff}.future-generate-btn{width:100%;min-height:48px}.future-result-card{min-height:540px;padding:24px}.future-empty-result,.future-loading-state{min-height:490px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.future-empty-result[hidden],.future-loading-state[hidden],.future-result-content[hidden],.future-no-signals[hidden]{display:none}.future-empty-icon{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;font-size:34px;font-weight:900;color:#64748B;background:rgba(51,65,85,.18);border:1px solid rgba(71,85,105,.4)}.future-loading-state strong{font-size:17px;margin-top:20px}.future-loading-state span{font-size:12px;color:var(--muted);margin-top:7px}.future-result-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--border)}.future-result-head h2{font-size:24px;letter-spacing:-.6px;margin:6px 0 0}.future-result-meta{display:grid;justify-items:end;gap:7px}.future-result-meta span{font-size:9px;letter-spacing:1px;font-weight:900;color:#86EFAC;background:rgba(22,163,74,.13);border:1px solid rgba(34,197,94,.22);border-radius:999px;padding:5px 8px}.future-result-meta span.is-off{color:#CBD5E1;background:rgba(100,116,139,.12);border-color:rgba(148,163,184,.2)}.future-result-meta strong{font-size:12px;color:#CBD5E1}.future-signal-list{display:grid;gap:10px;margin-top:18px}.future-signal-item{display:grid;grid-template-columns:42px minmax(90px,.65fr) minmax(120px,1fr) 96px;align-items:center;gap:12px;padding:13px;border:1px solid var(--border);border-radius:14px;background:#0B1220}.future-signal-order{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(51,65,85,.45);color:#94A3B8;font-size:10px;font-weight:900}.future-signal-time,.future-signal-pair{display:grid;gap:4px}.future-signal-time span,.future-signal-pair span{font-size:8px;letter-spacing:1px;font-weight:900;color:#64748B}.future-signal-time strong{font-size:18px}.future-signal-pair strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.future-signal-direction{justify-self:end;min-width:88px;border-radius:11px;padding:8px 10px;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:900}.future-signal-direction b{font-size:18px}.future-signal-direction span{font-size:11px;letter-spacing:.6px}.future-direction-call{border-color:rgba(34,197,94,.22)}.future-direction-call .future-signal-direction{color:#86EFAC;background:rgba(34,197,94,.12)}.future-direction-put{border-color:rgba(239,68,68,.22)}.future-direction-put .future-signal-direction{color:#FCA5A5;background:rgba(239,68,68,.12)}.future-no-signals{min-height:380px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.future-no-signals>div{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:rgba(51,65,85,.28);border:1px solid var(--border);color:#64748B;font-size:24px}.future-no-signals strong{margin-top:15px}.future-no-signals span{margin-top:6px;color:var(--muted);font-size:11px}
@media(max-width:980px){.future-signal-layout{grid-template-columns:1fr}.future-result-card{min-height:430px}.future-empty-result,.future-loading-state{min-height:380px}}
@media(max-width:620px){.future-control-card,.future-result-card{padding:17px;border-radius:17px}.future-control-head h2{font-size:22px}.future-control-head p{font-size:12px}.future-orb{width:49px;height:49px;border-radius:15px;font-size:23px}.future-setting-grid{grid-template-columns:1fr}.future-filter-row{align-items:flex-start}.future-result-head{align-items:flex-start}.future-signal-item{grid-template-columns:34px 74px minmax(0,1fr);gap:9px;padding:11px}.future-signal-order{width:30px;height:30px}.future-signal-time strong{font-size:16px}.future-signal-direction{grid-column:2/4;justify-self:stretch;min-width:0}.future-result-card{min-height:390px}.future-empty-result,.future-loading-state{min-height:340px}}
.future-result-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.future-result-stats span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:rgba(30,41,59,.45);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.55px}.future-result-stats strong{font-size:15px;color:var(--text);letter-spacing:0}.future-copy-area{display:flex;align-items:center;gap:12px;margin-top:18px;padding-top:17px;border-top:1px solid var(--border)}.future-copy-button{min-width:170px}.future-copy-button:disabled{opacity:.5;cursor:not-allowed}.future-copy-area small{color:#86EFAC;font-size:10px;font-weight:700}
@media(max-width:620px){.future-result-stats{grid-template-columns:1fr}.future-copy-area{align-items:stretch;flex-direction:column}.future-copy-button{width:100%;min-width:0}.future-copy-area small{text-align:center}}

/* Chart validation null state */
.direction-panel.direction-null{background:linear-gradient(115deg,rgba(100,116,139,.13),rgba(15,23,42,.45));border-color:rgba(148,163,184,.22);color:#94A3B8;box-shadow:none}.direction-panel.direction-null .direction-icon{background:rgba(100,116,139,.12);border-color:rgba(148,163,184,.2);color:#94A3B8}

/* Signal Checker */
.checker-layout{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:20px;align-items:start}.checker-control-card,.checker-result-card{background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 18px 50px rgba(2,6,23,.2)}.checker-control-card{padding:24px}.checker-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:20px;border-bottom:1px solid var(--border)}.checker-card-head h2{font-size:25px;letter-spacing:-.7px;margin:13px 0 7px}.checker-card-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.65;max-width:520px}.checker-orb{width:58px;height:58px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;font-size:27px;font-weight:900;color:#86EFAC;background:rgba(34,197,94,.11);border:1px solid rgba(34,197,94,.25)}.checker-form{display:grid;gap:17px;margin-top:20px}.checker-field{display:grid;gap:8px}.checker-field>span{font-size:12px;font-weight:800;color:#CBD5E1}.checker-field textarea,.checker-field input{width:100%;border:1px solid var(--border);background:#0B1220;color:var(--text);border-radius:12px;padding:13px 14px;outline:none}.checker-field textarea{resize:vertical;min-height:250px;line-height:1.65;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.checker-field textarea:focus,.checker-field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.14)}.checker-field small{font-size:10px;color:var(--muted)}.checker-field.is-disabled{opacity:.45}.checker-setting-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:13px}.checker-toggle{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--border);background:rgba(30,41,59,.55);border-radius:14px;padding:14px 15px;cursor:pointer}.checker-toggle>span{display:grid;gap:4px}.checker-toggle strong{font-size:13px}.checker-toggle small{font-size:10px;line-height:1.45;color:var(--muted)}.checker-toggle input{position:absolute;opacity:0;pointer-events:none}.checker-toggle i{width:43px;height:24px;flex:0 0 auto;border-radius:999px;background:#334155;position:relative;border:1px solid #475569}.checker-toggle i:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;left:3px;top:3px;background:#94A3B8}.checker-toggle input:checked+i{background:rgba(37,99,235,.85);border-color:#3B82F6}.checker-toggle input:checked+i:after{left:22px;background:#fff}.checker-submit{width:100%;min-height:48px}.checker-result-card{min-height:560px;padding:24px}.checker-empty,.checker-loading{min-height:510px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.checker-empty[hidden],.checker-loading[hidden],.checker-result-content[hidden]{display:none}.checker-empty>span{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;font-size:34px;font-weight:900;color:#64748B;background:rgba(51,65,85,.18);border:1px solid rgba(71,85,105,.4)}.checker-empty strong{margin-top:16px}.checker-empty small,.checker-loading span{margin-top:7px;color:var(--muted);font-size:11px}.checker-loading strong{font-size:17px;margin-top:20px}.checker-result-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--border)}.checker-result-head h2{font-size:24px;letter-spacing:-.6px;margin:6px 0 0}.checker-ready{font-size:9px;letter-spacing:1px;font-weight:900;color:#86EFAC;background:rgba(22,163,74,.13);border:1px solid rgba(34,197,94,.22);border-radius:999px;padding:6px 9px}.checker-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px}.checker-stats span{display:grid;gap:5px;padding:10px;border:1px solid var(--border);border-radius:11px;background:rgba(30,41,59,.45);color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.55px}.checker-stats strong{font-size:17px;color:var(--text);letter-spacing:0}.checker-result-list{display:grid;gap:9px;margin-top:16px;max-height:360px;overflow-y:auto;padding-right:4px}.checker-result-list::-webkit-scrollbar{width:5px}.checker-result-list::-webkit-scrollbar-thumb{background:#334155;border-radius:999px}.checker-result-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:#0B1220}.checker-result-main{min-width:0;display:grid;gap:5px}.checker-result-main strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checker-result-main span{font-size:10px;color:var(--muted);font-weight:700}.checker-result-mark{font-size:20px;white-space:nowrap}.checker-status-win,.checker-status-mtg_win{border-color:rgba(34,197,94,.25)}.checker-status-loss{border-color:rgba(239,68,68,.25)}.checker-status-pending{border-color:rgba(234,179,8,.25)}.checker-status-missing{border-color:rgba(148,163,184,.22)}.checker-actions{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:18px;padding-top:17px;border-top:1px solid var(--border)}
@media(max-width:980px){.checker-layout{grid-template-columns:1fr}.checker-result-card{min-height:430px}.checker-empty,.checker-loading{min-height:380px}}
@media(max-width:620px){.checker-control-card,.checker-result-card{padding:17px;border-radius:17px}.checker-card-head h2{font-size:22px}.checker-card-head p{font-size:12px}.checker-orb{width:49px;height:49px;border-radius:15px;font-size:23px}.checker-setting-grid{grid-template-columns:1fr}.checker-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.checker-actions{grid-template-columns:1fr}.checker-result-card{min-height:390px}.checker-empty,.checker-loading{min-height:340px}.checker-field textarea{min-height:220px}}

/* News Signal */
.news-signal-layout{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:20px;align-items:start}.news-control-card,.news-result-card{background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 18px 50px rgba(2,6,23,.2)}.news-control-card{padding:24px}.news-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:20px;border-bottom:1px solid var(--border)}.news-control-head h2{font-size:26px;letter-spacing:-.8px;margin:13px 0 7px}.news-control-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.65;max-width:520px}.news-orb{width:58px;height:58px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;font-size:22px;font-weight:950;color:#C4B5FD;background:rgba(139,92,246,.12);border:1px solid rgba(139,92,246,.28)}.news-info-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}.news-info-grid article{display:grid;grid-template-columns:74px 1fr;gap:4px 13px;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:#0B1220}.news-info-grid article>span{grid-row:1/3;font-size:9px;font-weight:900;letter-spacing:.8px;color:#64748B;text-transform:uppercase}.news-info-grid strong{font-size:13px}.news-info-grid small{font-size:10px;color:var(--muted)}.news-scan-form{margin-top:18px}.news-scan-button{width:100%;min-height:49px}.news-result-card{min-height:590px;padding:24px}.news-empty-state,.news-loading-state{min-height:540px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.news-empty-state[hidden],.news-loading-state[hidden],.news-result-content[hidden]{display:none}.news-empty-icon{width:76px;height:76px;border-radius:24px;display:grid;place-items:center;color:#64748B;font-size:26px;font-weight:950;background:rgba(51,65,85,.18);border:1px solid rgba(71,85,105,.4)}.news-empty-state strong{margin-top:16px}.news-empty-state span,.news-loading-state span{margin-top:7px;color:var(--muted);font-size:11px}.news-loading-state strong{font-size:17px;margin-top:20px}.news-result-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--border)}.news-result-head h2{font-size:25px;letter-spacing:-.7px;margin:6px 0 0}.news-result-badge{display:grid;justify-items:end;gap:5px}.news-result-badge span{font-size:9px;font-weight:900;letter-spacing:.8px;color:#93C5FD;background:rgba(59,130,246,.12);border:1px solid rgba(59,130,246,.22);border-radius:999px;padding:6px 9px}.news-result-badge strong{font-size:12px;color:#CBD5E1}.news-signal-list{display:grid;gap:12px;margin-top:17px;max-height:510px;overflow-y:auto;padding-right:4px}.news-signal-list::-webkit-scrollbar{width:5px}.news-signal-list::-webkit-scrollbar-thumb{background:#334155;border-radius:999px}.news-signal-item{padding:15px;border:1px solid var(--border);border-radius:15px;background:#0B1220}.news-direction-call{border-color:rgba(34,197,94,.22)}.news-direction-put{border-color:rgba(239,68,68,.22)}.news-signal-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.news-signal-identity{min-width:0;display:grid;gap:5px}.news-signal-identity strong{font-size:18px;letter-spacing:-.3px}.news-signal-identity span{font-size:10px;color:var(--muted);font-weight:700}.news-direction-box{min-width:86px;border-radius:11px;padding:8px 10px;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:900}.news-direction-box b{font-size:18px}.news-direction-box span{font-size:11px;letter-spacing:.7px}.news-direction-call .news-direction-box{color:#86EFAC;background:rgba(34,197,94,.12)}.news-direction-put .news-direction-box{color:#FCA5A5;background:rgba(239,68,68,.12)}.news-strength-row{margin-top:13px}.news-strength-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.news-strength-label{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.news-strength-label.very-strong,.news-strength-label.strong{color:#6EE7B7}.news-strength-label.medium{color:#FDE047}.news-strength-label.weak{color:#FB923C}.news-strength-label.very-weak{color:#FCA5A5}.news-strength-row strong{font-size:11px}.news-strength-bar{height:7px;border-radius:999px;background:#1E293B;overflow:hidden}.news-strength-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3B82F6,#22C55E)}.news-tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.news-tag-row span{font-size:9px;font-weight:900;letter-spacing:.6px;color:#C4B5FD;background:rgba(139,92,246,.11);border:1px solid rgba(139,92,246,.22);border-radius:999px;padding:5px 8px}.news-release-names{margin:11px 0 0;color:#CBD5E1;font-size:11px;line-height:1.55;font-weight:700}.news-signal-logic{margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.65}.news-no-result{min-height:430px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.news-no-result>div{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:rgba(51,65,85,.28);border:1px solid var(--border);color:#64748B;font-size:24px}.news-no-result strong{margin-top:15px}.news-no-result span{margin-top:6px;color:var(--muted);font-size:11px}
@media(max-width:980px){.news-signal-layout{grid-template-columns:1fr}.news-result-card{min-height:440px}.news-empty-state,.news-loading-state{min-height:390px}.news-signal-list{max-height:none}}
@media(max-width:620px){.news-control-card,.news-result-card{padding:17px;border-radius:17px}.news-control-head h2{font-size:22px}.news-control-head p{font-size:12px}.news-orb{width:49px;height:49px;border-radius:15px;font-size:19px}.news-info-grid article{grid-template-columns:64px 1fr;padding:12px}.news-result-head{align-items:flex-start}.news-signal-top{align-items:flex-start}.news-direction-box{min-width:78px}.news-result-card{min-height:390px}.news-empty-state,.news-loading-state{min-height:340px}}

/* Profile popup + per-page tutorial button */
.topbar-title{min-width:0}.topbar-title h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{display:grid;place-items:center;cursor:pointer;text-decoration:none;flex:0 0 auto}.tutorial-button{position:relative;color:#FCA5A5;background:rgba(239,68,68,.09);border-color:rgba(239,68,68,.22)}.tutorial-button:hover{background:rgba(239,68,68,.16);border-color:rgba(239,68,68,.38)}.tutorial-button svg{width:21px;height:21px;fill:#EF4444}.tutorial-button .tutorial-play{fill:#F8FAFC}.user-chip{appearance:none;border:0;background:transparent;color:var(--text);padding:4px 6px 4px 4px;border-radius:13px;cursor:pointer;text-align:left;font:inherit}.user-chip:hover,.user-chip:focus-visible{background:var(--surface);outline:1px solid var(--border)}.user-chip:focus-visible,.tutorial-button:focus-visible,.profile-close-button:focus-visible{box-shadow:0 0 0 3px rgba(59,130,246,.2)}
.profile-modal[hidden]{display:none}.profile-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px}.profile-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(2,6,23,.76);backdrop-filter:blur(6px);cursor:default}.profile-modal-card{position:relative;z-index:1;width:min(100%,470px);max-height:calc(100vh - 36px);overflow:auto;background:#111827;border:1px solid #334155;border-radius:22px;padding:22px;box-shadow:0 28px 85px rgba(0,0,0,.48)}.profile-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:17px;border-bottom:1px solid var(--border)}.profile-modal-head h2{margin:5px 0 0;font-size:24px;letter-spacing:-.6px}.profile-close-button{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--border);background:#0B1220;color:var(--muted);font-size:25px;line-height:1;cursor:pointer}.profile-close-button:hover{color:#fff;border-color:#475569}.profile-summary{display:flex;align-items:center;gap:14px;padding:20px 0 17px}.profile-avatar-large{width:62px;height:62px;flex:0 0 auto;border-radius:19px;display:grid;place-items:center;font-size:24px;font-weight:950;background:linear-gradient(145deg,var(--purple),var(--primary));box-shadow:0 12px 30px rgba(59,130,246,.18)}.profile-summary strong,.profile-summary span{display:block}.profile-summary strong{font-size:19px}.profile-summary span{font-size:12px;color:var(--muted);margin-top:5px;word-break:break-all}.profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-info-grid article{min-width:0;padding:13px 14px;border:1px solid var(--border);border-radius:13px;background:#0B1220}.profile-info-grid article:nth-child(2){grid-column:span 2}.profile-info-grid span,.profile-info-grid strong{display:block}.profile-info-grid span{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:#64748B;font-weight:900}.profile-info-grid strong{font-size:13px;margin-top:5px;overflow:hidden;text-overflow:ellipsis}.profile-help-box{display:flex;align-items:flex-start;gap:12px;margin-top:16px;padding:14px;border:1px solid rgba(59,130,246,.25);border-radius:14px;background:rgba(59,130,246,.08)}.profile-help-icon{width:34px;height:34px;flex:0 0 auto;border-radius:10px;display:grid;place-items:center;color:#BFDBFE;background:rgba(59,130,246,.18);font-weight:950}.profile-help-box strong{font-size:13px}.profile-help-box p{margin:4px 0 0;color:#CBD5E1;font-size:11px;line-height:1.55}.profile-help-box b{color:#93C5FD}.profile-help-button{width:100%;margin-top:14px;min-height:45px}.profile-modal-open{overflow:hidden}.app-toast{position:fixed;left:50%;bottom:26px;z-index:140;max-width:min(90vw,420px);transform:translate(-50%,16px);opacity:0;padding:12px 15px;border:1px solid #475569;border-radius:12px;background:#111827;color:#F8FAFC;box-shadow:0 18px 45px rgba(0,0,0,.38);font-size:12px;font-weight:750;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.app-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:620px){.profile-modal{padding:10px;align-items:end}.profile-modal-card{width:100%;border-radius:20px 20px 14px 14px;padding:18px;max-height:calc(100vh - 20px)}.profile-info-grid{grid-template-columns:1fr}.profile-info-grid article:nth-child(2){grid-column:auto}.profile-summary{padding-top:17px}.tutorial-button{width:36px;height:36px}.tutorial-button svg{width:19px;height:19px}}
@media(max-width:420px){.credit-pill{display:none}.topbar-actions{gap:5px}.topbar{gap:9px}.user-chip{padding:2px}.avatar{width:36px;height:36px}}


/* NovexAI premium navy + purple theme */
:root{
  --bg:#070A18;--surface:#15162E;--card:rgba(18,19,43,.82);--border:rgba(193,185,255,.16);
  --primary:#8B5CF6;--primary-hover:#7C3AED;--active:#6D28D9;--text:#FFFFFF;--muted:#A9A8C3;
  --purple:#A78BFA;--shadow:0 24px 70px rgba(1,2,12,.38);
}
html{background:#070A18}.auth-body,.app-body,body{background:radial-gradient(circle at 8% -10%,rgba(124,58,237,.15),transparent 34%),radial-gradient(circle at 100% 18%,rgba(76,29,149,.13),transparent 28%),#070A18}
a{color:#B9A5FF}.brand-mark{background:linear-gradient(145deg,#A78BFA,#6D28D9);box-shadow:0 10px 30px rgba(124,58,237,.3);font-weight:950}
.auth-visual{background:radial-gradient(circle at 12% 18%,rgba(139,92,246,.28),transparent 32%),radial-gradient(circle at 84% 76%,rgba(67,56,202,.18),transparent 28%),#090B20;border-right-color:rgba(167,139,250,.14)}
.visual-grid{opacity:.13;background-image:linear-gradient(rgba(196,181,253,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(196,181,253,.12) 1px,transparent 1px)}
.auth-card,.module-card,.live-control-card,.live-result-card,.future-control-card,.future-result-card,.checker-control-card,.checker-result-card,.news-control-card,.news-result-card,.money-card,.best-control-card,.best-result-card,.admin-card{background:linear-gradient(145deg,rgba(22,22,50,.94),rgba(11,12,30,.9));border-color:rgba(196,181,253,.16);box-shadow:0 24px 65px rgba(1,2,12,.32);backdrop-filter:blur(18px)}
.auth-tab-card{width:min(100%,510px);padding:30px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin:0 0 22px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.035)}
.auth-tab{min-height:43px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-weight:850;cursor:pointer}.auth-tab.active{background:linear-gradient(135deg,#8B5CF6,#6D28D9);color:#fff;box-shadow:0 8px 24px rgba(109,40,217,.22)}
.auth-tab-panel[hidden]{display:none}.auth-assurance{margin:0;padding:11px 12px;border:1px solid rgba(167,139,250,.2);border-radius:11px;background:rgba(139,92,246,.08);color:#D9D4F4;font-size:11px;line-height:1.55}
.form-stack input,.search-form input,.inline-form input,.inline-form select,.live-field select,.future-field input,.future-field select,.checker-field textarea,.checker-field input{background:rgba(6,8,24,.72);border-color:rgba(196,181,253,.16);color:#fff}
.form-stack input:focus,.search-form input:focus,.inline-form input:focus,.inline-form select:focus,.live-field select:focus,.future-field input:focus,.future-field select:focus,.checker-field textarea:focus,.checker-field input:focus{border-color:#9D7CFF;box-shadow:0 0 0 3px rgba(139,92,246,.15)}
.btn-primary{background:linear-gradient(135deg,#8B5CF6,#6D28D9);box-shadow:0 9px 24px rgba(109,40,217,.18)}.btn-primary:hover{background:linear-gradient(135deg,#9670FF,#7430E8)}
.btn-secondary,.icon-btn{background:rgba(255,255,255,.055);border:1px solid rgba(196,181,253,.15)}
.sidebar{background:rgba(7,8,24,.94);border-right-color:rgba(196,181,253,.13);backdrop-filter:blur(18px)}.side-link:hover,.side-link.active{background:rgba(139,92,246,.11)}.side-link.active{box-shadow:inset 3px 0 #9D7CFF;color:#fff}
.topbar{background:rgba(7,8,24,.82);border-bottom-color:rgba(196,181,253,.13)}.credit-pill{background:rgba(139,92,246,.09);border-color:rgba(167,139,250,.17)}.credit-pill strong{color:#C4B5FD}
.welcome-card{background:linear-gradient(118deg,rgba(35,26,75,.92),rgba(13,15,40,.96));border-color:rgba(196,181,253,.18)}.welcome-card:after{border-color:rgba(167,139,250,.08)}
.feature-card{background:linear-gradient(145deg,rgba(22,22,49,.85),rgba(11,12,28,.86));border-color:rgba(196,181,253,.14)}.feature-card:hover{border-color:rgba(167,139,250,.32);background:rgba(28,25,58,.92)}
.market-tabs{background:rgba(5,7,21,.72);border-color:rgba(196,181,253,.15)}.market-tab.active{background:linear-gradient(135deg,#8B5CF6,#6D28D9)}
.status-analyzing{color:#D8CCFF;background:rgba(139,92,246,.14)}
.signal-orb,.future-orb,.checker-orb,.news-orb{color:#C4B5FD;background:rgba(139,92,246,.1);border-color:rgba(167,139,250,.24)}
.live-result-card:before{background:rgba(139,92,246,.06)}.live-spinner{border-color:rgba(139,92,246,.16);border-top-color:#A78BFA;box-shadow:none}
.signal-modal-panel,.profile-modal-card{background:#11122B;border-color:rgba(196,181,253,.18)}.signal-modal-head{background:#11122B}.logic-block,.strength-card,.signal-metric-grid article,.profile-info-grid article{background:rgba(6,8,24,.6)}
/* Keep semantic trading colors unchanged. */
.direction-panel.direction-up{color:#86EFAC}.direction-panel.direction-down{color:#FCA5A5}.strength-fill-very-weak{background:var(--down)}.strength-fill-weak{background:var(--orange)}.strength-fill-medium{background:var(--yellow)}.strength-fill-strong{background:var(--up)}.strength-fill-very-strong{background:var(--emerald)}
button,a,.feature-card,.side-link,.auth-tab{transition:background-color .09s linear,border-color .09s linear,color .09s linear,opacity .09s linear}.strength-fill{transition:width .12s linear}.app-toast{transition:opacity .1s linear,transform .1s linear}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation-duration:1.2s!important;animation-iteration-count:infinite!important}}
@media(max-width:820px){.auth-tab-card{width:min(100%,560px)}.auth-heading h2{font-size:27px}.auth-panel{background:radial-gradient(circle at 50% 0,rgba(139,92,246,.16),transparent 34%),#070A18}}

/* =========================================================
   NovexAI 2.0 — premium low-motion interface
   ========================================================= */
:root{
  --bg:#050713;--bg-2:#080B1C;--navy:#0B1027;--navy-soft:#101633;
  --surface:rgba(16,20,48,.78);--surface-solid:#10142E;--surface-raised:#151A3D;
  --border:rgba(222,218,255,.13);--border-strong:rgba(222,218,255,.23);
  --primary:#8B5CF6;--primary-2:#6D42D8;--purple:#B8A3FF;
  --highlight:#4FFFD1;--highlight-soft:rgba(79,255,209,.12);
  --text:#FFFFFF;--muted:#A8A8C4;--muted-2:#747793;
  --shadow:0 24px 80px rgba(0,0,0,.38);--shadow-soft:0 14px 38px rgba(0,0,0,.24);
  --radius:20px;--radius-sm:14px;
}
*{box-sizing:border-box}
html{background:var(--bg);color-scheme:dark}
body,.app-body,.auth-body{background:
  radial-gradient(circle at 12% -8%,rgba(112,71,220,.20),transparent 30%),
  radial-gradient(circle at 98% 18%,rgba(79,255,209,.06),transparent 24%),
  linear-gradient(145deg,var(--bg),var(--bg-2) 58%,#060817);color:var(--text)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,black,transparent 72%)}
a{color:inherit}.brand-accent{color:var(--highlight)}
.status-badge i,.topbar-live-dot,.sidebar-engine-status i,.engine-pill i,.hero-kicker i{display:inline-block;width:6px;height:6px;border-radius:99px;background:var(--highlight);box-shadow:0 0 0 4px rgba(79,255,209,.09)}
.btn{border-radius:13px;font-weight:850;letter-spacing:.01em;min-height:47px;padding:0 18px}
.btn-primary{background:linear-gradient(135deg,#9B6CFF 0%,#7750E8 58%,#6442C8 100%);border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 30px rgba(106,66,202,.23)}
.btn-primary:hover{background:linear-gradient(135deg,#A77CFF,#8058EC 60%,#6D48D1);transform:none}
.btn-secondary{background:rgba(255,255,255,.045);border:1px solid var(--border);color:#F5F4FF}.btn-secondary:hover{background:rgba(255,255,255,.075);border-color:var(--border-strong)}
button,a,.feature-card,.side-link,.auth-tab,input,select,textarea{transition:background-color .08s linear,border-color .08s linear,color .08s linear,opacity .08s linear,box-shadow .08s linear}

/* Auth */
.novex-auth-shell{min-height:100vh;grid-template-columns:minmax(500px,1.12fr) minmax(460px,.88fr)}
.premium-auth-visual{position:relative;overflow:hidden;padding:44px clamp(42px,6vw,88px);border-right:1px solid var(--border);background:linear-gradient(145deg,rgba(8,10,29,.96),rgba(10,11,31,.92))}
.auth-brand{position:relative;z-index:3;font-size:19px;letter-spacing:-.3px}.brand-mark{width:39px;height:39px;border-radius:13px;background:linear-gradient(145deg,#A97AFF,#7247D7);box-shadow:0 12px 30px rgba(112,71,215,.28);font-weight:950}.auth-brand .brand-mark:after{content:"";position:absolute;width:8px;height:8px;border-radius:99px;background:var(--highlight);right:-2px;bottom:-2px;border:3px solid #0A0C20}
.premium-auth-copy{position:relative;z-index:2;max-width:680px;margin:auto 0}.premium-auth-copy>.status-badge{display:inline-flex;align-items:center;gap:9px;padding:9px 12px;border-radius:999px;border:1px solid rgba(79,255,209,.20);background:rgba(79,255,209,.07);color:#B8FFE9;font-size:10px;letter-spacing:.11em}
.premium-auth-copy h1{margin:25px 0 15px;font-size:clamp(44px,5.2vw,76px);line-height:.98;letter-spacing:-.058em;font-weight:900}.premium-auth-copy h1 em{font-style:normal;color:transparent;background:linear-gradient(90deg,#C7B7FF 0%,#9B75FF 45%,var(--highlight) 110%);background-clip:text;-webkit-background-clip:text}.premium-auth-copy>p{max-width:610px;margin:0;color:#B4B5CC;font-size:15px;line-height:1.8}
.auth-signal-preview{position:relative;margin:34px 0 26px;padding:20px 21px;border:1px solid rgba(205,197,255,.17);border-radius:20px;background:linear-gradient(145deg,rgba(24,27,62,.80),rgba(11,14,38,.76));box-shadow:0 28px 70px rgba(0,0,0,.30);backdrop-filter:blur(16px)}
.auth-signal-preview:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.055),transparent 26%)}
.signal-preview-top,.signal-preview-main,.signal-preview-meta{display:flex;align-items:center;justify-content:space-between;gap:14px}.signal-preview-top{padding-bottom:16px;border-bottom:1px solid var(--border);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#9597B2}.signal-preview-top span{display:flex;align-items:center;gap:8px}.signal-preview-top i{width:7px;height:7px;border-radius:50%;background:var(--highlight)}.signal-preview-top b{color:var(--highlight);font-size:9px;padding:6px 8px;border-radius:8px;background:var(--highlight-soft)}
.signal-preview-main{padding:20px 0 16px}.signal-preview-main div{display:flex;flex-direction:column;gap:6px}.signal-preview-main small{font-size:8px;color:#777A99;letter-spacing:.13em}.signal-preview-main strong{font-size:17px}.signal-preview-direction{padding:0 24px;border-inline:1px solid var(--border);text-align:center}.signal-preview-direction strong{font-size:24px;color:#91F2B4}.signal-preview-direction strong span{color:var(--highlight)}
.signal-preview-meter{height:5px;border-radius:99px;background:rgba(255,255,255,.055);overflow:hidden}.signal-preview-meter i{display:block;width:84%;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--primary),var(--highlight))}.signal-preview-meta{padding-top:14px;color:#747794;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.auth-benefit-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.auth-benefit-row article{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(255,255,255,.028)}.auth-benefit-row article>b{color:var(--highlight);font-size:9px}.auth-benefit-row span,.auth-benefit-row strong,.auth-benefit-row small{display:block}.auth-benefit-row strong{font-size:11px}.auth-benefit-row small{margin-top:4px;color:#747793;font-size:8px;line-height:1.45}
.auth-glow{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.auth-glow-one{width:330px;height:330px;left:-190px;bottom:-140px;background:radial-gradient(circle,rgba(128,77,240,.23),transparent 68%)}.auth-glow-two{width:240px;height:240px;right:-100px;top:12%;background:radial-gradient(circle,rgba(79,255,209,.08),transparent 68%)}
.premium-auth-panel{display:grid;place-items:center;padding:34px;background:linear-gradient(160deg,rgba(7,9,23,.82),rgba(6,8,21,.96))}.auth-panel-inner{width:min(100%,500px)}.auth-mobile-brand{display:none}.premium-auth-card{width:100%;padding:32px;border-radius:24px;background:linear-gradient(150deg,rgba(20,24,54,.91),rgba(11,14,35,.94));border:1px solid rgba(212,205,255,.16);box-shadow:0 34px 90px rgba(0,0,0,.42);backdrop-filter:blur(20px)}
.auth-kicker{display:inline-block;margin-bottom:12px;color:var(--highlight);font-size:9px;font-weight:900;letter-spacing:.16em}.premium-auth-card .auth-heading h2{font-size:30px;letter-spacing:-.04em}.premium-auth-card .auth-heading p{font-size:12px;color:var(--muted)}
.premium-auth-card .auth-tabs{margin:24px 0 22px;padding:5px;border-radius:14px;background:rgba(3,5,17,.58);border:1px solid var(--border)}.premium-auth-card .auth-tab{min-height:44px;border-radius:10px}.premium-auth-card .auth-tab.active{background:linear-gradient(135deg,rgba(151,103,255,.95),rgba(105,65,205,.95));box-shadow:0 8px 22px rgba(94,57,184,.20)}
.premium-form{gap:15px}.premium-form label>span:first-child{font-size:10px;font-weight:800;color:#C9C8DB;letter-spacing:.02em}.field-shell{display:flex!important;align-items:center;gap:10px;margin-top:7px;padding:0 12px;border:1px solid rgba(215,208,255,.13);border-radius:13px;background:rgba(3,6,20,.58)}.field-shell:focus-within{border-color:rgba(159,119,255,.75);box-shadow:0 0 0 3px rgba(139,92,246,.11)}.field-shell>i{font-style:normal;color:#797A97;font-size:11px}.field-shell input{min-width:0;flex:1;height:49px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.password-field button{position:static!important}.premium-form .form-row small{font-size:9px;color:#71748F}.premium-form .form-row a{font-size:10px;color:#C9B8FF;font-weight:800}.auth-submit{display:flex;align-items:center;justify-content:space-between;margin-top:2px;padding-inline:18px}.auth-submit b{font-size:18px;color:var(--highlight)}.premium-form .auth-assurance{display:flex;gap:9px;align-items:flex-start;background:var(--highlight-soft);border-color:rgba(79,255,209,.17);color:#C8FCEF}.premium-form .auth-assurance i{font-style:normal;color:var(--highlight);font-weight:950}.auth-footnote{margin:15px 0 0;text-align:center;color:#656982;font-size:9px}.visual-grid{opacity:.10}

/* Shell / navigation */
.sidebar{width:252px;padding:20px 15px 15px;background:linear-gradient(180deg,rgba(8,10,28,.97),rgba(7,9,23,.98));border-right:1px solid var(--border);backdrop-filter:blur(18px)}.sidebar-brand-wrap{padding:3px 5px 20px;border-bottom:1px solid var(--border)}.sidebar .brand{font-size:18px}.sidebar .brand-mark{width:36px;height:36px;border-radius:12px}.sidebar-engine-status{display:flex;align-items:center;gap:8px;margin:13px 2px 0;color:#797C98;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.nav-label{margin:19px 10px 8px;color:#575B78;font-size:8px;font-weight:900;letter-spacing:.15em}.side-nav{gap:4px}.side-link{position:relative;min-height:43px;padding:0 10px;border-radius:11px;color:#9C9EB8;font-size:11px;font-weight:700;border:1px solid transparent}.side-link .side-icon{width:29px;height:29px;border-radius:9px;background:rgba(255,255,255,.035);display:grid;place-items:center;color:#AFA3D9}.side-link>b{margin-left:auto;color:#545873}.side-link:hover{background:rgba(255,255,255,.035);color:#F7F6FF}.side-link.active{background:linear-gradient(90deg,rgba(139,92,246,.17),rgba(79,255,209,.035));border-color:rgba(168,139,255,.18);box-shadow:none;color:#fff}.side-link.active:before{content:"";position:absolute;left:-16px;width:3px;height:22px;border-radius:0 4px 4px 0;background:var(--highlight);box-shadow:0 0 16px rgba(79,255,209,.45)}.side-link.active .side-icon{background:rgba(139,92,246,.18);color:#D9CDFF}.logout-link{color:#C795A1}.app-shell{margin-left:252px}.topbar{height:82px;padding:0 28px;background:rgba(6,8,21,.72);border-bottom:1px solid var(--border);backdrop-filter:blur(18px)}.topbar-title p{display:flex;align-items:center;gap:8px;color:#757994}.topbar-title h1{font-size:21px;letter-spacing:-.035em}.topbar-actions{gap:9px}.engine-pill,.credit-pill{height:38px;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.035);font-size:9px}.engine-pill span,.credit-pill span{color:#777A96}.engine-pill strong{color:#BFFFEF}.engine-pill i{width:5px;height:5px}.credit-pill strong{font-size:13px;color:#D7CCFF}.tutorial-button{width:38px;height:38px;border-radius:12px;color:#C7B7FF;background:rgba(139,92,246,.08);border-color:rgba(168,139,255,.15);font-weight:900}.user-chip{display:flex;align-items:center;gap:9px;padding:4px 8px 4px 4px}.user-chip>b{color:#666A84}.avatar{background:linear-gradient(145deg,#9870EF,#6545BF);box-shadow:none;border:1px solid rgba(255,255,255,.12)}.page-content{padding:28px;max-width:1540px;margin:0 auto}

/* Dashboard */
.upgrade-warning{border-radius:15px;border:1px solid rgba(244,211,94,.22);background:linear-gradient(90deg,rgba(244,211,94,.09),rgba(139,92,246,.045));box-shadow:none}.upgrade-warning a{padding:9px 13px;border-radius:10px;background:rgba(244,211,94,.12);color:#FFE991;font-size:10px;font-weight:900;text-decoration:none}
.command-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);gap:26px;padding:clamp(30px,4vw,52px);border:1px solid rgba(202,194,255,.17);border-radius:26px;background:linear-gradient(125deg,rgba(25,23,62,.96),rgba(11,14,37,.96) 62%,rgba(9,21,38,.94));box-shadow:var(--shadow)}.command-hero:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;left:-210px;top:-250px;background:radial-gradient(circle,rgba(144,92,255,.24),transparent 68%)}.command-hero:after{content:"";position:absolute;width:270px;height:270px;border-radius:50%;right:-120px;bottom:-150px;background:radial-gradient(circle,rgba(79,255,209,.11),transparent 68%)}.command-hero-copy,.command-terminal{position:relative;z-index:1}.hero-kicker{display:flex;align-items:center;gap:9px;color:#A5A7BF;font-size:9px;font-weight:900;letter-spacing:.14em}.command-hero h2{margin:17px 0 14px;font-size:clamp(36px,4vw,59px);line-height:1.02;letter-spacing:-.055em}.command-hero h2 em{font-style:normal;color:transparent;background:linear-gradient(90deg,#C7B7FF,#9A72F2 53%,var(--highlight));background-clip:text;-webkit-background-clip:text}.command-hero p{max-width:630px;margin:0;color:#AEB0C6;font-size:13px;line-height:1.75}.hero-actions{display:flex;gap:10px;margin-top:27px}.hero-actions .btn{display:inline-flex;align-items:center;gap:20px;text-decoration:none}.hero-actions .btn b{color:var(--highlight);font-size:17px}
.command-terminal{align-self:center;padding:20px;border:1px solid rgba(211,205,255,.17);border-radius:20px;background:linear-gradient(155deg,rgba(18,23,54,.88),rgba(7,10,27,.88));box-shadow:0 24px 55px rgba(0,0,0,.26)}.terminal-head{display:flex;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--border);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.terminal-head span{display:flex;align-items:center;gap:8px;color:#80839D}.terminal-head i{width:6px;height:6px;border-radius:50%;background:var(--highlight)}.terminal-head b{color:var(--highlight)}.terminal-pair{display:flex;align-items:center;justify-content:space-between;padding:18px 0 10px}.terminal-pair span{font-size:24px;font-weight:900}.terminal-pair small{color:#797C99;font-size:8px}.terminal-direction{display:flex;align-items:flex-end;justify-content:space-between;padding:13px 15px;border:1px solid rgba(134,239,172,.15);border-radius:14px;background:rgba(34,197,94,.06)}.terminal-direction span{color:#7D809B;font-size:9px}.terminal-direction strong{font-size:23px;color:#8BF0B1}.terminal-direction strong b{color:var(--highlight)}.terminal-strength{display:flex;align-items:center;gap:12px;padding:16px 0}.terminal-strength>span{flex:1;height:5px;border-radius:99px;background:rgba(255,255,255,.055);overflow:hidden}.terminal-strength i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8B5CF6,var(--highlight))}.terminal-strength>b{font-size:9px;color:#9295AF}.terminal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.terminal-grid span{padding:9px;border-radius:10px;background:rgba(255,255,255,.032);border:1px solid rgba(255,255,255,.055)}.terminal-grid small,.terminal-grid strong{display:block}.terminal-grid small{font-size:7px;color:#6E728D;text-transform:uppercase}.terminal-grid strong{margin-top:4px;font-size:10px}
.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0 30px}.metric-strip article{display:flex;align-items:center;gap:12px;min-height:76px;padding:14px 16px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,rgba(18,22,51,.72),rgba(10,13,33,.75));box-shadow:var(--shadow-soft)}.metric-icon{width:37px;height:37px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:rgba(139,92,246,.11);color:#C8B7FF;border:1px solid rgba(167,139,250,.12)}.metric-strip small,.metric-strip strong{display:block}.metric-strip small{font-size:7px;color:#6F738E;letter-spacing:.12em}.metric-strip strong{margin-top:6px;font-size:12px}.metric-online{color:var(--highlight)}
.premium-section-heading{align-items:flex-end;margin-bottom:15px}.premium-section-heading h2{font-size:25px;letter-spacing:-.04em}.premium-section-heading p{margin:7px 0 0;color:#777B96;font-size:10px}.premium-section-heading>.status-badge{display:flex;align-items:center;gap:8px}.premium-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.premium-feature-card{min-height:205px;display:flex;flex-direction:column;justify-content:space-between;padding:18px;border-radius:18px;background:linear-gradient(150deg,rgba(20,24,55,.82),rgba(10,13,32,.84));border:1px solid var(--border);box-shadow:0 16px 40px rgba(0,0,0,.20)}.premium-feature-card:hover{transform:none;border-color:rgba(167,139,250,.31);background:linear-gradient(150deg,rgba(25,29,65,.88),rgba(11,15,36,.90))}.feature-card-top{display:flex;align-items:center;justify-content:space-between}.feature-card-top>span{padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.04);color:#747893;font-size:7px;text-transform:uppercase;letter-spacing:.08em}.premium-feature-card .feature-icon{width:42px;height:42px;border-radius:13px;background:rgba(139,92,246,.11);border:1px solid rgba(167,139,250,.13);color:#C8B7FF;font-size:17px}.premium-feature-card h3{margin:20px 0 7px;font-size:16px}.premium-feature-card p{font-size:10px;line-height:1.65;color:#8588A3}.feature-card-foot{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid rgba(255,255,255,.06)}.feature-card-foot small{font-size:7px;color:#696D89;letter-spacing:.12em}.feature-card-foot b{color:var(--highlight);font-size:15px}.tone-cyan .feature-icon,.tone-lime .feature-icon{color:var(--highlight);background:var(--highlight-soft);border-color:rgba(79,255,209,.15)}.tone-amber .feature-icon{color:#FFE087;background:rgba(244,211,94,.08)}.tone-green .feature-icon{color:#8EF0B3;background:rgba(34,197,94,.08)}.tone-red .feature-icon{color:#FF9AA9;background:rgba(244,63,94,.08)}.tone-pink .feature-icon{color:#F5A9FF;background:rgba(217,70,239,.08)}

/* Shared feature pages */
.module-card,.live-control-card,.live-result-card,.future-control-card,.future-result-card,.checker-control-card,.checker-result-card,.news-control-card,.news-result-card,.money-card,.best-control-card,.best-result-card,.bp-control-card,.bp-result-card,.chart-upload-card,.chart-loading-card,.admin-card{border-radius:20px!important;background:linear-gradient(150deg,rgba(18,22,51,.84),rgba(9,12,31,.88))!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-soft)!important;backdrop-filter:blur(16px)}
.live-control-head,.future-control-head,.checker-card-head,.news-control-head,.bp-control-head{border-bottom-color:rgba(255,255,255,.065)!important}.live-control-head h2,.future-control-head h2,.checker-card-head h2,.news-control-head h2,.bp-control-head h2,.chart-upload-head h2{letter-spacing:-.035em}.signal-orb,.future-orb,.checker-orb,.news-orb,.bp-orb{background:linear-gradient(145deg,rgba(139,92,246,.18),rgba(79,255,209,.06))!important;border:1px solid rgba(184,163,255,.17)!important;color:#C8B8FF!important;box-shadow:none!important}.live-field select,.future-field input,.future-field select,.checker-field textarea,.checker-field input,.form-stack input,.search-form input,.inline-form input,.inline-form select{border-radius:12px!important;background:rgba(3,6,19,.62)!important;border-color:rgba(218,211,255,.13)!important}.live-field select:focus,.future-field input:focus,.future-field select:focus,.checker-field textarea:focus,.checker-field input:focus{border-color:rgba(159,119,255,.72)!important;box-shadow:0 0 0 3px rgba(139,92,246,.10)!important}.market-tabs{padding:5px!important;border-radius:14px!important;background:rgba(3,6,18,.55)!important}.market-tab{border-radius:10px!important}.market-tab.active{background:linear-gradient(135deg,#986BFA,#7049D5)!important}.signal-ready-badge,.checker-ready{color:var(--highlight)!important;background:var(--highlight-soft)!important;border-color:rgba(79,255,209,.18)!important}.direction-panel{border-radius:17px!important}.strength-card,.signal-metric-grid article,.logic-block,.profile-info-grid article,.news-info-grid article,.bp-info-grid article{background:rgba(3,6,19,.45)!important;border-color:rgba(255,255,255,.065)!important}.strength-track,.news-strength-bar,.bp-score-bar{background:rgba(255,255,255,.055)!important}.live-empty-icon,.future-empty-icon,.news-empty-icon,.checker-empty>span,.bp-empty>div{color:#BBA8FF!important;background:rgba(139,92,246,.09)!important;border-color:rgba(167,139,250,.14)!important}.chart-dropzone{border-radius:18px!important;background:linear-gradient(145deg,rgba(139,92,246,.055),rgba(79,255,209,.025))!important;border-color:rgba(184,163,255,.18)!important}.chart-dropzone:hover{border-color:rgba(79,255,209,.30)!important}.future-filter-row,.checker-toggle{border-color:rgba(255,255,255,.075)!important;background:rgba(255,255,255,.026)!important}.selected-pair-box{background:rgba(3,6,19,.45)!important;border-color:rgba(255,255,255,.07)!important}.selected-pair-list button,.future-pair-chip{background:rgba(139,92,246,.11)!important;border-color:rgba(167,139,250,.16)!important}.news-signal-item,.bp-ranking-item,.checker-result-item{border-radius:15px!important;background:rgba(5,8,23,.50)!important;border-color:rgba(255,255,255,.07)!important}.bp-filter-tabs{background:rgba(3,6,19,.55)!important}.bp-filter-tabs button.active{background:rgba(139,92,246,.18)!important;color:#fff!important}.signal-modal-backdrop,.profile-modal-backdrop{background:rgba(2,3,12,.82)!important;backdrop-filter:blur(7px)}.signal-modal-panel,.profile-modal-card{border-radius:22px!important;background:linear-gradient(150deg,#171A3B,#0C1028)!important;border-color:rgba(211,204,255,.17)!important;box-shadow:0 35px 100px rgba(0,0,0,.50)!important}.profile-avatar-large{background:linear-gradient(145deg,#9670ED,#6847C3)!important}.profile-help-box{background:var(--highlight-soft)!important;border-color:rgba(79,255,209,.16)!important}.profile-help-box b{color:var(--highlight)!important}.app-toast{background:#151936!important;border-color:var(--border-strong)!important}

/* semantic trading colours stay unchanged */
.direction-panel.direction-up,.direction-up,[data-direction="UP"]{color:#86EFAC}.direction-panel.direction-down,.direction-down,[data-direction="DOWN"]{color:#FCA5A5}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:1180px){.premium-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.command-hero{grid-template-columns:1fr .8fr}.engine-pill{display:none}}
@media(max-width:900px){.novex-auth-shell{display:block}.premium-auth-visual{display:none}.premium-auth-panel{min-height:100vh;padding:22px}.auth-mobile-brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:17px}.auth-mobile-brand strong{font-size:18px}.app-shell{margin-left:0}.sidebar{width:268px}.topbar{height:74px;padding:0 16px}.page-content{padding:18px}.command-hero{grid-template-columns:1fr}.command-terminal{display:none}.metric-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.premium-auth-card{padding:23px 18px;border-radius:20px}.premium-auth-panel{padding:15px}.premium-auth-card .auth-heading h2{font-size:26px}.auth-footnote{padding-inline:12px}.topbar-actions .engine-pill,.topbar-actions .tutorial-button{display:none}.user-chip>div:nth-child(2),.user-chip>b{display:none}.topbar-title h1{font-size:18px}.command-hero{padding:25px 20px;border-radius:20px}.command-hero h2{font-size:37px}.hero-actions{flex-direction:column}.hero-actions .btn{justify-content:center}.metric-strip{grid-template-columns:1fr 1fr;gap:8px}.metric-strip article{min-height:68px;padding:11px}.metric-icon{display:none}.premium-section-heading{align-items:flex-start}.premium-section-heading>.status-badge{display:none}.premium-feature-grid{grid-template-columns:1fr}.premium-feature-card{min-height:176px}.page-content{padding:13px}.profile-modal-card{border-radius:20px 20px 12px 12px!important}}
.brand-mark{position:relative}
.premium-single-auth{position:relative;min-height:100vh;padding:24px;background:radial-gradient(circle at 50% -10%,rgba(139,92,246,.22),transparent 35%),radial-gradient(circle at 92% 90%,rgba(79,255,209,.07),transparent 27%),#050713}
.premium-single-card{width:min(100%,480px);padding:30px;border-radius:23px;background:linear-gradient(150deg,rgba(20,24,54,.92),rgba(10,13,33,.95));border:1px solid rgba(212,205,255,.16);box-shadow:0 34px 90px rgba(0,0,0,.43)}
.premium-single-card .centered-brand{font-size:18px}.premium-single-card .auth-heading h2{font-size:28px;letter-spacing:-.04em}.premium-single-card .auth-heading p{font-size:11px;line-height:1.65}.premium-single-card .form-stack input{min-height:49px;border-radius:12px;background:rgba(3,6,19,.60)!important}.premium-single-card .otp-input{font-size:29px!important;color:var(--highlight)}.premium-single-card .auth-switch a{color:#C9B8FF;font-weight:800}


/* =========================================================
   NovexAI 3.0 — bold visual refresh (same layout, low-motion)
   ========================================================= */
:root{
  --bg:#04050D;--bg-2:#070912;
  --primary:#7C5CFF;--primary-2:#5B8CFF;--active:#6A46E8;
  --highlight:#3DFFC4;--highlight-soft:rgba(61,255,196,.13);
  --card:rgba(15,16,34,.86);--surface:rgba(20,22,46,.85);
  --border:rgba(150,140,255,.22);--border-strong:rgba(150,140,255,.38);
  --text:#F7F7FC;--muted:#9496B8;
  --grad-brand:linear-gradient(135deg,#7C5CFF 0%,#5B8CFF 55%,#3DFFC4 130%);
  --shadow:0 26px 70px rgba(3,2,20,.55);--shadow-soft:0 16px 42px rgba(3,2,20,.4);
}

html,body,.app-body,.auth-body{background:
  radial-gradient(720px 480px at 8% -10%,rgba(124,92,255,.24),transparent 60%),
  radial-gradient(620px 420px at 100% 8%,rgba(61,255,196,.10),transparent 55%),
  radial-gradient(900px 600px at 50% 115%,rgba(91,140,255,.10),transparent 60%),
  var(--bg)!important}

body{font-family:'Plus Jakarta Sans',Inter,ui-sans-serif,system-ui,sans-serif}
.brand,h1,h2,h3,.command-hero h2,.future-control-head h2,.live-control-head h2,.checker-card-head h2,.chart-upload-head h2,.news-control-head h2,.bp-control-head h2{font-family:'Sora','Plus Jakarta Sans',sans-serif}

/* brand mark: gradient ring + glow */
.brand-mark{background:var(--grad-brand)!important;box-shadow:0 0 0 1px rgba(255,255,255,.16) inset,0 10px 28px rgba(124,92,255,.45)!important;border-radius:13px!important}

/* sidebar active nav — vivid gradient pill instead of faint tint */
.side-link.active{background:var(--grad-brand)!important;color:#fff!important;box-shadow:0 8px 22px rgba(124,92,255,.35)!important;border-color:transparent!important}
.side-link.active:before{display:none}
.side-link.active .side-icon{background:rgba(255,255,255,.22)!important;color:#fff!important}
.side-link:hover{background:rgba(150,140,255,.10)!important;color:#fff!important}
.sidebar{background:linear-gradient(185deg,rgba(9,10,26,.97),rgba(5,6,16,.99))!important;border-right-color:var(--border)!important}

/* topbar */
.topbar{background:rgba(6,7,18,.78)!important;border-bottom-color:var(--border)!important}
.credit-pill{background:var(--highlight-soft)!important;border-color:rgba(61,255,196,.28)!important}
.credit-pill strong{color:var(--highlight)!important}
.engine-pill strong{color:var(--highlight)!important}
.avatar{background:var(--grad-brand)!important;box-shadow:0 8px 20px rgba(124,92,255,.4)!important}

/* buttons — bold pill, brand gradient, glow on hover */
.btn{border-radius:999px!important;font-weight:800!important;letter-spacing:.01em}
.btn-primary{background:var(--grad-brand)!important;border:none!important;box-shadow:0 10px 26px rgba(124,92,255,.32)!important}
.btn-primary:hover{box-shadow:0 14px 38px rgba(124,92,255,.5)!important;filter:brightness(1.08)}
.btn-primary:disabled{filter:grayscale(.4)}
.btn-secondary{background:rgba(150,140,255,.10)!important;border:1px solid var(--border)!important;color:#EDEBFF!important;border-radius:999px!important}
.btn-secondary:hover{background:rgba(150,140,255,.18)!important;border-color:var(--border-strong)!important}
.btn{transition:transform .1s ease,box-shadow .12s ease,filter .12s ease,background-color .1s ease,border-color .1s ease}
.btn:active:not(:disabled){transform:translateY(1px) scale(.99)}

/* cards — bigger radius, brand-tinted border glow, visible gradient */
.module-card,.live-control-card,.live-result-card,.future-control-card,.future-result-card,.checker-control-card,.checker-result-card,.news-control-card,.news-result-card,.money-card,.best-control-card,.best-result-card,.bp-control-card,.bp-result-card,.chart-upload-card,.chart-loading-card,.admin-card,.auth-card{
  border-radius:24px!important;
  background:linear-gradient(160deg,rgba(23,20,48,.92) 0%,rgba(10,10,24,.94) 100%)!important;
  border:1px solid var(--border)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.05) inset,0 22px 60px rgba(3,2,20,.5)!important;
  backdrop-filter:blur(20px);
  position:relative;isolation:isolate
}
.module-card:before,.live-control-card:before,.future-control-card:before,.checker-control-card:before,.news-control-card:before,.best-control-card:before,.bp-control-card:before,.chart-upload-card:before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:24px 24px 0 0;background:var(--grad-brand);opacity:.9;z-index:1
}

/* icon orbs — glowing gradient */
.signal-orb,.future-orb,.checker-orb,.news-orb,.bp-orb,.module-icon,.metric-icon{
  background:linear-gradient(150deg,rgba(124,92,255,.28),rgba(61,255,196,.14))!important;
  border:1px solid rgba(150,140,255,.35)!important;color:#E3DEFF!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.05) inset,0 8px 20px rgba(124,92,255,.18)!important
}

/* status / ready badges */
.status-live,.signal-ready-badge,.checker-ready{color:#0B1C16!important;background:var(--highlight)!important;border-color:transparent!important;box-shadow:0 6px 18px rgba(61,255,196,.28)!important;font-weight:900!important}
.status-analyzing{color:#fff!important;background:var(--grad-brand)!important}

/* market tabs */
.market-tabs{background:rgba(255,255,255,.04)!important;border-color:var(--border)!important;border-radius:16px!important}
.market-tab.active{background:var(--grad-brand)!important;color:#fff!important;box-shadow:0 6px 18px rgba(124,92,255,.35)!important}

/* inputs / selects */
.live-field select,.future-field input,.future-field select,.checker-field textarea,.checker-field input,.form-stack input,.search-form input,.inline-form input,.inline-form select{
  border-radius:14px!important;background:rgba(255,255,255,.035)!important;border:1px solid var(--border)!important
}
.live-field select:focus,.future-field input:focus,.future-field select:focus,.checker-field textarea:focus,.checker-field input:focus,.form-stack input:focus{
  border-color:var(--primary-2)!important;box-shadow:0 0 0 4px rgba(91,140,255,.16)!important
}

/* direction panel — bolder gradient ring + bigger icon */
.direction-panel{border-radius:20px!important;border-width:1px!important}
.direction-icon{border-radius:16px!important;box-shadow:0 8px 22px rgba(0,0,0,.35)}
.direction-panel.direction-up{background:linear-gradient(120deg,rgba(61,255,196,.20),rgba(34,197,94,.05))!important}
.direction-panel.direction-down{background:linear-gradient(120deg,rgba(239,68,68,.20),rgba(220,38,38,.05))!important}

/* strength bar — thicker, glowing gradient, rounded */
.strength-track{height:11px!important;background:rgba(255,255,255,.06)!important;box-shadow:inset 0 1px 3px rgba(0,0,0,.4)}
.strength-fill{border-radius:999px;box-shadow:0 0 14px currentColor}
.strength-fill-very-weak{background:linear-gradient(90deg,#DC2626,#F87171);color:#EF4444}
.strength-fill-weak{background:linear-gradient(90deg,#EA580C,#FB923C);color:#F97316}
.strength-fill-medium{background:linear-gradient(90deg,#CA8A04,#FACC15);color:#EAB308}
.strength-fill-strong{background:linear-gradient(90deg,#16A34A,#4ADE80);color:#22C55E}
.strength-fill-very-strong{background:linear-gradient(90deg,#059669,var(--highlight));color:#10B981}

/* metric grid, list rows — accent left border, hover lift */
.signal-metric-grid article,.future-signal-item,.checker-result-item,.news-signal-item,.bp-ranking-item,.metric-strip article,.terminal-grid span{
  background:rgba(255,255,255,.03)!important;border:1px solid var(--border)!important;border-radius:16px!important;
  transition:border-color .12s ease,transform .12s ease,background-color .12s ease
}
.signal-metric-grid article:hover,.future-signal-item:hover,.checker-result-item:hover,.news-signal-item:hover,.bp-ranking-item:hover{
  border-color:var(--border-strong)!important;background:rgba(255,255,255,.05)!important;transform:translateY(-2px)
}

/* selected pair chips */
.selected-pair-box{background:rgba(255,255,255,.03)!important;border:1px solid var(--border)!important;border-radius:16px!important}
.selected-pair-chip{background:rgba(124,92,255,.14)!important;border:1px solid rgba(150,140,255,.35)!important;border-radius:999px!important;transition:border-color .1s ease,background-color .1s ease}
.selected-pair-chip:hover{border-color:var(--border-strong)!important;background:rgba(124,92,255,.22)!important}

/* select-all / clear-all quick actions */
.future-pair-quick-actions{display:flex;gap:8px;margin-top:-4px}
.future-pair-quick-actions .btn{flex:1;min-height:40px;font-size:11px;padding:0 14px;gap:6px}
.future-select-all{background:var(--grad-brand)!important;color:#fff!important;border:none!important;box-shadow:0 8px 20px rgba(124,92,255,.3)!important}
.future-select-all:hover{filter:brightness(1.08)}
.future-clear-all{color:#C7C5E6!important}
.future-clear-all:hover{color:#FCA5A5!important;border-color:rgba(244,63,94,.35)!important}

/* dropzone */
.chart-dropzone{border-radius:20px!important;border:1.5px dashed var(--border-strong)!important;background:rgba(124,92,255,.045)!important}
.chart-dropzone:hover,.chart-dropzone.is-dragging{border-color:var(--highlight)!important;background:rgba(61,255,196,.06)!important}

/* modals */
.signal-modal-panel,.profile-modal-card{border-radius:24px!important;background:linear-gradient(160deg,#151330,#0A0A18)!important;border-color:var(--border)!important;box-shadow:0 40px 100px rgba(0,0,0,.55)!important}
.signal-modal-backdrop,.profile-modal-backdrop{backdrop-filter:blur(8px);background:rgba(2,2,10,.78)!important}

/* welcome / command hero */
.welcome-card,.command-hero{border-color:var(--border)!important;background:linear-gradient(135deg,rgba(24,20,52,.95),rgba(9,9,22,.97))!important}
.command-hero:before{background:radial-gradient(circle,rgba(124,92,255,.32),transparent 70%)!important}
.command-hero:after{background:radial-gradient(circle,rgba(61,255,196,.16),transparent 70%)!important}
.command-hero h2 em,.premium-auth-copy h1 em{background:var(--grad-brand)!important;background-clip:text!important;-webkit-background-clip:text!important}

/* feature cards */
.feature-card,.premium-feature-card{border-color:var(--border)!important;background:linear-gradient(150deg,rgba(22,20,48,.88),rgba(9,9,20,.9))!important;border-radius:18px!important;transition:transform .12s ease,border-color .12s ease}
.feature-card:hover,.premium-feature-card:hover{border-color:var(--border-strong)!important;transform:translateY(-3px)}

/* subtle result fade-in (respects reduced motion) */
@keyframes novex-fade-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.live-result-content,.future-result-content,.checker-result-content,.chart-result-card:not([hidden]),.news-result-content,.bp-results{animation:novex-fade-in .22s ease}
@media(prefers-reduced-motion:reduce){.live-result-content,.future-result-content,.checker-result-content,.chart-result-card,.news-result-content,.bp-results,.feature-card,.premium-feature-card,.signal-metric-grid article,.future-signal-item,.checker-result-item,.news-signal-item,.bp-ranking-item{animation:none!important;transform:none!important}}

@media(max-width:620px){.future-pair-quick-actions{flex-direction:column}.future-pair-quick-actions .btn{width:100%}}

/* =========================================================
   NovexAI 3.1 — premium result view (Live / Algorithmic / Chart)
   Shared markup: signal-result-head, direction-panel, strength-card,
   signal-metric-grid — so one pass upgrades all three pages.
   ========================================================= */

.live-result-card{overflow:visible!important}
.live-result-card:before,.live-result-card:after{content:none!important;display:none!important}
.live-result-content,.live-empty-result,.live-loading-state{position:relative;z-index:1}

/* result head — big gradient pair name */
.signal-result-head{align-items:flex-start!important;padding-bottom:24px!important}
.signal-result-head h2{font-family:'Sora',sans-serif;font-size:32px!important;font-weight:800;letter-spacing:-.03em!important;background:linear-gradient(120deg,#FFFFFF 30%,#C9C2FF 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.signal-market-label{display:inline-flex;align-items:center;gap:6px;padding:3px 0}
.signal-market-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--highlight);box-shadow:0 0 8px var(--highlight)}
.signal-ready-badge{padding:8px 14px!important;letter-spacing:.09em!important}

/* direction panel — hero banner */
.direction-panel{padding:26px!important;gap:22px!important;border-width:1.5px!important;overflow:visible!important}
.direction-panel:after{content:none!important;display:none!important}
.direction-panel.direction-up{background:linear-gradient(125deg,rgba(61,255,196,.22),rgba(16,185,129,.03) 60%)!important;border-color:rgba(61,255,196,.4)!important;box-shadow:0 0 0 1px rgba(61,255,196,.08) inset,0 18px 46px rgba(16,185,129,.12)!important}
.direction-panel.direction-down{background:linear-gradient(125deg,rgba(248,113,113,.22),rgba(220,38,38,.03) 60%)!important;border-color:rgba(248,113,113,.4)!important;box-shadow:0 0 0 1px rgba(248,113,113,.08) inset,0 18px 46px rgba(220,38,38,.12)!important}
.direction-panel.direction-wait,.direction-panel.direction-null{border-color:rgba(150,140,255,.25)!important}
.direction-icon{width:76px!important;height:76px!important;border-radius:20px!important;font-size:40px!important;font-weight:950;background:rgba(6,8,20,.55)!important;border:1.5px solid currentColor!important;box-shadow:0 0 24px currentColor,0 10px 26px rgba(0,0,0,.4)!important}
.direction-copy strong{font-size:42px!important;letter-spacing:-.01em!important;text-shadow:0 0 26px currentColor}
.direction-copy small{display:inline-flex;margin-top:2px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.08);width:max-content}
.direction-copy span{font-size:10.5px!important}

/* strength card — glowing groove meter */
.strength-card{padding:18px 20px!important;border-radius:18px!important}
.strength-heading strong{font-size:16px!important;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.06)}
.strength-track{height:12px!important;border-radius:999px!important;box-shadow:inset 0 2px 5px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.03)!important}
.strength-fill{position:relative}
.strength-fill:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.35),transparent 55%)}

/* metric grid — accent dot + spacing + hover lift */
.signal-metric-grid{gap:14px!important;margin-top:16px!important}
.signal-metric-grid article{padding:17px!important;min-height:92px!important;border-radius:16px!important}
.signal-metric-grid article span{position:relative;padding-left:16px}
.signal-metric-grid article span:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%}
.signal-metric-grid article:nth-child(1) span:before{background:#8B7CFF;box-shadow:0 0 8px #8B7CFF}
.signal-metric-grid article:nth-child(2) span:before{background:#5B8CFF;box-shadow:0 0 8px #5B8CFF}
.signal-metric-grid article:nth-child(3) span:before{background:#FF8A65;box-shadow:0 0 8px #FF8A65}
.signal-metric-grid article:nth-child(4) span:before{background:#3DFFC4;box-shadow:0 0 8px #3DFFC4}
.signal-metric-grid article strong{font-size:19px!important;font-family:'Sora',sans-serif;letter-spacing:-.01em}

/* action row */
.live-result-actions,.chart-result-actions{border-top-color:var(--border)!important;padding-top:20px!important;margin-top:20px!important}
.live-result-actions .btn,.chart-result-actions .btn{min-height:48px!important}
.chart-result-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px}

/* empty / loading states — glowing ring */
.live-empty-icon,.future-empty-icon{position:relative}
.live-empty-icon:before,.future-empty-icon:before{content:"";position:absolute;inset:-8px;border-radius:inherit;border:1px solid rgba(150,140,255,.18)}
.live-spinner{border-width:3.5px!important;box-shadow:0 0 24px rgba(124,92,255,.25)!important}

/* chart upload — premium dropzone icon */
.chart-upload-icon{background:var(--grad-brand)!important;color:#fff!important;box-shadow:0 12px 28px rgba(124,92,255,.35)!important;border:none!important}

@media(max-width:620px){
  .signal-result-head h2{font-size:26px!important}
  .direction-panel{padding:20px!important;gap:16px!important}
  .direction-icon{width:60px!important;height:60px!important;font-size:30px!important;border-radius:16px!important}
  .direction-copy strong{font-size:30px!important}
  .signal-metric-grid{gap:10px!important}
  .signal-metric-grid article{padding:14px!important;min-height:84px!important}
  .chart-result-actions{grid-template-columns:1fr!important}
}

/* =========================================================
   NovexAI 3.2 — fixes: no round blobs, dashboard icon tones,
   typewriter modal, curved pair picker, mobile/iOS/Android polish
   ========================================================= */

/* ---- pair picker: icon + shell, curved, clear ---- */
.pair-select-shell{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.035);padding-left:12px;transition:border-color .12s ease,box-shadow .12s ease}
.pair-select-shell:focus-within{border-color:var(--primary-2);box-shadow:0 0 0 4px rgba(91,140,255,.15)}
.pair-select-icon{width:26px;height:26px;flex:0 0 auto;display:grid;place-items:center;border-radius:9px;background:var(--grad-brand);color:#fff;font-size:12px;font-weight:900}
.pair-select-shell select{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;font-weight:700;letter-spacing:.01em}
.pair-select-shell select:focus{box-shadow:none!important}

/* ---- typewriter effect for Trap & Logic modal ---- */
.logic-block p.is-typing,.logic-block li.is-typing{border-right:2px solid var(--highlight);padding-right:2px}
@keyframes novex-caret{50%{border-color:transparent}}
.is-typing{animation:novex-caret .8s step-end infinite}
.logic-block ul{list-style:none;padding-left:0!important}
.logic-block ul li{position:relative;padding-left:18px}
.logic-block ul li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--highlight);box-shadow:0 0 6px var(--highlight)}
@media(prefers-reduced-motion:reduce){.is-typing{animation:none!important;border-right:0!important}}

/* ---- mobile / iOS / Android touch polish ---- */
button,a,.side-link,.market-tab,.btn,.icon-btn,select,input[type="checkbox"]+i{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.btn,.side-link,.market-tab{-webkit-user-select:none;user-select:none}
input,select,textarea{font-size:16px}
.sidebar{padding-bottom:calc(15px + env(safe-area-inset-bottom))}
.app-toast{bottom:calc(26px + env(safe-area-inset-bottom))}
.signal-modal{padding-bottom:calc(18px + env(safe-area-inset-bottom))}

/* ---- topbar title: no artificial truncation on small phones ---- */
.topbar-title{flex:1;min-width:0}
.topbar-title h1{font-size:clamp(15px,4.6vw,21px)}

/* ---- fluid card padding so it scales smoothly across every resolution ---- */
.live-control-card,.live-result-card,.future-control-card,.future-result-card,.checker-control-card,.checker-result-card,.news-control-card,.news-result-card,.best-control-card,.best-result-card,.chart-upload-card{padding:clamp(16px,4vw,26px)!important}
.direction-panel{padding:clamp(16px,3.6vw,26px)!important;gap:clamp(12px,3vw,22px)!important}
.direction-icon{width:clamp(56px,14vw,76px)!important;height:clamp(56px,14vw,76px)!important;font-size:clamp(28px,7vw,40px)!important}
.direction-copy strong{font-size:clamp(26px,7.5vw,42px)!important}
.signal-result-head h2{font-size:clamp(22px,7vw,32px)!important}
.signal-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}

@media(max-width:380px){
  .signal-metric-grid{gap:8px!important}
  .signal-metric-grid article{padding:12px!important;min-height:78px!important}
  .signal-metric-grid article strong{font-size:15px!important}
  .live-result-actions .btn,.chart-result-actions .btn{font-size:12px!important;padding:0 12px!important}
  .signal-modal-panel{border-radius:18px!important}
  .signal-modal-body{padding:16px!important}
  .pair-select-icon{width:22px;height:22px;font-size:10px}
}

/* =========================================================
   NovexAI 3.3 — lightweight premium scan results + real brand
   ========================================================= */

/* Use the supplied NovexAI artwork anywhere the shared brand mark appears. */
.brand-mark{
  padding:0!important;
  overflow:hidden!important;
  background:#0B0C1E!important;
  border:1px solid rgba(190,170,255,.28)!important;
  box-shadow:0 8px 22px rgba(70,42,150,.24)!important;
}
.brand-mark img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
}
.auth-brand .brand-mark:after{content:none!important}

/* A compact scan-status rail gives all three result screens a cockpit feel. */
.result-snapshot-bar{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0 0 16px;
}
.result-snapshot-bar span{
  min-width:0;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 10px;
  border:1px solid rgba(205,196,255,.10);
  border-radius:12px;
  background:rgba(3,6,19,.50);
  color:#9297B5;
  font-size:9px;
  font-weight:850;
  letter-spacing:.08em;
  text-align:center;
  text-transform:uppercase;
}
.result-snapshot-bar span:first-child{
  color:#BFFFEF;
  border-color:rgba(61,255,196,.16);
  background:rgba(61,255,196,.055);
}
.snapshot-dot{
  width:6px;
  height:6px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--highlight);
  box-shadow:0 0 8px rgba(61,255,196,.7);
}

/* Strong hierarchy without costly ambient animation. */
.live-result-card{
  position:relative;
  border-color:rgba(158,131,255,.20)!important;
  background:
    linear-gradient(155deg,rgba(24,24,57,.97),rgba(7,9,25,.98))!important;
  box-shadow:0 24px 60px rgba(0,0,0,.28)!important;
}
.live-result-card:before{
  content:""!important;
  display:block!important;
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:20px 0 0 20px;
  background:linear-gradient(180deg,#8B7CFF,#5B8CFF 55%,#3DFFC4);
  opacity:.9;
}
.direction-icon{
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 12px 24px rgba(0,0,0,.30)!important;
}
.signal-metric-grid article{
  border-top:1px solid rgba(174,150,255,.14)!important;
  transition:border-color .12s ease,background-color .12s ease!important;
}
.signal-metric-grid article:hover{
  transform:none!important;
  border-color:rgba(174,150,255,.28)!important;
}
.live-result-content,.chart-result-card:not([hidden]){
  animation:novex-fade-in .16s ease-out;
}

/* Touch devices get solid surfaces and no hover motion for smoother scrolling. */
@media(max-width:900px){
  .topbar,.sidebar,.auth-card,.module-card,.live-control-card,.live-result-card,
  .chart-upload-card,.chart-loading-card,.signal-modal-panel,.profile-modal-card{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  .feature-card:hover,.premium-feature-card:hover{transform:none!important}
}
@media(max-width:520px){
  .result-snapshot-bar{gap:6px}
  .result-snapshot-bar span{padding:7px 5px;font-size:7.5px;letter-spacing:.055em}
  .signal-ready-badge{padding:7px 10px!important;font-size:9px!important}
}
@media(prefers-reduced-motion:reduce){
  .live-result-content,.chart-result-card{animation:none!important}
}

/* ---- dashboard: restore per-module icon colour coding, gentle depth ---- */
.premium-feature-card .feature-icon{box-shadow:0 6px 16px rgba(0,0,0,.22)}
.feature-card-top>span{font-weight:800}

/* =========================================================
   NovexAI 3.3 — fix auth input boxes, compact dashboard shortcuts
   ========================================================= */

/* the login/signup inputs sit inside .field-shell, which already
   draws the border/background — later rules must not add a second
   box around the <input> itself */
.field-shell input{border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
.field-shell{border-radius:14px!important}
.field-shell:focus-within{box-shadow:0 0 0 4px rgba(91,140,255,.14)!important}

/* dashboard — compact, direct-access shortcut grid instead of tall cards */
@media(max-width:760px){
  .premium-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .premium-feature-card{min-height:0!important;padding:14px!important;gap:8px!important;border-radius:16px!important}
  .premium-feature-card p{display:none}
  .premium-feature-card h3{font-size:13px!important;margin:8px 0 0!important;line-height:1.3}
  .premium-feature-card .feature-icon{width:36px;height:36px;font-size:15px;border-radius:11px}
  .feature-card-top>span{font-size:6px;padding:4px 6px}
  .feature-card-foot{padding-top:8px!important;margin-top:8px!important}
  .feature-card-foot small{display:none}
  .feature-card-foot{justify-content:flex-end!important}
}
@media(max-width:380px){.premium-feature-grid{gap:8px!important}.premium-feature-card{padding:12px!important}}

/* =========================================================
   NovexAI 4.0 — Quiet Terminal result system
   Live Signal / Algorithmic Signal / Chart Analyser
   ========================================================= */

.result-console{
  --result-accent:#63F5C4;
  --result-accent-rgb:99,245,196;
  --result-secondary:#8C7CFF;
  color:#F5F7FF;
  font-variant-numeric:tabular-nums;
}
.result-console-live{
  --result-accent:#4FE4D2;
  --result-accent-rgb:79,228,210;
  --result-secondary:#5B8CFF;
}
.result-console-algorithmic{
  --result-accent:#B8FF4A;
  --result-accent-rgb:184,255,74;
  --result-secondary:#9D8CFF;
}
.result-console-chart{
  --result-accent:#67D7FF;
  --result-accent-rgb:103,215,255;
  --result-secondary:#A784FF;
}

.live-result-card{
  padding:0!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#080C18!important;
  border:1px solid #252C43!important;
  box-shadow:0 26px 70px rgba(0,0,0,.34)!important;
}
.live-result-card:before,.live-result-card:after{content:none!important;display:none!important}
.live-empty-result,.live-loading-state{padding:26px}
.result-console{width:100%;min-height:100%}

.result-console-head{
  position:relative;
  min-height:132px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:26px 30px;
  border-bottom:1px solid #252C43;
  background:linear-gradient(120deg,rgba(15,20,37,.98),rgba(8,12,24,.98));
}
.result-pair-flags{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:72px;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.28));
}
.result-pair-flags[hidden]{display:none}
.pair-flag{
  position:relative;
  width:42px;
  height:42px;
  overflow:hidden;
  display:grid;
  place-items:center;
  border:2px solid #0A0F1C;
  border-radius:50%;
  background:#151C30;
  box-shadow:0 0 0 1px rgba(148,163,184,.26),0 0 18px rgba(var(--result-accent-rgb),.12);
  color:#FFF;
}
.pair-flag+.pair-flag{margin-left:-12px}
.pair-flag img{display:block;width:100%;height:100%;object-fit:contain}
.pair-flag-country img{object-fit:cover}
.pair-flag-asset img{padding:2px}
.pair-flag-asset{
  font-family:'Sora',sans-serif;
  font-size:9px;
  font-weight:900;
  letter-spacing:-.03em;
}
.pair-flag-crypto{background:#11182A}
.pair-flag-fallback{background:linear-gradient(145deg,#775BFF,#2ECFE4)}
.pair-flag-oil{background:linear-gradient(145deg,#263238,#0C1118);color:#B8FF4A}
.pair-flag-gold{background:linear-gradient(145deg,#FFD86B,#A86600);color:#211600}
.pair-flag-silver{background:linear-gradient(145deg,#F3F7FC,#7B8797);color:#18202A}
.result-identity{min-width:0}
.result-identity .eyebrow{
  color:#8D96B3;
  font-size:9px;
  letter-spacing:.15em;
}
.result-identity h2{
  margin:8px 0 8px!important;
  color:#F8FAFF!important;
  background:none!important;
  font-family:'Sora',sans-serif;
  font-size:clamp(34px,4.6vw,58px)!important;
  font-weight:800;
  line-height:.96;
  letter-spacing:-.055em!important;
  overflow-wrap:anywhere;
}
.result-meta{display:flex;align-items:center;gap:14px;color:#76809F;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.result-meta>span+span{position:relative;padding-left:14px}
.result-meta>span+span:before{content:"";position:absolute;left:0;top:50%;width:3px;height:3px;border-radius:50%;background:var(--result-secondary);transform:translateY(-50%)}
.result-meta .signal-market-label{display:inline-flex;color:#9CA5C1;font-size:9px}
.result-meta .signal-market-label:before{background:var(--result-accent);box-shadow:none}
.result-state{flex:0 0 auto;display:grid;justify-items:end;gap:8px;text-align:right}
.result-state .signal-ready-badge{
  display:inline-flex!important;
  align-items:center;
  gap:8px;
  padding:8px 12px!important;
  border:1px solid rgba(var(--result-accent-rgb),.28)!important;
  border-radius:6px!important;
  background:rgba(var(--result-accent-rgb),.08)!important;
  color:var(--result-accent)!important;
  box-shadow:none!important;
  font-size:9px!important;
  letter-spacing:.11em!important;
}
.result-state .signal-ready-badge i,.result-complete i{
  width:6px;height:6px;border-radius:50%;background:currentColor;
}
.result-state small{color:#6E7794;font-size:9px;text-transform:uppercase;letter-spacing:.1em}

.result-hero-band{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(250px,.88fr);
  min-height:260px;
  background:
    linear-gradient(110deg,rgba(var(--result-accent-rgb),.075),transparent 48%),
    #0A0F1C;
  border-bottom:1px solid #252C43;
  position:relative;
}
.result-hero-band:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:2px;
  background:linear-gradient(90deg,var(--result-accent),var(--result-secondary),transparent 82%);
  opacity:.9;
}
.result-section-label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  color:#8E98B5;
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.result-section-label small{color:var(--result-secondary);font:600 9px 'Sora',sans-serif}

.result-console .direction-panel{
  min-width:0;
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:space-between;
  gap:24px!important;
  margin:0!important;
  padding:30px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.result-console .direction-panel:after{content:none!important}
.direction-display{display:flex;align-items:center;gap:24px;min-width:0}
.result-console .direction-icon{
  width:86px!important;
  height:86px!important;
  flex:0 0 86px;
  border:1px solid currentColor!important;
  border-radius:8px!important;
  background:rgba(4,8,16,.42)!important;
  box-shadow:none!important;
  font-size:48px!important;
}
.result-console .direction-copy{min-width:0;gap:7px}
.result-console .direction-copy>span{color:#8E98B5!important;font-size:9px!important;letter-spacing:.15em}
.result-console .direction-copy strong{
  font-family:'Sora',sans-serif;
  font-size:clamp(52px,6.6vw,86px)!important;
  line-height:.86!important;
  letter-spacing:-.07em!important;
  text-shadow:none!important;
}
.result-console .direction-copy small{
  display:inline-flex!important;
  width:max-content;
  margin-top:3px!important;
  padding:7px 11px!important;
  border:1px solid currentColor;
  border-radius:999px!important;
  background:rgba(255,255,255,.035)!important;
  font-size:10px!important;
}
.result-console .direction-panel.direction-up{color:#63F5C4!important}
.result-console .direction-panel.direction-down{color:#FF7A6E!important}
.result-console .direction-panel.direction-wait,.result-console .direction-panel.direction-null{color:#AEB6CD!important}

.result-console .strength-card{
  min-width:0;
  min-height:260px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  margin:0!important;
  padding:30px!important;
  border:0!important;
  border-left:1px solid #252C43!important;
  border-radius:0!important;
  background:rgba(6,10,20,.46)!important;
  box-shadow:none!important;
}
.strength-readout{display:grid;gap:7px;margin:25px 0 18px}
.strength-readout strong{
  color:var(--result-accent);
  font-family:'Sora',sans-serif;
  font-size:clamp(26px,3vw,40px)!important;
  line-height:1;
  letter-spacing:-.045em;
}
.strength-readout span{color:#7F89A7;font-size:8px;font-weight:900;letter-spacing:.14em}
.result-console .strength-track{
  height:11px!important;
  margin:0!important;
  border:1px solid #252C43;
  border-radius:3px!important;
  background:
    repeating-linear-gradient(90deg,#222A3E 0 8px,transparent 8px 11px),
    #101525!important;
  box-shadow:none!important;
}
.result-console .strength-fill{
  border-radius:2px!important;
  background:var(--result-accent)!important;
  box-shadow:none!important;
  transition:width .18s ease!important;
}
.result-console .strength-fill:after{content:none!important}
.strength-scale{display:flex;justify-content:space-between;margin-top:9px;color:#5F6988;font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

.result-ledger{background:#080C18}
.result-ledger-head{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 30px;
  border-bottom:1px solid #252C43;
  color:#AAB2C9;
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.result-ledger-head small{color:#606A87;font-size:8px;letter-spacing:.09em}
.result-console .signal-metric-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  margin:0!important;
}
.result-console .signal-metric-grid article{
  min-width:0;
  min-height:132px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:9px;
  padding:22px 24px!important;
  border:0!important;
  border-right:1px solid #252C43!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.result-console .signal-metric-grid article:last-child{border-right:0!important}
.result-console .signal-metric-grid article:hover{background:#0C1120!important}
.result-console .signal-metric-grid article span{
  display:flex;
  align-items:center;
  gap:8px;
  padding:0!important;
  color:#8C95B1;
  font-size:8px;
  letter-spacing:.12em;
}
.result-console .signal-metric-grid article span:before{content:none!important}
.result-console .signal-metric-grid article span b{color:var(--result-secondary);font:600 8px 'Sora',sans-serif}
.result-console .signal-metric-grid article strong{
  margin:0!important;
  color:#F2F5FC;
  font-family:'Sora',sans-serif;
  font-size:clamp(20px,2.15vw,31px)!important;
  letter-spacing:-.035em;
}
.result-console .signal-metric-grid article:nth-child(1) strong{color:#63F5C4}
.result-console .signal-metric-grid article:nth-child(2) strong{color:#FF7A6E}
.result-console .signal-metric-grid article>small{color:#5F6985;font-size:8px;letter-spacing:.05em}

.result-console-footer{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:13px 20px 13px 30px;
  border-top:1px solid #252C43;
  background:#070B15;
}
.result-complete{display:inline-flex;align-items:center;gap:9px;color:var(--result-accent);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.result-console .live-result-actions,.result-console .chart-result-actions{
  display:flex!important;
  grid-template-columns:none!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.result-console-footer .btn{
  min-height:42px!important;
  padding:0 17px!important;
  border:1px solid #323B55!important;
  border-radius:7px!important;
  background:#0D1221!important;
  box-shadow:none!important;
  color:#E6E9F2!important;
  font-size:10px!important;
  letter-spacing:.02em;
}
.result-console-footer .btn:hover{border-color:var(--result-secondary)!important;background:#11172A!important}
.result-console-footer .btn b{color:var(--result-accent);font-size:14px}
.result-console-footer .btn-primary{border-color:rgba(var(--result-accent-rgb),.35)!important;color:var(--result-accent)!important}

/* Fix the cramped mobile top bar shown in the previous result screen. */
.topbar-title h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:620px){
  .topbar{
    gap:10px;
    background:#080B19!important;
    border-bottom-color:#252C43!important;
  }
  .topbar-title{min-width:0}
  .topbar-actions{gap:6px}
  .topbar-actions .tutorial-button,.topbar-actions .engine-pill{display:none!important}
  .credit-pill{width:42px;justify-content:center;padding:0!important}
  .credit-pill span{display:none!important}
  .user-chip{padding:0!important}
}

@media(max-width:760px){
  .result-console-head{min-height:112px;padding:22px;gap:14px}
  .result-pair-flags{min-width:62px}
  .pair-flag{width:36px;height:36px}
  .pair-flag+.pair-flag{margin-left:-10px}
  .result-identity h2{font-size:clamp(30px,10vw,46px)!important}
  .result-state small{display:none}
  .result-hero-band{grid-template-columns:1fr}
  .result-console .direction-panel{min-height:230px;padding:24px!important}
  .result-console .strength-card{
    min-height:176px;
    padding:24px!important;
    border-left:0!important;
    border-top:1px solid #252C43!important;
  }
  .strength-readout{margin:20px 0 15px}
  .result-console .signal-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .result-console .signal-metric-grid article{min-height:116px!important;padding:18px 20px!important}
  .result-console .signal-metric-grid article:nth-child(2){border-right:0!important}
  .result-console .signal-metric-grid article:nth-child(-n+2){border-bottom:1px solid #252C43!important}
  .result-ledger-head{padding:0 22px}
  .result-console-footer{padding:14px 18px 14px 22px}
}
@media(max-width:480px){
  .result-console-head{min-height:96px;align-items:flex-start;padding:16px}
  .result-pair-flags{
    position:absolute;
    right:16px;
    bottom:13px;
    z-index:4;
    min-width:58px;
  }
  .pair-flag{width:34px;height:34px}
  .pair-flag-asset{font-size:7px}
  .result-identity{max-width:calc(100% - 106px)}
  .result-identity .eyebrow{font-size:7px}
  .result-identity h2{margin:6px 0!important;font-size:clamp(26px,9vw,38px)!important}
  .result-state{justify-items:end}
  .result-state .signal-ready-badge{padding:7px 9px!important;font-size:7px!important}
  .result-meta{gap:9px;font-size:7px}
  .result-meta>span+span{padding-left:10px}
  .result-console .direction-panel{min-height:170px;padding:20px!important}
  .result-console .strength-card{min-height:150px;padding:20px!important}
  .strength-readout{margin:14px 0 12px}
  .direction-display{gap:16px}
  .result-console .direction-icon{width:64px!important;height:64px!important;flex-basis:64px;font-size:35px!important}
  .result-console .direction-copy strong{font-size:46px!important}
  .result-console .direction-copy small{font-size:8px!important;padding:6px 9px!important}
  .result-ledger-head{min-height:42px;padding:0 16px}
  .result-console .signal-metric-grid article{min-height:96px!important;padding:14px 16px!important;gap:7px}
  .result-console .signal-metric-grid article strong{font-size:18px!important}
  .result-console-footer{align-items:stretch;flex-direction:column}
  .result-complete{padding:3px 2px}
  .result-console .live-result-actions,.result-console .chart-result-actions{width:100%;display:grid!important;grid-template-columns:1fr!important}
  .result-console-footer .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .result-console .strength-fill{transition:none!important}
}
@media (max-width: 480px) {
  .result-identity h2 {
    font-size: clamp(24px, 7.2vw, 30px) !important;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: keep-all;
  }
}
/* Direction colour system */
.result-console .direction-panel.direction-up {
  --dir: #5ff3c5;
  --dir-rgb: 95, 243, 197;
  color: var(--dir) !important;
}

.result-console .direction-panel.direction-down {
  --dir: #ff6f7d;
  --dir-rgb: 255, 111, 125;
  color: var(--dir) !important;
}

/* Premium direction field */
.result-console .direction-panel {
  isolation: isolate;
  position: relative;
  background:
    radial-gradient(
      circle at 12% 55%,
      rgba(var(--dir-rgb), .13),
      transparent 34%
    ),
    linear-gradient(
      120deg,
      rgba(var(--dir-rgb), .055),
      transparent 62%
    ) !important;
}

.result-console .direction-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  border-top: 1px solid rgba(var(--dir-rgb), .35);
  background:
    linear-gradient(
      90deg,
      rgba(var(--dir-rgb), .11),
      transparent 42%
    );
}

/* High-quality icon container */
.result-console .direction-icon {
  position: relative;
  width: 88px !important;
  height: 88px !important;
  flex: 0 0 88px !important;
  overflow: hidden;
  display: grid;
  place-items: center;
  font-size: 0 !important;
  border: 1px solid rgba(var(--dir-rgb), .75) !important;
  border-radius: 22px !important;

  background:
    linear-gradient(
      145deg,
      rgba(var(--dir-rgb), .20),
      rgba(var(--dir-rgb), .035) 55%
    ),
    #08131a !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -18px 30px rgba(0,0,0,.18),
    0 16px 38px rgba(0,0,0,.34),
    0 0 28px rgba(var(--dir-rgb), .10) !important;
}

/* Vector-quality arrow */
.result-console .direction-icon::before {
  content: "";
  width: 42px;
  height: 42px;
  position: relative;
  z-index: 2;
  background: var(--dir);

  mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2L4.5 9.5l2.4 2.4 3.4-3.4V22h3.4V8.5l3.4 3.4 2.4-2.4L12 2z'/%3E%3C/svg%3E")
    center/contain no-repeat;

  -webkit-mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2L4.5 9.5l2.4 2.4 3.4-3.4V22h3.4V8.5l3.4 3.4 2.4-2.4L12 2z'/%3E%3C/svg%3E")
    center/contain no-repeat;

  filter: drop-shadow(0 5px 9px rgba(var(--dir-rgb), .28));
}

/* Inner precision frame */
.result-console .direction-icon::after {
  content: "";
  position: absolute;
  inset: 7px;
  border: 1px solid rgba(var(--dir-rgb), .16);
  border-radius: 16px;
  box-shadow: inset 0 0 16px rgba(var(--dir-rgb), .055);
}

/* DOWN-এর জন্য একই vector ঘুরবে */
.result-console .direction-down .direction-icon::before {
  transform: rotate(180deg);
}

/* Premium direction typography */
.result-console .direction-copy strong {
  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      var(--dir) 35%,
      var(--dir) 100%
    );

  background-clip: text;
  -webkit-background-clip: text;
  color: transparent !important;
  text-shadow: 0 10px 32px rgba(var(--dir-rgb), .15) !important;
}

.result-console .direction-copy small {
  color: var(--dir) !important;
  border-color: rgba(var(--dir-rgb), .48) !important;
  background: rgba(var(--dir-rgb), .075) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.07);
}

/* Mobile sizing */
@media (max-width: 480px) {
  .result-console .direction-icon {
    width: 72px !important;
    height: 72px !important;
    flex-basis: 72px !important;
    border-radius: 19px !important;
  }

  .result-console .direction-icon::before {
    width: 35px;
    height: 35px;
  }
}
/* Remove the previous vector arrow */
.result-console .direction-icon::before,
.result-console .direction-icon::after {
  mask: none !important;
  -webkit-mask: none !important;
  filter: none !important;
}

/* Candle wick */
.result-console .direction-icon::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 18%;
  left: 50%;
  width: 3px;
  height: 64%;
  border-radius: 999px;
  background: var(--dir) !important;
  transform: translateX(-50%) !important;
  box-shadow: 0 0 10px rgba(var(--dir-rgb), .35);
}

/* Candle body */
.result-console .direction-icon::after {
  content: "";
  position: absolute;
  z-index: 2;
  left: 50%;
  width: 28%;
  height: 38%;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 4px;
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.38),
      var(--dir) 25%,
      var(--dir)
    ) !important;
  transform: translateX(-50%) !important;
  box-shadow:
    0 5px 14px rgba(0,0,0,.25),
    0 0 15px rgba(var(--dir-rgb), .25);
}

/* Green candle: body slightly higher */
.result-console .direction-up .direction-icon::after {
  top: 27%;
}

/* Red candle: body slightly lower */
.result-console .direction-down .direction-icon::after {
  top: 35%;
}

/* Cancel old DOWN-arrow rotation */
.result-console .direction-down .direction-icon::before {
  transform: translateX(-50%) !important;
}
/* Premium bullish candle */
.result-console .direction-up .direction-icon {
  --candle-light: #a3ffe0;
  --candle-main: #00FF2F;
  --candle-dark: #0cad78;
  --candle-wick: #77fad0;
  --candle-rgb: 34, 230, 167;
}

/* Premium bearish candle */
.result-console .direction-down .direction-icon {
  --candle-light: #ffb0bc;
  --candle-main: #FF0000;
  --candle-dark: #d91f45;
  --candle-wick: #ff8799;
  --candle-rgb: 255, 82, 108;
}

/* Wick color */
.result-console .direction-icon::before {
  background: var(--candle-wick) !important;
  box-shadow:
    0 0 7px rgba(var(--candle-rgb), .45),
    0 0 16px rgba(var(--candle-rgb), .16) !important;
}

/* Candle body color */
.result-console .direction-icon::after {
  border-color: rgba(255,255,255,.30) !important;
  background:
    linear-gradient(
      145deg,
      var(--candle-light) 0%,
      var(--candle-main) 30%,
      var(--candle-dark) 100%
    ) !important;

  box-shadow:
    inset 1px 1px rgba(255,255,255,.32),
    inset -2px -3px rgba(0,0,0,.14),
    0 5px 14px rgba(0,0,0,.28),
    0 0 16px rgba(var(--candle-rgb), .24) !important;
}
/* iPhone status-bar safe area */
@media (max-width: 900px) {
  .topbar {
    height: calc(74px + env(safe-area-inset-top)) !important;
    padding-top: env(safe-area-inset-top) !important;
    padding-left: max(16px, env(safe-area-inset-left)) !important;
    padding-right: max(16px, env(safe-area-inset-right)) !important;
    top: 0;
    z-index: 60;
  }

  .mobile-menu {
    position: relative;
    top: 0 !important;
    z-index: 2;
    flex: 0 0 auto;
  }
}
/* =====================================================
   Premium paired market metrics
   Support vs Resistance / Trend & Trap
   ===================================================== */

.result-console .signal-metric-grid {
  position: relative;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 10px !important;
  padding: 0 !important;
}

/* Central badges */
.result-console .signal-metric-grid::before,
.result-console .signal-metric-grid::after {
  position: absolute;
  left: 50%;
  z-index: 5;
  width: 42px;
  height: 46px;
  display: grid;
  place-items: center;
  transform: translate(-50%, -50%);
  clip-path: polygon(25% 5%, 75% 5%, 100% 50%, 75% 95%, 25% 95%, 0 50%);
  color: #eef2ff;
  font: 800 10px "Sora", sans-serif;
  letter-spacing: .06em;
  pointer-events: none;
}

.result-console .signal-metric-grid::before {
  content: "VS";
  top: 25%;
  border: 1px solid #8675ff;
  background: linear-gradient(145deg, #382364, #102858);
  box-shadow:
    0 0 0 1px rgba(150,125,255,.30),
    0 0 22px rgba(115,88,255,.30);
}

.result-console .signal-metric-grid::after {
  content: "AI";
  top: 75%;
  background: linear-gradient(145deg, #123d37, #392c16);
  box-shadow:
    0 0 0 1px rgba(93,241,193,.24),
    0 0 20px rgba(255,184,77,.16);
}

/* Shared metric panel */
.result-console .signal-metric-grid article {
  --metric: #a76bff;
  --metric-rgb: 167, 107, 255;

  position: relative;
  min-height: 148px !important;
  overflow: hidden;
  justify-content: center !important;
  gap: 8px !important;
  padding: 22px 76px 22px 22px !important;

  border: 1px solid rgba(var(--metric-rgb), .30) !important;
  border-radius: 18px !important;

  background:
    radial-gradient(
      circle at 86% 50%,
      rgba(var(--metric-rgb), .14),
      transparent 35%
    ),
    linear-gradient(
      145deg,
      rgba(var(--metric-rgb), .07),
      rgba(7,11,24,.96) 58%
    ) !important;

  box-shadow:
    inset 0 1px rgba(255,255,255,.035),
    0 12px 28px rgba(0,0,0,.18) !important;
}

/* Make room beside central badge */
.result-console .signal-metric-grid article:nth-child(2),
.result-console .signal-metric-grid article:nth-child(4) {
  padding-left: 54px !important;
}

/* Individual colours */
.result-console .signal-metric-grid article:nth-child(1) {
  --metric: #b36dff;
  --metric-rgb: 179, 109, 255;
}

.result-console .signal-metric-grid article:nth-child(2) {
  --metric: #4d91ff;
  --metric-rgb: 77, 145, 255;
}

.result-console .signal-metric-grid article:nth-child(3) {
  --metric: #24e6a8;
  --metric-rgb: 36, 230, 168;
}

.result-console .signal-metric-grid article:nth-child(4) {
  --metric: #ffba4d;
  --metric-rgb: 255, 186, 77;
}

/* Dynamic trend colours */
.result-console .signal-metric-grid article:has(.trend-bearish) {
  --metric: #ff536c;
  --metric-rgb: 255, 83, 108;
}

.result-console .signal-metric-grid article:has(.trend-sideways) {
  --metric: #62a3ff;
  --metric-rgb: 98, 163, 255;
}

/* Dynamic trap colours */
.result-console .signal-metric-grid article:has(.trap-low) {
  --metric: #24e6a8;
  --metric-rgb: 36, 230, 168;
}

.result-console .signal-metric-grid article:has(.trap-high) {
  --metric: #ff536c;
  --metric-rgb: 255, 83, 108;
}

/* Labels */
.result-console .signal-metric-grid article span {
  color: #aeb5cd !important;
}

.result-console .signal-metric-grid article span b {
  color: var(--metric) !important;
}

/* Values */
.result-console .signal-metric-grid article strong {
  position: relative;
  z-index: 2;
  color: var(--metric) !important;
  font-size: clamp(21px, 2.4vw, 31px) !important;
  white-space: nowrap;
  text-shadow: 0 0 18px rgba(var(--metric-rgb), .16);
}

/* Hide previous helper text and draw waveform */
.result-console .signal-metric-grid article > small {
  position: absolute;
  left: 22px;
  right: 76px;
  bottom: 17px;
  height: 15px;
  overflow: hidden;
  color: transparent !important;
  font-size: 0 !important;
}

.result-console .signal-metric-grid article > small::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  opacity: .34;
  background: var(--metric);

  mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 20' preserveAspectRatio='none'%3E%3Cpath d='M0 10L8 10L12 4L16 16L20 7L24 12L30 10L36 10L40 3L44 17L48 6L54 13L60 10L68 10L72 5L76 15L80 8L86 12L92 10L100 10L104 4L108 16L112 7L118 13L124 10L132 10L136 5L140 15L144 8L150 12L160 10' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E")
    center/100% 100% no-repeat;

  -webkit-mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 20' preserveAspectRatio='none'%3E%3Cpath d='M0 10L8 10L12 4L16 16L20 7L24 12L30 10L36 10L40 3L44 17L48 6L54 13L60 10L68 10L72 5L76 15L80 8L86 12L92 10L100 10L104 4L108 16L112 7L118 13L124 10L132 10L136 5L140 15L144 8L150 12L160 10' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E")
    center/100% 100% no-repeat;
}

/* Circular metric icons */
.result-console .signal-metric-grid article::after {
  content: "↓";
  position: absolute;
  top: 50%;
  right: 18px;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  transform: translateY(-50%);
  border: 1px solid rgba(var(--metric-rgb), .48);
  border-radius: 50%;
  background: rgba(var(--metric-rgb), .10);
  color: var(--metric);
  font: 800 25px "Sora", sans-serif;
  box-shadow:
    inset 0 0 16px rgba(var(--metric-rgb), .08),
    0 0 18px rgba(var(--metric-rgb), .13);
}

.result-console .signal-metric-grid article:nth-child(2)::after {
  content: "↑";
}

.result-console .signal-metric-grid article:nth-child(3)::after {
  content: "↗";
}

.result-console .signal-metric-grid article:has(.trend-bearish)::after {
  content: "↘";
}

.result-console .signal-metric-grid article:has(.trend-sideways)::after {
  content: "→";
}

.result-console .signal-metric-grid article:nth-child(4)::after {
  content: "!";
}

/* Mobile refinement */
@media (max-width: 480px) {
  .result-console .signal-metric-grid article {
    min-height: 130px !important;
    padding: 17px 52px 17px 15px !important;
    border-radius: 15px !important;
  }

  .result-console .signal-metric-grid article:nth-child(2),
  .result-console .signal-metric-grid article:nth-child(4) {
    padding-left: 38px !important;
  }

  .result-console .signal-metric-grid article strong {
    font-size: 18px !important;
  }

  .result-console .signal-metric-grid article::after {
    right: 10px;
    width: 38px;
    height: 38px;
    font-size: 20px;
  }

  .result-console .signal-metric-grid article > small {
    left: 15px;
    right: 50px;
    bottom: 13px;
  }

  .result-console .signal-metric-grid::before,
  .result-console .signal-metric-grid::after {
    width: 34px;
    height: 38px;
    font-size: 8px;
  }
}
.result-console .signal-metric-grid article {
  min-height: 110px !important;
  padding-top: 12px !important;
  padding-bottom: 21px !important;
}

.result-console .signal-metric-grid article::after {
  width: 38px;
  height: 38px;
  font-size: 20px;
}

.result-console .signal-metric-grid article > small {
  bottom: 7px;
  height: 9px;
}

@media (max-width: 480px) {
  .result-console .signal-metric-grid article {
    min-height: 94px !important;
    padding-top: 10px !important;
    padding-bottom: 18px !important;
  }

  .result-console .signal-metric-grid article::after {
    width: 30px;
    height: 30px;
    font-size: 16px;
  }

  .result-console .signal-metric-grid article > small {
    bottom: 6px;
    height: 8px;
  }
}
/* Keep content above the animal artwork */
.result-console .direction-panel {
  isolation: isolate;
}

.result-console .direction-display,
.result-console .result-section-label {
  position: relative;
  z-index: 2;
}

/* Shared bull/bear artwork */
.result-console .direction-panel::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  z-index: 0;
  right: -2%;
  bottom: 0;
  width: 46%;
  height: 92%;
  pointer-events: none;

  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: contain;

  opacity: .68;
  filter:
    saturate(1.18)
    contrast(1.06)
    drop-shadow(0 0 20px rgba(var(--dir-rgb), .25));

  mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.35) 20%,
    #000 52%
  );

  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.35) 20%,
    #000 52%
  );
}

/* UP = Bull */
.result-console .direction-panel.direction-up::after {
  background-image: url("../images/bull.webp");
}

/* DOWN = Bear */
.result-console .direction-panel.direction-down::after {
  background-image: url("../images/bear.webp");
}

/* Slightly softer artwork on phones */
@media (max-width: 480px) {
  .result-console .direction-panel::after {
    right: -6%;
    width: 50%;
    height: 82%;
    opacity: .40;
  }
}

/* Device-stable result icons: never fall back to phone emoji glyphs. */
.result-console .signal-metric-grid article::after{
  content:""!important;
}
.result-console .signal-metric-grid article::before{
  content:"";
  position:absolute;
  z-index:3;
  top:50%;
  right:28px;
  width:18px;
  height:18px;
  background:var(--metric);
  transform:translateY(-50%) rotate(180deg);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20V4'/%3E%3Cpath d='M6 10l6-6 6 6'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20V4'/%3E%3Cpath d='M6 10l6-6 6 6'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.result-console .signal-metric-grid article:nth-child(2)::before{
  transform:translateY(-50%);
}
.result-console .signal-metric-grid article:nth-child(3)::before{
  transform:translateY(-50%) rotate(45deg);
}
.result-console .signal-metric-grid article[data-trend-icon="down"]::before,
.result-console .signal-metric-grid article:has(.trend-bearish)::before{
  transform:translateY(-50%) rotate(135deg);
}
.result-console .signal-metric-grid article[data-trend-icon="down"]{
  --metric:#ff536c;
  --metric-rgb:255,83,108;
}
.result-console .signal-metric-grid article[data-trend-icon="flat"]::before,
.result-console .signal-metric-grid article:has(.trend-sideways)::before{
  height:3px;
  border-radius:99px;
  transform:translateY(-50%);
  -webkit-mask:none;
  mask:none;
}
.result-console .signal-metric-grid article[data-trend-icon="flat"]{
  --metric:#62a3ff;
  --metric-rgb:98,163,255;
}
.result-console .signal-metric-grid article:nth-child(4)::before{
  transform:translateY(-50%);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='black'%3E%3Crect x='10.5' y='3' width='3' height='12' rx='1.5'/%3E%3Ccircle cx='12' cy='19' r='2'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='black'%3E%3Crect x='10.5' y='3' width='3' height='12' rx='1.5'/%3E%3Ccircle cx='12' cy='19' r='2'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.button-link-icon{
  display:inline-block;
  width:13px;
  height:13px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19L19 5'/%3E%3Cpath d='M10 5h9v9'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19L19 5'/%3E%3Cpath d='M10 5h9v9'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.signal-orb-live::before{
  content:"";
  width:25px;
  height:25px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19L19 5'/%3E%3Cpath d='M10 5h9v9'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19L19 5'/%3E%3Cpath d='M10 5h9v9'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
@media(max-width:480px){
  .result-console .signal-metric-grid article::before{
    right:16px;
    width:14px;
    height:14px;
  }
}

/* Lower the entire Bull/Bear layer; transform works even with transparent image canvas. */
.result-console .direction-panel::after{
  bottom:0;
  height:88%;
  transform:translateY(26%)!important;
  filter:saturate(1.25) contrast(1.06)
    drop-shadow(0 0 24px rgba(var(--dir-rgb),.38))
    drop-shadow(0 0 50px rgba(var(--dir-rgb),.18))!important;
}
@media(max-width:480px){
  .result-console .direction-panel::after{
    right:-6%;
    bottom:0;
    width:50%;
    height:78%;
    opacity:.40;
    transform:translateY(60%)!important;
  }
}
.avatar{
  overflow:hidden;
  padding:0!important;
}

.avatar img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  border-radius:inherit;
}
.profile-avatar-large{
  overflow:hidden;
  padding:0!important;
}

.profile-avatar-large img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}