:root{
  --bg:#071321;--bg2:#091a2d;--panel:#0d2036;--panel2:#102943;--card:rgba(17,42,69,.94);
  --line:rgba(151,215,255,.18);--line2:rgba(86,226,255,.28);--text:#f5fbff;--muted:#9fb8d2;--muted2:#708aa6;
  --cyan:#58e8ff;--violet:#8873ff;--green:#59e7ab;--red:#ff617a;--amber:#ffc76b;--shadow:0 22px 80px rgba(0,0,0,.34);
  --safe-bottom:env(safe-area-inset-bottom);--safe-top:env(safe-area-inset-top)
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;min-height:100%;background:#050d17;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC",Helvetica,Arial,sans-serif}
body{overscroll-behavior:none}
button,input,textarea,select{font:inherit;color:inherit}button{border:0;cursor:pointer}input,textarea,select{outline:none}
button:disabled{opacity:.45;cursor:default}
.hidden{display:none!important}
.app-shell{position:relative;min-height:100dvh;max-width:820px;margin:0 auto;overflow:hidden;background:
  radial-gradient(circle at 10% -10%,rgba(88,232,255,.12),transparent 30%),
  radial-gradient(circle at 92% 8%,rgba(136,115,255,.11),transparent 28%),
  linear-gradient(180deg,#071321 0%,#091a2d 56%,#071321 100%)}
.grid-glow{position:fixed;inset:0;pointer-events:none;opacity:.14;background-image:linear-gradient(rgba(118,195,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(118,195,255,.08) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 88%)}
.aurora{position:fixed;width:320px;height:320px;border-radius:50%;filter:blur(80px);opacity:.13;pointer-events:none}.a1{background:var(--cyan);left:-200px;top:120px}.a2{background:var(--violet);right:-210px;top:380px}
.topbar{position:sticky;top:0;z-index:15;height:76px;padding:var(--safe-top) 16px 0;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(7,19,33,.97),rgba(7,19,33,.76));backdrop-filter:blur(22px);border-bottom:1px solid rgba(160,215,255,.07)}
.brand-wrap{display:flex;align-items:center;gap:10px;min-width:0}.brand-mark{width:44px;height:44px;border-radius:14px;border:1px solid rgba(136,115,255,.4);box-shadow:0 0 30px rgba(88,232,255,.12);background:rgba(10,22,39,.9);display:grid;place-items:center;overflow:hidden}.brand-mark img{width:35px;height:35px}.brand-name{font-size:16px;font-weight:950;letter-spacing:2.2px;white-space:nowrap}.brand-name span{font-weight:700;color:#9db2c8;letter-spacing:2.8px}.brand-sub{font-size:8px;color:#6f89a5;letter-spacing:2.2px;margin-top:2px}.top-actions{display:flex;gap:7px}.icon-btn,.round-btn{width:42px;height:42px;border-radius:14px;background:rgba(12,31,52,.82);border:1px solid var(--line);color:#bcd3e8;box-shadow:0 12px 30px rgba(0,0,0,.18);display:grid;place-items:center;font-size:19px}.icon-btn:active,.round-btn:active,.tab:active,.primary:active,.secondary:active,.action:active,.composer-btn:active{transform:scale(.97)}
.view{position:relative;z-index:1;padding:10px 14px calc(88px + var(--safe-bottom));min-height:calc(100dvh - 76px)}
.hero{padding:18px 5px 14px}.eyebrow{font-size:9px;letter-spacing:3px;font-weight:900;color:#62dff8;text-transform:uppercase}.hero h1{margin:4px 0 4px;font-size:35px;line-height:1.04;letter-spacing:-1px}.hero p{margin:0;color:#a9bed4;font-size:12px;line-height:1.65;max-width:660px}.version-chip{display:inline-flex;margin-top:10px;padding:7px 10px;border-radius:999px;border:1px solid rgba(88,232,255,.16);background:rgba(88,232,255,.05);color:#8beaff;font-size:9px;font-weight:900;letter-spacing:.6px}
.card{border:1px solid var(--line);background:linear-gradient(150deg,rgba(18,45,75,.95),rgba(10,27,46,.93));border-radius:22px;padding:14px;box-shadow:0 16px 60px rgba(0,0,0,.18);margin-bottom:12px}.soft{background:rgba(10,28,48,.76)}
.section-head{display:flex;align-items:center;justify-content:space-between;margin:18px 4px 9px}.section-title{font-size:13px;font-weight:950;letter-spacing:.3px}.section-action{font-size:10px;color:#85e7ff;background:transparent;padding:6px}.sub{color:var(--muted);font-size:10px;line-height:1.55}.title{font-size:13px;font-weight:850}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.input,.textarea,.select{width:100%;background:#081a2c;border:1px solid rgba(147,211,255,.18);border-radius:13px;padding:11px 12px;color:#eaf8ff;font-size:12px}.textarea{min-height:76px;resize:none}.input:focus,.textarea:focus,.select:focus{border-color:rgba(88,232,255,.54);box-shadow:0 0 0 3px rgba(88,232,255,.07)}.label{display:block;color:#8da8c4;font-size:9px;font-weight:850;letter-spacing:.7px;margin:0 0 6px}.label+.input{margin-bottom:10px}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.primary,.secondary{width:100%;padding:12px 14px;border-radius:14px;font-size:11px;font-weight:950;letter-spacing:.3px}.primary{color:#03111c;background:linear-gradient(135deg,var(--cyan),#97eeff 60%,#8c7bff);box-shadow:0 12px 30px rgba(88,232,255,.14)}.secondary{color:#c9e8ff;background:rgba(13,34,56,.9);border:1px solid rgba(151,215,255,.17)}.danger{color:#ff9cac;border-color:rgba(255,97,122,.2)}
.action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.action{min-height:82px;border:1px solid rgba(145,208,252,.15);border-radius:18px;background:rgba(13,34,56,.82);padding:13px;display:flex;flex-direction:column;justify-content:center;text-align:left}.action .action-ico{font-size:19px;margin-bottom:6px}.action strong{font-size:12px}.action span{font-size:9px;color:#839db9;margin-top:3px;line-height:1.4}
.tabbar{position:fixed;z-index:18;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,820px);padding:8px 8px calc(8px + var(--safe-bottom));display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:linear-gradient(180deg,rgba(7,18,31,.76),rgba(6,15,26,.98));border-top:1px solid rgba(151,215,255,.1);backdrop-filter:blur(20px);box-shadow:0 -14px 38px rgba(0,0,0,.28)}.tab{position:relative;min-height:52px;border-radius:15px;background:transparent;color:#66809d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:8px;font-weight:850}.tab-ico{font-size:17px;line-height:1}.tab.active{color:#e9fbff;background:rgba(35,82,116,.28);box-shadow:inset 0 0 0 1px rgba(88,232,255,.11)}.tab.active .tab-ico{color:var(--cyan);text-shadow:0 0 16px rgba(88,232,255,.55)}.tab-badge{position:absolute;top:2px;left:50%;margin-left:9px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:var(--red);color:white;display:grid;place-items:center;font-size:8px;font-weight:950;border:2px solid #071321}.tab-badge[hidden]{display:none}
.searchbar{display:flex;gap:8px;align-items:center;margin:6px 0 12px}.searchbox{position:relative;flex:1}.searchbox .input{padding-left:36px}.search-ico{position:absolute;left:12px;top:11px;color:#6f8aa6;font-size:14px}.chat-row,.friend-row,.group-row{display:flex;align-items:center;gap:11px;padding:12px 4px;border-bottom:1px solid rgba(151,215,255,.08);cursor:pointer}.chat-row:last-child,.friend-row:last-child,.group-row:last-child{border-bottom:0}.avatar{width:45px;height:45px;flex:0 0 45px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(88,232,255,.95),rgba(136,115,255,.92));color:#05111e;font-weight:950;box-shadow:0 0 22px rgba(88,232,255,.1);position:relative}.avatar.sm{width:38px;height:38px;flex-basis:38px;border-radius:12px;font-size:11px}.online-dot{position:absolute;width:10px;height:10px;border-radius:50%;right:-2px;bottom:-1px;background:#657f9c;border:2px solid #102943}.online-dot.on{background:var(--green);box-shadow:0 0 10px rgba(89,231,171,.75)}.row-main{min-width:0;flex:1}.row-title{display:flex;align-items:center;gap:4px;min-width:0}.row-title strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-preview{margin-top:4px;font-size:9px;color:#7893ad;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-meta{align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:5px}.time{font-size:8px;color:#6a839e}.unread-pill{min-width:18px;height:17px;border-radius:99px;padding:0 5px;display:grid;place-items:center;background:var(--red);color:#fff;font-size:8px;font-weight:950}.empty{padding:38px 10px;text-align:center;color:#718aa4}.empty strong{display:block;color:#b6cde2;font-size:12px;margin-bottom:5px}.empty span{font-size:9px;line-height:1.6}
.badge{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;background:rgba(89,231,171,.06);border:1px solid rgba(89,231,171,.12);color:#91ebc5;font-size:8px;font-weight:850}.dot{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(89,231,171,.7)}
.chat-header{position:sticky;top:-10px;z-index:6;margin:0 -2px;padding:8px 4px 10px;display:flex;align-items:center;gap:8px;background:linear-gradient(180deg,rgba(7,19,33,.98),rgba(7,19,33,.84));backdrop-filter:blur(18px);border-bottom:1px solid rgba(151,215,255,.06)}.chat-header .back{width:36px;height:36px;border-radius:11px;background:rgba(14,36,59,.85);color:#a9c5dc}.chat-header-main{min-width:0;flex:1}.chat-header-name{font-size:13px;font-weight:950}.chat-header-status{font-size:8px;color:#7d9ab5;margin-top:2px}.chat-header-actions{display:flex;gap:5px}.chat-action{width:36px;height:36px;border-radius:11px;background:rgba(14,36,59,.82);color:#b9d2e8;border:1px solid rgba(151,215,255,.11)}
.chat-search{display:flex;gap:6px;margin:8px 0}.chat-search .input{padding:9px 10px;font-size:10px}.reply-bar{display:flex;align-items:center;gap:8px;margin:0 0 7px;padding:8px 10px;border-radius:11px;background:rgba(88,232,255,.06);border:1px solid rgba(88,232,255,.1);font-size:9px;color:#94bbd7}.reply-bar span{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.messages{padding:9px 2px 7px}.date-divider{text-align:center;color:#66819e;font-size:8px;margin:11px 0}.msg{display:flex;gap:7px;margin:6px 0;align-items:flex-end}.msg.mine{justify-content:flex-end}.msg.mine .msg-avatar{display:none}.msg-body{max-width:79%}.msg.mine .msg-body{display:flex;flex-direction:column;align-items:flex-end}.msg-bubble{padding:9px 10px;border-radius:16px 16px 16px 5px;background:#102d49;border:1px solid rgba(151,215,255,.11);box-shadow:0 9px 25px rgba(0,0,0,.15);word-break:break-word;font-size:12px;line-height:1.5}.msg.mine .msg-bubble{border-radius:16px 16px 5px 16px;background:linear-gradient(135deg,#173b58,#274c71);border-color:rgba(88,232,255,.14)}.msg.recalled .msg-bubble{color:#7089a4;font-style:italic;background:rgba(16,38,61,.55)}.msg-meta{margin-top:3px;display:flex;gap:5px;align-items:center;font-size:7px;color:#657f9a}.msg-quote{padding:6px 7px;border-left:2px solid var(--cyan);margin-bottom:6px;border-radius:7px;background:rgba(88,232,255,.05);color:#90acc7;font-size:9px}.msg-image,.msg-video{display:block;max-width:240px;max-height:300px;border-radius:13px}.msg-audio{width:220px;max-width:100%}.msg-file{display:flex;align-items:center;gap:8px;min-width:170px}.file-ico{width:31px;height:31px;border-radius:10px;background:rgba(88,232,255,.08);display:grid;place-items:center;color:#8feaff}.msg-location,.msg-transfer{min-width:200px}.transfer-amount{font-size:17px;font-weight:950;margin:3px 0}.transfer-token{font-size:9px;color:#8db5d1}.composer-wrap{position:sticky;bottom:calc(0px + var(--safe-bottom));z-index:7;margin:5px -2px 0;padding:8px 0 8px;background:linear-gradient(180deg,rgba(7,19,33,.65),rgba(7,19,33,.98) 30%);backdrop-filter:blur(18px)}.composer{display:flex;align-items:flex-end;gap:6px}.composer-btn{width:39px;height:39px;flex:0 0 39px;border-radius:13px;background:rgba(14,36,59,.94);border:1px solid rgba(151,215,255,.14);color:#b5d0e7}.composer-input{flex:1;min-height:39px;max-height:110px;background:#0a2034;border:1px solid rgba(151,215,255,.16);border-radius:13px;padding:10px 11px;font-size:11px;line-height:1.35;resize:none}.composer-send{width:58px;height:39px;border-radius:13px;background:linear-gradient(135deg,var(--cyan),#8d7fff);color:#06111d;font-size:9px;font-weight:950}.typing{height:12px;font-size:8px;color:#67859f;padding-left:5px}
.modal-backdrop{position:fixed;inset:0;z-index:60;background:rgba(1,7,13,.74);backdrop-filter:blur(9px);display:flex;align-items:flex-end}.modal{width:100%;max-width:820px;margin:0 auto;background:linear-gradient(180deg,#0c2037,#071422);border:1px solid rgba(151,215,255,.13);border-bottom:0;border-radius:26px 26px 0 0;padding:15px 15px calc(18px + var(--safe-bottom));max-height:92dvh;overflow:auto;box-shadow:0 -25px 100px rgba(0,0,0,.45)}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.modal-head h3{font-size:16px;margin:0}.close{background:transparent;color:#8ca6c0;font-size:25px;padding:3px 7px}.modal-scroll{max-height:60dvh;overflow:auto}.check-row{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid rgba(151,215,255,.07);font-size:11px}.check-row input{accent-color:#58e8ff}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.qr-wrap{display:grid;place-items:center;padding:14px;background:#fff;border-radius:18px;width:276px;margin:12px auto;box-shadow:0 0 50px rgba(88,232,255,.1)}.qr-box{width:240px;height:240px;display:grid;place-items:center;background:#fff}.qr-box canvas,.qr-box img{display:block;width:240px!important;height:240px!important}.code-box{font-size:9px;color:#9dc1da;background:#081a2c;border:1px solid var(--line);padding:10px;border-radius:11px;word-break:break-all}
.standalone-scanner{display:flex;flex-direction:column;align-items:center;gap:10px;padding:10px 2px 2px;text-align:center}.camera-orbit{width:190px;height:190px;border-radius:42px;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 50% 48%,rgba(88,232,255,.16),rgba(8,20,38,.92) 58%,rgba(7,19,33,1));border:1px solid rgba(88,232,255,.2);box-shadow:inset 0 0 36px rgba(88,232,255,.08),0 0 42px rgba(141,127,255,.08)}.camera-ring{position:absolute;inset:22px;border:1px solid rgba(141,127,255,.34);border-radius:50%;box-shadow:0 0 26px rgba(88,232,255,.1)}.camera-glyph{font-size:54px;color:#a9edff;text-shadow:0 0 24px rgba(88,232,255,.55);z-index:1}.camera-title{font-size:16px;font-weight:950;color:#e8f6ff}.camera-copy{font-size:10px;line-height:1.6;color:#7895ae;max-width:310px}.standalone-scanner .primary,.standalone-scanner .secondary{width:100%;max-width:360px}.standalone-scanner .scan-state{position:static;max-width:360px}.standalone-scanner+.scanner-actions{display:none}
.scanner{position:relative;overflow:hidden;border-radius:20px;background:#01060a;border:1px solid rgba(88,232,255,.18);min-height:280px}.scanner video{display:block;width:100%;height:100%;min-height:280px;object-fit:cover;background:#01060a}.scan-frame{position:absolute;inset:18% 12%;border:1px solid rgba(88,232,255,.58);border-radius:22px;box-shadow:0 0 0 999px rgba(0,0,0,.22),0 0 30px rgba(88,232,255,.12)}.scan-frame:after{content:"";position:absolute;left:8%;right:8%;top:10%;height:2px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);box-shadow:0 0 18px rgba(88,232,255,.85);animation:scan 1.8s ease-in-out infinite}@keyframes scan{0%,100%{transform:translateY(0)}50%{transform:translateY(190px)}}.scan-state{position:absolute;left:12px;right:12px;bottom:12px;padding:8px 9px;border-radius:11px;background:rgba(4,13,23,.72);border:1px solid rgba(151,215,255,.12);backdrop-filter:blur(10px);text-align:center;color:#c9e6ff;font-size:9px}.scan-state.ok{color:#abf5d4}.scan-state.error{color:#ffd1d8;border-color:rgba(255,97,122,.22)}.scanner-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.qr-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.message-pop{position:fixed;z-index:50;left:9px;right:9px;top:calc(var(--safe-top) + 84px);display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:18px;background:linear-gradient(145deg,rgba(18,47,77,.98),rgba(9,24,42,.98));border:1px solid rgba(88,232,255,.26);box-shadow:0 18px 70px rgba(0,0,0,.42),0 0 35px rgba(88,232,255,.08);backdrop-filter:blur(24px);animation:popin .24s ease-out}.message-pop-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--cyan),var(--violet));color:#06111c;font-size:11px;font-weight:950}.message-pop-copy{min-width:0;flex:1;text-align:left}.message-pop-copy strong{display:block;font-size:11px}.message-pop-copy span{display:block;color:#a8bfd4;font-size:9px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-pop-dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 15px rgba(88,232,255,.85)}@keyframes popin{from{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:none}}
.toast{position:fixed;z-index:90;left:50%;bottom:calc(86px + var(--safe-bottom));transform:translate(-50%,15px);opacity:0;pointer-events:none;max-width:90%;padding:10px 14px;border-radius:999px;background:rgba(13,34,56,.95);border:1px solid rgba(151,215,255,.17);color:#dff7ff;font-size:10px;box-shadow:var(--shadow);transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.update-banner{position:fixed;z-index:80;left:10px;right:10px;bottom:calc(84px + var(--safe-bottom));display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:17px;background:rgba(8,24,41,.96);border:1px solid rgba(88,232,255,.18);box-shadow:0 18px 70px rgba(0,0,0,.4);backdrop-filter:blur(18px)}.update-banner[hidden]{display:none}.update-banner>div{flex:1;min-width:0}.update-banner strong{display:block;font-size:10px}.update-banner span{display:block;font-size:8px;color:#8ca7c1;margin-top:3px}.update-btn{padding:9px 11px;border-radius:11px;background:linear-gradient(135deg,var(--cyan),#8b77ff);color:#06111d;font-size:9px;font-weight:950}
.lock-screen{position:fixed;inset:0;z-index:100;background:radial-gradient(circle at 20% 10%,rgba(88,232,255,.1),transparent 30%),linear-gradient(180deg,#06111f,#071521);display:grid;place-items:center;padding:25px}.lock-card{width:min(420px,100%);padding:24px;border-radius:25px;border:1px solid rgba(151,215,255,.15);background:linear-gradient(150deg,rgba(18,45,75,.97),rgba(8,24,41,.98));box-shadow:var(--shadow);text-align:center}.lock-logo{width:70px;height:70px;margin:0 auto 12px}.lock-title{font-size:24px;font-weight:950}.lock-sub{font-size:9px;color:#87a2bd;line-height:1.6;margin:5px 0 17px}.lock-status{min-height:15px;color:#ff9cac;font-size:8px;margin:8px 0}
.call-layer{position:fixed;inset:0;z-index:70;background:#030910;display:flex;flex-direction:column}.call-top{padding:calc(16px + var(--safe-top)) 15px 12px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(3,9,16,.98),rgba(3,9,16,.78));position:absolute;left:0;right:0;top:0;z-index:2}.call-title{font-size:12px;font-weight:950}.call-status{font-size:8px;color:#80a0bc;margin-top:2px}.call-remote{width:100%;height:100%;object-fit:cover;background:#081522}.call-self{position:absolute;right:12px;top:calc(78px + var(--safe-top));width:105px;height:150px;object-fit:cover;border-radius:14px;border:1px solid rgba(151,215,255,.18);background:#081522;display:none}.call-controls{position:absolute;left:0;right:0;bottom:calc(20px + var(--safe-bottom));display:flex;justify-content:center;gap:10px}.call-btn{width:54px;height:54px;border-radius:50%;background:rgba(12,28,45,.86);border:1px solid rgba(151,215,255,.16);color:#e2f5ff;font-size:20px}.call-btn.end{background:#7c2434}.incoming-call{position:fixed;z-index:75;left:12px;right:12px;bottom:calc(20px + var(--safe-bottom));padding:15px;border-radius:20px;border:1px solid rgba(151,215,255,.18);background:rgba(10,30,50,.97);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.kpi{padding:12px;border-radius:16px;background:rgba(9,27,46,.72);border:1px solid rgba(151,215,255,.11)}.kpi .v{font-size:17px;font-weight:950}.kpi .l{font-size:8px;color:#7591ad;margin-top:3px}.progress{height:6px;background:#081827;border-radius:99px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--violet));border-radius:inherit}.game{display:grid;gap:10px}.game-arena{height:280px;border-radius:21px;border:1px solid rgba(88,232,255,.18);background:radial-gradient(circle at 50% 50%,rgba(88,232,255,.09),transparent 43%),#04101c;position:relative;overflow:hidden}.game-star{position:absolute;width:7px;height:7px;border-radius:50%;background:#eafaff;box-shadow:0 0 14px rgba(234,250,255,.8)}.game-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#67edff,#736eff);color:#03101b;font-weight:950;box-shadow:0 0 45px rgba(88,232,255,.35)}
body.theme-light{--bg:#eef6fb;--bg2:#e8f1f8;--panel:#fff;--panel2:#f5fbff;--card:rgba(255,255,255,.96);--line:rgba(51,99,135,.15);--line2:rgba(36,155,190,.24);--text:#10283c;--muted:#587089;--muted2:#7890a7;--shadow:0 22px 70px rgba(40,82,118,.12)}body.theme-light{background:#eef6fb;color:var(--text)}body.theme-light .app-shell{background:linear-gradient(180deg,#f4fbff,#e9f4fb)}body.theme-light .topbar{background:linear-gradient(180deg,rgba(244,251,255,.98),rgba(244,251,255,.84))}body.theme-light .tabbar{background:linear-gradient(180deg,rgba(244,251,255,.78),rgba(233,244,251,.98))}body.theme-light .input,body.theme-light .textarea,body.theme-light .select{background:#f5fbff;color:#17344c}body.theme-light .card{background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(242,249,253,.96))}
@media(min-width:700px){.app-shell{min-height:100dvh;border-left:1px solid rgba(151,215,255,.08);border-right:1px solid rgba(151,215,255,.08)}.view{padding-left:20px;padding-right:20px}.modal-backdrop{padding:20px}.modal{border-bottom:1px solid rgba(151,215,255,.13);border-radius:26px;max-width:640px}.tabbar{bottom:10px;border-radius:20px;width:650px;border:1px solid rgba(151,215,255,.11)}.topbar{padding-left:24px;padding-right:24px}.action-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:380px){.view{padding-left:11px;padding-right:11px}.hero h1{font-size:30px}.action-grid{grid-template-columns:1fr}.msg-body{max-width:84%}.msg-image,.msg-video{max-width:205px}.qr-wrap{width:250px}.qr-box,.qr-box canvas,.qr-box img{width:216px!important;height:216px!important}.scanner{min-height:250px}.scanner video{min-height:250px}.scan-frame:after{animation:none}.modal{padding-left:12px;padding-right:12px}}

/* component completion */
.row{display:flex;align-items:center;gap:10px;min-height:54px;padding:10px 4px;border-bottom:1px solid rgba(151,215,255,.08)}
.row:last-child{border-bottom:0}.row>button{flex:0 0 auto}
.wallet-label{font-size:8px;color:#7d98b4;letter-spacing:1.1px;text-transform:uppercase}.wallet-address{font-size:19px;font-weight:950;letter-spacing:-.3px;margin:5px 0 10px}.wallet-hero{background:radial-gradient(circle at 85% 10%,rgba(88,232,255,.12),transparent 28%),linear-gradient(150deg,rgba(19,49,80,.97),rgba(8,25,43,.96))}
.login-wrap{min-height:calc(100dvh - 94px);display:grid;align-items:center;padding:16px 0}.login-card{padding:24px}.login-title{text-align:center;font-size:30px;font-weight:950;letter-spacing:-.8px}.login-sub{text-align:center;color:#93abc4;font-size:10px;line-height:1.6;margin:5px 0 15px}.toggle{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:15px;background:#081827;border:1px solid rgba(151,215,255,.12);margin-bottom:13px}.toggle button{padding:10px 8px;border-radius:11px;background:transparent;color:#718aa5;font-size:10px;font-weight:900}.toggle .on{background:rgba(88,232,255,.09);color:#e5faff}.footnote{color:#6d89a5;font-size:8px;line-height:1.6;text-align:center;margin-top:10px}.login-card .lock-logo{width:76px;height:76px;display:block;margin:0 auto 12px}.login-card .input{margin-bottom:10px}
.msg-action{width:auto!important;padding:0 2px!important;font-size:10px;color:#6884a0}.msg-file{border:0;color:inherit;background:transparent;padding:0;text-align:left;width:100%}.msg-file small{display:block;color:#7590aa;font-size:8px;margin-top:2px}.msg-file strong{display:block;font-size:10px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-location strong{font-size:12px}.msg-location>div{margin:5px 0;font-size:10px;color:#acc5d9}.msg-location small{display:block;color:#7895ae;font-size:8px;margin-bottom:7px}.msg-location .secondary,.msg-transfer .secondary{width:auto;padding:7px 9px}.tx-open{min-width:56px}.wallet-hero .primary,.wallet-hero .secondary{font-weight:950}
input[type=checkbox]{width:18px;height:18px;accent-color:#58e8ff}
