:root{--p:#5b4bf5;--p2:#0ea5e9;--bg:#f3f4fb;--card:#fff;--ink:#0f172a;--muted:#64748b;--line:#e4e7f2;--danger:#dc2626;--ok:#16a34a;--warn:#d97706;--r:20px;--shadow:0 8px 28px rgba(40,40,100,.1)}:root[data-theme=dark]{--bg:#0a0e1a;--card:#131a2c;--ink:#e9eeff;--muted:#8d9ab6;--line:#242d47;--shadow:0 8px 28px rgba(0,0,0,.45)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0a0e1a;--card:#131a2c;--ink:#e9eeff;--muted:#8d9ab6;--line:#242d47;--shadow:0 8px 28px rgba(0,0,0,.45)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0}body{font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%}button,input,select{font:inherit;color:inherit}h1,h2,h3{margin:0}.shell{max-width:520px;margin:0 auto;min-height:100vh;padding:calc(env(safe-area-inset-top) + 8px) 16px calc(92px + env(safe-area-inset-bottom))}.top{display:flex;align-items:center;justify-content:space-between;padding:10px 2px 14px}.top h1{font-size:26px;letter-spacing:-.02em}.top p{margin:2px 0 0;color:var(--muted);font-size:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:16px}.stack{display:grid;gap:14px}.stack.s{gap:8px}.muted{color:var(--muted)}.small{font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:10px 20px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);cursor:pointer;font-weight:600;transition:transform .08s,opacity .15s}.btn:active{transform:scale(.98)}.btn.block{display:flex;width:100%}.btn.primary{background:linear-gradient(135deg,var(--p),var(--p2));color:#fff;border-color:transparent}.btn.danger{background:var(--danger);color:#fff;border-color:transparent}.btn.ghost{border-color:transparent;background:transparent;color:var(--p)}.btn.sm{min-height:38px;padding:6px 14px;font-size:14px;border-radius:12px}.btn[disabled]{opacity:.5;pointer-events:none}:focus-visible{outline:3px solid color-mix(in srgb,var(--p) 50%,transparent);outline-offset:2px}label.f{display:grid;gap:6px;font-size:14px;font-weight:600}input[type=text],input[type=tel],input[type=email],input[type=date],select{width:100%;min-height:52px;padding:10px 14px;border-radius:14px;border:1.5px solid var(--line);background:var(--bg);font-size:17px}input:focus,select:focus{border-color:var(--p);outline:none}.chk{display:flex;gap:12px;align-items:center;cursor:pointer;font-size:15px;padding:4px 0}.chk input{appearance:none;-webkit-appearance:none;flex:none;width:26px;height:26px;border-radius:8px;border:2px solid var(--line);background:var(--bg);display:grid;place-items:center;margin:0;cursor:pointer}.chk input:checked{background:var(--p);border-color:var(--p)}.chk input:checked:after{content:"";width:6px;height:12px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg) translate(-1px,-1px)}.chk input:disabled{opacity:.55}.err{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);padding:10px 12px;border-radius:12px;font-size:14px}.info{background:color-mix(in srgb,var(--p) 10%,transparent);border:1px solid color-mix(in srgb,var(--p) 28%,transparent);padding:10px 12px;border-radius:12px;font-size:14px}.tabs{position:fixed;left:0;right:0;bottom:0;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);z-index:30;padding-bottom:env(safe-area-inset-bottom)}.tabs nav{max-width:520px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr)}.tabs a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 0 8px;font-size:11.5px;font-weight:600;color:var(--muted);text-decoration:none;min-height:58px}.tabs a.on{color:var(--p)}.tabs a.on svg{transform:translateY(-1px) scale(1.08)}.ppcard{position:relative;border-radius:26px;padding:22px 22px 18px;color:#fff;overflow:hidden;background:linear-gradient(135deg,#6d5efc,#3b82f6 55%,#06b6d4);box-shadow:0 18px 40px #5b4bf561;aspect-ratio:1.586/1;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.ppcard:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% -10%,rgba(255,255,255,.35),transparent 55%),repeating-linear-gradient(115deg,rgba(255,255,255,.06) 0 2px,transparent 2px 14px);z-index:-1}.ppcard:after{content:"";position:absolute;right:-60px;bottom:-70px;width:220px;height:220px;border-radius:50%;border:34px solid rgba(255,255,255,.09);z-index:-1}.ppcard .row{display:flex;justify-content:space-between;align-items:flex-start}.ppcard .brand{font-weight:800;letter-spacing:.14em;font-size:12px;text-transform:uppercase;opacity:.95}.ppcard .brand small{display:block;font-weight:500;letter-spacing:.06em;opacity:.8;font-size:10px;text-transform:none;margin-top:2px}.ppcard .chip{width:42px;height:32px;border-radius:7px;background:linear-gradient(135deg,#fde68a,#f59e0b);opacity:.95;margin:10px 0 0}.ppcard .name{font-size:22px;font-weight:700;letter-spacing:.01em;text-shadow:0 1px 6px rgba(0,0,0,.2)}.ppcard .meta{display:flex;justify-content:space-between;align-items:flex-end;gap:8px}.ppcard .lvl{display:inline-flex;gap:6px;align-items:center;background:#fff3;padding:4px 10px;border-radius:99px;font-size:12px;font-weight:700;backdrop-filter:blur(4px)}.ppcard .qrbox{background:#fff;border-radius:12px;padding:6px;width:74px;height:74px;flex:none}.ppcard .qrbox svg{width:100%;height:100%;display:block}.ppcard .lbl{font-size:10px;opacity:.75;text-transform:uppercase;letter-spacing:.08em}.ppcard .val{font-size:14px;font-weight:600}.item{display:flex;gap:12px;align-items:center}.ava{width:46px;height:46px;border-radius:14px;flex:none;display:grid;place-items:center;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--p),var(--p2));overflow:hidden}.ava img{width:100%;height:100%;object-fit:cover}.grow{flex:1;min-width:0}.grow b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag{display:inline-block;font-size:12px;font-weight:600;background:color-mix(in srgb,var(--p) 12%,transparent);color:var(--p);padding:3px 9px;border-radius:99px;margin:2px 4px 2px 0}.tag.off{background:var(--bg);color:var(--muted);text-decoration:line-through}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 14px}.stat small{display:block;color:var(--muted);font-size:12px}.stat b{font-size:22px}.sec{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:20px 4px 8px}.empty{text-align:center;padding:36px 16px;color:var(--muted)}.empty svg{opacity:.5;margin-bottom:8px}.bg{position:fixed;inset:0;background:#0206178c;z-index:60;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}.modal{background:var(--card);width:100%;max-width:520px;max-height:90vh;overflow:auto;border-radius:26px 26px 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom));animation:up .25s cubic-bezier(.2,.8,.2,1)}.modal h3{font-size:20px;margin-bottom:6px}.toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translate(-50%);background:var(--ink);color:var(--bg);padding:11px 18px;border-radius:99px;font-size:14px;font-weight:600;z-index:80;box-shadow:var(--shadow);animation:up .25s}@keyframes fade{0%{opacity:0}}@keyframes up{0%{transform:translate(var(--tx,0),30px);opacity:0}}.sk{background:linear-gradient(90deg,var(--line),color-mix(in srgb,var(--line) 40%,transparent),var(--line));background-size:200% 100%;animation:sk 1.2s infinite;border-radius:14px}@keyframes sk{to{background-position:-200% 0}}.hello{min-height:100vh;display:flex;flex-direction:column;justify-content:center;max-width:440px;margin:0 auto;padding:24px 20px}.hello .logo{width:72px;height:72px;border-radius:22px;background:linear-gradient(135deg,var(--p),var(--p2));display:grid;place-items:center;color:#fff;margin-bottom:18px;box-shadow:0 12px 30px #5b4bf566}.hello h1{font-size:32px;letter-spacing:-.03em;line-height:1.1}.otp{display:flex;gap:8px;justify-content:center}.otp input{width:46px;min-height:58px;text-align:center;padding:0;font-size:24px;font-weight:700}.switch{position:relative;width:50px;height:30px;flex:none}.switch input{appearance:none;-webkit-appearance:none;width:50px;height:30px;border-radius:99px;background:var(--line);margin:0;cursor:pointer;transition:background .2s}.switch input:checked{background:var(--p)}.switch:after{content:"";position:absolute;left:3px;top:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform .2s;pointer-events:none;box-shadow:0 1px 4px #0000004d}.switch:has(input:checked):after{transform:translate(20px)}.switch input:disabled{opacity:.6}.list>*+*{border-top:1px solid var(--line)}.list>*{padding:13px 0}a.lnk{color:var(--p);font-weight:600}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition:none!important}}
