/* Scoped coupon workspace; existing portal and ticket styles are untouched. */
.coupon-page{margin:0;background:var(--os-canvas,#f6f5f7);color:var(--os-ink,#20232d);font-family:inherit;font-size:13px;line-height:1.5}
.coupon-page *{box-sizing:border-box}.coupon-page [hidden]{display:none!important}
.coupon-page button,.coupon-page input,.coupon-page select,.coupon-page textarea{font:inherit}
.coupon-page button,.coupon-page select,.coupon-page input,.coupon-page textarea{border:1px solid var(--os-line,#dadce2);border-radius:8px;background:var(--os-paper,#fff);color:inherit;min-height:34px;padding:6px 10px}
.coupon-page button{cursor:pointer;white-space:nowrap}.coupon-page button:disabled{opacity:.5;cursor:wait}
.coupon-page input[type=checkbox]{min-height:16px;width:16px;height:16px;padding:0;accent-color:var(--os-purple,#7800ab)}
.coupon-page :focus-visible{outline:2px solid var(--os-turquoise,#087879);outline-offset:3px}
.cp-header{display:flex;align-items:center;gap:20px;padding:12px 24px;border-bottom:1px solid var(--os-line,#dadce2);background:var(--os-paper,#fff);flex-wrap:wrap}
.cp-header a{text-decoration:none;color:inherit}.cp-brand{font-size:19px;font-weight:700;direction:ltr;display:flex;gap:9px;align-items:center}.cp-brand span{font-size:10px;letter-spacing:.08em;color:var(--os-purple,#7800ab)}
.cp-header nav{display:flex;gap:5px;flex:1}.cp-header nav a{padding:7px 14px;border-radius:8px}.cp-header [aria-current=page]{color:var(--os-purple,#7800ab);background:var(--os-purple-soft,#f1e8f8);font-weight:600}
#cp-user{color:var(--os-muted,#657084);font-size:12px}
#cp-main{max-width:1480px;margin:auto;padding:30px 28px}.cp-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.cp-eyebrow{font-size:11px;color:var(--os-turquoise,#087879);font-weight:600}
.cp-heading h1{font-size:30px;line-height:1.2;margin:5px 0;font-weight:600;letter-spacing:-.025em}.cp-heading p{color:var(--os-muted,#657084);margin:6px 0;font-size:13px}
.cp-actions{display:flex;gap:7px}.coupon-page .cp-primary{background:var(--os-purple,#7800ab);border-color:var(--os-purple,#7800ab);color:var(--os-action-text,#fff);font-weight:600}
.cp-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.cp-metric{padding:15px 18px;border:1px solid var(--os-line,#dadce2);border-radius:12px;background:var(--os-paper,#fff);display:flex;flex-direction:column;gap:3px}
.cp-metric strong{font-size:25px;line-height:1.2;color:var(--os-purple,#7800ab);font-weight:600}.cp-metric span{font-size:11px;color:var(--os-muted,#657084)}
.cp-workspace{border:1px solid var(--os-line,#dadce2);border-radius:14px;background:var(--os-paper,#fff);overflow:hidden}
.cp-toolbar{display:flex;gap:8px;align-items:center;padding:12px;border-bottom:1px solid var(--os-line,#dadce2);flex-wrap:wrap}.cp-search{flex:1;min-width:180px}.cp-search input{width:100%}#cp-results{font-size:11px;color:var(--os-muted,#657084)}
.cp-table-wrap{overflow:auto}.coupon-page table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:start}.coupon-page th{font-size:11px;color:var(--os-muted,#657084);font-weight:500;padding:10px 14px;background:var(--os-soft,#f8f8fa);text-align:start}.coupon-page td{padding:11px 14px;border-top:1px solid var(--os-line,#dadce2);vertical-align:middle}.cp-code{display:block;font-weight:600;font-size:14px;color:var(--os-ink,#20232d);direction:ltr;text-align:right;letter-spacing:.03em}.cp-label{display:block;color:var(--os-muted,#657084);font-size:11px;max-width:240px;text-overflow:ellipsis;overflow:hidden}.cp-status{font-size:11px;border-radius:30px;padding:3px 9px;background:var(--os-soft,#f1f2f5)}.cp-status.active{color:var(--os-turquoise,#087879);background:var(--os-turquoise-soft,#e6f4f2)}.cp-status.scheduled{color:var(--os-purple,#7800ab);background:var(--os-purple-soft,#f1e8f8)}
.cp-row-actions{display:flex;gap:5px}.cp-row-actions button{font-size:11px;padding:4px 8px;min-height:29px}
.cp-bulk{padding:10px 14px;background:var(--os-purple-soft,#f1e8f8);display:flex;gap:7px;align-items:center;flex-wrap:wrap}.cp-bulk strong{margin-inline-end:auto}
.cp-footnote{font-size:11px;color:var(--os-muted,#657084);max-width:900px;margin-top:15px}#cp-empty{padding:40px;text-align:center;color:var(--os-muted,#657084)}
#cp-message{position:fixed;bottom:16px;inset-inline:20px;margin:0 auto;max-width:800px;background:var(--os-paper,#fff);padding:12px 18px;border:1px solid var(--os-line,#dadce2);border-radius:10px;box-shadow:0 6px 20px #0002;z-index:20}#cp-message:empty{display:none}
.coupon-page dialog{padding:0;border:1px solid var(--os-line,#dadce2);border-radius:15px;width:min(740px,calc(100vw - 24px));max-height:92dvh;background:var(--os-paper,#fff);color:inherit;box-shadow:0 24px 80px #0004}.coupon-page dialog::backdrop{background:#10182088}.cp-dialog-head,.cp-dialog-foot{padding:14px 20px;display:flex;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--os-line,#dadce2)}.cp-dialog-head h2{font-size:19px;margin:2px 0}.cp-dialog-foot{justify-content:flex-end;border-top:1px solid var(--os-line,#dadce2);border-bottom:0}.cp-dialog-body{padding:17px 20px;max-height:68dvh;overflow:auto}.cp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.coupon-page label{font-size:12px}.cp-grid>label{display:flex;flex-direction:column;gap:5px}.coupon-page small{font-size:10px;color:var(--os-muted,#657084);font-weight:400}.cp-wide{grid-column:1/-1}.coupon-page fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}.coupon-page legend{font-size:13px;color:var(--os-purple,#7800ab);font-weight:600;margin-bottom:10px}.coupon-page .cp-checks{display:flex;gap:13px;flex-wrap:wrap;margin:5px 0}.cp-checks label,.coupon-page .cp-inline{display:flex;flex-direction:row;gap:6px;align-items:center}.coupon-page details{border-top:1px solid var(--os-line,#dadce2);padding-top:13px}.coupon-page summary{cursor:pointer;font-weight:600;margin-bottom:12px}
.cp-preview{background:var(--os-soft,#f6f5f8);border-radius:9px;padding:12px;margin-top:15px}.cp-preview h3{font-size:12px;margin:0;color:var(--os-turquoise,#087879)}.cp-preview p{margin:5px 0}.cp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.cp-audit{padding:12px 0;border-bottom:1px solid var(--os-line,#dadce2)}.cp-audit pre{white-space:pre-wrap;word-break:break-word;font:inherit;font-size:11px;background:var(--os-soft,#f6f5f8);padding:10px;border-radius:8px}.cp-use{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--os-line,#dadce2)}
@media(max-width:760px){.cp-header{padding:10px 12px;gap:9px}.cp-header nav{order:3;flex-basis:100%}#cp-user{display:none}#cp-main{padding:18px 12px}.cp-heading{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:15px}.cp-heading h1{font-size:26px}.cp-actions{width:100%}.cp-actions button{flex:1;font-size:12px}.cp-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cp-metric{padding:11px}.cp-metric strong{font-size:22px}.cp-dialog-body{padding:14px}.cp-grid{gap:10px}.coupon-page td,.coupon-page th{padding:10px}.cp-bulk strong{flex-basis:100%}.cp-dialog-head,.cp-dialog-foot{padding:12px}.cp-row-actions{flex-wrap:wrap}.cp-footnote{font-size:10px}}
@media(prefers-reduced-motion:no-preference){.cp-workspace{animation:cp-in .25s ease-out}@keyframes cp-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}}
