:root{--bg:#0b1120;--panel:#131b30;--panel2:#1a2540;--line:#283651;--txt:#f4f7ff;--sub:#9faccc;--green:#4de6a3;--red:#fa7188;--purple:#8b82fa;--blue:#65b6ff;--yellow:#ffc87b;--radius:19px;--shadow:0 12px 40px #05091242}*{box-sizing:border-box}html{height:100%;background:var(--bg)}body{margin:0;color:var(--txt);background:radial-gradient(circle at 70% -10%,#222d5799,transparent 45%),var(--bg);font:14px/1.42 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}.app-shell{max-width:850px;margin:auto;min-height:100vh;padding-bottom:calc(105px + env(safe-area-inset-bottom))}.topbar{height:76px;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0e}.brand{display:flex;align-items:center;gap:12px}.brand-icon{height:43px;width:43px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#176d56,#31cf99);font-size:30px;font-weight:800;color:white;box-shadow:0 5px 18px #08e69d30}.brand strong{display:block;font-size:20px;letter-spacing:-.7px;line-height:1.15}.brand em{font-style:normal;color:var(--green)}.brand small{display:block;color:var(--sub);font-size:11px;letter-spacing:.1px;margin-top:4px}.icon-btn{border:1px solid var(--line);height:40px;width:40px;border-radius:12px;background:var(--panel2);color:var(--txt);font-size:26px}.page{padding:20px 17px}.welcome{display:flex;align-items:flex-end;justify-content:space-between;margin:1px 0 17px}.welcome h1{font-size:22px;margin:0 0 4px;letter-spacing:-.5px}.muted{color:var(--sub)}.small{font-size:12px}.tiny{font-size:11px}.date-pill{color:#bdb8ff;background:#7774f321;border:1px solid #8683ee47;border-radius:99px;padding:7px 10px;font-size:11px}.statusrow{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.status{display:inline-flex;align-items:center;gap:7px;font-size:11px;background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:8px 11px;color:var(--sub)}.dot{width:7px;height:7px;border-radius:50%;background:var(--red)}.dot.good{background:var(--green);box-shadow:0 0 9px #4de6a37a}.dot.warn{background:var(--yellow)}.statsgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metric{background:linear-gradient(145deg,#1b2640,#121b30);border:1px solid var(--line);border-radius:var(--radius);padding:16px;min-height:118px;box-shadow:var(--shadow);position:relative;overflow:hidden}.metric:after{content:'◦';position:absolute;right:11px;top:-14px;font-size:64px;color:#ffffff07}.metric .kicker{font-size:11px;color:#afbbd6;display:block;margin-bottom:9px}.metric strong{display:block;font-weight:750;font-size:clamp(19px,5vw,26px);letter-spacing:-.8px;white-space:nowrap}.metric small{display:block;font-size:11px;color:var(--sub);margin-top:6px}.green{color:var(--green)!important}.red{color:var(--red)!important}.purple{color:#b2aaff!important}.yellow{color:var(--yellow)!important}.sectiontop{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:24px 0 11px}.sectiontop h2{margin:0;font-size:17px;letter-spacing:-.3px}.sectiontop button,.textbtn{color:#aaa5ff;background:transparent;border:none;font-weight:650;padding:5px 0}.count{padding:3px 8px;border-radius:9px;background:#726cf337;color:#cac7ff;font-size:11px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:11px}.signalitem{padding:15px 15px 13px}.row{display:flex;align-items:center;justify-content:space-between;gap:9px}.tickericon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#253954;color:#a9d5ff;font-weight:800;letter-spacing:-1px;font-size:13px;flex-shrink:0}.tickericon.green-bg{background:#1367474a;color:var(--green)}.tickericon.red-bg{background:#79354a63;color:var(--red)}.tickericon.purple-bg{background:#51429c58;color:#c0baff}.signalheading{display:flex;align-items:center;gap:11px;min-width:0}.signalheading strong{font-size:16px}.signalheading small{display:block;color:var(--sub);font-size:11px;margin-top:3px}.chip{padding:5px 8px;border-radius:7px;font-weight:700;font-size:10px;white-space:nowrap}.chip.buy{background:#104832;color:var(--green)}.chip.watch{background:#41355f;color:#c1b6ff}.chip.overbought{background:#59263a;color:#ffa1b1}.sigdetail{color:var(--sub);font-size:12px;margin:12px 0 12px}.sigaction{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--line);gap:10px}.btn-mini{border:none;border-radius:11px;padding:9px 13px;font-size:12px;font-weight:750;background:#4339ab;color:#f2efff}.btn-mini.alt{background:#194b3c;color:#70f7c1}.link-action{color:var(--sub);text-decoration:none;font-size:12px}.link-action:hover{color:white}.position{padding:16px}.pos-main{margin-bottom:12px}.amount{font-size:21px;font-weight:750;letter-spacing:-.6px}.pair{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin:7px 0;color:var(--sub)}.pair b{font-size:12px;color:var(--txt);font-weight:650}.progress{height:5px;border-radius:8px;background:#30405d;overflow:hidden;margin-top:12px}.progress span{display:block;height:100%;background:linear-gradient(90deg,#6b73f5,var(--green));border-radius:8px}.pos-actions{display:flex;gap:8px;margin-top:13px}.pos-actions button{flex:1;border:1px solid #3b4875;background:#253355;color:#cdd8ff;padding:10px;border-radius:11px;font-weight:650;font-size:12px}.pos-actions button.sell{background:#203d3a;color:var(--green);border-color:#2a5e52}.entrylist{border-top:1px solid var(--line);margin-top:12px;padding-top:8px}.entry{padding:10px 0;border-bottom:1px solid #ffffff0b;display:flex;justify-content:space-between;gap:8px;align-items:center}.entry:last-child{border:0}.entry strong{font-size:12px}.entry small{display:block;color:var(--sub);font-size:11px;margin-top:3px}.entry-buttons{display:flex;gap:5px;flex-shrink:0}.entry-buttons button{border:1px solid #4e5973;color:#c3cce2;background:#23304c;border-radius:9px;font-size:11px;padding:7px 10px}.entry-buttons button.sale{border-color:#3d7c6e;color:var(--green)}.button{border-radius:13px;padding:12px 17px;font-weight:750;border:1px solid transparent}.button.primary{color:white;background:linear-gradient(130deg,#655beb,#4239b4)}.button.ghost{background:#293451;color:#c8d1e6;border-color:#394763}.button.full{width:100%;margin:9px 0}.filterbar{display:flex;gap:7px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.filterbar button{border:1px solid var(--line);background:#18233b;color:var(--sub);border-radius:11px;padding:9px 12px;white-space:nowrap;font-size:12px}.filterbar button.active{color:#dedcff;background:#534bb365;border-color:#766ee8}.empty{padding:35px 20px;text-align:center;background:#17213a;border:1px dashed #334363;border-radius:18px;color:var(--sub);margin-top:14px}.empty .glyph{font-size:34px;display:block;margin-bottom:9px}.empty h3{color:var(--txt);margin:0 0 8px;font-size:16px}.empty p{margin:0 0 10px;font-size:12px}.info{font-size:12px;padding:12px 13px;border-radius:12px;background:#39395649;border:1px solid #665e9b50;color:#c6c6e2;margin:14px 0}.warning{background:#533c344a;border-color:#926a365c;color:#f4ccab}.separator{height:1px;background:var(--line);margin:15px 0}.historyitem{padding:15px}.historyitem .pnl{font-size:16px;font-weight:700}.tabbar{display:flex;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;margin:auto;max-width:850px;background:#121b30f6;backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:10px 5px calc(10px + env(safe-area-inset-bottom));z-index:10}.tab{border:none;background:none;color:#8190b1;display:flex;align-items:center;flex-direction:column;gap:4px;font-size:10px;padding:1px 9px;min-width:52px}.tab .tab-ico{font-size:24px;line-height:1.2}.tab.active{color:#a9a3ff}.tab.active .tab-ico{text-shadow:0 0 10px #a9a3ff55}.overlay{position:fixed;inset:0;background:#02050cbf;z-index:20;display:flex;align-items:flex-end;justify-content:center}.hidden{display:none!important}.sheet{width:100%;max-width:580px;background:linear-gradient(140deg,#1b2640,#10192b);border:1px solid #435074;border-radius:25px 25px 0 0;max-height:91dvh;overflow:auto;padding:10px 19px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -18px 90px #0009}.sheet-handle{height:5px;width:50px;background:#576581;border-radius:5px;margin:0 auto 16px}.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sheet-head h2{font-size:19px;margin:0}.close{border:none;background:transparent;color:var(--sub);font-size:19px;padding:8px}.field{display:block;margin:12px 0}.field>span{display:block;margin-bottom:6px;font-size:12px;color:#b1bed9}.field input,.field select,.field textarea{background:#0c1428;border:1px solid #405070;border-radius:11px;color:white;padding:12px 13px;width:100%;outline:0}.field input:focus,.field select:focus{border-color:#877fff}.field small{display:block;margin-top:6px;color:var(--sub);font-size:11px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-grid>.field{margin:7px 0}.preview{background:#162840;border:1px solid #355b70;border-radius:13px;padding:12px;margin:15px 0;color:#d5e9ff;font-size:12px}.preview b{color:var(--green)}.form-error{background:#692c3b55;color:#ff9aa9;border:1px solid #a0495a;border-radius:10px;padding:9px;margin:10px 0;font-size:12px}.form-actions{display:flex;gap:10px;margin-top:17px}.form-actions button{flex:1}.toast{position:fixed;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));transform:translateX(-50%);border:1px solid #495576;background:#273451;color:white;border-radius:13px;padding:13px 16px;z-index:40;box-shadow:0 12px 35px #0008;text-align:center;max-width:90vw;min-width:250px}.loading{padding:100px 20px;text-align:center;color:var(--sub)}.spinner{height:35px;width:35px;border:3px solid #3e4a69;border-top-color:#8780fc;border-radius:50%;margin:0 auto 14px;animation:rotate 1s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}@media(min-width:650px){.topbar{padding-left:25px;padding-right:25px}.page{padding:24px 27px}.statsgrid{grid-template-columns:repeat(4,1fr)}.cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.cards-grid>.card{margin:0}.metric strong{font-size:23px}}
