/* Shared Origyn page canvas: warm grain and soft amber light on every branded page. */
body.origyn-brand {
  background-color:var(--ui-bg,#171713);
  background-image:radial-gradient(ellipse at 12% 0%,color-mix(in srgb,var(--ui-accent,#ff8052) 8%,transparent),transparent 38rem),radial-gradient(ellipse at 100% 36%,color-mix(in srgb,#b87045 5%,transparent),transparent 46rem),repeating-linear-gradient(0deg,transparent 0 5px,color-mix(in srgb,var(--ui-ink,#f6f0e7) 1.2%,transparent) 5px 6px) !important;
  background-attachment:fixed !important;
}

/* The privacy experience covers the viewport and presents its choices in a
   wide, bottom-anchored sheet. The backdrop keeps the page visually present
   while inert and scroll-locked until a choice is made. */
body.origyn-brand .origyn-privacy-banner,
body.store-page.origyn-brand .origyn-privacy-banner {
  position:fixed;
  z-index:20000;
  inset:0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  box-sizing:border-box;
  width:100%;
  max-width:none;
  height:100vh;
  height:100dvh;
  max-height:none;
  margin:0;
  padding:clamp(12px,3vw,40px) clamp(12px,3vw,40px) max(12px,env(safe-area-inset-bottom));
  overflow:hidden;
  border:0;
  border-radius:0;
  background:rgb(12 11 9 / 76%);
  color:var(--ui-ink);
  box-shadow:none;
  backdrop-filter:blur(7px);
  animation:origyn-privacy-scrim-in 220ms ease-out both;
}
body.origyn-brand .origyn-privacy-dialog {
  width:min(820px,calc(100vw - 32px));
  max-height:min(82dvh,680px);
  overflow:auto;
  overscroll-behavior:contain;
  box-sizing:border-box;
  padding:clamp(18px,2.5vw,28px);
  border:1px solid color-mix(in srgb,var(--ui-accent) 38%,var(--ui-line));
  border-radius:22px 22px 16px 16px;
  background-color:var(--ui-surface);
  background-image:radial-gradient(ellipse at 8% 0%,color-mix(in srgb,var(--ui-accent) 12%,transparent),transparent 32rem),repeating-linear-gradient(0deg,transparent 0 5px,color-mix(in srgb,var(--ui-ink) 1.5%,transparent) 5px 6px);
  color:var(--ui-ink);
  box-shadow:0 24px 90px #0009;
  animation:origyn-privacy-sheet-in 360ms cubic-bezier(.2,.8,.2,1) both;
}
body.origyn-brand .origyn-privacy-copy { max-width:760px; }
body.origyn-brand .origyn-privacy-kicker { margin:0 0 8px; color:var(--ui-accent); font-size:11px; font-weight:800; letter-spacing:.16em; }
body.origyn-brand .origyn-privacy-copy strong { display:block; margin:0; color:var(--ui-ink); font-size:clamp(24px,3vw,34px); line-height:1.08; letter-spacing:-.04em; }
body.origyn-brand .origyn-privacy-copy > p:not(.origyn-privacy-kicker) { max-width:64ch; margin:9px 0; color:var(--ui-muted); font-size:clamp(13px,1.2vw,15px); line-height:1.5; }
body.origyn-brand .origyn-privacy-links { gap:6px 14px; margin:8px 0 0; }
body.origyn-brand .origyn-privacy-links a { min-height:32px; font-size:12px; }
body.origyn-brand .origyn-privacy-duration { display:block; margin-top:6px; font-size:11px; line-height:1.4; }
body.origyn-brand .origyn-privacy-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; width:100%; margin-top:14px; }
body.origyn-brand .origyn-privacy-accept-stack { display:grid; grid-column:3; grid-row:1 / span 2; grid-template-columns:minmax(0,1fr); align-content:start; gap:12px; }
body.origyn-brand .origyn-privacy-actions [data-privacy-reject] { grid-column:1; grid-row:1; grid-area:auto; }
body.origyn-brand .origyn-privacy-actions [data-privacy-manage] { grid-column:2; grid-row:1; grid-area:auto; }
body.origyn-brand .origyn-privacy-actions [data-privacy-accept] { grid-column:1; grid-row:1; }
body.origyn-brand .origyn-privacy-actions [data-privacy-save] { grid-column:1; grid-row:2; }
body.origyn-brand .origyn-privacy-actions button {
  width:100%;
  min-width:0;
  min-height:48px;
  padding:10px 14px;
  border:1px solid var(--ui-line);
  border-radius:10px;
  background:var(--ui-soft);
  color:var(--ui-ink);
  font-size:14px;
  font-weight:750;
  transition:background-color 160ms ease,border-color 160ms ease,transform 160ms ease;
}
body.origyn-brand .origyn-privacy-actions [data-privacy-accept] { border-color:var(--ui-accent); background:var(--ui-accent); color:#171713; }
body.origyn-brand .origyn-privacy-actions [data-privacy-save] { border-color:var(--ui-accent); }
body.origyn-brand .origyn-privacy-actions button:hover { border-color:var(--ui-accent); transform:translateY(-1px); }
body.origyn-brand .origyn-privacy-manage { grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:12px; padding-top:12px; }
body.origyn-brand .origyn-privacy-manage label,
body.origyn-brand .origyn-privacy-manage label:nth-child(3) { grid-column:auto; min-height:72px; padding:14px; border:1px solid var(--ui-line); border-radius:10px; background:var(--ui-soft); }
body.origyn-brand .origyn-privacy-error { margin:10px 0 0; }

@keyframes origyn-privacy-scrim-in { from { opacity:0; } to { opacity:1; } }
@keyframes origyn-privacy-sheet-in { from { opacity:0; transform:translateY(28px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:640px) {
  body.origyn-brand .origyn-privacy-banner { padding:10px 10px max(10px,env(safe-area-inset-bottom)); }
  body.origyn-brand .origyn-privacy-dialog { width:100%; max-height:82dvh; padding:18px 16px; border-radius:18px 18px 12px 12px; }
  body.origyn-brand .origyn-privacy-actions { grid-template-columns:1fr; gap:9px; margin-top:16px; }
  body.origyn-brand .origyn-privacy-accept-stack { grid-column:1; grid-row:auto; gap:9px; }
  body.origyn-brand .origyn-privacy-actions [data-privacy-reject],
  body.origyn-brand .origyn-privacy-actions [data-privacy-manage] { grid-column:1; grid-row:auto; }
  body.origyn-brand .origyn-privacy-actions button { min-height:48px; }
  body.origyn-brand .origyn-privacy-manage { grid-template-columns:1fr; }
  body.origyn-brand .origyn-privacy-manage label,
  body.origyn-brand .origyn-privacy-manage label:nth-child(3) { min-height:56px; }
}
@media(prefers-reduced-motion:reduce) {
  body.origyn-brand .origyn-privacy-banner,
  body.origyn-brand .origyn-privacy-dialog { animation:none; }
  body.origyn-brand .origyn-privacy-actions button { transition:none; }
}

/* Keep page scrolling visible, but blend the native scrollbar into Origyn's
   dark canvas and copper palette instead of the oversized light browser bar. */
html:has(body.origyn-brand) {
  scrollbar-color:#806c56 #171713;
  scrollbar-width:thin;
}
html:has(body.origyn-brand)::-webkit-scrollbar { width:10px; height:10px; }
html:has(body.origyn-brand)::-webkit-scrollbar-track { background:#171713; }
html:has(body.origyn-brand)::-webkit-scrollbar-thumb {
  border:3px solid #171713;
  border-radius:999px;
  background:#806c56;
}
html:has(body.origyn-brand)::-webkit-scrollbar-thumb:hover { background:#ff875d; }
