* { 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; gap: 2rem; align-items: center; justify-content: center; height: 70vh; flex-wrap: wrap; }
.staff-card { text-align: center; font-size: 1.3rem; }
.staff-card img { height: 12rem; border-radius: 8px; display: block; margin-bottom: 0.5rem; }
#ticker { display: none; background: #111; padding: 0.5rem 2rem; overflow: hidden; white-space: nowrap; }
#ticker-text { display: inline-block; animation: scroll-left 20s linear infinite; }
@keyframes scroll-left { from { transform: translateX(100%); } to { transform: translateX(-100%); } }
