:root{
  --bg:#0a0c13; --bg2:#0f121c; --panel:#151a27; --panel2:#1b2131;
  --line:#2a3145; --text:#e9ecf5; --muted:#949cb3; --gold:#f0c05a;
  --gold-2:#c9962f; --red:#e05055; --green:#49c98a; --blue:#5b9dff;
  --shadow:0 16px 40px rgba(0,0,0,.38);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);
  font-family:"Microsoft YaHei","PingFang SC","Segoe UI",system-ui,sans-serif;font-size:14px;line-height:1.6}
body{min-height:100vh;background:
  radial-gradient(1100px 520px at 50% -140px,rgba(240,192,90,.10),transparent 70%),
  radial-gradient(800px 500px at 100% 100%,rgba(91,157,255,.06),transparent 70%),var(--bg)}
a{color:var(--gold);text-decoration:none}
.wrap{width:min(1160px,calc(100% - 40px));margin:0 auto}
.topbar{border-bottom:1px solid var(--line);background:rgba(12,15,24,.88);backdrop-filter:blur(8px);position:sticky;top:0;z-index:20}
.topbar-inner{display:flex;align-items:center;gap:26px;height:64px}
.brand{display:flex;align-items:center;gap:10px;color:var(--text);font-weight:700;letter-spacing:.5px}
.brand-mark{display:inline-grid;place-items:center;width:38px;height:30px;border:1px solid var(--gold-2);
  border-radius:5px;color:var(--gold);font-size:13px;font-weight:800;letter-spacing:1px;
  background:linear-gradient(160deg,rgba(240,192,90,.18),rgba(240,192,90,.02))}
.brand-text{font-size:16px}
.nav{display:flex;gap:6px;flex:1}
.nav-link{background:none;border:0;color:var(--muted);padding:8px 14px;border-radius:8px;cursor:pointer;font-size:14px;font-family:inherit}
.nav-link:hover{color:var(--text);background:var(--panel)}
.nav-link.active{color:var(--gold);background:rgba(240,192,90,.10)}
.account{display:flex;align-items:center;gap:12px}
.account-name{color:var(--text);font-weight:600}
.account-name::before{content:"●";color:var(--green);font-size:9px;margin-right:7px;vertical-align:middle}
.main{padding:34px 0 70px;min-height:calc(100vh - 140px)}
.card{background:linear-gradient(180deg,var(--panel),var(--bg2));border:1px solid var(--line);
  border-radius:14px;padding:26px;box-shadow:var(--shadow)}
.card-head{margin-bottom:22px}
.card-head.row{display:flex;align-items:center;justify-content:space-between}
h1{font-size:24px;margin:0 0 6px;letter-spacing:.4px}
h2{font-size:17px;margin:0 0 16px;color:var(--text)}
h3{font-size:14px;margin:22px 0 12px;color:var(--muted);font-weight:600;letter-spacing:.5px}
p{margin:0 0 10px;color:var(--muted)}
.hint{font-size:12.5px;color:var(--muted);line-height:1.7}
.hero{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;gap:16px;flex-wrap:wrap}
.hero h1{font-size:28px}
.hero p{margin:0;color:var(--gold)}
.hero-badge{border:1px solid rgba(240,192,90,.35);color:var(--gold);background:rgba(240,192,90,.07);
  padding:7px 14px;border-radius:20px;font-size:12px}
.tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.tab{background:var(--panel);border:1px solid var(--line);color:var(--muted);padding:10px 20px;
  border-radius:9px;cursor:pointer;font-family:inherit;font-size:14px}
.tab.active{border-color:var(--gold-2);color:var(--gold);background:rgba(240,192,90,.10);font-weight:600}
.grid-2{display:grid;grid-template-columns:1.25fr .9fr;gap:18px}
.panel{min-height:270px}
.presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}
.preset{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:16px 10px;
  text-align:center;cursor:pointer;color:var(--text);font-family:inherit;transition:.15s}
.preset:hover{border-color:var(--gold-2)}
.preset.selected{border-color:var(--gold);background:rgba(240,192,90,.12);box-shadow:0 0 0 1px rgba(240,192,90,.25) inset}
.preset strong{display:block;font-size:19px;color:var(--gold);letter-spacing:.5px}
.preset span{font-size:12px;color:var(--muted)}
label{display:block;color:var(--muted);font-size:13px}
label input{display:block;width:100%;margin-top:7px;background:#0c101a;border:1px solid var(--line);
  color:var(--text);border-radius:9px;padding:11px 12px;font-size:14px;font-family:inherit;outline:none}
label input:focus{border-color:var(--gold-2);box-shadow:0 0 0 3px rgba(240,192,90,.10)}
.field-label{margin:16px 0 6px}
.form{display:grid;gap:16px;max-width:420px}
.login-card{max-width:560px;margin:40px auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:11px 18px;
  border:1px solid var(--line);background:var(--panel2);color:var(--text);cursor:pointer;
  font-size:14px;font-family:inherit;transition:.15s;text-align:center}
.btn:hover{filter:brightness(1.14)}
.btn:disabled{opacity:.45;cursor:not-allowed;filter:none}
.btn.primary{background:linear-gradient(180deg,var(--gold),var(--gold-2));border-color:var(--gold-2);
  color:#20180a;font-weight:700}
.btn.ghost{background:transparent}
.btn.danger{border-color:rgba(224,80,85,.5);color:#ff9a9e;background:rgba(224,80,85,.08)}
.btn.small{padding:6px 12px;font-size:12.5px}
.btn.full{width:100%;margin-top:16px}
.summary{margin:0 0 6px}
.summary>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line)}
.summary dt{color:var(--muted)}
.summary dd{margin:0;font-weight:600;text-align:right;word-break:break-all}
.summary .amount{color:var(--gold);font-size:20px}
.channels{display:grid;gap:9px}
.channel{display:flex;align-items:center;gap:11px;border:1px solid var(--line);
  background:var(--panel2);border-radius:10px;padding:12px 14px;cursor:pointer}
.channel.selected{border-color:var(--gold);background:rgba(240,192,90,.09)}
.channel input{accent-color:var(--gold);width:16px;height:16px;margin:0}
.channel .ch-name{font-weight:600}
.channel .ch-desc{font-size:12px;color:var(--muted)}
.bp-info{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:14px;margin:14px 0;font-size:13px}
.bp-info b{color:var(--gold)}
.big-price{font-size:26px;color:var(--gold);font-weight:700;margin-top:14px}
.alert{border:1px solid rgba(224,80,85,.45);background:rgba(224,80,85,.10);color:#ffb7ba;
  padding:12px 16px;border-radius:10px;margin-bottom:18px}
.alert.ok{border-color:rgba(73,201,138,.45);background:rgba(73,201,138,.10);color:#a7efc9}
.table-wrap{overflow-x:auto}
.table{width:100%;border-collapse:collapse;font-size:13px}
.table th{text-align:left;color:var(--muted);font-weight:600;padding:11px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.table td{padding:12px 10px;border-bottom:1px solid rgba(42,49,69,.6);vertical-align:middle}
.table td.mono{font-family:Consolas,Monaco,monospace;font-size:12px;color:var(--muted)}
.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;white-space:nowrap}
.badge.created{background:rgba(148,156,179,.15);color:#b9c0d4}
.badge.payment_pending{background:rgba(91,157,255,.15);color:#9dc4ff}
.badge.paid_pending_credit{background:rgba(240,192,90,.15);color:var(--gold)}
.badge.credited{background:rgba(73,201,138,.15);color:#8ee6b8}
.badge.closed{background:rgba(148,156,179,.12);color:#9aa2b8}
.badge.manual_review{background:rgba(224,80,85,.15);color:#ff9a9e}
.checkout-detail{max-width:760px;margin:0 auto}
.qr-box{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin:18px 0}
.qr-frame{background:#fff;padding:10px;border-radius:12px;line-height:0}
.qr-frame img{width:220px;height:220px;image-rendering:pixelated}
.qr-side{flex:1;min-width:230px}
.status-line{padding:14px;border-radius:10px;background:var(--panel2);border:1px solid var(--line);margin-top:16px}
.status-line strong{color:var(--gold)}
.return-page{display:grid;place-items:center;min-height:100vh}
.return-card{max-width:520px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:32px}
.footer{display:flex;justify-content:space-between;color:#5d6479;font-size:12px;padding:18px 0 34px;border-top:1px solid var(--line)}
.footer span:last-child{font-family:Consolas,monospace}
/* admin */
.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.stat{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:16px}
.stat .k{color:var(--muted);font-size:12px}
.stat .v{font-size:24px;font-weight:700;color:var(--gold);margin-top:6px}
.admin-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid label{font-size:12.5px}
.switch-row{display:flex;align-items:center;justify-content:space-between;gap:10px;
  border:1px solid var(--line);background:var(--panel2);border-radius:9px;padding:10px 12px;margin-bottom:8px}
.switch-row label{display:flex;align-items:center;gap:8px;color:var(--text);font-size:13px}
.switch-row input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--gold)}
.switch-row input[type=text],.switch-row input[type=number]{width:130px;margin:0;background:#0c101a;
  border:1px solid var(--line);color:var(--text);border-radius:7px;padding:6px 8px;font-family:inherit}
.secret-pill{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11.5px}
.secret-pill.on{background:rgba(73,201,138,.14);color:#8ee6b8}
.secret-pill.off{background:rgba(224,80,85,.12);color:#ff9a9e}
.detail{font-size:13px;display:grid;gap:8px}
.detail .row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding:6px 0}
.detail .row span:first-child{color:var(--muted)}
.mono{font-family:Consolas,Monaco,monospace;font-size:12px}
@media(max-width:900px){.grid-2,.admin-cols{grid-template-columns:1fr}.admin-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.wrap{width:calc(100% - 24px)}.presets{grid-template-columns:1fr 1fr}
  .topbar-inner{gap:10px}.brand-text{display:none}.form-grid{grid-template-columns:1fr}}
