/* Desktop-only additions stay inside the native store document and its iframe. */
html[data-alice-desktop],body[data-alice-desktop] { min-width:0; }
.alice-web-login-bar,.alice-web-login-overlay,.alice-web-login-card { box-sizing:border-box; }
.alice-web-login-bar { position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left));background:#f4f8ff;color:#24374d;border-bottom:1px solid #dce6f2;font:14px/1.5 system-ui,sans-serif; }
.alice-web-login-bar span { min-width:0;overflow-wrap:anywhere; }
.alice-web-login-primary,.alice-web-login-secondary,.alice-web-login-open { display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:42px;padding:9px 15px;border:1px solid #1e78c3;border-radius:10px;font:600 14px/1.5 system-ui,sans-serif;text-decoration:none;cursor:pointer; }
.alice-web-login-primary { flex-shrink:0;background:#1e78c3;color:#fff; }
.alice-web-login-secondary { color:#36516e;background:#fff;border-color:#cbd5e1; }
.alice-web-login-primary:disabled,.alice-web-login-secondary:disabled { cursor:default;opacity:.62; }
.alice-web-login-overlay { position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:#12243a88;overflow-y:auto; }
.alice-web-login-overlay[hidden],.alice-web-login-overlay [hidden] { display:none; }
.alice-web-login-card { width:min(100%,440px);min-width:0;display:grid;gap:16px;margin:auto;padding:24px;background:#fff;color:#1f2937;border:1px solid #dce6f2;border-radius:18px;box-shadow:0 20px 70px #13294240;font:15px/1.65 system-ui,sans-serif;overflow-wrap:anywhere; }
.alice-web-login-card h2,.alice-web-login-card p { margin:0; }
.alice-web-login-card h2 { font-size:22px;line-height:1.4; }
.alice-web-login-status { color:#45607c;min-height:1.65em; }
.alice-web-login-open { width:100%;color:#1769aa;background:#edf6ff; }
.alice-web-login-actions { display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px; }
.alice-web-login-card button:focus-visible,.alice-web-login-open:focus-visible,.alice-web-login-bar button:focus-visible { outline:3px solid #7abaf0;outline-offset:3px; }
@media (max-width:390px) {
  .alice-web-login-bar { align-items:flex-start;gap:8px;font-size:12px; }
  .alice-web-login-bar button { padding-inline:10px;font-size:13px; }
  .alice-web-login-card { padding:18px; }
}
@media (min-width:900px) {
  body[data-alice-desktop] .mobile-shell { max-width:1120px;padding-inline:28px; }
  body[data-alice-desktop] .storefront-shell { max-width:1060px; }
  body[data-alice-desktop] .manager-bottom-nav { width:min(calc(100% - 48px),1064px); }
  body[data-alice-desktop] .storefront-bottom-nav { width:min(calc(100% - 64px),720px); }
  body[data-alice-desktop] #alice-entry-switch { max-width:1064px; }
  body[data-alice-desktop] #alice-entry-switch[data-view="buyer"] { max-width:1004px; }
  body[data-alice-desktop] .welcome-save-actions { width:min(100%,1064px);margin-inline:auto; }
}

/* These specific navigation actions share button styling in MiniApp and Web. */
a.alice-card-redemption-link,a.alice-customer-profile-link {
  display:inline-flex;align-items:center;justify-content:center;justify-self:start;
  box-sizing:border-box;min-width:0;max-width:100%;min-height:44px;padding:10px 14px;
  border:1px solid var(--line);border-radius:8px;background:var(--brand-soft);color:var(--brand-dark);
  font:inherit;font-weight:600;line-height:1.5;text-align:center;text-decoration:none;
  white-space:normal;overflow-wrap:anywhere;cursor:pointer;-webkit-tap-highlight-color:transparent;
}
@media (hover:hover) {
  a.alice-card-redemption-link:hover,a.alice-customer-profile-link:hover {
    border-color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--brand-soft));
  }
}
a.alice-card-redemption-link:focus-visible,a.alice-customer-profile-link:focus-visible {
  outline:2px solid var(--brand);outline-offset:3px;
}
a.alice-card-redemption-link:active,a.alice-customer-profile-link:active {
  border-color:var(--brand);background:color-mix(in srgb,var(--brand) 18%,var(--brand-soft));
}

/* Each card keeps copying and redemption together; feedback uses the next row. */
.alice-card-key-actions,.storefront-record-side.alice-card-key-actions {
  display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:10px;
  width:100%;min-width:0;
}
.alice-card-key-actions.has-redemption { grid-template-columns:repeat(2,minmax(0,1fr)); }
.alice-card-key-actions>button,.alice-card-key-actions>a.alice-card-redemption-link {
  display:inline-flex;align-items:center;justify-content:center;justify-self:stretch;
  box-sizing:border-box;width:100%;min-width:0;min-height:44px;margin:0;padding:10px 8px;
  line-height:1.5;text-align:center;white-space:normal;overflow-wrap:anywhere;
}
.alice-card-key-actions>.alice-card-key-action-feedback { grid-column:1/-1;margin:0;text-align:left; }
