/* +Onz Merchant: playful surfaces, useful progress and a calmer working layout. */
.merchant-page { --mer-purple:#6b50c8;--mer-edge:#d9d3f3;--mer-tint:#efebff;min-width:0;padding-bottom:12px; }
.merchant-page *, .mer-builder * { min-width:0; }
.merchant-page h1,.merchant-page h2,.merchant-page h3 { text-wrap:balance; }
.merchant-page .btn,.mer-builder .btn { white-space:normal;text-align:center;line-height:1.3;padding-block:10px; }
.merchant-page .card { border-bottom-width:4px;box-shadow:none; }
.mer-eyebrow { display:block;font-size:10px;line-height:1.5;letter-spacing:1.25px;text-transform:uppercase;font-weight:800;color:var(--onz-blue); }
.mer-page-head { display:flex;align-items:center;justify-content:space-between;gap:20px;margin:14px 0 26px; }
.mer-page-head h1 { margin:7px 0 10px;font-size:clamp(28px,4vw,42px); }
.mer-page-head p { max-width:48ch;font-size:14px;color:#626789;line-height:1.6; }
.mer-heading-art { display:grid;place-items:center;position:relative;flex:0 0 88px;height:88px;border-radius:27px;background:#eae6ff;color:var(--onz-blue);border:2px solid #fff;box-shadow:0 5px 0 #dcd5f1;transform:rotate(7deg);margin:6px; }
.mer-heading-art > .ic { width:46px;height:46px;stroke-width:1.6;transform:rotate(-7deg); }
.mer-heading-art i { display:grid;place-items:center;position:absolute;bottom:-8px;right:-8px;width:33px;height:33px;background:var(--onz-lime);border:3px solid var(--paper);border-radius:12px;transform:rotate(-12deg); }
.mer-heading-art i .ic { width:19px;height:19px; }
.mer-section-head { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px; }
.mer-section-head h2 { display:flex;align-items:center;gap:8px;font-size:22px; }
.mer-section-head h2 > .ic { width:23px;height:23px;color:var(--onz-blue); }
.mer-section-head > a { display:inline-flex;align-items:center;gap:5px;font-size:12px; }
.mer-count { display:inline-flex;align-items:center;justify-content:center;min-height:29px;min-width:30px;padding:5px 10px;border:1px solid #d9d2f0;border-radius:11px;background:#efebff;color:#514390;font-size:11px;font-weight:800; }

/* Shop hub: the everyday actions on the left, achievable setup on the right. */
.merchant-page .merchant-home-hero { grid-template-columns:auto minmax(0,1fr) auto;gap:22px;margin-top:12px;padding:30px;min-height:210px; }
.merchant-home-hero .mer-eyebrow { color:var(--onz-lime); }
.merchant-home-hero h1 { font-size:clamp(28px,4vw,43px);margin:6px 0 10px; }
.merchant-home-hero .merchant-home-logo { width:86px;border:3px solid #fff;box-shadow:0 6px 0 #080d6835;transform:rotate(-4deg); }
.merchant-home-hero .merchant-home-logo > .ic { width:40px;height:40px; }
.mer-hero-location { display:flex;align-items:center;gap:5px;color:#e2e0ff;font-size:13px; }
.mer-hero-location .ic { width:15px;height:15px; }
.merchant-home-status .badge { background:#ffffff1f;color:#fff;border:1px solid #ffffff4d; }
.merchant-home-status .badge.ok { background:#f1ffbb;color:#344310;border-color:#e9fba3; }
.mer-hero-art { position:relative;display:grid;place-items:center;width:128px;height:128px; }
.mer-hero-art > span { display:grid;place-items:center;width:100px;height:102px;transform:rotate(9deg);border-radius:28px;background:var(--onz-lime);color:var(--onz-blue);box-shadow:7px 8px 0 #0c0a9855; }
.mer-hero-art > span .ic { width:66px;height:66px;stroke-width:1.5; }
.mer-hero-art i { position:absolute;right:0;top:-2px;display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#fff;color:var(--onz-blue);transform:rotate(-15deg); }
.mer-hero-art i .ic { width:21px;height:21px; }
.mer-hero-art b { position:absolute;bottom:3px;left:-2px;font:800 45px/1 Arial;color:var(--onz-lime);transform:rotate(-15deg); }
.mer-home-grid { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,1fr);gap:24px;margin-top:28px;align-items:start; }
.mer-home-grid.is-ready { grid-template-columns:minmax(0,1fr); }
.mer-readiness-update-copy { padding:14px;margin:0 0 17px;border-radius:13px;background:#fff2db;color:#78572d;font-size:12px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere; }
.mer-readiness-notice { margin-bottom:16px;background:#fff1db;color:#78572d; }
.mer-readiness-notice p { margin-top:6px;white-space:pre-wrap;overflow-wrap:anywhere; }
.mer-readiness { scroll-margin-top:110px; }
@media (min-width:1001px) {
  .mer-home-grid.is-ready .mer-actions { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
.mer-quick-section > .mer-section-head { min-height:31px; }
.mer-quick-section .mer-eyebrow { color:#727196;font-size:9px; }
.mer-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.mer-action { --action-bg:#efebff;--action-line:#d5caef;--action-color:#634ab0;display:flex;flex-direction:column;gap:8px;position:relative;padding:20px 18px 23px;min-height:186px;border:1px solid var(--action-line);border-bottom:5px solid var(--action-line);border-radius:23px;background:linear-gradient(145deg,#fff7,var(--action-bg)),var(--action-bg);color:var(--onz-navy);text-decoration:none;transition:transform .18s,box-shadow .18s; }
.mer-action[data-tone=lime] { --action-bg:#f3facd;--action-line:#d6e39c;--action-color:#5a671a; }
.mer-action[data-tone=peach] { --action-bg:#fff0dc;--action-line:#edd2af;--action-color:#a65c23; }
.mer-action[data-tone=sky] { --action-bg:#e3f3ff;--action-line:#bedbec;--action-color:#2c658b; }
.mer-action-top { position:relative;display:grid;place-items:center;margin-bottom:12px; }
.mer-action-art { margin:0 auto;width:124px;height:108px; }
.mer-action-art .onz-directory-art { mix-blend-mode:multiply; }
.mer-action-arrow { position:absolute;top:0;right:0;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:var(--onz-blue);background:#ffffffa0; }
.mer-action-arrow .ic { width:15px;height:15px; }
.mer-action h3 { font-size:21px;line-height:1.15; }
.mer-action p { font-size:12px;line-height:1.5;font-weight:500;color:#636486;max-width:25ch; }
.mer-action:hover { text-decoration:none; }
.card.mer-setup { padding:22px;border-color:#d7d0ef;border-radius:25px;background:#fff; }
.mer-setup .mer-section-head h2 { font-size:20px; }
.mer-setup-progress { display:flex;align-items:center;gap:16px;margin:22px 0; }
.mer-setup-progress h3 { font-size:22px;margin-top:5px; }
.mer-progress-ring { flex:0 0 84px;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:conic-gradient(var(--onz-blue) var(--progress),#e9e5f5 0);padding:7px; }
.mer-progress-ring > span { display:flex;align-items:baseline;justify-content:center;width:100%;height:100%;padding-top:17px;border-radius:50%;background:#fff;color:var(--onz-blue);font-size:27px;line-height:1;font-weight:800;letter-spacing:-1px; }
.mer-progress-ring small { font-size:12px;letter-spacing:0; }
.mer-milestones { display:grid;gap:8px;margin-bottom:20px; }
.mer-milestone { display:flex;align-items:center;gap:9px;border:1px solid #e6e3f1;background:#f7f6fb;border-radius:13px;padding:10px 11px;font-size:12px;color:#696986; }
.mer-milestone > span { display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#eeebf8;color:#8b84aa; }
.mer-milestone strong { flex:1;font-weight:600; }
.mer-milestone > i { display:grid;place-items:center;width:21px;height:21px;border-radius:50%;font-style:normal; }
.mer-milestone .ic { width:17px;height:17px; }
.mer-milestone > i .ic { width:12px;height:12px; }
.mer-milestone.is-done { color:#365b46;background:#f0f9ef;border-color:#d4e7d0; }
.mer-milestone.is-done > span { background:#e1f0db;color:#3c7354; }
.mer-milestone.is-done > i { background:#3c7354;color:#fff; }

/* Real voucher totals, styled as collectible score cards. */
.merchant-page .mer-stats { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.merchant-page .stat.mer-metric { --metric-bg:#ede8ff;--metric-edge:#d4c8ed;--metric-color:#6347a3;position:relative;display:grid;align-content:start;padding:22px;border:1px solid var(--metric-edge);border-bottom:4px solid var(--metric-edge);border-radius:22px;background:radial-gradient(circle at 100% 0,var(--metric-bg),transparent 80%),#fff; }
.merchant-page .mer-metric[data-tone=lime] { --metric-bg:#eff6cb;--metric-edge:#d7e19f;--metric-color:#586819; }
.merchant-page .mer-metric[data-tone=sky] { --metric-bg:#dff3ff;--metric-edge:#bcdcec;--metric-color:#296686; }
.merchant-page .mer-metric[data-tone=peach] { --metric-bg:#fff0dd;--metric-edge:#ead3b4;--metric-color:#965b2c; }
.mer-metric-icon { display:grid;place-items:center;width:39px;height:39px;border-radius:13px;background:var(--metric-bg);border:2px solid #fff;color:var(--metric-color);margin-bottom:18px;transform:rotate(-5deg); }
.mer-metric-icon .ic { width:22px;height:22px; }
.merchant-page .mer-metric .k { color:#6c6b89;font-size:12px;line-height:1.4; }
.merchant-page .mer-metric .v { color:var(--onz-navy);font-size:clamp(27px,3.2vw,38px);line-height:1.2;margin-top:6px;letter-spacing:-1.2px;overflow-wrap:anywhere; }

/* Redemption station. */
.mer-redeem-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px; }
.mer-redeem-steps > span { display:flex;align-items:center;gap:7px;padding:11px 12px;border-radius:13px;background:#eeebff;color:#5945a4;font-size:12px;font-weight:700; }
.mer-redeem-steps > span:nth-child(2) { background:#f2f7d7;color:#59661e; }
.mer-redeem-steps > span:nth-child(3) { background:#dff3ed;color:#2e6554; }
.mer-redeem-steps b { display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:#ffffffa0;font-size:11px; }
.mer-redeem-steps .ic { width:17px;height:17px; }
.mer-redeem-grid { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start; }
.mer-camera-panel .scanner { width:100%;max-width:none;aspect-ratio:1.05;border:2px solid #4f47b3;border-bottom:6px solid #c9c2ee;background:radial-gradient(#ffffff22 1px,transparent 1px) 0 0/18px 18px,linear-gradient(135deg,#12144a,#35329a); }
.mer-camera-panel .scanner .idle { color:#e4e1ff; }
.mer-camera-panel .scanner .idle h2 { color:#fff;font-size:26px; }
.mer-camera-panel .scanner .idle p { font-size:13px;margin:10px 0 20px;color:#dedaff; }
.mer-camera-panel .scanner .idle .btn { min-height:47px;padding:12px 23px; }
.mer-camera-panel .scanner .idle .btn .ic { width:19px;height:19px;margin:0;color:inherit; }
.mer-scan-art { display:grid;place-items:center;width:105px;height:105px;margin:0 auto 23px;border:2px solid #ffffff50;border-radius:25px;background:#ffffff15;box-shadow:0 0 0 9px #ffffff08;transform:rotate(-5deg); }
.mer-camera-panel .scanner .idle .mer-scan-art > .ic { width:66px;height:66px;margin:0;color:var(--onz-lime);stroke-width:1.4; }
.mer-camera-panel #scanstatus { text-align:center;margin-top:12px; }
.card.mer-manual-panel { padding:26px;border-color:#d5ceee;border-radius:25px; }
.mer-panel-emblem { display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;background:#ece6ff;border:2px solid #fff;border-radius:16px;color:#674cb2;box-shadow:0 3px 0 #dbd0ef; }
.mer-panel-emblem > .ic { width:26px;height:26px;stroke-width:1.7; }
.mer-manual-panel > .mer-panel-emblem { margin-bottom:22px;transform:rotate(-7deg); }
.mer-manual-panel h2 { font-size:25px; }
.mer-manual-panel > p { margin:10px 0 25px;font-size:13px;color:#71718d; }
.mer-manual-panel input { letter-spacing:2px;font-weight:700;text-transform:uppercase; }
.mer-manual-panel input::placeholder { letter-spacing:0;font-weight:500;text-transform:none;font-size:13px; }
.mer-redeem-note { display:flex;gap:9px;align-items:flex-start;border-top:1px solid #e9e4f5;margin-top:24px;padding-top:20px;color:#6d6c8c; }
.mer-redeem-note > .ic { width:22px;height:22px;color:#7565af;flex-shrink:0; }
.mer-redeem-note p { font-size:12px;line-height:1.6; }
.mer-sheet-head { display:flex;align-items:center;gap:14px; }
.mer-sheet-head h2 { font-size:26px;margin-top:4px; }
.mer-sheet-head .mer-eyebrow { font-size:9px; }
.mer-voucher-ticket .body { padding:24px 18px; }
.deal-qr-stage { display:grid;justify-items:center;gap:14px;padding:25px 14px;text-align:center; }
#live-deal-qr { padding:18px;border:2px solid #d8d1ed;border-radius:23px;background:#fff;box-shadow:0 5px 0 #e7e2f5; }
#live-deal-qr canvas,#live-deal-qr img { display:block;max-width:100%;height:auto; }
#live-deal-qr[hidden],.deal-student-scanner .idle[hidden] { display:none!important; }
#deal-qr-clock { display:block;border-radius:99px;background:#efebff;color:var(--onz-blue);padding:8px 14px;font-size:12px;font-weight:800; }
.deal-counter-claim { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:15px;border:1px solid #d3dfac;border-radius:15px;background:#f5fadf; }
.deal-counter-claim strong { overflow-wrap:anywhere; }
.deal-counter-claim p { margin-top:5px; }
.deal-student-summary { display:flex;align-items:center;gap:16px;border-color:#d5cdeb;background:linear-gradient(120deg,#efebff,#fff); }
.deal-student-summary h2 { font-size:24px;overflow-wrap:anywhere; }
.deal-student-summary p { font-size:13px;color:#71698e;margin-top:8px; }
.deal-benefit { display:block;color:#605180;font-size:13px;line-height:1.5;margin-top:10px;overflow-wrap:anywhere; }
.deal-student-scanner { margin-top:22px;background:radial-gradient(#ffffff23 1px,transparent 1px) 0 0/16px 16px,#25205d;border:2px solid #695ca7; }
.deal-student-scanner .idle h2 { color:#fff;font-size:26px; }
.deal-student-scanner .idle p { margin:12px 0 20px;font-size:13px; }
.deal-student-scanner .idle > div > .ic { color:var(--onz-lime);width:66px;height:66px; }
.deal-student-scanner .btn .ic { width:20px;height:20px;margin:0;color:inherit; }
#deal-scan-status,.deal-claim-note { text-align:center;max-width:48ch;margin:15px auto;line-height:1.6; }
.card.deal-confirmation { display:grid;justify-items:center;gap:17px;margin-top:24px;padding:35px 25px;border-color:#d7df9f;background:radial-gradient(#a5b35220 1px,transparent 1px) 0 0/15px 15px,linear-gradient(130deg,#faffd9,#fff);text-align:center; }
.deal-confirmation h2 { font-size:30px; }
.deal-confirmation > p { max-width:40ch;font-size:14px;line-height:1.6;color:#74734f; }
.deal-confirmation > .faint { font-size:11px; }
.deal-points-earned { display:inline-flex;align-items:center;gap:7px;padding:12px 17px;border:2px solid #d3df7e;border-bottom-width:4px;border-radius:16px;background:var(--onz-lime);color:var(--onz-navy);font-size:18px;font-weight:800; }
.deal-points-earned .ic { width:23px;height:23px;color:var(--onz-blue); }
.deal-points-earned > span { font-size:12px;font-weight:600; }
.deal-confirmation-stamp { display:grid;place-items:center;width:90px;height:90px;border:4px solid #fff;border-radius:28px;background:var(--onz-lime);color:var(--onz-blue);box-shadow:0 5px 0 #d1dc90;transform:rotate(-5deg); }
.deal-confirmation-stamp .ic { width:52px;height:52px;stroke-width:1.7; }
.card.deal-confirmation.is-expired { background:#f7f6fc;border-color:#ded8ed; }
.deal-confirmation.is-expired .deal-confirmation-stamp { background:#e4def1;color:#807394;box-shadow:0 5px 0 #d1c8e3; }

/* Shop settings, split into distinct working areas. */
.mer-shop-identity { display:flex;align-items:center;gap:16px;padding:22px;border-radius:24px;border:1px solid #d9d2f1;border-bottom-width:4px;background:linear-gradient(120deg,#eeebff,#fff); }
.mer-shop-identity .merchant-home-logo { width:66px;flex-shrink:0;border:2px solid #fff; }
.mer-shop-identity > div { flex:1; }
.mer-shop-identity h2 { font-size:24px;overflow-wrap:anywhere; }
.mer-shop-identity p { display:flex;gap:4px;align-items:center;margin-top:7px;font-size:12px;color:#6a6889; }
.mer-shop-identity p .ic { width:14px;height:14px; }
.mer-shop-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin-top:26px; }
.mer-shop-grid > .section { margin:0; }
.mer-shop-grid > .section > .head { min-height:36px;border:0;align-items:center;flex-wrap:wrap; }
.mer-shop-grid > .section > .head h2 { display:flex;align-items:center;gap:7px;font-size:21px; }
.mer-shop-grid > .section > .head h2 .ic { width:22px;height:22px;color:var(--onz-blue); }
.mer-shop-grid .card { padding:24px;border-color:#d9d2ed; }
.mer-shop-grid .mer-business,.mer-readiness,.mer-counter-kit { grid-column:1/-1; }
.mer-shop-grid.is-verified .mer-business { grid-column:1;grid-row:span 2; }
.mer-shop-grid input[type=file] { font-size:12px;padding:10px; }
.mer-shop-grid .logo-field .row { flex-wrap:wrap!important; }
.mer-shop-grid .logo-field .row > div { min-width:160px; }
.mer-shop-grid .logo-preview { border:2px dashed #c9bde9;background:#f3efff;border-radius:20px; }
.mer-shop-grid .pin-map { border:2px solid #e1d9f3;border-radius:18px; }
.mer-shop-grid .pin-bar { gap:12px; }
.mer-shop-grid .pin-bar .btn { font-size:11px; }
.mer-shop-grid form[inert] { background:linear-gradient(135deg,#f8f7fd,#fff); }
.mer-shop-grid form[inert] input,.mer-shop-grid form[inert] select { background:#f1eff8;border-color:#e0dbee;color:#63607c; }
.mer-shop-grid .mer-readiness-content { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;background:linear-gradient(140deg,#f0f9e7,#fff);border-color:#d8e3bd; }
.mer-readiness-content > .chips,.mer-readiness-content > form { grid-column:1/-1; }
.mer-readiness-content > div:not(.chips) { padding:18px;background:#ffffffc0;border-radius:16px;border:1px solid #e0e8d5; }
.mer-readiness-content h3 { font-size:18px; }
.mer-readiness-content .check { align-items:center;padding:13px;border:1px solid #dce5ce;background:#fff;border-radius:13px;margin-bottom:9px;font-size:13px; }
.mer-readiness-content .check:has(input:checked) { border-color:#bfd392;background:#f5fbdc; }
.mer-readiness-content .check input { accent-color:#5c741d; }
.mer-counter-kit .card { background:#e9f4ff;border-color:#c6dbea; }
.mer-counter-kit .tile-icon { background:#fff;color:#397aa1; }
.mer-survey .card { border-color:#d7ceee; }
.mer-poster .poster { max-width:660px;margin-inline:auto;border:2px solid #d6cef0;border-bottom-width:6px;background:radial-gradient(#2420ff10 1px,transparent 1px) 0 0/14px 14px,#fff; }

/* Promotion studio. */
.mer-promo-stats { margin-bottom:24px; }
.mer-promo-top { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:stretch; }
.card.mer-occupancy { padding:24px;border-color:#d5dbee;border-radius:25px; }
.mer-occupancy .mer-section-head h2 { font-size:20px; }
.mer-occupancy-summary { display:flex;align-items:center;gap:18px;margin:20px 0 26px; }
.mer-occupancy-summary .mer-progress-ring { width:94px;height:94px;flex-basis:94px;background:conic-gradient(#5d9b92 var(--progress),#e1f1eb 0); }
.mer-occupancy-summary .mer-progress-ring > span { color:#356d64;padding-top:21px; }
.mer-occupancy-summary h3 { font-size:27px;margin-bottom:6px; }
.mer-occupancy-summary p { font-size:12px;color:#75788e; }
.mer-updated { display:flex;justify-content:center;margin-top:13px;font-size:11px; }
.mer-launch-card { position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;overflow:hidden;isolation:isolate;padding:30px;border:1px solid #d8e288;border-bottom:5px solid #c9d47a;border-radius:25px;background:radial-gradient(#9cae3325 1px,transparent 1px) 0 0/15px 15px,linear-gradient(130deg,#fbffd8,#edf6af); }
.mer-launch-card::after { content:'+';position:absolute;right:-28px;bottom:10px;z-index:-1;opacity:.08;font:800 230px/1 Arial;color:#53620b;transform:rotate(-15deg); }
.mer-launch-card .mer-eyebrow { color:#67732c;margin-top:22px; }
.mer-launch-card h2 { font-size:clamp(27px,3.3vw,38px);margin:8px 0 13px;max-width:13ch; }
.mer-launch-card > p { font-size:13px;color:#667039;line-height:1.6;max-width:31ch; }
.mer-launch-card > .btn { margin-top:25px;min-height:47px;padding-inline:20px; }
.mer-launch-note { display:flex;align-items:center;gap:6px;font-size:10px;color:#6c7740;margin-top:15px; }
.mer-launch-note .ic { width:15px;height:15px; }
.mer-launch-art { display:grid;place-items:center;position:relative;width:73px;height:73px;border:3px solid #fff;border-radius:24px;background:#faffd3;color:var(--onz-blue);box-shadow:4px 5px 0 #ceda87;transform:rotate(-8deg); }
.mer-launch-art > .ic { width:45px;height:45px;stroke-width:1.6; }
.mer-launch-art i { position:absolute;right:-14px;bottom:-5px;display:grid;place-items:center;width:32px;height:32px;background:var(--onz-blue);color:#fff;border:3px solid #faffd3;border-radius:12px;transform:rotate(15deg); }
.mer-launch-art i .ic { width:19px;height:19px; }
.mer-deal-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.card.mer-deal-card { padding:22px;border-color:#d6cdec;border-radius:23px;background:linear-gradient(145deg,#f4f0ff,#fff); }
.card.mer-deal-card.is-live { border-color:#b9d5b7;background:linear-gradient(145deg,#f3fadf,#fff); }
.mer-deal-top { display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:23px; }
.mer-deal-top .badge { font-size:10px; }
.mer-deal-top .mer-panel-emblem { width:44px;height:44px; }
.mer-deal-card.is-live .mer-panel-emblem { background:#e8f5c6;color:#58792f;box-shadow:0 3px 0 #c8dba5; }
.mer-live-dot { width:6px;height:6px;flex-shrink:0;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px #438b3b18; }
.mer-deal-card h3 { font-size:22px;line-height:1.25;overflow-wrap:anywhere; }
.mer-deal-meta { display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;color:#777190;font-size:11px;line-height:1.5;margin-top:13px; }
.mer-deal-meta > span { display:inline-flex;align-items:center;gap:5px; }
.mer-deal-meta .ic { width:14px;height:14px;flex-shrink:0; }
.mer-deal-bottom { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px dashed #d8cfea;margin-top:23px;padding-top:15px; }
.mer-deal-bottom > span { display:flex;align-items:center;gap:4px;color:#77718d;font-size:10px; }
.mer-deal-bottom > span .ic { width:14px;height:14px; }
.mer-deal-bottom .btn { min-height:36px;font-size:11px; }
.card.mer-offer-card { display:flex;padding:0;overflow:hidden;border-color:#e8d3ba;border-radius:23px;background:linear-gradient(135deg,#fff9ef,#fff); }
.mer-offer-stub { display:grid;place-items:center;flex:0 0 72px;align-self:stretch;background:radial-gradient(#e4b99060 1px,transparent 1px) 0 0/12px 12px,#ffe9d0;border-right:2px dashed #e9c6a4;color:#aa6a35; }
.mer-offer-stub .ic { width:34px;height:34px;stroke-width:1.5; }
.mer-offer-copy { flex:1;padding:22px; }
.mer-offer-copy .mer-eyebrow { color:#a37c54;font-size:9px;margin-bottom:8px; }
.mer-offer-copy h3 { font-size:21px;overflow-wrap:anywhere; }
.mer-offer-copy > p { display:flex;gap:5px;align-items:center;font-size:11px;margin-top:9px; }
.mer-offer-copy > p .ic { width:14px;height:14px; }
.mer-offer-actions { display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:20px; }
.mer-offer-actions .btn,.mer-offer-actions .badge { font-size:10px; }
.mer-deal-preview { margin-top:22px;padding:23px;border:1px solid #d3c7ee;border-bottom:4px solid #d3c7ee;border-radius:22px;background:radial-gradient(#8b74b91a 1px,transparent 1px) 0 0/13px 13px,linear-gradient(140deg,#eee7ff,#fff); }
.mer-deal-preview h3 { margin-top:11px;font-size:23px;color:var(--onz-navy);overflow-wrap:anywhere; }
.mer-deal-preview > .badge { margin-top:18px;font-size:10px; }
.mer-builder > button { margin-top:8px;min-height:48px; }
.mer-builder input,.mer-builder select { background:#faf9ff; }

/* Activity ledger and intentional empty states. */
.card.mer-redemption-history { padding:25px;border-color:#d4cdec;border-radius:25px; }
.mer-redemption-history .item { padding-block:19px;gap:15px; }
.mer-redemption-history .item h3 { font-size:16px;overflow-wrap:anywhere; }
.mer-redemption-history .item p { font-size:11px;margin-top:5px; }
.mer-redemption-stamp { display:grid;place-items:center;position:relative;flex:0 0 45px;height:45px;background:#eee7ff;border:2px solid #fff;border-radius:14px;color:#6850a1;transform:rotate(-5deg); }
.mer-redemption-stamp > .ic { width:24px;height:24px; }
.mer-redemption-stamp > i { position:absolute;bottom:-4px;right:-5px;display:grid;place-items:center;width:19px;height:19px;background:#d8efb6;border:2px solid #fff;border-radius:50%;color:#4e772b; }
.mer-redemption-stamp i .ic { width:11px;height:11px; }
.mer-redemption-value { font-size:16px;color:#446e32;white-space:nowrap;background:#eff7df;padding:8px 10px;border-radius:11px; }
.mer-empty { display:grid;grid-column:1/-1;justify-items:center;align-content:center;gap:13px;min-height:220px;padding:32px 22px;border:1px dashed #d2c9e7;border-radius:23px;background:radial-gradient(#8776b317 1px,transparent 1px) 0 0/14px 14px,#f8f6fd;text-align:center; }
.mer-empty h3 { color:#67617f;font-size:18px; }
.mer-empty p { max-width:35ch;font-size:12px;line-height:1.6;color:#817b94; }
.mer-empty-art { position:relative;display:grid;place-items:center;width:70px;height:70px;background:#eee8fa;border:3px solid #fff;border-radius:23px;color:#a08cbd;box-shadow:0 4px 0 #ded4ef;transform:rotate(-6deg);margin-bottom:5px; }
.mer-empty-art > .ic { width:37px;height:37px;stroke-width:1.6; }
.mer-empty-art > i { position:absolute;right:-10px;bottom:-5px;display:grid;place-items:center;width:29px;height:29px;background:#f2f8d9;color:#8d9a51;border:3px solid #f8f6fd;border-radius:10px;transform:rotate(14deg); }
.mer-empty-art i .ic { width:16px;height:16px; }
.mer-access-card { padding:40px 24px!important;border:1px solid #d9d0ed;border-bottom-width:5px;max-width:600px;margin:24px auto!important; }
.mer-access-icon { display:grid;place-items:center;width:80px;height:80px;border-radius:26px;background:#ede6ff;color:#6c4eaa;border:3px solid #fff;box-shadow:0 5px 0 #d9cbef;margin:0 auto 25px;transform:rotate(-6deg); }
.mer-access-card .mer-access-icon > .ic { margin:0;width:45px;height:45px;color:inherit; }
.mer-access-card h3 { font-size:25px; }
.mer-access-card > p { font-size:13px;line-height:1.6;margin:12px auto 20px;max-width:35ch; }

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .mer-action:hover { transform:translateY(-4px);box-shadow:0 10px 18px -12px var(--action-color); }
  .mer-milestone:hover { transform:translateX(3px); }
}
@media (max-width:1000px) {
  .mer-home-grid { grid-template-columns:1fr; }
  .mer-setup .mer-milestones { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mer-setup .mer-setup-progress { margin-block:16px; }
  .mer-setup > .btn { width:auto;min-width:180px; }
}
@media (max-width:760px) {
  .mer-page-head { gap:12px; }
  .mer-heading-art { flex-basis:66px;height:66px;border-radius:21px; }
  .mer-heading-art > .ic { width:36px;height:36px; }
  .mer-home-grid,.mer-redeem-grid,.mer-promo-top,.mer-shop-grid { grid-template-columns:minmax(0,1fr);gap:20px; }
  .mer-shop-grid.is-verified .mer-business { grid-column:auto;grid-row:auto; }
  .mer-shop-grid .mer-business,.mer-readiness,.mer-counter-kit { grid-column:auto; }
  .mer-shop-grid .mer-readiness-content { grid-template-columns:1fr; }
  .merchant-page .merchant-home-hero { grid-template-columns:auto minmax(0,1fr);padding:25px;gap:18px;min-height:0; }
  .mer-hero-art { display:none; }
  .mer-actions { gap:12px; }
  .mer-redeem-grid { max-width:550px;margin-inline:auto; }
  .mer-camera-panel .scanner { aspect-ratio:1.2; }
  .mer-launch-card { min-height:320px; }
  .mer-stats .mer-metric { padding:16px 12px; }
  .mer-metric-icon { width:34px;height:34px;margin-bottom:15px; }
  .mer-metric-icon .ic { width:19px;height:19px; }
  .merchant-page .mer-metric .k { font-size:11px; }
  .merchant-page .mer-metric .v { font-size:25px; }
}
@media (max-width:520px) {
  .merchant-page { padding-top:6px; }
  .mer-page-head { margin:10px 0 25px; }
  .mer-page-head h1 { font-size:29px; }
  .mer-page-head p { font-size:12px; }
  .mer-eyebrow { font-size:9px; }
  .merchant-page .merchant-home-hero { padding:22px 18px;gap:16px; }
  .merchant-home-hero .merchant-home-logo { width:62px;border-radius:18px; }
  .merchant-home-hero h1 { font-size:27px; }
  .mer-hero-location { font-size:11px; }
  .merchant-home-status { gap:6px; }
  .merchant-home-status .badge { font-size:9px; }
  .mer-home-grid { margin-top:25px; }
  .mer-action { padding:16px 14px 20px;min-height:180px;border-radius:20px; }
  .mer-action-top { margin-bottom:10px; }
  .mer-action-art { width:124px;height:100px; }
  .mer-action h3 { font-size:19px; }
  .mer-action p { font-size:11px; }
  .mer-section-head h2 { font-size:21px; }
  .mer-setup .mer-milestones { grid-template-columns:1fr; }
  .mer-setup > .btn { width:100%; }
  .merchant-page .mer-stats { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
  .mer-stats > .mer-metric:last-child { grid-column:1/-1;grid-template-columns:auto 1fr auto;align-items:center;gap:10px; }
  .mer-stats > .mer-metric:last-child .mer-metric-icon { margin:0; }
  .mer-stats > .mer-metric:last-child .v { margin:0;max-width:150px;text-align:right; }
  .mer-redeem-steps { gap:7px; }
  .mer-redeem-steps > span { justify-content:center;padding:11px 7px;gap:5px;font-size:11px; }
  .mer-redeem-steps > span > .ic { display:none; }
  .mer-shop-grid .card,.card.mer-manual-panel,.card.mer-occupancy { padding:20px; }
  .mer-shop-identity { gap:12px;padding:18px;flex-wrap:wrap; }
  .mer-shop-identity h2 { font-size:22px; }
  .mer-shop-identity .merchant-home-logo { width:53px; }
  .mer-shop-identity > .badge { margin-left:65px; }
  .mer-shop-grid .logo-field .row > div { flex-basis:100%!important; }
  .mer-shop-grid .pin-bar > .btn { width:100%; }
  .mer-deal-grid { grid-template-columns:1fr; }
  .mer-launch-card { padding:27px; }
  .mer-offer-stub { flex-basis:62px; }
  .mer-offer-copy { padding:21px 18px; }
  .mer-redemption-value { padding:7px;font-size:13px; }
  .card.mer-redemption-history { padding:20px 16px; }
  .mer-redemption-history .item { gap:10px;flex-wrap:wrap; }
  .mer-redemption-history .item h3 { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) {
  .mer-action,.mer-milestone { transition:none; }
}
@media print {
  .mer-poster .poster { border:0;background:#fff; }
}
