/* Haffez merchant workspace. Product identity first; references in WORKSPACE-UX.md.
   Loaded after the existing styles, active only when the enhancement initialises. */
.merchant-workspace{--side:216px;--emerald:#14352f;--emerald-2:#1e4a41;--muted:#53645d;--line:#dde5e0;--page:#f5f7f6;--paper:#fff;background:var(--page);background-image:none}
.merchant-workspace .app{background:var(--page);font-size:15px;line-height:1.75}
.merchant-workspace .app .side{padding:28px 16px;gap:30px;background:#fff;border-color:var(--line)}
.merchant-workspace .side .brand{gap:10px;padding:0 8px;text-decoration:none}
.merchant-workspace .side .wordmark{display:block;width:70px;height:36px}
.merchant-workspace .side .mark{width:32px;height:32px}
.merchant-workspace .main-nav button{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 14px;line-height:1.5;border-radius:10px;font-size:14px;color:#465b50;white-space:nowrap}
.merchant-workspace .main-nav button svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.merchant-workspace .main-nav button.on{background:#e9f1ed;color:#14352f;font-weight:700;box-shadow:inset -3px 0 #14352f}
.merchant-workspace .main-nav button:hover{background:#eff4f1}
.merchant-workspace .side-foot{padding:18px 4px 0;gap:12px}
.merchant-workspace .side-store{font-size:13px;max-width:125px}
.merchant-workspace .app main{max-width:1336px;padding:24px 32px 112px}
.merchant-workspace .app .appbar{padding:28px 32px 14px;min-height:0;gap:16px;max-width:1336px;width:100%;margin-inline:auto;background:transparent}
.merchant-workspace .app .appbar-title h2{font-size:26px;line-height:1.5;letter-spacing:normal;color:#162b23}
.merchant-workspace .app .appbar-title p{font-size:13px;max-width:52ch;color:var(--muted)}
.merchant-workspace .app .appbar-actions{display:flex;flex-wrap:wrap;gap:8px}
.merchant-workspace .app:is([data-screen=home],[data-screen=stats]) .appbar-actions{display:none}
.merchant-workspace .app .appbar-actions .btn{min-height:44px;padding:10px 14px;font-size:13px}
.workspace-state-line{max-width:1336px;width:100%;margin-inline:auto;padding:0 32px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px}
.workspace-state-line .draft-feedback{font-size:12px;color:var(--muted);gap:8px;line-height:1.7}
.workspace-state-line #retryDraft{font-size:12px;min-height:32px}
.workspace-state-line #draftStatus[data-state=saved]::before{content:'✓';margin-inline-end:6px;color:#276146}
.workspace-published-hint{font-size:12px;line-height:1.7;color:var(--muted);white-space:nowrap}
.workspace-published-hint[data-dirty=true]{color:#825020}
.workspace-offline{margin:0 32px 12px;padding:12px 16px;background:#fff6e9;color:#714620;border:1px solid #e8d4b6;border-radius:10px;font-size:13px}
.merchant-workspace .campaign-context{max-width:none;padding:0 0 20px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.merchant-workspace .campaign-caption{font-size:12px;color:var(--muted);font-weight:500;margin-bottom:12px}
.merchant-workspace .app .stepper{display:flex;flex-direction:row;gap:4px;overflow:visible;counter-reset:steps}
.merchant-workspace .app .stepper button{flex:1;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:8px 10px;min-height:44px;border-radius:8px;font-size:13px;line-height:1.5;white-space:nowrap}
.merchant-workspace .app .stepper button::before{width:22px;height:22px;font-size:11px;flex:none;background:#e9eeeb}
.merchant-workspace .app .stepper button.on{background:#e9f1ed;color:#14352f;border-color:#c5d9cb;font-weight:600}
.merchant-workspace .app .stepper button.on::before{background:var(--emerald);color:white}
.workspace-layout,.workspace-primary{min-width:0}
.workspace-layout{display:grid;gap:24px;align-items:start}
.merchant-workspace .app .section.on{gap:20px}
.merchant-workspace .app .section>*{min-width:0;max-width:100%}
.merchant-workspace .app .panel,.merchant-workspace .app .status,.merchant-workspace .app .tile{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:none}
.merchant-workspace .app .panel{padding:22px;gap:16px}
.merchant-workspace .app .panel h3{font-size:16px;line-height:1.6}
.merchant-workspace .app .panel-heading{align-items:center;gap:12px}
.merchant-workspace .app .hint,.merchant-workspace .app .step-intro{font-size:13px;line-height:1.85;color:var(--muted)}
.merchant-workspace .app .step-intro{max-width:68ch}
.merchant-workspace .app .section-heading h2{font-size:20px;letter-spacing:normal}
.merchant-workspace .app label{font-size:14px;line-height:1.7;gap:8px}
.merchant-workspace .app input:not([type=checkbox]):not([type=radio]),.merchant-workspace .app select,.merchant-workspace .app textarea{font-size:16px;background:#fff;border:1px solid #bbc9c0;border-radius:8px;color:#16211e;min-height:48px;box-shadow:none}
.merchant-workspace .app input[type=color]{padding:6px;min-width:64px}
.merchant-workspace .app .row.three{gap:12px}
.merchant-workspace .app .choices{gap:12px}
.merchant-workspace .app .choice{min-height:0;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}
.merchant-workspace .app .choice.on{background:#eff5f1;border-color:#567c65;box-shadow:inset 0 0 0 1px #567c65}
.merchant-workspace .app .choice small{font-size:12px;line-height:1.8;color:var(--muted)}
.merchant-workspace .app .choice strong{font-size:14px;line-height:1.65}
.merchant-workspace .app .preset{background:#f0f5f2;border:1px solid #d5e2d9;padding:20px;border-radius:12px}
.merchant-workspace .app .preset h2{font-size:20px;line-height:1.6}
.merchant-workspace .btn.primary,.merchant-workspace .app .btn.brass{background:var(--emerald);border-color:var(--emerald);color:#fff;box-shadow:none}
.merchant-workspace .btn.primary:hover,.merchant-workspace .app .btn.brass:hover{background:var(--emerald-2)}
.merchant-workspace .app .btn.ghost{background:#fff;border:1px solid #cbd7ce;color:#234b39}
.merchant-workspace .btn{border-radius:8px;min-height:44px;font-size:14px;padding:10px 16px;line-height:1.5;font-family:var(--font);cursor:pointer;transition:background .14s}
.merchant-workspace button:disabled{cursor:not-allowed;opacity:.55}
.merchant-workspace .app .text-btn{min-height:44px;font-size:13px}
.merchant-workspace .app details.panel>summary{justify-content:space-between;font-size:15px;font-weight:600;color:#284837;min-height:38px;gap:12px}
.merchant-workspace .app details.panel>summary::before{display:none}
.merchant-workspace .app details.panel>summary::after{content:'+';font-size:20px;line-height:1;font-weight:400;margin-inline-start:auto;color:#536d5b}
.merchant-workspace .app details.panel[open]>summary::after{content:'−'}
.merchant-workspace .app details.panel[open]>summary{margin-bottom:18px}
.merchant-workspace .app .two-col{grid-template-columns:minmax(0,1fr);gap:20px}
.merchant-workspace .app .two-col .row{grid-template-columns:repeat(2,minmax(0,1fr))}
.merchant-workspace .app .two-col .row.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.merchant-workspace .app .reward-row{border-radius:10px;background:#fafcfb;border-color:var(--line);gap:12px}
.workspace-chance{display:block;font-size:12px;color:#28543c;line-height:1.6;font-variant-numeric:tabular-nums}
.workspace-weight-help{border-top:1px solid var(--line);padding-top:12px}
.workspace-preview{padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px;min-width:0}
.workspace-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px}
.workspace-preview-heading h3{font-size:15px;line-height:1.6}
.workspace-preview-badge{font-size:11px;color:#587064;background:#eff4f1;border-radius:6px;padding:3px 8px}
.merchant-workspace .app .workspace-preview .preview-hero{display:flex;flex-direction:column;padding:0;gap:16px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.merchant-workspace .app .workspace-preview .sample{width:100%;max-width:none;min-width:0;margin:0;padding:24px 18px;border-radius:12px;border:1px solid #e2e7df;box-shadow:none;text-align:center}
.workspace-preview .sample-store{font-size:12px;color:#5a6c60}
.workspace-preview .sample-coin{width:40px;height:40px;margin:4px auto 16px}
.merchant-workspace .app .workspace-preview .sample h3{font-size:20px;line-height:1.6;overflow-wrap:anywhere;margin:8px 0}
.merchant-workspace .app .workspace-preview .sample p{font-size:13px;line-height:1.8;margin:8px 0 18px;overflow-wrap:anywhere}
.workspace-preview .sample small{font-size:10px;line-height:1.8;display:block;margin-top:12px;color:#53645d}
.workspace-preview .sample .btn{width:100%;font-size:13px;min-height:44px}
.workspace-preview .preview-side{padding:0;width:100%;text-align:start}
.workspace-preview .preview-side>h3,.workspace-preview .preview-side>p,.workspace-preview .preview-side>details{display:none}
.workspace-preview #previewBig{width:100%;background:#fff;border:1px solid #c0d0c6;color:#244d38;min-height:44px;font-size:13px}
.workspace-preview-info{font-size:11px;line-height:1.9;color:var(--muted);padding:12px 0 16px}
.workspace-preview-meta{border-top:1px solid var(--line);padding-top:14px;display:grid;gap:6px;font-size:12px;color:#53645d;line-height:1.85}
.workspace-preview-meta b{font-size:13px;color:#294533}
.merchant-workspace .workspace-preview-toggle{display:none}
.merchant-workspace .app .status{padding:22px;gap:16px}
.merchant-workspace .app .status-line b{font-size:18px;line-height:1.6}
.merchant-workspace .app .status-body p{font-size:13px;line-height:1.8}
.merchant-workspace .app .launch-next{padding:26px;border-inline-start:3px solid var(--emerald);gap:24px}
.merchant-workspace .app .launch-next h3{font-size:23px;line-height:1.6;color:#1d3b2b}
.merchant-workspace .app .tile b{font-size:30px;font-weight:600;font-variant-numeric:tabular-nums}
.merchant-workspace .app .tile small{font-size:12px;color:var(--muted)}
.merchant-workspace .app .home-cols{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:20px}
.merchant-workspace .stepnav{background:#fff;border-top:1px solid var(--line);box-shadow:none;backdrop-filter:none;padding:12px 32px max(12px,env(safe-area-inset-bottom));gap:16px}
.merchant-workspace .stepnav .btn{min-height:44px}
.merchant-workspace .stepnav #stepPos{color:var(--muted);font-size:12px}
.workspace-skip{position:fixed;top:-80px;right:20px;z-index:1000;background:#14352f;color:#fff;padding:12px 18px;border-radius:8px;text-decoration:none}
.workspace-skip:focus{top:12px}
.merchant-workspace :is(button,a,summary,input,textarea,select):focus-visible{outline:3px solid #387757;outline-offset:3px}
.merchant-workspace #screenTitle:focus{outline:none}
.workspace-review{color:#162b23;direction:rtl;font-family:var(--font);width:min(680px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid #cbd9d0;border-radius:16px;box-shadow:0 20px 80px #0a291c26;overflow-y:auto;overscroll-behavior:contain;background:#fff;line-height:1.75}
.workspace-review::backdrop{background:#0b211c70}
.workspace-review-head{position:sticky;top:0;z-index:1;background:white;padding:22px 26px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e4ebe6}
.workspace-review-head small{font-size:12px;color:#53645d}
.workspace-review-head h2{font-size:22px;line-height:1.6;margin:4px 0 0;letter-spacing:normal}
.workspace-review-head h2:focus{outline:none}
.workspace-review .text-btn{border:0;background:transparent;color:#24503a;font-size:13px;min-height:44px;white-space:nowrap;padding:6px 8px;font-family:inherit}
.workspace-review-intro{padding:18px 26px;font-size:13px;line-height:1.9;color:#4e6457;background:#f7faf8;margin:0}
.workspace-review-rows{margin:0;padding:0 26px}
.workspace-review-row{display:grid;grid-template-columns:124px minmax(0,1fr) 50px;align-items:start;gap:12px;padding:14px 0;border-bottom:1px solid #e5ece7}
.workspace-review-row dt{font-size:12px;color:#53645d;padding-top:8px}
.workspace-review-row dd{margin:0;font-size:13px;line-height:1.9;padding-top:5px;overflow-wrap:anywhere;unicode-bidi:plaintext}
.workspace-review-row .text-btn{min-height:36px;font-size:12px;align-self:start}
.workspace-review-error{margin:16px 26px 0;padding:12px 14px;background:#fff3e5;color:#773e21;border:1px solid #eed5b7;border-radius:8px;font-size:13px;line-height:1.9}
.workspace-review #workspaceReviewFix{margin:0 26px}
.workspace-review-progress{font-size:13px;color:#24503a;padding:10px 26px;min-height:24px;margin:0}
.workspace-review-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;bottom:0;background:white;border-top:1px solid #e0e8e2;padding:16px 26px max(16px,env(safe-area-inset-bottom))}
.workspace-review .btn.ghost{background:#fff;border:1px solid #c3d2c8;color:#264d39}
.workspace-review .btn.primary{border:1px solid #14352f}
@media(min-width:1200px){.workspace-layout.has-preview{grid-template-columns:minmax(0,1fr) 310px}.workspace-preview{position:sticky;top:24px}.workspace-layout.has-preview .choices{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-layout.has-preview .games{grid-template-columns:repeat(2,minmax(0,1fr))}.merchant-workspace .app .reward-row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) 104px 40px}}
@media(max-width:1199px){.merchant-workspace .workspace-preview-toggle:not([hidden]){display:inline-flex;align-items:center;justify-content:center;margin-top:14px;min-height:44px}.workspace-layout.has-preview>.workspace-preview{display:none}.workspace-layout.has-preview[data-mode=preview]>.workspace-preview{display:block;width:100%;max-width:520px;margin-inline:auto}.workspace-layout.has-preview[data-mode=preview]>.workspace-primary{display:none}.merchant-workspace .app .appbar{flex-wrap:wrap}.merchant-workspace .app .stepper button{padding:8px 6px;font-size:12px;gap:4px}.merchant-workspace .app .home-cols{grid-template-columns:1fr}}
@media(min-width:900px){.merchant-workspace .stepnav{margin-inline-start:var(--side)}}
@media(max-width:899px){.merchant-workspace .app{display:block}.merchant-workspace .app .side{width:100%;height:auto;position:relative;display:grid;grid-template-columns:1fr auto;gap:14px;padding:16px 24px 12px;border-inline-end:0;border-bottom:1px solid var(--line)}.merchant-workspace .side .brand{display:flex;padding:0;min-height:32px}.merchant-workspace .side .wordmark{display:block;width:57px;height:28px}.merchant-workspace .side .mark{width:28px;height:28px}.merchant-workspace .main-nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.merchant-workspace .main-nav button{justify-content:center;gap:7px;padding:8px 6px;font-size:13px;min-height:44px}.merchant-workspace .main-nav button.on{box-shadow:inset 0 -2px #14352f}.merchant-workspace .main-nav button svg{width:17px;height:17px}.merchant-workspace .side-foot{grid-column:2;grid-row:1;align-items:center;padding:0;margin:0;border:0}.merchant-workspace .side-store{display:block;max-width:150px;font-size:12px}.merchant-workspace .app .avatar{width:36px;height:36px;font-size:12px}.merchant-workspace .app .appbar{padding:24px 24px 12px}.merchant-workspace .app main{padding:20px 24px 112px}.workspace-state-line{padding-inline:24px}.merchant-workspace .stepnav{margin-inline-start:0;padding-inline:24px}.workspace-offline{margin-inline:24px}}
@media(max-width:599px){.merchant-workspace .app .side{padding:14px 16px 10px;gap:10px}.merchant-workspace .main-nav button{flex-direction:column;gap:4px;font-size:11px;min-height:52px;padding:6px 3px}.merchant-workspace .app .appbar{padding:20px 16px 10px;gap:12px}.merchant-workspace .app .appbar-title h2{font-size:23px}.merchant-workspace .app .appbar-title p{font-size:12px}.merchant-workspace .app .appbar-actions{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.merchant-workspace .app .appbar-actions .btn{font-size:11px;padding:8px 5px;min-height:44px;white-space:normal;line-height:1.65}.workspace-state-line{padding:0 16px 8px;align-items:flex-start;flex-direction:column;gap:4px}.workspace-state-line .draft-feedback{font-size:11px;flex-wrap:wrap}.workspace-published-hint{font-size:11px;white-space:normal}.merchant-workspace .app main{padding:16px 16px 132px}.merchant-workspace .campaign-caption{display:none}.merchant-workspace .campaign-context{padding-bottom:16px;margin-bottom:18px}.merchant-workspace .app .stepper{display:none}.merchant-workspace .step-select{display:grid;font-size:12px}.merchant-workspace .workspace-preview-toggle{width:100%;margin-top:10px}.merchant-workspace .app .panel,.merchant-workspace .app .preset{padding:18px}.merchant-workspace .app .two-col .row,.merchant-workspace .app .two-col .row.three,.merchant-workspace .app .row.three{grid-template-columns:minmax(0,1fr)}.merchant-workspace .app .panel-heading{flex-wrap:wrap}.merchant-workspace .app .choice{padding:14px}.merchant-workspace .app .choices{grid-template-columns:1fr}.merchant-workspace .app .launch-next{padding:20px;gap:16px}.merchant-workspace .app .launch-next h3{font-size:21px}.merchant-workspace .app .status-line b{font-size:16px}.merchant-workspace .app .status-body{min-width:0}.merchant-workspace .app .tile{padding:14px}.merchant-workspace .app .tile b{font-size:26px}.merchant-workspace .app .tile small{font-size:11px}.merchant-workspace .stepnav{padding-inline:16px;gap:8px;flex-wrap:wrap}.merchant-workspace .stepnav #stepPos{order:-1;flex-basis:100%;text-align:center}.merchant-workspace .stepnav .btn{flex:1;font-size:12px;padding:10px 12px}.workspace-offline{margin-inline:16px}.workspace-review{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:12px}.workspace-review-head{padding:18px 16px 12px;gap:8px}.workspace-review-head h2{font-size:19px}.workspace-review-intro{padding:14px 16px;font-size:12px}.workspace-review-rows{padding:0 16px}.workspace-review-row{grid-template-columns:minmax(0,1fr) 48px;gap:0 10px;padding:12px 0}.workspace-review-row dt{grid-column:1;grid-row:1;font-size:11px;padding:0}.workspace-review-row dd{grid-column:1;grid-row:2;font-size:12px;padding-top:4px}.workspace-review-row .text-btn{grid-column:2;grid-row:1/3;align-self:center;font-size:11px}.workspace-review-footer{padding:12px 16px max(12px,env(safe-area-inset-bottom));gap:8px}.workspace-review-footer .btn{flex:1;font-size:12px;padding:10px 8px;min-height:46px}.workspace-review-error{margin-inline:16px;font-size:12px}.workspace-review-progress{padding:10px 16px;font-size:12px}.workspace-review #workspaceReviewFix{margin-inline:16px}}
@media(max-width:599px){.merchant-workspace .campaign-context{display:grid;grid-template-columns:minmax(0,1fr) 116px;align-items:end;gap:10px}.merchant-workspace .step-select{font-size:0;gap:0;grid-column:1;grid-row:1}.merchant-workspace .step-select select{font-size:14px}.merchant-workspace .workspace-preview-toggle:not([hidden]){grid-column:2;grid-row:1;margin:0;width:100%;min-height:48px;padding:8px;font-size:12px}.merchant-workspace .workspace-state-line{flex-direction:row;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:4px 10px}}
@media(prefers-reduced-motion:reduce){.merchant-workspace *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
