:root{--bg:#f4f8fb;--card:#fff;--line:#dce6ef;--text:#18304f;--muted:#7f8da0;--teal:#16b9bf;--teal2:#22dbe1;--green:#09bf22;--green2:#20e747;--navy:#0d1e42;--navy2:#142b5b;--orange:#ff6c32;--pink:#ff6578;--yellow:#ffd44a;--shadow:0 9px 24px rgba(17,44,78,.07);--radius:14px}*{box-sizing:border-box}html,body{margin:0;min-width:320px;background:linear-gradient(180deg,#f8fbfd,#edf3f8);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{cursor:pointer}a{text-decoration:none;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid rgba(22,185,191,.2);outline-offset:2px}.card,.panel{background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
/* LOGIN */.login-body{min-height:100svh;overflow-x:hidden}.login-shell{min-height:100svh;display:grid;place-items:center;padding:18px;position:relative;overflow:hidden}.login-glow{position:absolute;border-radius:50%;filter:blur(72px);pointer-events:none;opacity:.42}.g1{width:320px;height:320px;background:#31e7c5;right:-120px;top:-100px}.g2{width:290px;height:290px;background:#4bc7ff;left:-140px;bottom:-120px}.login-card{position:relative;z-index:1;width:min(450px,100%);padding:24px;background:rgba(255,255,255,.96);border:1px solid #dce7f0;border-radius:24px;box-shadow:0 28px 80px rgba(14,44,80,.13)}.brand-large{display:flex;align-items:center;gap:11px}.brand-icon,.mini-mark{display:grid;place-items:center;border-radius:13px;color:#fff;font-weight:1000;letter-spacing:-.04em;background:linear-gradient(135deg,#12bfc7,#1ddad0);box-shadow:0 9px 22px rgba(19,192,202,.2)}.brand-icon{width:46px;height:46px;font-size:15px}.brand-large strong{font-size:12px;letter-spacing:.1em}.brand-large small{display:block;color:#8d98a8;font-size:8px;letter-spacing:.15em;margin-top:3px}.login-card h1{margin:28px 0 7px;font-size:34px;letter-spacing:-.03em}.lead{margin:0 0 18px;color:#8390a2;font-size:12px;line-height:1.65}.login-form label{display:block;color:#7b8798;font-size:10px;margin:13px 0}.login-form input{display:block;width:100%;margin-top:6px;padding:13px;border-radius:12px;border:1px solid #d4e0eb;background:#f9fbfd;color:#18304f}.password-wrap{position:relative}.password-wrap input{padding-right:48px}.password-wrap button{position:absolute;right:5px;top:5px;width:34px;height:34px;border:0;border-radius:9px;background:#eef4f7;color:#718095}.primary-btn{width:100%;margin-top:10px;padding:13px;border:0;border-radius:12px;background:linear-gradient(90deg,#0dc8d1,#17dcbf);color:#fff;font-weight:1000;letter-spacing:.06em;box-shadow:0 11px 22px rgba(15,201,207,.18)}.primary-btn:disabled{opacity:.65}.divider{display:flex;align-items:center;gap:9px;color:#a5afbc;font-size:8px;margin:17px 0}.divider:before,.divider:after{content:"";height:1px;background:#e6ecf1;flex:1}.whatsapp-login{display:flex;align-items:center;gap:11px;padding:12px;border-radius:13px;background:#e8fbf0;border:1px solid #bdebd1;color:#128d54}.wa-icon{width:35px;height:35px;border-radius:10px;background:#18bf55;color:#fff;display:grid;place-items:center;flex:0 0 auto}.wa-icon svg{width:21px;height:21px;fill:currentColor}.whatsapp-login b{display:block;font-size:11px}.whatsapp-login small{display:block;color:#55a47e;font-size:9px;margin-top:2px}.login-note{text-align:center;color:#9aa6b5;font-size:9px;line-height:1.55;margin:14px 4px 0}.login-footer{text-align:center;color:#a5afbd;font-size:8px;letter-spacing:.08em;margin-top:16px}.form-error{margin-top:9px;padding:9px 10px;border-radius:10px;background:#fff1f4;border:1px solid #ffd0d9;color:#c93d56;font-size:10px}
/* APP HEADER */.app-body.dark{--bg:#07101f;--card:#0e1b34;--line:#213350;--text:#eaf5ff;--muted:#97a7ba;background:#07101f}.app-body.dark .card,.app-body.dark .panel{background:#0e1b34}.app-body.dark .market-select,.app-body.dark .theme-btn,.app-body.dark .icon-btn{background:#132442;color:#dfe9f5;border-color:#263958}.app-header{position:sticky;top:0;z-index:30;background:rgba(248,251,253,.93);backdrop-filter:blur(14px);border-bottom:1px solid #dfe7ef}.dark .app-header{background:rgba(7,16,31,.88);border-bottom-color:#1e304d}.header-inner{max-width:960px;margin:0 auto;padding:10px 13px;display:flex;align-items:center;justify-content:space-between;gap:10px}.title-group{display:flex;align-items:center;gap:9px}.mini-mark{width:36px;height:36px;font-size:11px}.app-title{font-size:15px;font-weight:1000;letter-spacing:.06em}.app-title span{color:#15b4bd}.app-subtitle{font-size:7px;letter-spacing:.13em;color:#94a1af;margin-top:2px}.header-actions{display:flex;align-items:center;gap:6px}.connection-pill{display:flex;align-items:center;gap:6px;padding:8px 9px;border-radius:10px;background:#eafbf0;border:1px solid #c1ead2;color:#15944f;font-size:8px;font-weight:1000}.connection-pill.off{background:#fff1f4;color:#cd5266;border-color:#ffd4db}.dot{width:6px;height:6px;border-radius:50%;background:#18d961;box-shadow:0 0 0 4px rgba(24,217,97,.12)}.off .dot{background:#ff667b;box-shadow:0 0 0 4px rgba(255,102,123,.12)}.icon-btn{width:32px;height:32px;border-radius:9px;background:#fff;border:1px solid #dfe6ed;color:#7e8c9f}.dashboard-wrap{width:min(960px,100%);margin:0 auto;padding:11px 13px 26px}.top-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10px}.market-card,.live-card{padding:11px}.card-label,.section-title,.panel-title{font-size:9px;font-weight:1000;letter-spacing:.03em}.card-label{color:#9a6c3d}.market-select{width:100%;margin-top:6px;border:1px solid #d7e1ea;background:#edf2f6;color:#63738a;border-radius:9px;padding:9px 10px;font-size:10px}.connect-btn{width:100%;margin-top:6px;border:0;border-radius:9px;padding:9px;background:#08bf24;color:#fff;font-size:10px;font-weight:1000;box-shadow:0 7px 13px rgba(8,191,36,.18);transition:.2s}.connect-btn.stop{background:#ff6679}.connect-icon{margin-right:4px}.market-meta{display:flex;justify-content:space-between;color:#8d99a9;font-size:8px;margin-top:7px}.live-card{display:flex;flex-direction:column;justify-content:center;align-items:center}.live-card .card-label{color:#b76a42}.quote{color:#8d98a8;font-size:11px;margin-top:4px;min-height:14px}.live-digit{font-size:35px;font-weight:1000;color:#06a7c8;line-height:1.02;margin-top:1px;text-shadow:0 5px 20px rgba(6,167,200,.16)}.live-digit.flash{animation:flash .35s ease}@keyframes flash{0%{transform:scale(.65);opacity:.25}70%{transform:scale(1.13)}100%{transform:scale(1);opacity:1}}.live-meta{display:flex;gap:12px;color:#9aa5b4;font-size:8px;margin-top:4px}
.section{margin-top:10px}.section-title{color:#9c6a35;margin:6px 2px}.tiny-icon{color:#13aeba;margin-right:4px}.patterns{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.pattern{min-height:58px;padding:7px 5px;text-align:center;background:#fff;border:1px solid #dce6ef;border-radius:10px;display:flex;flex-direction:column;justify-content:center}.pattern .p-title{font-size:7px;color:#8793a3}.pattern .p-value{font-size:11px;font-weight:1000;margin-top:2px}.pattern .p-pct{font-size:7px;color:#7b8a9e;margin-top:1px}.p-yellow{color:#f0be37}.p-red{color:#ef5666}.p-orange{color:#ff8057}.p-pink{color:#e86776}.dark-patterns{grid-template-columns:repeat(3,1fr);margin-top:6px}.dark-patterns .pattern{background:#142b58;border-color:#142b58}.dark-patterns .p-title{color:#9aa8c2}.dark-patterns .p-value{color:#ff7080}.dark-patterns .p-pct{color:#7de8dd}.panel{margin-top:10px;padding:10px}.strategy-card,.digits-card,.performance-card,.chart-card,.stats-panel{background:#fff}.strategy-card{background:#0e234b;border-color:#17325f;color:#fff}.panel-title{display:flex;align-items:center;justify-content:space-between}.strategy-card .panel-title{color:#fff}.panel-hint{font-size:8px;color:#8a98a9;font-weight:700}.strategy-card .panel-hint{color:#9db0cd}.strategy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px}.strategy-btn{min-height:58px;border:1px solid #243c67;background:#122a56;border-radius:9px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:8px;transition:.18s}.strategy-btn .ico{font-size:15px;line-height:1;color:#d8e7fb}.strategy-btn.active{background:#10cbd2;border-color:#10cbd2;color:#062b40;box-shadow:0 8px 17px rgba(14,203,210,.2)}.strategy-btn.active .ico{color:#062b40}.digit-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin-top:7px}.digit-btn{height:31px;border:1px solid #e0e8ef;background:#eff4f8;color:#8090a4;border-radius:8px;font-weight:1000;font-size:10px}.digit-btn.selected{background:#ff6b2f;border-color:#ff6b2f;color:#fff;box-shadow:0 7px 15px rgba(255,107,47,.23)}.signal-btn{width:100%;margin-top:8px;border:0;border-radius:10px;padding:12px;background:linear-gradient(90deg,#1be81f,#12d83d);color:#08310d;font-weight:1000;letter-spacing:.03em;box-shadow:0 8px 16px rgba(16,222,50,.2);transition:.15s}.signal-btn:active{transform:translateY(1px)}.bolt{font-size:16px;margin-right:5px}.signal-result{margin-top:8px;border-radius:11px;border:1px solid #bde7d0;background:#effbf4;padding:10px;color:#14774a}.signal-result strong{font-size:16px}.signal-result .sig-line{display:flex;justify-content:space-between;font-size:9px;margin-top:3px}.signal-result .high{color:#0a9b5c}.signal-result .low{color:#d2821e}.signal-result .warn{color:#c95260}.perf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:7px}.perf-grid>div{text-align:center;padding:10px 4px;border-radius:10px;background:#f4f8fb;border:1px solid #e2e9ef}.perf-grid strong{display:block;font-size:18px;font-weight:1000}.perf-grid div:nth-child(1) strong{color:#10dc27}.perf-grid div:nth-child(2) strong{color:#ff667a}.perf-grid div:nth-child(3) strong{color:#0bc9bd}.perf-grid small{display:block;color:#8d98a8;font-size:8px;margin-top:2px}.chart-wrap{margin-top:7px;border-radius:11px;background:#f6f9fb;border:1px solid #e0e7ee;height:220px;overflow:hidden}.chart-wrap canvas{width:100%;height:100%;display:block}.analysis-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10px}.analysis-grid .stats-panel:nth-child(3){grid-column:1/-1}.freq-row{display:grid;grid-template-columns:18px 1fr 35px;gap:6px;align-items:center;margin-top:6px}.freq-row span{font-size:9px;color:#7c8a9c}.bar-bg{height:9px;border-radius:99px;background:#edf2f6;overflow:hidden}.bar{height:100%;border-radius:99px;background:linear-gradient(90deg,#14bcc2,#32d6d5);transform-origin:left center;animation:barIn .5s ease}@keyframes barIn{from{transform:scaleX(.05)}}.recent-ticks{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px;max-height:110px;overflow:auto}.tick-chip{width:25px;height:25px;border-radius:7px;background:#eff4f8;border:1px solid #e0e8ef;color:#6d7e91;display:grid;place-items:center;font-weight:1000;font-size:9px}.tick-chip.latest{background:#ff6c31;color:#fff;border-color:#ff6c31}.streak-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px}.streak{padding:9px 5px;border:1px solid #e0e7ef;border-radius:9px;text-align:center;background:#f7fafc}.streak b{display:block;font-size:13px}.streak small{display:block;font-size:7px;color:#8793a2;margin-top:2px}.disclaimer{font-size:8px;line-height:1.5;color:#7d8a9b;background:#f7fafc}.app-footer{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;color:#929dac;font-size:8px;padding:16px 0 5px}.app-footer a{color:#0bafbb;font-weight:1000}.app-footer button{border:0;background:transparent;color:#d7586d;font-size:8px;font-weight:1000}.toast{position:fixed;z-index:100;left:50%;top:15px;transform:translateX(-50%);padding:10px 12px;background:#10264c;color:#fff;border-radius:10px;font-size:10px;box-shadow:0 12px 28px rgba(5,22,50,.2)}
/* ADMIN */.admin-wrap{max-width:960px;margin:0 auto;padding:16px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.admin-top b{font-size:14px;letter-spacing:.06em}.admin-top span{font-size:8px;color:#8c99a7;margin-left:6px}.admin-card{background:#fff;border:1px solid #dfe7ef;border-radius:15px;padding:14px;box-shadow:var(--shadow)}.section-head h2{margin:0;font-size:18px}.section-head p{margin:4px 0 12px;color:#8190a2;font-size:10px}.admin-form{display:grid;grid-template-columns:1fr 1fr 110px 150px;gap:7px}.admin-form input{border:1px solid #d9e3eb;border-radius:9px;padding:10px}.btn{border:0;border-radius:9px;padding:10px 12px;font-size:9px;font-weight:1000}.btn.green{background:#10c82b;color:#fff}.btn.ghost{background:#fff;border:1px solid #dce4eb}.admin-msg{font-size:10px;margin:10px 0}.admin-msg.ok{color:#17864f}.admin-msg.error{color:#c54b60}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:10px}th,td{padding:9px 7px;border-top:1px solid #edf1f5;text-align:left;vertical-align:middle}.status{font-size:8px;font-weight:1000;padding:4px 6px;border-radius:7px}.status.active{background:#e7fbef;color:#1a9153}.status.suspended,.status.expired{background:#fff0f3;color:#d45668}.status.pending{background:#fff8de;color:#b08516}.actions{display:flex;gap:4px;flex-wrap:wrap}.actions button{border:1px solid #d8e1e9;background:#fff;border-radius:7px;padding:5px 7px;font-size:8px}.actions button.danger{color:#cb5468}
@media(max-width:720px){.header-inner{padding:9px 10px}.app-title{font-size:13px}.connection-pill{font-size:7px}.top-grid{grid-template-columns:1fr 1fr}.patterns{grid-template-columns:repeat(2,1fr)}.dark-patterns{grid-template-columns:repeat(3,1fr)}.strategy-grid{grid-template-columns:repeat(4,1fr)}.analysis-grid{grid-template-columns:1fr}.analysis-grid .stats-panel:nth-child(3){grid-column:auto}.streak-grid{grid-template-columns:repeat(2,1fr)}.admin-form{grid-template-columns:1fr 1fr}.admin-form button{grid-column:1/-1}}
@media(max-width:460px){.dashboard-wrap{padding:8px 9px 22px}.top-grid{gap:7px}.market-card,.live-card,.panel{padding:9px}.live-digit{font-size:31px}.digit-grid{gap:3px}.digit-btn{height:29px}.strategy-grid{gap:4px}.strategy-btn{min-height:55px;font-size:7px}.strategy-btn .ico{font-size:14px}.dark-patterns{gap:4px}.pattern{min-height:54px}.chart-wrap{height:185px}.login-card{padding:20px}.brand-large strong{font-size:10px}.login-card h1{font-size:30px}.header-actions .icon-btn{display:none}.header-actions .connection-pill{padding:7px 8px}.app-title{font-size:11px}.app-subtitle{font-size:6px}.mini-mark{width:31px;height:31px}}
