/* Approved 28221 reference: polished gold pill, vintage serif, wide / shimmer.
   3.6-second left-to-right pass + 3-second pause. Shared across every page. */
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]), input::file-selector-button {
  position:relative; isolation:isolate; overflow:hidden;
  background:radial-gradient(ellipse at 26% 0%,#ffdc66aa,transparent 56%) padding-box,linear-gradient(112deg,#ac6a08 0%,#d99a13 12%,#f0ba32 29%,#e1a11b 49%,#bb7c09 74%,#dda01c 100%) padding-box,linear-gradient(180deg,#fff0b3 0%,#ffedaa 7%,#d9b85e 17%,#805a17 36%,#d7b765 54%,#f5d788 66%,#a77923 85%,#6f480c 100%) border-box !important;
  border:3px solid transparent !important; border-radius:999px !important;
  color:#100b02 !important;
  box-shadow:inset 0 2px 3px #000,inset 0 -2px 2px #d5ad4744,0 -1px 2px #ffedabcc,0 -3px 9px #f3d27566,0 0 16px #c69c3b4d,0 3px 0 #765115,0 8px 13px #000,0 16px 22px #b27b1733 !important;
  text-shadow:none !important;
  font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif !important;
  font-size:20px !important;font-weight:700 !important;line-height:1.25 !important;letter-spacing:-.025em !important;
  text-transform:none !important;text-align:center;text-decoration:none !important;
  min-height:52px;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;
  cursor:pointer;animation:none !important;transition:translate .2s,filter .2s;
}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"])::before {
  content:'' !important;display:block !important;position:absolute !important;inset:1px !important;
  width:auto !important;height:auto !important;transform:none !important;
  border:1px solid #8d702b !important;border-top-color:#b7a16b !important;border-bottom-color:#ddba64 !important;
  border-radius:inherit !important;background:none !important;
  box-shadow:0 0 0 1px #17130a,inset 0 1px 3px #0009 !important;
  pointer-events:none !important;z-index:1;animation:none !important;
}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"])::after {
  content:'' !important;display:block !important;position:absolute !important;
  inset:-70% auto -70% 0 !important;width:42% !important;height:auto !important;
  background:linear-gradient(90deg,transparent 0%,#ffe19a10 8%,#ffe6aa35 22%,#ffedba78 38%,#ffedba88 50%,#ffe6aa78 62%,#ffe19a35 78%,#ffe19a10 92%,transparent 100%) !important;
  border:0 !important;box-shadow:none !important;border-radius:0 !important;
  filter:blur(3px);transform:translateX(-190%) rotate(24deg);
  animation:legacy-approved-sweep 6.6s infinite !important;pointer-events:none !important;z-index:-1;
}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]) > :is(span,small,strong) {color:inherit !important;}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]):not(.icon-button):not(.example-close):not(.example-style):not(.design-choice):not(.collection-choice),input::file-selector-button {padding:13px 24px !important;}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]):hover {filter:brightness(1.025);}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]):active {translate:0 2px;}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]):focus-visible,.file-button:focus-within {outline:3px solid #438eb8 !important;outline-offset:5px !important;}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]):is([aria-pressed="true"],[aria-selected="true"]) {outline:2px solid #66420c;outline-offset:3px;}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]):is(:disabled,[aria-disabled="true"],[aria-busy="true"]) {opacity:.6 !important;cursor:not-allowed;filter:saturate(.55);translate:none;}
html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]):is(:disabled,[aria-disabled="true"],[aria-busy="true"])::after {animation:none !important;opacity:0 !important;}
/* Photo choices retain the full rectangular artwork; their frame and labels use the same gold. */
html:root:root:root body :is(.example-style.example-style,.design-choice.design-choice,.collection-choice.collection-choice) {border-radius:22px !important;}
html:root:root:root body :is(.icon-button,.example-close) {min-width:44px;min-height:44px;}
html:root:root:root body :is(button,.button) svg {flex-shrink:0;}
html:root:root:root body .emotional-copy > .button {font-size:clamp(24px,2.4vw,30px) !important;padding:19px 32px !important;}
@keyframes legacy-approved-sweep {
  0% {transform:translateX(-190%) rotate(24deg);opacity:0;}
  5%,50% {opacity:1;}
  54.5454545455%,100% {transform:translateX(360%) rotate(24deg);opacity:0;}
}
@media(prefers-reduced-motion:reduce) {
  html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"])::after {animation:none !important;opacity:0 !important;}
  html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]) {transition:none;}
}
@media(max-width:480px) {
  html:root:root:root body :is(button, .button, .small-button, .text-button, .icon-button, .file-button, [role="button"], input[type="submit"], input[type="button"], input[type="reset"]) {font-size:20px !important;}
  html:root:root:root body .paging button {padding-inline:14px !important;}
}

/* Sharpen only the restoration CTA lettering; preserve the original button finish. */
html:root:root:root body .button.restore-cta {
  color:#100b02 !important;
  font-weight:700 !important;
  text-shadow:none !important;
}
