.toast svg[data-v-ed116c7c]{flex:none;width:15px;height:15px}.admin-banner[data-v-368cb55c]{color:#ffe9a6;background:#fbbf2414;border:1px solid #fbbf244d;border-radius:10px;margin-bottom:16px;padding:11px 16px;font-size:12px}.admin-banner a[data-v-368cb55c]{color:var(--gold);text-underline-offset:3px;text-decoration:underline}:root{--bg:#07101d;--bg-deep:#040c18;--bg-soft:#0b1728;--panel:#0d1d32;--panel-2:#102037;--line:#aacdff2e;--line-strong:#aacdff52;--text:#f6f9ff;--text-2:#d7e3f6;--muted:#8ea1bd;--dim:#657995;--blue:#60a5fa;--blue-soft:#83b6ff;--blue-deep:#2e6dd4;--gold:#fbbf24;--gold-soft:#fbd462;--green:#34d399;--red:#f87171;--violet:#a78bfa;--radius-sm:10px;--radius:16px;--radius-lg:22px;--radius-xl:28px;--shadow:0 24px 60px #00000052;--font-sans:Inter, "Noto Sans SC", "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;--font-mono:"SFMono-Regular", ui-monospace, Consolas, "Liberation Mono", Menlo, monospace;--header-h:76px}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px;line-height:1.6}#app{min-height:100vh}h1,h2,h3,h4,h5,h6,p,figure,ul,ol{margin:0}h1,h2,h3,h4,h5,h6{font-weight:inherit}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}img,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}::selection{color:#fff;background:#fbbf244d}:focus-visible{outline:2px solid var(--blue-soft);outline-offset:3px}.admin-shell{background:radial-gradient(60% 40% at 80% -10%,#3776d129,#0000 60%),#050c16;min-height:100vh}.admin-side{z-index:80;background:linear-gradient(#081422,#050c16);border-right:1px solid #aacdff1a;flex-direction:column;gap:4px;width:236px;padding:18px 14px;display:flex;position:fixed;inset:0 auto 0 0}.admin-brand{align-items:center;gap:10px;padding:6px 10px 20px;display:flex}.admin-brand .brand-mark{border-radius:10px;width:34px;height:34px}.admin-brand .brand-mark svg{width:19px;height:19px}.admin-brand b{letter-spacing:-.01em;font-size:14.5px;font-weight:650;display:block}.admin-brand small{letter-spacing:.18em;color:var(--dim);margin-top:2px;font-size:9px;display:block}.admin-nav{gap:2px;display:grid}.admin-nav a{color:var(--muted);border-radius:9px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:550;transition:background .2s,color .2s;display:flex}.admin-nav a svg{flex:none;width:16px;height:16px}.admin-nav a:hover{color:#fff;background:#60a5fa14}.admin-nav a.router-link-exact-active{color:#fff;background:#60a5fa24}.admin-side-foot{color:var(--dim);border-top:1px solid #aacdff1a;gap:6px;margin-top:auto;padding:12px 10px 4px;font-size:12px;display:grid}.admin-side-foot a:hover{color:var(--gold)}.admin-side-foot button{text-align:left;color:var(--dim);padding:0;font-size:12px}.admin-side-foot button:hover{color:var(--red)}.admin-main{min-width:0;margin-left:236px}.admin-top{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#050c16db;border-bottom:1px solid #aacdff1a;align-items:center;gap:14px;height:62px;padding:0 24px;display:flex;position:sticky;top:0}.admin-top h1{font-size:15px;font-weight:600}.admin-top .spacer{flex:1}.admin-user{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.admin-user i{background:var(--green);width:7px;height:7px;box-shadow:0 0 8px var(--green);border-radius:50%}.admin-menu-btn{border:1px solid var(--line);width:36px;height:36px;color:var(--text-2);border-radius:9px;place-items:center;display:none}.admin-content{max-width:1440px;padding:24px}.admin-page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.admin-page-head h1{letter-spacing:-.02em;font-size:24px;font-weight:550}.admin-page-head p{color:var(--dim);margin-top:6px;font-size:12px}.admin-page-head .actions{flex-wrap:wrap;gap:8px;display:flex}.admin-btn{border:1px solid var(--line);height:34px;color:var(--text-2);white-space:nowrap;background:#0d1d3299;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12.5px;font-weight:550;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.admin-btn svg{width:14px;height:14px}.admin-btn:hover{border-color:var(--line-strong);color:#fff;background:#142a47cc}.admin-btn.gold{background:linear-gradient(135deg, var(--gold-soft), var(--gold));color:#07101d;border-color:#0000}.admin-btn.gold:hover{filter:brightness(1.05);color:#07101d}.admin-btn.danger{color:#ffb4b9;background:#f8717114;border-color:#f8717147}.admin-btn.danger:hover{color:#fff;background:#f8717129}.admin-btn:disabled{opacity:.45;cursor:not-allowed}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.stat-card{border:1px solid var(--line);background:linear-gradient(150deg,#162d4c80,#07122266);border-radius:14px;padding:18px 20px}.stat-card span{color:var(--dim);letter-spacing:.1em;text-transform:uppercase;font-size:10.5px;display:block}.stat-card b{letter-spacing:-.02em;margin-top:8px;font-size:26px;font-weight:500;display:block}.stat-card b small{color:var(--dim);letter-spacing:0;margin-left:4px;font-size:11px}.stat-card.gold b{color:var(--gold)}.panel-card{border:1px solid var(--line);background:#0d1d326b;border-radius:14px;overflow:hidden}.panel-card-head{border-bottom:1px solid #aacdff1a;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.panel-card-head h2{font-size:14px;font-weight:600}.panel-card-body{padding:16px 20px}.table-card{overflow-x:auto}table.admin-table{border-collapse:collapse;width:100%;min-width:760px;font-size:12.5px}table.admin-table th{text-align:left;color:var(--dim);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#040c184d;border-bottom:1px solid #aacdff1f;padding:11px 14px;font-size:10px;font-weight:700}table.admin-table td{color:var(--text-2);vertical-align:middle;white-space:nowrap;border-bottom:1px solid #aacdff0f;padding:12px 14px}table.admin-table tr:hover td{background:#60a5fa09}table.admin-table td.mono,table.admin-table .mono{font-family:var(--font-mono);color:var(--muted);font-size:11.5px}table.admin-table .muted{color:var(--dim)}table.admin-table .row-actions{flex-wrap:wrap;gap:6px;display:flex}.status-badge{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:10.5px;font-weight:600;display:inline-flex}.status-badge.paid{color:var(--green);background:#34d39914;border-color:#34d3994d}.status-badge.pending{color:var(--gold);background:#fbbf2414;border-color:#fbbf244d}.status-badge.expired,.status-badge.cancelled{color:var(--red);background:#f8717112;border-color:#f8717147}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.admin-toolbar .input,.admin-toolbar select{border:1px solid var(--line);height:34px;color:var(--text);background:#040c188c;border-radius:8px;outline:none;min-width:150px;padding:0 11px;font-size:12.5px}.admin-toolbar .input{flex:220px;width:auto}.admin-toolbar .input:focus,.admin-toolbar select:focus{border-color:#60a5fa80}.pager{color:var(--dim);border-top:1px solid #aacdff14;justify-content:flex-end;align-items:center;gap:8px;padding:12px 16px;font-size:11.5px;display:flex}.admin-form{grid-template-columns:1fr 1fr;gap:14px;display:grid}.admin-field{flex-direction:column;gap:6px;display:flex}.admin-field.full{grid-column:1/-1}.admin-field label{color:var(--muted);font-size:11px}.admin-field label em{color:var(--dim);font-style:normal}.admin-field input,.admin-field select,.admin-field textarea{border:1px solid var(--line);width:100%;color:var(--text);background:#040c188c;border-radius:8px;outline:none;padding:9px 11px;font-size:12.5px}.admin-field textarea{resize:vertical;min-height:82px;line-height:1.6}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:#60a5fa80;box-shadow:0 0 0 3px #60a5fa1a}.admin-field input:disabled{opacity:.55}.checkbox-line{color:var(--text-2);align-items:center;gap:8px;font-size:12.5px;display:flex}.checkbox-line input{width:auto;accent-color:var(--gold)}.modal-backdrop{z-index:120;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#020812c2;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:linear-gradient(#0f1e32fa,#081220fa);border:1px solid #aacdff24;border-radius:16px;width:min(520px,100%);max-height:calc(100vh - 48px);padding:22px;overflow-y:auto;box-shadow:0 30px 80px #0000008c}.modal-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}@media (width<=520px){.modal-backdrop{padding:12px}.modal{max-height:calc(100vh - 24px)}}.modal.wide{flex-direction:column;width:min(760px,100%);max-height:90vh;display:flex;overflow:hidden}.modal.wide .modal-body{margin-right:-4px;padding-right:4px;overflow-y:auto}.modal.wide .modal-actions{border-top:1px solid #aacdff1a;margin-top:16px;padding-top:14px}.modal-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.modal-head h3{font-size:17px;font-weight:600}.modal-head p{color:var(--dim);margin-top:4px;font-size:11.5px}.modal-close{border:1px solid var(--line);width:30px;height:30px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.modal-close:hover{color:#fff}.admin-empty{text-align:center;color:var(--dim);padding:46px 20px;font-size:12.5px}.admin-login{background:radial-gradient(50% 40% at 70% 10%,#3776d140,#0000 60%),#050c16;place-items:center;min-height:100vh;padding:24px;display:grid}.admin-login-card{border:1px solid var(--line);background:linear-gradient(150deg,#162d4c8c,#07122280);border-radius:18px;width:min(400px,100%);padding:32px;box-shadow:0 30px 80px #0006}.admin-login-card h1{margin:18px 0 6px;font-size:22px;font-weight:550}.admin-login-card p{color:var(--dim);margin-bottom:20px;font-size:12px;line-height:1.7}.admin-login-card .admin-field{margin-bottom:12px}.admin-login-card .admin-btn{width:100%;height:40px;margin-top:6px}.admin-login-error{color:#ffb4b9;margin-top:10px;font-size:12px}.detail-grid{grid-template-columns:1fr 1fr;gap:12px;font-size:12.5px;display:grid}.detail-grid>div{color:var(--dim);background:#040c1866;border-radius:8px;justify-content:space-between;gap:10px;padding:8px 10px;display:flex}.detail-grid b{color:var(--text-2);text-align:right;word-break:break-all;font-weight:500}.key-chips{gap:8px;margin-top:12px;display:grid}.key-chip{font-family:var(--font-mono);color:#ffe9a6;background:#fbbf240f;border:1px solid #fbbf2438;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;font-size:12px;display:flex}.key-chip button{color:var(--muted);margin-left:auto}.key-chip button:hover{color:#fff}@media (width<=980px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form{grid-template-columns:1fr}}@media (width<=860px){.admin-side{transition:transform .25s;transform:translate(-100%);box-shadow:20px 0 60px #00000073}.admin-side.open{transform:none}.admin-main{margin-left:0}.admin-menu-btn{display:grid}.admin-content{padding:18px 16px}}@media (width<=520px){.stat-grid,.detail-grid{grid-template-columns:1fr}}
