:root{color-scheme:light;font-family:"Segoe UI","Microsoft YaHei",sans-serif;color:#243148;background:#f3f5f9;font-size:14px}*{box-sizing:border-box}body{margin:0}header{height:76px;background:#fff;border-bottom:1px solid #e3e8f0;padding:0 5%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:24px}.brand b{font-size:26px;color:#4057d6}.brand span{color:#64748b}main{max-width:1360px;margin:38px auto;padding:0 28px;min-height:75vh}h1{font-size:29px;letter-spacing:-.5px;margin:10px 0}h2{font-size:18px;margin:0 0 20px}p{line-height:1.8;color:#738096}button,input,select,textarea{font:inherit}button{border:1px solid #d8dfeb;background:white;border-radius:8px;padding:10px 17px;cursor:pointer;color:#36475f}button:hover{border-color:#6d7ee5;background:#f5f6ff}button:disabled{opacity:.5;cursor:wait}.primary{background:#485cdd;color:white;border-color:#485cdd}.primary:hover{background:#3548c4;color:white}.danger{color:#ba3c53}.panel{border:1px solid #e0e5ee;background:white;border-radius:12px;padding:26px;margin-bottom:20px;box-shadow:0 3px 12px #21315b04}.login{max-width:500px;margin:9vh auto;padding:38px}.login form{display:grid;gap:18px;margin-top:28px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#6676ce}label{display:flex;flex-direction:column;gap:8px;color:#5d6d85;font-size:13px}input,select,textarea{width:100%;border:1px solid #d8e0ee;border-radius:7px;padding:10px;background:white;color:#23334c}input:focus,select:focus,textarea:focus{outline:2px solid #cdd4ff}textarea{font-family:Consolas,monospace;min-height:110px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.heading p{margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:28px}.stat{background:white;padding:23px;border-radius:10px;border:1px solid #e0e5ee}.stat span{display:block;color:#748198}.stat strong{display:block;margin-top:9px;font-size:30px;color:#354996}nav{display:flex;gap:6px;border-bottom:1px solid #dfe5ef;margin-bottom:22px;overflow:auto}nav button{white-space:nowrap;border:0;border-bottom:3px solid transparent;background:none;border-radius:0;padding:14px 21px}nav button.selected{color:#4058d7;border-bottom-color:#485cdd;font-weight:600}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;background:#f8f9fc;color:#6d7a90;font-weight:500;padding:13px}td{border-top:1px solid #edf0f5;padding:14px 13px;vertical-align:top}td small{display:block;color:#8995a7;margin-top:4px;max-width:260px;overflow-wrap:anywhere}.badge{display:inline-block;padding:4px 8px;border-radius:5px;background:#edf2ff;color:#4861c4}.badge.active,.badge.redeemed,.badge.settled{background:#e5f6ee;color:#288461}.badge.suspended,.badge.revoked,.badge.disabled{background:#fcebef;color:#af4560}.empty{padding:50px;text-align:center;color:#8e99aa}.grid-form{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-form .wide{grid-column:1/-1}.grid-form button{align-self:end}.hint{font-size:12px;margin:8px 0 18px}.small-button{padding:6px 10px;font-size:12px}.code{font-family:Consolas,monospace;font-size:11px;overflow-wrap:anywhere}#notice{position:fixed;bottom:24px;right:24px;max-width:520px;padding:16px 22px;border-radius:9px;background:#263650;color:white;box-shadow:0 6px 24px #24314822;display:none;z-index:10}dialog{max-width:680px;border:1px solid #d9dfeb;border-radius:14px;padding:32px}dialog::backdrop{background:#17274555}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f0f3fb;padding:18px;color:#354996}footer{color:#9aa5b6;text-align:center;padding:28px;font-size:12px}details summary{cursor:pointer;color:#5469cc}details pre{max-width:580px;font-size:11px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.toolbar h2{margin:0}#new-code{user-select:all}[hidden]{display:none!important}@media(max-width:800px){main{padding:0 16px}.stats{grid-template-columns:repeat(2,1fr)}.grid-form{grid-template-columns:1fr}.heading{align-items:flex-start}.brand span{font-size:11px}.login{margin:5vh auto;padding:25px}}
