:root{--bg: #07090d;--bg-2: #0c1016;--glass: rgba(255, 255, 255, .045);--glass-2: rgba(255, 255, 255, .07);--stroke: rgba(255, 255, 255, .09);--stroke-2: rgba(255, 255, 255, .16);--text: #e9edf3;--muted: #8b95a5;--dim: #5b6575;--accent: #30d158;--accent-2: #0a84ff;--warn: #ffd60a;--danger: #ff453a;--radius: 16px;--radius-sm: 10px;--shadow: 0 10px 40px rgba(0, 0, 0, .45);--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: "SF Mono", ui-monospace, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px;letter-spacing:-.005em}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(900px 500px at 10% -10%,rgba(48,209,88,.14),transparent 60%),radial-gradient(800px 500px at 100% 0%,rgba(10,132,255,.16),transparent 60%),radial-gradient(700px 500px at 50% 120%,rgba(191,90,242,.1),transparent 60%),var(--bg)}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.02em}h1{font-size:22px}h2{font-size:16px}h3{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}p{margin:0}code,.mono{font-family:var(--mono);font-size:12.5px}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.side{position:sticky;top:0;height:100vh;padding:20px 14px;display:flex;flex-direction:column;gap:6px;background:#ffffff08;backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);border-right:1px solid var(--stroke)}.brand{display:flex;align-items:center;gap:10px;padding:6px 8px 18px}.brand .mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--accent),#0fa84a);display:grid;place-items:center;font-weight:800;color:#062a12;box-shadow:0 6px 18px #30d15859}.brand .name{font-weight:600;letter-spacing:-.01em}.brand .sub{font-size:11px;color:var(--muted)}.nav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;color:var(--muted);font-weight:500;transition:background .15s,color .15s}.nav a:hover{background:var(--glass);color:var(--text);text-decoration:none}.nav a.active{background:var(--glass-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--stroke)}.nav .ico{width:18px;text-align:center;opacity:.8}.side .foot{margin-top:auto;padding:12px 8px 0;border-top:1px solid var(--stroke);font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:6px}.main{padding:28px 32px 60px;max-width:1380px;width:100%;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.page-head .desc{color:var(--muted);margin-top:4px}.card{background:var(--glass);border:1px solid var(--stroke);border-radius:var(--radius);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);box-shadow:var(--shadow);padding:18px 20px;min-width:0}.card+.card,.stack>*+*{margin-top:16px}.grid>.card+.card,.grid>*+*{margin-top:0}.grid{display:grid;gap:14px}.grid.tiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.tile{padding:16px 18px}.tile .k{font-size:12px;color:var(--muted);font-weight:500}.tile .v{font-size:26px;font-weight:600;letter-spacing:-.03em;margin-top:6px}.tile .s{font-size:12px;color:var(--dim);margin-top:4px}.tile.alert .v{color:var(--warn)}.tile.danger .v{color:var(--danger)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.end{justify-content:flex-end}.spacer{flex:1}input,select,textarea{font:inherit;color:var(--text);background:#00000040;border:1px solid var(--stroke-2);border-radius:var(--radius-sm);padding:9px 11px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#0a84ffb3;box-shadow:0 0 0 3px #0a84ff33}input[type=date]{color-scheme:dark}select{appearance:none;padding-right:28px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 15px) 55%,calc(100% - 10px) 55%;background-size:5px 5px;background-repeat:no-repeat}label.field{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}.btn{font:inherit;font-weight:600;border-radius:var(--radius-sm);padding:9px 14px;cursor:pointer;border:1px solid var(--stroke-2);background:var(--glass-2);color:var(--text);transition:transform .08s,background .15s,border-color .15s;white-space:nowrap}.btn:hover{background:#ffffff1c}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn.primary{background:linear-gradient(180deg,#34d85e,#22b84a);color:#04240f;border-color:transparent;box-shadow:0 6px 18px #30d15847}.btn.primary:hover{filter:brightness(1.06)}.btn.blue{background:linear-gradient(180deg,#2a8fff,#0a84ff);color:#fff;border-color:transparent}.btn.danger{background:#ff453a24;color:#ff6b61;border-color:#ff453a59}.btn.ghost{background:transparent}.btn.sm{padding:6px 10px;font-size:12.5px}.table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--stroke)}table{width:100%;border-collapse:collapse;font-size:13.5px}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--stroke);vertical-align:middle}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;background:#ffffff06;position:sticky;top:0}tr:last-child td{border-bottom:none}tbody tr:hover{background:#ffffff08}tr.click{cursor:pointer}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.empty{padding:34px;text-align:center;color:var(--muted)}.pill{white-space:nowrap;display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:600;letter-spacing:.01em;border:1px solid transparent}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill.ok{color:#4ade80;background:#30d1581f;border-color:#30d15840}.pill.warn{color:#ffd60a;background:#ffd60a1a;border-color:#ffd60a40}.pill.bad{color:#ff6b61;background:#ff453a1f;border-color:#ff453a47}.pill.info{color:#5ab0ff;background:#0a84ff1f;border-color:#0a84ff47}.pill.dim{color:var(--muted);background:var(--glass);border-color:var(--stroke)}.pill.role{text-transform:capitalize}.kv{display:grid;grid-template-columns:160px 1fr;gap:8px 14px;font-size:13.5px}.kv .k,.muted{color:var(--muted)}.dim{color:var(--dim)}.small{font-size:12px}.money{font-variant-numeric:tabular-nums}.money.neg{color:#ff6b61}.bars{display:flex;align-items:flex-end;gap:6px;height:160px;padding:8px 4px 0}.bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:14px}.bar .b{width:100%;border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,#30d158e6,#30d15859);box-shadow:0 0 18px #30d15833;transition:height .3s}.bar .b.refund{background:linear-gradient(180deg,#ff453acc,#ff453a40)}.bar .l{font-size:10px;color:var(--dim);white-space:nowrap}.notice{padding:12px 14px;border-radius:12px;font-size:13px;border:1px solid}.notice.err{color:#ff8a80;background:#ff453a14;border-color:#ff453a4d}.notice.ok{color:#86efac;background:#30d15814;border-color:#30d1584d}.notice.warn{color:#fde68a;background:#ffd60a14;border-color:#ffd60a4d}.pager{display:flex;align-items:center;gap:10px;justify-content:flex-end;margin-top:12px;color:var(--muted);font-size:12.5px}.modal-bg{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(6px);display:grid;place-items:center;z-index:50;padding:20px}.modal{width:min(560px,100%);background:#12161eeb;border:1px solid var(--stroke-2);border-radius:18px;box-shadow:0 30px 80px #0009;padding:22px;backdrop-filter:blur(30px)}.modal h2{margin-bottom:14px}.modal .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.auth .card{width:min(420px,100%);padding:28px}.auth .brand{justify-content:center;padding-bottom:10px}.auth .brand .name{font-size:18px}.qr{background:#fff;border-radius:12px;padding:10px;width:200px;height:200px;display:block;margin:12px auto}.qr svg{width:100%;height:100%}.grid.two{grid-template-columns:1fr 1fr}@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.side{position:sticky;top:0;z-index:20;height:auto;padding:10px 12px;gap:8px;border-right:none;border-bottom:1px solid var(--stroke)}.brand{padding:4px 4px 8px}.brand .sub{display:none}.nav{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}.nav::-webkit-scrollbar{display:none}.nav a{flex:0 0 auto;padding:8px 12px;font-size:13px}.side .foot{margin-top:0;padding:6px 4px 0;border-top:none;flex-direction:row;align-items:center;gap:10px}.side .foot>div:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main{padding:16px 14px 40px}.page-head{flex-direction:column;align-items:stretch}.page-head .row{flex-wrap:wrap}.grid.two{grid-template-columns:1fr}.grid.tiles{grid-template-columns:repeat(2,1fr)}.tile .v{font-size:22px}.card{padding:14px;border-radius:14px}.kv{grid-template-columns:1fr;gap:2px 0}.kv .k{margin-top:8px;font-size:12px}.main .row .spacer{flex-basis:100%}.side .foot .row{flex-wrap:nowrap}.side .foot .btn{padding:6px 10px;font-size:12px}label.field{flex:1 1 140px}label.field input,label.field select{width:100%}input[style],.row input{max-width:100%}.btn{padding:10px 14px}.btn.sm{padding:8px 11px}th,td{padding:10px}.bars{height:130px}.bar .l{display:none}.modal{padding:18px;border-radius:16px}}@media(max-width:520px){.grid.tiles{grid-template-columns:1fr 1fr}h1{font-size:20px}table{font-size:13px}}
