:root{--bg:#080e10;--panel:#101a1d;--panel2:#152326;--line:#284042;--text:#f4fbf8;--muted:#8ca3a1;--lime:#c5fd41;--mint:#65f7cf;--danger:#ffae67}*{box-sizing:border-box}html{background:var(--bg)}body{padding:0;margin:0;color:var(--text);background:radial-gradient(circle at 88% 11%,#14302c 0%,transparent 27%),linear-gradient(#071012,#0b1517);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;font-size:15px;min-height:100vh}.shell{max-width:560px;margin:0 auto;padding:0 17px 110px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}.hidden{display:none!important}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1d3436;margin-bottom:25px}.brand{display:flex;gap:12px;align-items:center}.brand-mark{height:41px;width:41px;display:flex;align-items:center;justify-content:center;border:1px solid #b4ee53;border-radius:11px;background:#183124;color:var(--lime);font-size:16px;font-weight:900;box-shadow:0 0 22px #9bfe4e20}.brand strong{font-size:20px;letter-spacing:.7px}.brand strong span,.section-head h2 span{color:var(--lime)}.brand small{display:block;color:var(--muted);letter-spacing:2px;font-size:9px;margin-top:4px}.dot-status{font-size:10px;font-weight:800;color:var(--mint);padding:8px 9px;border:1px solid #326657;border-radius:99px}.dot-status i{display:inline-block;width:6px;height:6px;background:var(--mint);border-radius:50%;margin-right:4px}.greeting{display:flex;justify-content:space-between;align-items:center;margin:5px 0 17px}.eyebrow{color:var(--lime);font-size:10px;font-weight:800;letter-spacing:1.7px}.greeting h1{font-size:25px;margin:8px 0}.greeting p:last-child,.section-head p:last-child{color:var(--muted);line-height:1.4;font-size:13px;margin:7px 0 0}.avatar{width:48px;height:48px;flex:none;border:1px solid #538c62;border-radius:14px;display:grid;place-items:center;color:var(--lime);background:linear-gradient(140deg,#173b32,#0c1b21);font-weight:900;box-shadow:0 0 20px #4de3a122}.demo-alert{padding:12px 13px;background:#302917;border:1px solid #745a2b;border-radius:12px;color:#f6d88f;font-size:12px;line-height:1.5;margin-bottom:20px}.pane{background:linear-gradient(145deg,#142124,#0d171a);border:1px solid #274041;border-radius:18px;box-shadow:0 13px 28px #0002}.hero{padding:27px 22px;position:relative;overflow:hidden;min-height:310px}.hero h2{font-size:35px;line-height:1.12;letter-spacing:-1.5px;position:relative;z-index:1;margin:13px 0}.hero h2 span{color:var(--lime)}.hero>p:not(.eyebrow){font-size:13px;line-height:1.5;max-width:245px;color:#b6c5c3;position:relative;z-index:1}.primary{border:none;background:var(--lime);color:#132113;padding:14px 17px;border-radius:12px;font-weight:800;position:relative;z-index:2}.primary span{margin-left:17px}.hero .primary{margin-top:15px}.orb{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.orb-1{width:185px;height:185px;top:43px;right:-73px;border:30px solid #5cebb027;box-shadow:0 0 70px #42fdbb38}.orb-2{width:125px;height:125px;top:111px;right:-49px;border:1px solid #b7fb4b;transform:rotate(20deg)}.statgrid,.tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:13px 0 21px}.stat{padding:18px 15px;min-height:116px}.stat small,.scanner-meta small{color:var(--muted);font-size:10px;letter-spacing:.6px;display:block}.stat strong{display:block;font-size:23px;letter-spacing:.4px;margin:9px 0 3px}.stat strong sub{font-size:12px;color:var(--muted)}.stat span{font-size:11px;color:var(--mint)}.section-title{margin:27px 1px 13px;font-size:16px}.tiles{margin-top:0}.tile{text-align:left;color:var(--text);padding:19px 15px 15px;min-height:145px;display:flex;flex-direction:column;position:relative}.icon-graphic{font-size:30px;color:var(--lime);margin-bottom:15px}.tile strong{font-size:15px}.tile small{color:var(--muted);font-size:11px;margin-top:5px}.tile>span{position:absolute;right:13px;bottom:14px;color:var(--lime)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:560px;padding:12px 10px calc(13px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;gap:2px;background:#091214eb;backdrop-filter:blur(20px);border-top:1px solid #244143;z-index:9}.nav-item{border:0;background:transparent;color:#879d9b;display:flex;align-items:center;flex-direction:column;padding:4px 10px;gap:4px}.nav-item span{font-size:25px;line-height:1}.nav-item small{font-size:10px}.nav-item.selected{color:var(--lime)}.page{display:none;animation:appear .18s ease}.page.active{display:block}@keyframes appear{from{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.section-head{margin:20px 0 22px}.section-head h2{font-size:29px;margin:8px 0}.tag{font-size:10px;letter-spacing:.7px;color:var(--mint);border:1px solid #315950;border-radius:30px;padding:7px 9px;vertical-align:middle}.scanner-panel,.verify{padding:19px}.scanner-panel label,.verify label{display:block;color:var(--muted);font-size:11px;margin:6px 0 9px;font-weight:700;letter-spacing:.7px}input,select{width:100%;border:1px solid #3c5556;border-radius:11px;background:#091315;color:#fff;padding:13px;margin-bottom:21px;outline:none}input:focus,select:focus{border-color:var(--lime)}.segmented{display:flex;padding:4px;background:#091315;border-radius:12px;gap:4px;border:1px solid #263c3e}.segment{flex:1;background:transparent;color:#95acaa;border:0;border-radius:9px;padding:12px 4px;font-weight:750}.segment.current{background:#254b39;color:var(--lime)}.scanner-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.scanner-meta strong{display:block;margin-top:6px;font-size:12px}.full{display:block;width:100%}.result{margin-top:15px;padding:15px}.result-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.result-title h3{font-size:19px;margin:13px 0 8px}.result-title>span{font-size:13px;color:var(--lime);font-weight:800}canvas{display:block;width:100%;height:210px;border-radius:11px;background:linear-gradient(#0a181a,#071214);margin:11px 0}.reasons{font-size:12px;color:#c7d9d2;line-height:1.6}.reasons p{margin:8px 0}.result-disclaimer{color:#edbf80;font-weight:800;font-size:10px;margin-top:12px}.history-list{padding:12px 15px}.history-item{display:flex;justify-content:space-between;border-bottom:1px solid #2a3f42;padding:12px 0;font-size:12px}.history-item:last-child{border:0}.history-item strong{color:var(--mint)}.subtle{color:var(--muted);font-size:13px}.lesson-list{display:flex;flex-direction:column;gap:12px}.lesson{padding:18px}.lesson .top{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.lesson b{font-size:15px}.lesson p{font-size:12px;color:#bbc9c5;line-height:1.6}.lesson small{font-size:11px;color:var(--muted)}.lesson.locked{opacity:.67}.profile-card{padding:18px}.profile-top{display:flex;gap:14px;align-items:center;margin-bottom:19px}.avatar.large{height:58px;width:58px;font-size:19px}.profile-top h3{margin:3px 0 6px}.profile-top p{margin:0;font-size:12px;color:var(--muted)}.row{display:flex;justify-content:space-between;padding:15px 0;border-top:1px solid #2d4243;font-size:13px;gap:10px}.row span{color:var(--muted)}.row strong{max-width:55%;overflow-wrap:anywhere;text-align:right}.verify{margin-top:15px}.verify h3{margin:3px 0 11px}.verify p,.verify small{color:var(--muted);line-height:1.6;font-size:12px}.verify small{display:block;margin-top:12px}.login{padding:25px;margin-top:50px;text-align:center}.login .hero-icon{font-size:50px;color:var(--lime)}.login h1{font-size:30px}.login h1 em{font-style:normal;color:var(--lime)}.login p{font-size:13px;line-height:1.65;color:var(--muted)}.login label{display:block;margin:30px 0 11px;font-size:11px;color:var(--muted);text-align:left}.login input{margin:0 0 10px}.login button{width:100%}.notice{font-size:11px;color:var(--muted);margin-top:22px;line-height:1.5}#toast{position:fixed;z-index:30;bottom:95px;left:50%;transform:translateX(-50%);max-width:520px;width:calc(100% - 40px);background:#213834;border:1px solid #54856c;color:#fff;padding:12px 16px;border-radius:12px;display:none;font-size:12px;box-shadow:0 8px 36px #0008}#toast.visible{display:block}@media(min-width:560px){.shell{border-left:1px solid #1d3235;border-right:1px solid #1d3235}}@media(max-width:350px){.shell{padding-left:10px;padding-right:10px}.hero h2{font-size:29px}.stat{padding:14px 11px}}

/* Keep links/buttons truly hidden until URLs are configured. */
[hidden] { display: none !important; }

/* SMART TRADE AI v0.4: tier cards and partner shortcuts */
.partner-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0 20px}
.partner-links a{padding:14px 8px;text-align:center;border:1px solid rgba(195,253,56,.22);background:rgba(24,34,29,.94);border-radius:14px;color:#e7f3dc;text-decoration:none;font-size:12px;font-weight:700}
.partner-links a[hidden]{display:none}
.levels-preview{padding:17px 18px;margin-top:18px}
.level-row{display:flex;justify-content:space-between;gap:8px;align-items:center;border-top:1px solid rgba(185,208,164,.13);padding:12px 0}
.level-row:first-of-type{margin-top:8px}
.level-row strong{color:#caff48;letter-spacing:.3px;font-size:13px}
.level-row span{font-size:12px;color:#e1e9d8;text-align:right}
.levels-preview>small{display:block;color:#a8b7a4;line-height:1.45;padding-top:8px}
@media(max-width:360px){.partner-links{grid-template-columns:1fr 1fr}.level-row{font-size:12px}}
/* v0.6 — timed direction UI */
.signal-panel{margin-bottom:14px}
.signal-caption{font-size:11px;line-height:1.55;color:#9cb9b4;margin:14px 0 1px}
.live-signal{padding:20px 18px;margin:15px 0;background:linear-gradient(145deg,#142626,#0a1417)}
.signal-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.signal-quality{font-size:10px;color:#fdc987;font-weight:800;text-align:right}
.signal-direction{font-size:49px;font-weight:1000;letter-spacing:-1.8px;margin:24px 0 5px;text-align:center}
.signal-direction.up{color:#aefd50;text-shadow:0 0 34px #9cfc4440}
.signal-direction.down{color:#ff8d7d;text-shadow:0 0 34px #f07b6d40}
.signal-pair{font-size:16px;text-align:center;color:#cedddd;font-weight:750}
.signal-counter{text-align:center;padding:17px;margin:20px 0;background:#08171a;border:1px solid #2d5150;border-radius:15px}
.signal-counter small{display:block;color:#9fbdb6;font-size:11px;letter-spacing:1px;margin-bottom:8px}
.signal-counter strong{display:block;font-variant-numeric:tabular-nums;font-size:45px;color:#f6fafa}
.signal-reason{font-size:13px;color:#d8e6df;line-height:1.5}
.signal-outcome{font-size:19px;color:#c5fd41;font-weight:900;text-align:center;min-height:25px}
.legacy-scanner{margin:20px 0;color:#b7c6c2}
.legacy-scanner>summary{cursor:pointer;padding:13px;background:#152727;border:1px solid #304b49;border-radius:12px;margin-bottom:10px;font-size:12px}
.legacy-scanner .scanner-panel{margin-top:12px}
/* v0.7 premium shell */
.header-controls{display:flex;align-items:center;gap:7px}
.lang-picker{width:59px;min-width:59px;margin:0;padding:8px 4px;background:#132421;border-color:#356855;color:#cbfc54;font-weight:850;font-size:12px;border-radius:10px}
.splash{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 43%,#1b2920 0%,#030605 60%,#010303);transition:opacity .35s ease,visibility .35s ease}
.splash.done{opacity:0;visibility:hidden;pointer-events:none}
.splash-inner{text-align:center;padding:24px;max-width:90vw}
.splash-ring{width:188px;height:188px;border:2px solid #c7ff48;border-radius:50%;display:grid;place-items:center;margin:0 auto 32px;box-shadow:0 0 45px #b5ff3138,inset 0 0 48px #b8ff2710;position:relative;animation:splashGlow 2.5s ease-in-out infinite}
.splash-ring:before{content:'';position:absolute;inset:-11px;border:2px solid #698343;border-top-color:#e3ff5a;border-right-color:transparent;border-radius:50%;animation:spin 2s linear infinite}
.splash-ring span{font-size:78px;font-weight:1000;letter-spacing:-8px;color:#dcff6a;text-shadow:0 4px 10px #adff474f}
.splash-logo{font-weight:1000;font-size:34px;letter-spacing:-1.2px;margin-bottom:25px}
.splash-logo strong{color:#c8ff39}
.splash-copy{color:#c6d0bf;font-size:17px;font-weight:650;line-height:1.5}
.splash-dots{display:flex;justify-content:center;gap:12px;margin-top:25px}
.splash-dots i{width:10px;height:10px;border-radius:50%;background:#cbff4b;animation:pulse .9s infinite alternate}
.splash-dots i:nth-child(2){animation-delay:.2s}.splash-dots i:nth-child(3){animation-delay:.4s}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{to{opacity:.2;transform:scale(.7)}}
@keyframes splashGlow{50%{box-shadow:0 0 70px #b5ff3169,inset 0 0 60px #b8ff272a}}
.id-button{display:flex;align-items:center;gap:12px;justify-content:space-between;border:1px solid #6bda9b;background:linear-gradient(100deg,#12251d,#1c4032);border-radius:14px;color:#e7ffe6;font-weight:850;text-align:left;padding:13px 14px;margin-top:8px;box-shadow:0 0 18px #52ff5623;min-height:62px}
.id-button .id-icon{display:grid;place-items:center;width:38px;height:38px;flex:none;background:#c5fd41;color:#0f2617;border-radius:10px;font-size:14px;font-weight:1000}
.id-button b{font-size:23px;color:#c5fd41}
.signal-panel select{min-height:62px;font-size:19px;font-weight:850;border-radius:14px;padding:14px 16px;margin-bottom:10px;border:1px solid #4f7068;background:#0d1b1b}
.signal-panel label{font-size:12px;letter-spacing:1.1px;margin-top:20px}
.signal-panel .primary{min-height:62px;font-size:16px;letter-spacing:.2px;margin-top:19px}
.market-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px;color:#a6c2b6;font-size:12px}
.market-row strong{color:#bdff58;border:1px solid #5c9d4f;border-radius:50px;padding:7px 10px;background:#1d3525;font-size:12px}
.count-badge{font-size:12px;color:#b8fa60;border:1px solid #48683c;border-radius:18px;padding:4px 8px;vertical-align:middle;float:right}
.active-signals{display:flex;flex-direction:column;gap:12px}
.signal-live-card{padding:20px;overflow:hidden;position:relative}
.signal-live-card:before{content:'';position:absolute;width:230px;height:230px;right:-170px;top:10px;border-radius:50%;background:#c4ff391a;filter:blur(30px);pointer-events:none}
.signal-card-top{display:flex;gap:10px;align-items:center;justify-content:space-between}
.source-pill{border:1px solid #377c64;border-radius:50px;color:#86ffcc;padding:7px 10px;font-size:11px;font-weight:850;letter-spacing:.6px}
.factor-pill{color:#c8fac1;font-size:11px;text-align:right}
.factor-pill b{font-size:18px;color:#c5fd41;white-space:nowrap}
.signal-live-direction{font-size:57px;font-weight:1000;text-align:center;margin:23px 0 6px;letter-spacing:-1px}
.signal-live-direction.up{color:#c5ff58;text-shadow:0 0 25px #8dff3654}
.signal-live-direction.down{color:#ff8776;text-shadow:0 0 25px #ff746847}
.signal-live-symbol{font-size:18px;color:#e7f2ec;text-align:center;font-weight:750}
.signal-timer{background:#071718;border:1px solid #365a55;border-radius:17px;padding:16px;text-align:center;margin:18px 0 12px}
.signal-timer small{display:block;font-size:10px;color:#9abbb7;letter-spacing:1px;margin-bottom:7px;font-weight:800}
.signal-timer strong{font-size:48px;letter-spacing:1.5px;font-variant-numeric:tabular-nums}
.signal-live-info{color:#c7ddd3;font-size:12px;line-height:1.5}
.factor-disclosure{font-size:10px;color:#87a99e;line-height:1.5}
.signal-finished{color:#b4fe71;font-size:11px}
.source-details{font-size:11px;color:#9ab2a8;line-height:1.45;border-top:1px solid #203735;padding-top:10px;margin-top:12px}
.source-details summary{cursor:pointer}
.admin-open,.outline-button{padding:15px;margin-top:14px;border:1px solid #568c62;background:#102820;color:#bfff5c;font-weight:800;border-radius:12px}
.admin-settings{margin-top:20px}
.gpt-row{display:flex!important;gap:12px;align-items:center;color:#f0f6eb!important;font-size:14px!important;letter-spacing:0!important;text-transform:none}
.gpt-row input{width:20px;height:20px;margin:0;accent-color:#c8ff42}
@media(max-width:370px){.brand strong{font-size:16px}.dot-status{font-size:9px}.signal-live-direction{font-size:45px}.splash-logo{font-size:27px}}
@media(prefers-reduced-motion:reduce){.splash-ring,.splash-ring:before,.splash-dots i{animation:none}}

/* v0.8: research workspace, genuinely sourced market preview, multi-affiliate admin */
.scan-mode-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:16px}
.scan-mode-btn{padding:13px 5px;min-height:67px;border:1px solid #365347;border-radius:12px;color:#c5d6c9;background:#13201c;font-size:11px;font-weight:800}
.scan-mode-btn.selected{background:#d1ff2f;color:#13200d;border-color:#d1ff2f}
.scan-special,.streamer-admin{padding:20px;margin:18px 0}
.scan-special h3,.streamer-admin h3{color:#deff77;margin-top:0}
.scan-special input[type=file]{padding:14px 8px}
.scan-special .primary{margin:14px 0}
.preview-frame{border:1px solid #35534a;border-radius:15px;overflow:hidden;padding:11px;background:#081312;margin:10px 0 22px}
.preview-caption{display:flex;align-items:center;gap:10px;justify-content:space-between;font-size:10px;color:#a6c7b1;margin-bottom:10px}
.preview-caption b{color:#d6ff74}.preview-caption span{font-size:9px;text-align:right}
#marketPreview{display:block;width:100%;height:180px}
.indicators-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:16px 0}
.indicators-grid label{display:flex!important;align-items:center;padding:11px;gap:9px;background:#111d1b;border:1px solid #3a5249;border-radius:10px;font-size:12px!important;color:#effde9!important}
.indicators-grid input{width:16px;height:16px;accent-color:#bdff45}
.indicator-line{padding:14px 5px;border-bottom:1px solid #3a5144;display:flex;justify-content:space-between;gap:5px;flex-wrap:wrap;align-items:center}
.indicator-line strong{color:#d4ff57;font-size:20px}.indicator-line small{display:block;width:100%;color:#9bb8aa}
.screenshot-preview{width:100%;max-height:360px;object-fit:contain;border-radius:13px;margin-top:12px}
.gpt-full,.signal-gpt{padding:15px;border-radius:12px;border:1px solid #506b3a;background:#142218;color:#e0eedd;white-space:pre-wrap;line-height:1.6;font-size:13px}
.signal-gpt{margin-top:15px}.signal-gpt>span{color:#caff50;font-size:11px;font-weight:850}.signal-gpt p{white-space:pre-wrap}
.streamer-admin label{display:block;color:#b4c2b6;font-size:12px;margin-top:14px;margin-bottom:6px}
.streamer-admin input,.streamer-admin select{min-height:45px}
.streamer-admin .gpt-row{margin:14px 0}.streamer-link{word-break:break-all;color:#cdff5f;margin:15px 0}

.scan-radar{position:fixed;inset:0;z-index:110;background:#060d0ced;backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}
.scan-radar-top{font-size:11px;letter-spacing:3px;color:#cbff68;font-weight:900}
.scan-radar-title{font-size:30px;letter-spacing:1px;color:white;font-weight:1000;margin:20px 0}
.scan-radar-disc{width:min(74vw,310px);height:min(74vw,310px);position:relative;border:2px solid #5d795c;border-radius:50%;background:repeating-radial-gradient(circle,#15271c 0px,#15271c 1px,#08140e 2px,#08140e 48px);box-shadow:0 0 65px #baff2d2d;overflow:hidden}
.scan-radar-disc:before,.scan-radar-disc:after{content:'';position:absolute;background:#3d5b38;opacity:.4;left:50%;top:0;width:1px;height:100%}
.scan-radar-disc:after{transform:rotate(90deg)}
.scan-radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#bdff4c00 0deg,#baff443f 35deg,#baff44dd 45deg,transparent 46deg);animation:spin 2.3s linear infinite}
.scan-radar-logo{position:absolute;inset:0;display:grid;place-items:center;color:#cbff58;font-size:55px;font-weight:1000}
.scan-radar>p{color:#a6c7af;max-width:340px;line-height:1.5}
@media(prefers-reduced-motion:reduce){.scan-radar-sweep{animation:none}}
