.codes-wrap{max-width:1100px;margin:35px auto;padding:0 22px}.codes-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.codes-head h1{margin:0 0 5px;font-size:25px}.codes-grid{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.5fr);gap:18px}.codes-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow)}.codes-panel h2{font-size:16px;margin:0 0 17px}.codes-form{display:grid;gap:12px}.codes-form label{font-size:12px;font-weight:700;color:#52617a}.codes-form input,.codes-form select{width:100%;margin-top:5px;padding:11px 12px;border:1px solid #dfe7f3;border-radius:9px;background:#fff;color:var(--ink)}.codes-form .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.codes-table-wrap{overflow:auto}.codes-table{width:100%;border-collapse:collapse;font-size:12px}.codes-table th,.codes-table td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.codes-table th{color:var(--muted);font-weight:700}.status-pill{display:inline-block;border-radius:20px;padding:3px 9px;background:#eef2f7;color:#52617a;font-size:11px}.status-active{background:#e4f8f1;color:#168363}.status-redeemed{background:#eaf2ff;color:#2867c9}.status-revoked,.status-expired{background:#fff0ef;color:#c14c4c}.codes-note{font-size:11px;color:var(--muted);margin:10px 0 0}.codes-visible{display:block!important}.codes-message{margin:14px 0;padding:11px 13px;border-radius:9px;background:#f1f6ff;color:#315d9e;font-size:12px;display:none}.codes-message.error{background:#fff0ef;color:#b33f3f}.codes-output{display:none;margin-top:15px;border:1px solid #bfe8d8;background:#f2fbf7;border-radius:12px;padding:14px}.codes-output strong{display:block;margin-bottom:8px}.codes-output pre{white-space:pre-wrap;word-break:break-word;font-family:monospace;font-size:13px;line-height:1.9;margin:0 0 12px}.auth-box{max-width:420px;margin:70px auto}.auth-box .codes-panel{padding:25px}.codes-hidden{display:none!important}.codes-top-actions{display:flex;gap:8px;align-items:center}.codes-muted{font-size:11px;color:var(--muted)}@media(max-width:800px){.codes-grid{grid-template-columns:1fr}.codes-head{align-items:flex-start;flex-direction:column}.codes-form .two{grid-template-columns:1fr}}