:root{font-family:Inter,Arial,sans-serif;color:#152238;background:#f4f7fb}*{box-sizing:border-box}body{margin:0;min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;background:#101b31;color:#fff}.brand{font-weight:800;letter-spacing:.4px}.container{max-width:1180px;margin:32px auto;padding:0 18px}.card{background:#fff;border-radius:18px;box-shadow:0 12px 35px rgba(27,39,69,.08);padding:24px;margin-bottom:20px}.narrow{max-width:460px;margin:65px auto}.hidden{display:none!important}h1,h2,h3{margin-top:0}input,textarea,select{width:100%;padding:12px 14px;border:1px solid #d7deea;border-radius:10px;margin:7px 0 13px;font:inherit}button{border:0;border-radius:10px;padding:11px 16px;font-weight:700;cursor:pointer;background:#2457f5;color:#fff}button.secondary{background:#e9eef8;color:#193057}button.danger{background:#d93838}button.success{background:#169b62}button.warning{background:#dd8b13}button:disabled{opacity:.5;cursor:not-allowed}.grid,.dashboard-grid,.stats-grid,.history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}.dashboard-grid{margin-bottom:20px}.metric,.stat-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 10px 28px rgba(27,39,69,.07)}.metric b,.stat-card strong{display:block;font-size:30px;line-height:1.1;margin-bottom:7px}.metric span,.stat-card span{color:#6d7890}.stats-shell{padding:24px}.stats-grid{grid-template-columns:repeat(3,1fr)}.stat-card{background:#f7f9fd;border:1px solid #e8edf5;box-shadow:none}.status{display:inline-block;padding:6px 10px;border-radius:999px;background:#edf2ff;color:#2146aa;font-size:13px;font-weight:700}.muted{color:#6d7890}.message{padding:12px 14px;border-radius:10px;margin:12px 0;background:#eef4ff}.error{background:#fff0f0;color:#a72828}.successbox{background:#eaf9f1;color:#14663f}.warning-box{background:#fff7e8;color:#895600;padding:12px;border-radius:10px}.error-text{color:#b52b2b}.promo{font-size:28px;font-weight:900;letter-spacing:2px;text-align:center;background:#0f1b33;color:#fff;padding:24px;border-radius:16px}.promo small{display:block;font-size:17px;letter-spacing:0;margin-top:12px;color:#d9e4ff}.row,.welcome-card{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.row>*{flex:1}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:11px;border-bottom:1px solid #edf0f5;vertical-align:top}.table-wrap{overflow-x:auto}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tab{background:#e9eef8;color:#203558}.tab.active{background:#2457f5;color:white}.section{display:none}.section.active{display:block}.modal{position:fixed;inset:0;background:rgba(6,15,35,.62);display:grid;place-items:center;padding:20px;z-index:20}.modal .card{width:min(520px,100%);max-height:90vh;overflow:auto}.code-input{font-size:30px;letter-spacing:10px;text-align:center}.small{font-size:13px}.count{font-size:34px;font-weight:900}label{font-weight:700}.request-card{padding:18px;border:1px solid #e5ebf4;border-radius:14px;margin:14px 0;background:#f9fbff}.button-stack{display:block}.field-error{border:2px solid #d93838;background:#fff8f8}.checkbox-line{display:flex;gap:9px;align-items:flex-start}.checkbox-line input{width:auto;margin-top:3px}.history-item{border:1px solid #e6ebf3;background:#fafcff;border-radius:14px;padding:18px}.history-code{font-weight:900;font-size:18px;word-break:break-all}.history-value{font-size:25px;font-weight:900;margin:10px 0}.redeemed-badge{display:inline-block;background:#e8f8ef;color:#137647;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;margin-bottom:10px}.center{text-align:center}.bold{font-weight:800}
@media(max-width:760px){.container{margin:18px auto;padding:0 12px}.topbar{padding:14px 16px}.card{padding:18px;border-radius:14px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:15px}.stat-card strong{font-size:22px;overflow-wrap:anywhere}.welcome-card{align-items:stretch}.welcome-card button{width:100%}.row{display:block}.row>*{width:100%;margin-bottom:8px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric b{font-size:24px}.tabs button{flex:1;min-width:45%}.table{min-width:680px}.promo{font-size:22px;word-break:break-all}}
@media(max-width:420px){.stats-grid,.dashboard-grid,.history-grid{grid-template-columns:1fr}.brand{font-size:14px}.card{padding:15px}.code-input{letter-spacing:6px;font-size:25px}}
