.promo-codes{height:100dvh;display:flex;flex-direction:column;background:var(--ey-canvas);color:var(--ey-ink);font-family:DM Sans,sans-serif}.promo-codes .mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;letter-spacing:.5px}.promo-codes .bar{display:flex;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--ey-line);background:var(--ey-surface)}.promo-codes .back{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--ey-line);background:none;color:inherit;text-decoration:none;font-size:18px}.promo-codes .title{min-width:0;flex:0 1 auto}.promo-codes .title p{margin:0;font-size:10px;font-weight:600;letter-spacing:1.55px;text-transform:uppercase;color:var(--ey-muted)}.promo-codes .title h1{margin:2px 0 0;font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:500;letter-spacing:-.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.promo-codes .bar-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.promo-codes button{font:inherit;color:inherit;cursor:pointer}.promo-codes button:disabled{cursor:default;opacity:.45}.promo-codes .primary{border:0;border-radius:50px;padding:11px 20px;background:var(--ey-primary);color:var(--ey-on-primary);font-weight:600;font-size:13px;white-space:nowrap}.promo-codes .ghost{border:1px solid var(--ey-line);background:transparent;border-radius:50px;padding:10px 16px;font-size:13px;font-weight:500;color:inherit;text-decoration:none}.promo-codes :is(.primary,.ghost).small{padding:7px 13px;font-size:12px}.promo-codes .ghost.danger{color:var(--ey-orange);border-color:color-mix(in srgb,var(--ey-orange) 45%,var(--ey-line))}.promo-codes .link{background:none;border:0;padding:0;font-size:12px;color:var(--ey-lavender);text-decoration:underline;text-underline-offset:3px}.promo-codes .banner{margin:0;padding:10px 20px;font-size:13px;line-height:1.45;background:var(--ey-soft);display:flex;flex-wrap:wrap;gap:12px;align-items:center}.promo-codes .banner.danger{background:color-mix(in srgb,var(--ey-orange) 18%,var(--ey-surface))}.promo-codes .banner.ok{background:color-mix(in srgb,#4ec27b 18%,var(--ey-surface))}.promo-codes .body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.promo-codes .layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;align-items:start;gap:28px;width:100%;max-width:1120px;margin:0 auto;padding:28px 20px 60px;box-sizing:border-box}.promo-codes h2{margin:0;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:500;letter-spacing:-.2px}.promo-codes .section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 14px;margin-bottom:14px}.promo-codes .help{margin:0;font-size:12px;line-height:1.45;color:var(--ey-muted)}.promo-codes .error{margin:0;font-size:12px;line-height:1.45;color:var(--ey-orange)}.promo-codes .code-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.promo-codes .code-row{display:grid;gap:8px;padding:16px;border:1px solid var(--ey-line);border-radius:16px;background:var(--ey-surface)}.promo-codes .code-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.promo-codes .code-head strong{font-size:16px;font-weight:600;word-break:break-all}.promo-codes .code-row.muted .code-head strong,.promo-codes .code-row.muted .does{color:var(--ey-muted)}.promo-codes .does{margin:0;font-size:14px;font-weight:500;line-height:1.4}.promo-codes .meta{margin:0;font-size:12px;color:var(--ey-muted);font-variant-numeric:tabular-nums}.promo-codes .pill{font-size:11px;font-weight:600;padding:4px 10px;border-radius:50px;background:var(--ey-soft);color:var(--ey-muted);white-space:nowrap}.promo-codes .pill-active{background:color-mix(in srgb,#4ec27b 20%,var(--ey-surface));color:var(--ey-ink)}.promo-codes .pill-scheduled{background:color-mix(in srgb,var(--ey-primary) 20%,var(--ey-surface));color:var(--ey-ink)}.promo-codes .pill-admin{background:color-mix(in srgb,var(--ey-orange) 20%,var(--ey-surface));color:var(--ey-orange)}.promo-codes .row-actions{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin-top:4px}.promo-codes .row-actions .link{margin-left:auto}.promo-codes .row-actions.confirm span{font-size:13px;flex-basis:100%}.promo-codes .row-edit{display:grid;gap:10px;margin-top:4px;padding-top:12px;border-top:1px dashed var(--ey-line)}.promo-codes .empty{display:grid;gap:6px;padding:28px 20px;border:1px dashed var(--ey-line);border-radius:16px;text-align:center}.promo-codes .empty strong{font-family:Space Grotesk,sans-serif;font-weight:500;font-size:15px}.promo-codes .form-panel{scroll-margin-top:20px;padding:20px;border:1px solid var(--ey-line);border-radius:18px;background:var(--ey-surface)}.promo-codes .new-code{display:grid;gap:18px}.promo-codes .new-code>.help:first-of-type{margin-top:-10px}.promo-codes fieldset{border:0;margin:0;padding:0;min-width:0}.promo-codes .field{display:grid;gap:7px}.promo-codes .label-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.promo-codes .field label,.promo-codes .field .label{font-size:13px;font-weight:500;padding:0}.promo-codes .optional{font-weight:400;font-size:11px;color:var(--ey-muted);margin-left:4px}.promo-codes .field input:not([type=checkbox],[type=radio]){width:100%;box-sizing:border-box;font:inherit;font-size:14px;color:var(--ey-ink);background:var(--ey-canvas);border:1px solid var(--ey-line);border-radius:12px;padding:11px 12px;min-width:0;color-scheme:inherit}.promo-codes .field input.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;text-transform:uppercase;letter-spacing:1px}.promo-codes .field input::placeholder{color:var(--ey-muted);opacity:.75}.promo-codes .field input:focus-visible{outline:2px solid var(--ey-primary);outline-offset:1px}.promo-codes .invalid input:not([type=checkbox],[type=radio]){border-color:var(--ey-orange)}.promo-codes .pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.promo-codes .segmented{display:flex;flex-wrap:wrap;gap:6px}.promo-codes .segmented label{display:inline-flex;align-items:center;padding:8px 14px;border-radius:50px;border:1px solid var(--ey-line);font-size:13px;font-weight:500;cursor:pointer}.promo-codes .segmented label.on{border-color:var(--ey-primary);box-shadow:0 0 0 1px var(--ey-primary);background:var(--ey-soft)}.promo-codes .segmented label:has(input:focus-visible){outline:2px solid var(--ey-primary);outline-offset:2px}.promo-codes .segmented input{position:absolute;opacity:0;pointer-events:none}.promo-codes fieldset:disabled .segmented label{cursor:default;opacity:.45}.promo-codes .unit{display:inline-flex;border:1px solid var(--ey-line);border-radius:50px;padding:2px}.promo-codes .unit button{border:0;background:none;border-radius:50px;min-width:34px;padding:4px 10px;font-size:12px;font-weight:600;color:var(--ey-muted)}.promo-codes .unit button[aria-checked=true]{background:var(--ey-soft);color:var(--ey-ink)}.promo-codes .affix{position:relative}.promo-codes .affix:after{content:attr(data-unit);position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--ey-muted);pointer-events:none}.promo-codes .affix.prefix:after{right:auto;left:13px}.promo-codes .field .affix input{padding-right:34px}.promo-codes .field .affix.prefix input{padding-left:30px;padding-right:12px}.promo-codes .ticket-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.promo-codes .ticket-list label{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--ey-line);border-radius:12px;background:var(--ey-canvas);font-size:13px;cursor:pointer}.promo-codes .ticket-list label:has(input:checked){border-color:var(--ey-primary)}.promo-codes .ticket-list input{accent-color:var(--ey-primary);width:16px;height:16px;margin:0;flex:none}.promo-codes .ticket-list span{flex:1;min-width:0;overflow-wrap:anywhere}.promo-codes .ticket-list em{font-style:normal;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--ey-lavender)}.promo-codes .ticket-list small{color:var(--ey-muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.promo-codes fieldset:disabled .ticket-list label{cursor:default;opacity:.6}.promo-codes .new-code>.primary{justify-self:start}@media(max-width:900px){.promo-codes .layout{grid-template-columns:1fr;padding:20px 16px 48px;gap:24px}.promo-codes .form-panel{padding:16px}.promo-codes .bar{padding:12px 14px;gap:10px}}@media(max-width:420px){.promo-codes .pair{grid-template-columns:1fr}.promo-codes .new-code>.primary{justify-self:stretch}}
