* { box-sizing: border-box; margin: 0; padding: 0; font-family: Arial, sans-serif; }
body { background: #0d0d0d; color: #fff; overflow: hidden; height: 100vh; }
#header { display: flex; align-items: center; gap: 1rem; padding: 1rem 2rem; background: #1e88e5; }
#logo { height: 3rem; display: none; }
#store-name { font-size: 2rem; font-weight: 700; }
#tbl-wrap, #splash, #specials-slide, #staff-slide { display: none; }
#tbl-wrap.visible { display: block; padding: 1.5rem 2rem; }
.tbl-row { display: flex; padding: 0.6rem 0; border-bottom: 1px solid #333; font-size: 1.4rem; }
.tbl-cell { flex: 1; }
.tbl-cell.bold { font-weight: 700; flex: 0.6; }
#page-indicator { text-align: right; padding: 0 2rem; color: #888; }
#splash.visible { display: flex; align-items: center; justify-content: center; height: 60vh; font-size: 2.5rem; color: #666; }
#specials-slide.visible { display: flex; align-items: center; justify-content: center; height: 70vh; }
#specials-slide img { max-height: 70vh; max-width: 100%; }
#staff-slide.visible { display: flex; flex-direction: column; gap: 2.5rem; align-items: center; justify-content: center; height: 70vh; }
.staff-row { display: flex; gap: 2rem; justify-content: center; flex-wrap: wrap; }
.staff-card { text-align: center; font-size: 1.3rem; }
.staff-card img { height: 12rem; border-radius: 8px; display: block; margin: 0 auto 0.5rem; }
.staff-name { font-weight: 700; }
.staff-title { font-size: 1rem; color: #aaa; }
/* White bar like the on-prem board, so all six ticker colors (black included) read. */
#ticker {
  display: none; position: fixed; left: 0; right: 0; bottom: 0; height: 3.2rem;
  background: #fff; border-top: 1px solid #ccc; overflow: hidden; white-space: nowrap; align-items: center;
}
#ticker-text { display: inline-block; font-size: 1.6rem; font-weight: 700; letter-spacing: 0.04em; }
#ticker-text.static { position: absolute; left: 0; right: 0; text-align: center; }
@keyframes ticker-scroll { from { transform: translateX(100vw); } to { transform: translateX(-100%); } }
@keyframes ticker-flash { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
