/* Hallmark · component: redemption dialog · existing Norel dark-gold tokens.
 * Pre-emit critique: P5 H4 E5 S5 R5 V4. Default/hover/focus/pressed/disabled/loading/error/success. */
body.store-luxe .shc-count-row.norel-store-actions { display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap; }
body.store-luxe .norel-store-actions .store-count { width:auto;flex:1; }
.norel-activate-trigger { flex-shrink:0; }
.norel-activate-trigger,#norelActivation {
  --redeem-bg:var(--norel-canvas);--redeem-panel:var(--norel-surface);--redeem-input:var(--norel-surface-soft);
  --redeem-line:var(--norel-line);--redeem-accent:var(--norel-gold);--redeem-ink:var(--norel-ink);
  --redeem-muted:var(--norel-muted);--redeem-error:var(--norel-red);--redeem-good:var(--norel-green);
  --redeem-on-accent:var(--norel-on-brand);--redeem-backdrop:rgba(8,6,3,.78);
  --redeem-ease:cubic-bezier(.16,1,.3,1);--redeem-mono:ui-monospace,monospace;
  font-family:inherit;color:var(--redeem-ink);
}
.norel-activate-trigger { display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:9px 18px;border:1px solid var(--norel-line-strong);border-radius:12px;background:var(--redeem-panel);color:var(--redeem-ink);font-weight:800;cursor:pointer;white-space:nowrap; }
.norel-activate-trigger svg,#norelActivation svg { width:22px;height:22px;flex-shrink:0;color:var(--redeem-accent); }
.norel-activate-trigger:focus-visible,#norelActivation :focus-visible { outline:2px solid var(--redeem-accent);outline-offset:3px; }
#norelActivation { position:fixed;inset:0;margin:auto;width:min(492px,calc(100% - 24px));max-width:none;height:fit-content;max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--redeem-line);border-radius:22px;background:var(--redeem-bg);overflow:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:var(--norel-line-strong) var(--redeem-bg);text-align:start;direction:rtl; }
#norelActivation::backdrop { background:var(--redeem-backdrop); }
#norelActivation[open] { animation:redeemEnter 280ms var(--redeem-ease); }
#norelActivation *,#norelActivation *::before { box-sizing:border-box; }
#norelActivation [hidden] { display:none!important; }
#norelActivation .redeem-head { display:flex;align-items:center;gap:14px;padding:24px;border-bottom:1px solid var(--redeem-line);background:var(--redeem-panel);color:var(--redeem-ink); }
#norelActivation .redeem-head-icon { width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--redeem-line);border-radius:14px;flex-shrink:0; }
#norelActivation h2 { font-size:18px;line-height:1.6;font-weight:800;margin:0; }
#norelActivation p { font-size:14px;line-height:1.8;margin:4px 0 0;color:var(--redeem-muted); }
#norelActivation .redeem-close { margin-inline-start:auto;align-self:flex-start;min-width:44px;min-height:44px;font-size:25px;padding:0; }
#norelActivation button { font-family:inherit;cursor:pointer;white-space:nowrap;transition:background-color 180ms var(--redeem-ease),transform 100ms var(--redeem-ease); }
#norelActivation button:active:not(:disabled),.norel-activate-trigger:active { transform:translateY(1px); }
#norelActivation .redeem-secondary { color:var(--redeem-ink);background:var(--redeem-input);border:1px solid var(--redeem-line);border-radius:10px; }
#norelActivation .redeem-content { padding:24px; }
#norelActivation label,#norelActivation .redeem-label { display:block;font-size:14px;font-weight:700;margin:0 0 8px; }
#norelActivation input { height:50px;width:100%;min-width:0;padding:0 14px;border:1px solid var(--redeem-line);border-radius:12px;background:var(--redeem-input);color:var(--redeem-ink);font:inherit;font-size:15px; }
#norelActivation input[aria-invalid="true"] { border-color:var(--redeem-error); }
#norelActivation input::placeholder { color:var(--norel-faint); }
#norelActivation #redeemKey { font-family:var(--redeem-mono);text-align:center;font-size:clamp(12px,3.7vw,16px);letter-spacing:.025em; }
#norelActivation .redeem-format { display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;margin-block:20px;padding:16px;border:1px solid color-mix(in srgb,var(--redeem-accent) 25%,var(--redeem-line));border-radius:14px;background:color-mix(in srgb,var(--redeem-accent) 4%,var(--redeem-bg));color:var(--redeem-ink); }
#norelActivation .redeem-format-icon { display:grid;place-items:center;width:32px;height:32px;border:1px solid color-mix(in srgb,var(--redeem-accent) 18%,var(--redeem-line));border-radius:10px;background:color-mix(in srgb,var(--redeem-accent) 10%,var(--redeem-bg));color:var(--redeem-accent); }
#norelActivation .redeem-format-icon svg { width:18px;height:18px; }
#norelActivation .redeem-format-copy { min-width:0; }
#norelActivation .redeem-format strong { font-size:14px; }
#norelActivation .redeem-format p { margin-top:4px;font-size:13px;line-height:1.9; }
#norelActivation .redeem-format-example { grid-column:2;justify-self:start;display:flex;align-items:center;gap:8px;max-width:100%;padding:8px 12px;border:1px solid var(--redeem-line);border-radius:9px;background:var(--redeem-bg);color:var(--redeem-muted); }
#norelActivation .redeem-format-example span { font-size:12px;white-space:nowrap; }
#norelActivation .redeem-format-example code { margin:0;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums; }
@media(max-width:400px) { #norelActivation .redeem-format-example { grid-column:1/-1;padding-inline:8px; } }
#norelActivation code { font-family:var(--redeem-mono);color:var(--redeem-accent);font-size:14px;display:inline-block;margin-top:8px; }
#norelActivation ol { margin:16px 0 0;padding-inline-start:23px;color:var(--redeem-muted);font-size:14px;line-height:2; }
#norelActivation ol li { padding-inline-start:4px;margin-top:4px; }
#norelActivation ol li::marker { color:var(--redeem-accent);font-weight:800; }
#norelActivation .redeem-feedback { min-height:26px;margin:10px 0 0;font-size:14px;line-height:1.7;color:var(--redeem-error); }
#norelActivation .redeem-feedback[data-tone="good"] { color:var(--redeem-good); }
#norelActivation .redeem-feedback[data-tone="info"] { color:var(--redeem-muted); }
#norelActivation .redeem-choice { width:100%;height:52px;display:flex;align-items:center;gap:10px;padding:0 14px;background:var(--redeem-input);color:var(--redeem-ink);border:1px solid var(--redeem-line);border-radius:12px;font-size:15px;text-align:start; }
#norelActivation .redeem-choice small { margin-inline-start:auto;color:var(--redeem-muted); }
#norelActivation .redeem-options { margin-top:8px;padding:6px;border:1px solid var(--redeem-line);border-radius:12px;max-height:240px;overflow:auto;overscroll-behavior:contain;background:var(--redeem-panel);color:var(--redeem-ink); }
#norelActivation .redeem-option { width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;border:0;padding:10px 12px;border-radius:8px;background:transparent;color:var(--redeem-ink);font-size:14px;text-align:start; }
#norelActivation .redeem-option[aria-selected="true"] { background:var(--redeem-input);color:var(--redeem-accent); }
#norelActivation .redeem-server { margin-top:20px; }
#norelActivation .redeem-foot { display:flex;gap:10px;padding:20px 24px;border-top:1px solid var(--redeem-line); }
#norelActivation .redeem-foot button { min-height:46px;padding:10px 14px;flex:1;font-size:14px;font-weight:800; }
#norelActivation .redeem-primary { border:1px solid var(--redeem-accent);border-radius:10px;background:var(--redeem-accent);color:var(--redeem-on-accent); }
#norelActivation button:disabled { opacity:.5;cursor:not-allowed; }
#norelActivation .redeem-result h3 { font-size:20px;margin:4px 0 12px; }
#norelActivation .redeem-result a { display:inline-flex;align-items:center;min-height:44px;margin-top:20px;color:var(--redeem-accent);font-weight:800; }
#norelActivation .redeem-result dl { margin:18px 0;display:grid;grid-template-columns:auto 1fr;gap:12px 16px;font-size:14px; }
#norelActivation .redeem-result dt { color:var(--redeem-muted); }
#norelActivation .redeem-result dd { margin:0;overflow-wrap:anywhere; }
#norelActivation [data-step] { animation:redeemFade 180ms var(--redeem-ease); }
@media(hover:hover) { .norel-activate-trigger:hover,#norelActivation .redeem-secondary:hover,#norelActivation .redeem-option:hover { background:var(--norel-surface-warm);color:var(--norel-ink); } #norelActivation .redeem-primary:hover { background:var(--norel-brand-3);color:var(--redeem-on-accent); } }
@keyframes redeemEnter { from { opacity:0;transform:translateY(10px) scale(.98); } to { opacity:1;transform:none; } }
@keyframes redeemFade { from { opacity:.4; } to { opacity:1; } }
@media(prefers-reduced-motion:reduce) { #norelActivation[open],#norelActivation [data-step] { animation:redeemFade 120ms linear; } #norelActivation button { transition:none; } }
