:root { color-scheme: light; }
.purchased { color: #b71c1c; }
#ticket .receipt-item[aria-hidden="true"] { visibility:hidden; }

/* Identity details keep the inherited grid and animation geometry intact. */
#barcode1 img, #barcodelat img, .barcode_prod img, #barcodeswiper img { width:100%; height:auto; display:block; }
.table table { font-size:inherit; line-height:inherit; }
#offhourstart, #offhour { letter-spacing:.015em; }
#fixworks, #final2 button, #infosmov, #worksmov { background:transparent; }
#clienttext p { text-shadow:0 1px 3px #000, 0 0 2px #000; }
#superiormask, #superiormask2 { margin-left:.3em; }
[role="button"]:focus-visible, a:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
#aceptar:focus-visible { outline:2px solid currentColor; outline-offset:-8px; }
#aceptar:focus-visible div { position:fixed; left:50%; top:75%; transform:translate(-50%,-50%); }
#final2 button a { display:block; width:100%; height:100%; }
#developer-credit { position:static; font-family:HaasR; font-size:var(--p4); text-transform:uppercase; }
#developer-credit a { text-decoration:underline; text-underline-offset:.2em; }
#open24 #links ul { width:auto; gap:2vw; }
#open24 #links a { white-space:nowrap; }
#imginside9 { background-position: 35% center; }
#imginside10 { background-position: 50% 65%; }
#receipt-tip { display:none; }
@media screen and (max-width:1024px) and (orientation:portrait) {
  #canvasmov { height:100vh; height:100svh; top:0; left:0; pointer-events:none; }
  .etiqueta { height:100vh; height:100svh; }
  #marco1 { height:57svh; }
  #marco2 { height:70svh; }
  #marco3, #marco4 { height:60svh; }
  body.mobile-awaiting-entry { overflow:hidden; touch-action:none; }
  .mobile-awaiting-entry #wrapper, .mobile-awaiting-entry #receipt-tip, .mobile-awaiting-entry #movbar { visibility:hidden; }
  #aceptar { display:block; height:100vh; height:100svh; z-index:1000000; cursor:pointer; }
  #aceptar::before { content:'OFFHOUR · EVERYDAY PROVISIONS'; position:absolute; top:12%; left:0; width:100%; text-align:center; font-size:14px; }
  #aceptar div { position:absolute; top:65%; left:50%; width:120px; height:120px; font-size:16px; cursor:pointer; background:transparent; }
  #open24 { display:grid; grid-template-columns:1fr; row-gap:2vw; }
  #footer-tagline { order:0; }
  #open24 #links { order:1; }
  #developer-credit { order:2; grid-column:1 / -1; }
  #infosmov, #worksmov { padding-left:3vw; padding-right:3vw; }
  html #ticket { width:min(84vw,320px); padding:20px; font-size:12px; max-height:65vh; max-height:65dvh; overflow-y:auto; overscroll-behavior:contain; bottom:calc(11vw + env(safe-area-inset-bottom,0px)); will-change:transform; transition:transform .3s ease; }
  html #ticket:not(.up) { transform:translateY(calc(100% + 11vw + 24px)); pointer-events:none; }
  html #ticket.up { transform:translateY(0); pointer-events:auto; }
  #ticket .receipt-item[aria-hidden="true"] { display:none; }
  #receipt-tip { display:block; position:fixed; top:auto; bottom:calc(11vw + env(safe-area-inset-bottom,0px)); left:1vw; width:104px; height:24px; padding:3px 8px; border:1px solid var(--color); border-radius:3px 3px 0 0; background:white; color:var(--color); font:11px 'PT Mono'; text-transform:uppercase; z-index:10000; cursor:pointer; }
  #receipt-tip.open { bottom:calc(11vw + env(safe-area-inset-bottom,0px) + 4px); }
}
