:root{--font:"Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--bg:#f4f5fb;--bg-elev:#fff;--bg-soft:#eef0f8;--bg-sunken:#e8eaf4;--border:#e2e5f0;--border-strong:#cdd2e3;--text:#0f1530;--text-2:#4a5275;--text-3:#8189a6;--brand:#5b5bf7;--brand-2:#8b5cf6;--brand-ink:#fff;--brand-soft:#5b5bf71a;--grad:linear-gradient(135deg, #5b5bf7 0%, #8b5cf6 55%, #c056f5 100%);--grad-soft:linear-gradient(135deg, #5b5bf71f, #c056f514);--ok:#0f9f6e;--ok-soft:#0f9f6e1f;--warn:#c47a06;--warn-soft:#e59a1024;--bad:#e1365b;--bad-soft:#e1365b1f;--info:#2a7de1;--info-soft:#2a7de11f;--r-sm:8px;--r:12px;--r-lg:18px;--r-xl:24px;--shadow-sm:0 1px 2px #1018400f;--shadow:0 1px 2px #1018400d, 0 8px 24px -8px #1018401f;--shadow-lg:0 24px 60px -20px #10184059;--ring:0 0 0 3px #5b5bf747;--sidebar-w:268px;--topbar-h:68px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#070b18;--bg-elev:#0e1428;--bg-soft:#131a33;--bg-sunken:#0a0f20;--border:#1d2544;--border-strong:#2a3460;--text:#e9ecfb;--text-2:#a8b0d3;--text-3:#6b749c;--brand-soft:#7c7cff29;--ok:#34d399;--ok-soft:#34d39924;--warn:#fbbf24;--warn-soft:#fbbf2424;--bad:#fb7185;--bad-soft:#fb718524;--info:#60a5fa;--info-soft:#60a5fa24;--shadow:0 1px 0 #ffffff08 inset, 0 12px 32px -12px #0009;--shadow-lg:0 30px 80px -20px #000000bf;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#070b18;--bg-elev:#0e1428;--bg-soft:#131a33;--bg-sunken:#0a0f20;--border:#1d2544;--border-strong:#2a3460;--text:#e9ecfb;--text-2:#a8b0d3;--text-3:#6b749c;--brand-soft:#7c7cff29;--ok:#34d399;--ok-soft:#34d39924;--warn:#fbbf24;--warn-soft:#fbbf2424;--bad:#fb7185;--bad-soft:#fb718524;--info:#60a5fa;--info-soft:#60a5fa24;--shadow:0 1px 0 #ffffff08 inset, 0 12px 32px -12px #0009;--shadow-lg:0 30px 80px -20px #000000bf;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}a{color:var(--brand);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{letter-spacing:-.01em;margin:0}.num,.money{font-variant-numeric:tabular-nums}::selection{background:#5b5bf740}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;display:grid}.sidebar{background:var(--bg-elev);border-right:1px solid var(--border);flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:12px;padding:6px 10px 22px;display:flex}.brand-mark{background:var(--grad);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;font-size:17px;font-weight:800;display:grid;box-shadow:0 8px 20px -6px #5b5bf799}.brand-name{font-size:15px;font-weight:800;line-height:1.2}.brand-sub{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}.nav-group{margin-top:14px}.nav-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;padding:0 12px 6px;font-size:11px;font-weight:700}.nav-link{color:var(--text-2);border-radius:10px;align-items:center;gap:11px;padding:9px 12px;font-weight:600;transition:background .15s,color .15s;display:flex}.nav-link svg{flex:none;width:18px;height:18px}.nav-link:hover{background:var(--bg-soft);color:var(--text)}.nav-link.active{background:var(--brand-soft);color:var(--brand)}.nav-link .pill{margin-left:auto}.sidebar-foot{margin-top:auto;padding-top:16px}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--topbar-h);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(160%)blur(14px);backdrop-filter:saturate(160%)blur(14px);border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:0 28px;display:flex;position:sticky;top:0}.topbar h1{font-size:19px;font-weight:800}.topbar .spacer{flex:1}.content{width:100%;max-width:1440px;padding:26px 28px 60px}.menu-btn{display:none}.wallet-chip{background:var(--bg-elev);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:10px;padding:7px 14px 7px 8px;display:flex}.wallet-chip .ico{background:var(--grad);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.wallet-chip .lbl{color:var(--text-3);font-size:11px;font-weight:600;line-height:1}.wallet-chip .val{font-size:15px;font-weight:800;line-height:1.2}.avatar{background:var(--bg-soft);width:36px;height:36px;color:var(--brand);border:1px solid var(--border);border-radius:50%;place-items:center;font-weight:800;display:grid}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow)}.card-pad{padding:20px 22px}.card-head{align-items:center;gap:12px;padding:18px 22px 0;display:flex}.card-head h3{font-size:15px;font-weight:800}.card-head .sub{color:var(--text-3);font-size:12.5px}.card-head .actions{align-items:center;gap:8px;margin-left:auto;display:flex}.card-body{padding:16px 22px 20px}.hero{border-radius:var(--r-xl);color:#fff;background:radial-gradient(1200px 300px at 0% 0%, #ffffff2e, transparent 60%), var(--grad);padding:26px 28px;position:relative;overflow:hidden;box-shadow:0 30px 60px -30px #5b5bf7b3}.hero:after{content:"";background:radial-gradient(circle,#ffffff40,#0000 65%);border-radius:50%;width:260px;height:260px;position:absolute;top:-60px;right:-60px}.hero .lbl{opacity:.85;font-size:13px;font-weight:600}.hero .big{letter-spacing:-.02em;margin:4px 0 2px;font-size:38px;font-weight:800}.hero .meta{opacity:.95;flex-wrap:wrap;gap:22px;margin-top:14px;font-size:13px;display:flex}.grid{gap:18px;display:grid}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.stack{flex-direction:column;gap:18px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row.end{justify-content:flex-end}.between{justify-content:space-between;align-items:center;gap:12px;display:flex}.muted{color:var(--text-3)}.small{font-size:12.5px}.strong{font-weight:700}.mt{margin-top:18px}.stat{align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.stat .ico{border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.stat .ico svg{width:21px;height:21px}.stat .lbl{color:var(--text-3);font-size:12.5px;font-weight:600}.stat .val{letter-spacing:-.01em;font-size:22px;font-weight:800}.stat .foot{color:var(--text-3);margin-top:2px;font-size:12px}.tone-brand{background:var(--brand-soft);color:var(--brand)}.tone-ok{background:var(--ok-soft);color:var(--ok)}.tone-warn{background:var(--warn-soft);color:var(--warn)}.tone-bad{background:var(--bad-soft);color:var(--bad)}.tone-info{background:var(--info-soft);color:var(--info)}.btn{border:1px solid var(--border);background:var(--bg-elev);height:40px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:700;transition:transform 60ms,box-shadow .15s,background .15s,border-color .15s;display:inline-flex}.btn svg{width:17px;height:17px}.btn:hover{border-color:var(--border-strong);background:var(--bg-soft)}.btn:active{transform:translateY(1px)}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn[disabled]{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--grad);color:#fff;border:0;box-shadow:0 10px 22px -10px #5b5bf7cc}.btn-primary:hover{background:var(--grad);filter:brightness(1.06)}.btn-ok{background:var(--ok);color:#fff;border-color:#0000}.btn-ok:hover{background:var(--ok);filter:brightness(1.08)}.btn-danger{background:var(--bad-soft);color:var(--bad);border-color:#0000}.btn-danger:hover{background:var(--bad);color:#fff}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--bg-soft)}.btn-sm{border-radius:9px;height:32px;padding:0 11px;font-size:12.5px}.btn-lg{border-radius:13px;height:48px;padding:0 22px;font-size:15px}.btn-block{width:100%}.icon-btn{width:38px;padding:0}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span{color:var(--text-2);font-size:12.5px;font-weight:700}.field .hint{color:var(--text-3);font-size:12px;font-weight:500}.input,.select,.textarea{border:1px solid var(--border);background:var(--bg-elev);border-radius:11px;outline:none;width:100%;height:42px;padding:0 13px;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;height:auto;min-height:84px;padding:10px 13px}.input:focus,.select:focus,.textarea:focus{border-color:var(--brand);box-shadow:var(--ring)}.input-lg{border-radius:14px;height:54px;font-size:18px;font-weight:700}.input-wrap{position:relative}.input-wrap>svg{width:18px;color:var(--text-3);position:absolute;top:50%;left:13px;transform:translateY(-50%)}.input-wrap .input{padding-left:40px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid .full{grid-column:1/-1}.seg{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.seg button{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:7px;padding:7px 14px;font-weight:700;display:inline-flex}.seg button svg{width:16px;height:16px}.seg button.on{background:var(--bg-elev);color:var(--text);box-shadow:var(--shadow-sm)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border);background:var(--bg-elev);cursor:pointer;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:700}.chip:hover,.chip.on{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.op-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;display:grid}.op{border:1px solid var(--border);background:var(--bg-elev);cursor:pointer;text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:12px 10px;font-size:12.5px;font-weight:700;transition:border-color .15s,transform .1s,box-shadow .15s;display:flex}.op:hover{border-color:var(--border-strong);transform:translateY(-1px)}.op.on{border-color:var(--brand);box-shadow:var(--ring)}.op .logo{color:#fff;border-radius:12px;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.badge{letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;font-weight:800;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.plain:before{display:none}.b-ok{background:var(--ok-soft);color:var(--ok)}.b-warn{background:var(--warn-soft);color:var(--warn)}.b-bad{background:var(--bad-soft);color:var(--bad)}.b-info{background:var(--info-soft);color:var(--info)}.b-muted{background:var(--bg-soft);color:var(--text-2)}.pill{background:var(--bad);color:#fff;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800}.table-wrap{overflow-x:auto}table.tbl{border-collapse:separate;border-spacing:0;width:100%}.tbl th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);background:var(--bg-soft);border-bottom:1px solid var(--border);white-space:nowrap;padding:11px 14px;font-size:11.5px;font-weight:800}.tbl th:first-child{border-top-left-radius:12px}.tbl th:last-child{border-top-right-radius:12px}.tbl td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 14px}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr{transition:background .12s}.tbl tbody tr:hover{background:var(--bg-soft)}.tbl tbody tr.click{cursor:pointer}.tbl .r{text-align:right}.cell-main{font-weight:700}.cell-sub{color:var(--text-3);font-size:12px}.toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:10px;padding:16px 22px;display:flex}.toolbar .field{width:170px}.toolbar .grow{flex:1;min-width:160px}.pager{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 22px;display:flex}.empty{text-align:center;color:var(--text-3);padding:50px 20px}.empty svg{opacity:.6;width:40px;height:40px;margin-bottom:8px}.overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0508168c;place-items:center;padding:20px;animation:.15s fade;display:grid;position:fixed;inset:0}.modal{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-xl);width:min(560px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-lg);animation:.18s pop;overflow:auto}.modal.wide{width:min(880px,100%)}.modal-head{align-items:center;gap:10px;padding:20px 22px 0;display:flex}.modal-head h3{font-size:17px;font-weight:800}.modal-head .x{margin-left:auto}.modal-body{padding:18px 22px}.modal-foot{justify-content:flex-end;gap:10px;padding:0 22px 20px;display:flex}.toasts{z-index:200;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--bg-elev);border:1px solid var(--border);min-width:280px;max-width:420px;box-shadow:var(--shadow-lg);border-radius:14px;align-items:flex-start;gap:10px;padding:13px 16px;font-weight:600;animation:.22s slide;display:flex}.toast svg{flex:none;width:19px;height:19px;margin-top:1px}.toast.ok svg{color:var(--ok)}.toast.bad svg{color:var(--bad)}.pin-boxes{justify-content:center;gap:10px;margin:8px 0 4px;display:flex}.pin-boxes input{text-align:center;border:1px solid var(--border);background:var(--bg-soft);border-radius:14px;outline:none;width:54px;height:60px;font-size:24px;font-weight:800}.pin-boxes input:focus{border-color:var(--brand);box-shadow:var(--ring);background:var(--bg-elev)}.spinner{border:2.5px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.skeleton{background:linear-gradient(90deg, var(--bg-soft), var(--bg-sunken), var(--bg-soft));background-size:200% 100%;border-radius:8px;height:14px;animation:1.2s infinite shimmer}.page-loading{height:60vh;color:var(--brand);place-items:center;display:grid}.auth{grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.auth-art{color:#fff;background:radial-gradient(800px 500px at 15% 10%,#ffffff2e,#0000 60%),radial-gradient(700px 500px at 100% 100%,#c056f58c,#0000 60%),#2c2c9e;flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.auth-art .orb{filter:blur(2px);background:radial-gradient(circle at 30% 30%,#ffffff80,#fff0 60%);border-radius:50%;position:absolute}.auth-art h2{letter-spacing:-.02em;max-width:520px;font-size:40px;font-weight:800;line-height:1.1}.auth-art p{opacity:.85;max-width:460px;font-size:15px}.auth-feats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:520px;display:grid}.auth-feat{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:16px;padding:14px}.auth-feat b{font-size:14px;display:block}.auth-feat span{opacity:.8;font-size:12.5px}.auth-form{place-items:center;padding:40px 24px;display:grid}.auth-card{width:min(420px,100%)}.auth-card h1{font-size:28px;font-weight:800}.receipt{border:1px dashed var(--border-strong);background:var(--bg-soft);border-radius:16px;padding:18px}.kv{grid-template-columns:150px 1fr;gap:8px 14px;font-size:13.5px;display:grid}.kv dt{color:var(--text-3);font-weight:600}.kv dd{word-break:break-all;margin:0;font-weight:700}.live-row{animation:1.2s flash}.dot{background:var(--ok);border-radius:50%;width:9px;height:9px;animation:1.6s infinite pulse;display:inline-block;box-shadow:0 0 #34d399b3}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes slide{0%{opacity:0;transform:translate(20px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes flash{0%{background:var(--brand-soft)}}@keyframes pulse{70%{box-shadow:0 0 0 9px #34d39900}to{box-shadow:0 0 #34d39900}}@media (width<=1100px){.g-4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main,.auth{grid-template-columns:1fr}.auth-art{display:none}}@media (width<=860px){.shell{grid-template-columns:1fr}.sidebar{z-index:60;width:280px;box-shadow:var(--shadow-lg);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-102%)}.sidebar.open{transform:none}.menu-btn{display:inline-flex}.topbar{padding:0 16px}.content{padding:18px 16px 50px}.g-2,.g-3,.form-grid{grid-template-columns:1fr}.wallet-chip .lbl{display:none}.hide-sm{display:none!important}.hero .big{font-size:30px}}@media (width<=520px){.g-4{grid-template-columns:1fr 1fr}.stat{padding:14px}.stat .val{font-size:18px}}
