.voucher104-page{max-width:1600px;margin:0 auto}.voucher104-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.voucher104-grid.central{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.voucher104-grid>*,.voucher104-page .lm-admin-panel{min-width:0}.voucher104-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:20px 0}.voucher104-metrics article{display:flex;flex-direction:column;gap:8px;background:var(--lm-surface,#19191c);border:1px solid #ffffff18;border-radius:16px;padding:18px}.voucher104-metrics strong{font-size:2rem}.voucher104-metrics small{color:#aaa}.voucher104-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin-bottom:20px}.voucher104-filters label{flex:1 1 160px;min-width:0}.voucher104-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.voucher104-actions .btn{min-height:44px}.voucher104-detail header{margin-bottom:20px}.voucher104-detail h2{overflow-wrap:anywhere}.voucher104-facts{margin:20px 0}.voucher104-facts>div{padding:12px 0;border-bottom:1px solid #ffffff16}.voucher104-facts dt{color:#aaa;font-size:.85rem}.voucher104-facts dd{margin:5px 0 0;white-space:pre-line;overflow-wrap:anywhere}.voucher104-history{padding-left:20px}.voucher104-history li{margin:10px 0;overflow-wrap:anywhere}.voucher104-confirm{border-top:1px solid #ffffff20;margin-top:20px;padding-top:20px}#voucher104-camera{width:100%;max-height:300px;margin:16px 0;border-radius:12px}.voucher104-page .lm-admin-table{overflow-x:auto}.voucher104-page .lm-admin-table table{min-width:600px}.voucher104-page input,.voucher104-page textarea,.voucher104-page select{max-width:100%}.voucher104-page h3{font-size:1.1rem}.voucher104-detail .lm-admin-status{display:inline-block;margin-right:10px}@media(max-width:1100px){.voucher104-grid.central{grid-template-columns:1fr}}@media(max-width:760px){.voucher104-grid{grid-template-columns:1fr}.voucher104-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.voucher104-metrics article{padding:14px}.voucher104-filters label{flex-basis:100%}.voucher104-page .lm-admin-panel{padding:16px}.voucher104-actions .btn{flex:1}.voucher104-page{max-width:100%;overflow-wrap:anywhere}}
/* Match the approved light admin workspace, without recoloring the public voucher page. */
.lm-dashboard-shell .voucher104-page{color:#161c24}
.lm-dashboard-shell .voucher104-page h1,.lm-dashboard-shell .voucher104-page h2,.lm-dashboard-shell .voucher104-page h3,.lm-dashboard-shell .voucher104-page dl,.lm-dashboard-shell .voucher104-page dd{color:#161c24}
.lm-dashboard-shell .voucher104-page p,.lm-dashboard-shell .voucher104-page dt,.lm-dashboard-shell .voucher104-page .text-muted,.lm-dashboard-shell .voucher104-metrics small{color:#626973!important}
.lm-dashboard-shell .voucher104-page label{color:#434952;font-size:.85rem}
.lm-dashboard-shell .voucher104-page .lm-admin-page__kicker{color:#a3293b}
.lm-dashboard-shell .voucher104-page input:not([type=checkbox]),.lm-dashboard-shell .voucher104-page textarea,.lm-dashboard-shell .voucher104-page select{color:#20262d;background:#fff;border:1px solid #cbd0d3;min-height:44px}
.lm-dashboard-shell .voucher104-page .btn-outline-light{color:#20262d;background:#fff;border-color:#a9afb5}
.lm-dashboard-shell .voucher104-page .btn-outline-light:hover{background:#f2f3f2}
.lm-dashboard-shell .voucher104-page .btn-outline-danger{color:#9e2135;border-color:#9e2135;background:#fff}
.lm-dashboard-shell .voucher104-page .btn:disabled{opacity:.55}
.lm-dashboard-shell .voucher104-facts>div{border-color:#e3e5e7}
.lm-dashboard-shell .voucher104-confirm{border-color:#cbd0d3}
.lm-dashboard-shell .voucher104-page :focus-visible{outline:3px solid #a3293b;outline-offset:3px}

/* Voucher states carry text as well as contrast-safe semantic colors. */
.voucher105-status{display:inline-block;padding:5px 10px;border:1px solid currentColor;border-radius:999px;font-size:.85rem;font-weight:700;line-height:1.4;white-space:nowrap;word-break:normal;overflow-wrap:normal;background:#f0f1f3;color:#343b46}
.voucher105-status--available{color:#14532d;background:#dcfce7}
.voucher105-status--used{color:#1e3a8a;background:#dbeafe}
.voucher105-status--expired{color:#713f12;background:#fef3c7}
.voucher105-status--cancelled{color:#881337;background:#ffe4e6}
.voucher104-page .voucher105-date{white-space:nowrap;word-break:normal;overflow-wrap:normal}
@media(max-width:760px){
 .voucher104-page{overflow-wrap:normal;word-break:normal}
 .voucher104-page .lm-admin-table{overflow:visible}
 .voucher104-page .lm-admin-table table{display:block;min-width:0;width:100%;table-layout:auto}
 .voucher104-page .lm-admin-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .voucher104-page .lm-admin-table tbody{display:grid;gap:16px}
 .voucher104-page .lm-admin-table tr{display:block;padding:12px;border:1px solid #cbd0d3;border-radius:12px}
 .voucher104-page .lm-admin-table td{display:block;width:auto;max-width:none;padding:8px 0;border:0;white-space:normal;word-break:normal;overflow-wrap:break-word}
 .voucher104-page .lm-admin-table td::before{content:attr(data-label);display:block;margin-bottom:4px;font-weight:700;font-size:.8rem;color:#434952}
 .voucher104-page .lm-admin-table .voucher105-date{white-space:nowrap;overflow-wrap:normal}
 .voucher104-metrics article{min-width:0}
 .voucher104-metrics article span,.voucher104-metrics article small{word-break:normal;overflow-wrap:normal}
}
