:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#1f1b24;background:#f6f3f8;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0}
.shell{max-width:1180px;margin:auto;padding:28px}
.login-card,.card{background:#fff;border:1px solid #ebe5ef;border-radius:20px;box-shadow:0 8px 30px rgba(56,34,69,.06)}
.login-card{max-width:440px;margin:8vh auto;padding:34px}
.eyebrow{color:#6d2a8a;font-size:.76rem;font-weight:800;letter-spacing:.14em;margin:0 0 7px}
h1,h2,p{margin-top:0}
h1{font-size:clamp(1.7rem,4vw,2.35rem);margin-bottom:8px}
h2{font-size:1.25rem;margin-bottom:4px}
.muted,.section-heading p,.generated p{color:#6d6671}
label{display:grid;gap:7px;font-size:.9rem;font-weight:650;margin-top:18px}
input,select{width:100%;border:1px solid #d9d0df;border-radius:10px;padding:12px 13px;background:#fff;color:#1f1b24;font:inherit}
input:focus,select:focus{outline:3px solid #e8d4f1;border-color:#7a3695}
button{border:0;border-radius:10px;padding:12px 16px;background:#6d2a8a;color:#fff;font-weight:750;cursor:pointer}
button:hover{filter:brightness(.96)}
button:disabled{opacity:.55;cursor:wait}
.login-card form>button{width:100%;margin-top:22px}
.secondary{background:#f0e8f4;color:#63277c}
.message{min-height:22px;margin:14px 0 0;color:#a33c35}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.topbar h1{margin:0}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}
.stats article{background:#fff;border:1px solid #ebe5ef;border-radius:16px;padding:18px}
.stats span,.stats small{display:block;color:#6d6671}
.stats strong{display:block;font-size:1.9rem;margin:6px 0}
.card{padding:22px;margin-bottom:18px}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.section-heading p{margin-bottom:0}
.code-form{display:grid;grid-template-columns:1.7fr .8fr .9fr 1.3fr auto;align-items:end;gap:12px;margin-top:4px}
.code-form label{margin-top:14px}
.plan-note{font-size:.86rem;margin:12px 0 0}
.generated{background:#f7f0fa;border:1px dashed #b68ac8;border-radius:13px;padding:16px;margin-top:18px}
.generated>div{display:flex;justify-content:space-between;align-items:center}
.generated pre{font-size:1.05rem;line-height:1.7;white-space:pre-wrap}
.generated p{font-size:.85rem;margin-bottom:0}
.table-wrap{overflow:auto;margin-top:16px}
table{width:100%;border-collapse:collapse;min-width:760px}
th,td{text-align:left;border-bottom:1px solid #eee8f1;padding:12px 10px;font-size:.9rem}
th{color:#665e6b;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}
.pill{display:inline-block;border-radius:999px;padding:4px 8px;background:#eee;color:#555;font-size:.76rem;font-weight:700}
.pill.active,.pill.available{background:#daf2e4;color:#17643a}
.pill.expired,.pill.revoked{background:#f7deda;color:#96372f}
.pill.redeemed{background:#e7ddf2;color:#5e2d79}
.link-button{background:transparent;color:#a33c35;padding:6px}
@media(max-width:780px){.shell{padding:16px}.stats{grid-template-columns:repeat(2,1fr)}.code-form{grid-template-columns:1fr}.topbar{align-items:flex-start}.card{padding:17px}}
@media(max-width:430px){.stats{grid-template-columns:1fr}.login-card{padding:24px;margin-top:4vh}}
