/* Words and crosshatching distinguish unavailable tables without relying on colour. */
.toz-simple .toz-seat.toz-booked,
.toz-simple .toz-seat.toz-reserved,
.toz-simple .toz-seat.toz-held{background-image:repeating-linear-gradient(135deg,transparent 0,transparent 7px,#ffffff20 7px,#ffffff20 9px)!important;cursor:not-allowed}
.toz-simple .toz-seat .toz-availability-word{display:block;font:700 9px/1.1 Tahoma,Arial,sans-serif;color:#fff!important;white-space:nowrap;text-shadow:0 1px 2px #000;margin-top:2px}
.toz-simple .toz-seat:has(.toz-availability-word) .toz-seat-capacity{display:none!important}
.toz-simple .toz-seat:has(.toz-availability-word) .toz-seat-id{color:#fff!important;text-shadow:0 1px 2px #000}

/* Accurate urgency cue: the script counts all table and couch locations. */
.toz-simple .toz-availability-urgency{display:flex;flex-wrap:wrap;align-items:center;gap:3px 12px;margin:10px 0 12px;padding:10px 13px;border:1px solid #b8904d;border-radius:8px;background:linear-gradient(100deg,#2a1714,#17100f 70%);color:#fff9ed;box-shadow:0 5px 16px rgba(24,10,8,.16)}
.toz-simple .toz-availability-urgency strong{font-size:13px;line-height:1.35;color:#f0cf7d}
.toz-simple .toz-availability-urgency span{font-size:12px;line-height:1.35;color:#e5d8c6}

/* Small optional room impression: the map and checkout remain the main flow. */
.toz-simple .toz-room-photo-premium{position:relative;isolation:isolate;border-color:#b8904d;background:#17100f;box-shadow:0 5px 18px rgba(24,10,8,.2);transition:transform .2s ease,box-shadow .2s ease}
.toz-simple .toz-room-photo-premium:hover,.toz-simple .toz-room-photo-premium:focus-visible{transform:translateY(-1px);box-shadow:0 8px 22px rgba(24,10,8,.3)}
.toz-simple .toz-room-photo-premium img{animation:toz-room-gentle-pan 18s ease-in-out infinite alternate;transform-origin:center center}
.toz-simple .toz-room-photo-premium span{position:relative;background:linear-gradient(90deg,#17100fe8,#2d1d14e8);font-size:11px;line-height:1.25}
.toz-room-preview-dialog{width:min(900px,calc(100vw - 28px));max-width:900px;padding:14px;background:#17100f;color:#fff9ed;border:1px solid #b8904d;border-radius:12px;box-shadow:0 20px 80px #000b}
.toz-room-preview-dialog::backdrop{background:#080606d9}
.toz-room-preview-dialog>button{display:block;margin:0 0 10px auto;min-height:44px;padding:9px 15px;border:1px solid #d6b06b;border-radius:6px;background:#e8c778;color:#24190d;font-weight:700;cursor:pointer}
.toz-room-preview-figure{margin:0;overflow:hidden;border:1px solid #6c5131;border-radius:8px;background:#0c0909}
.toz-room-preview-figure img{display:block;width:100%;max-height:70vh;object-fit:cover;object-position:center center;animation:toz-room-gentle-pan 24s ease-in-out infinite alternate}
.toz-room-preview-figure figcaption{display:flex;flex-wrap:wrap;gap:4px 14px;padding:10px 12px;background:linear-gradient(90deg,#211412,#150e0e);font-size:12px;line-height:1.4}
.toz-room-preview-figure figcaption strong{color:#f0cf7d}
.toz-room-preview-figure figcaption span{color:#d6c9b4}
.toz-room-preview-note{margin:9px 2px 0;color:#b9aa96;font-size:11px;line-height:1.4}
@keyframes toz-room-gentle-pan{0%{transform:scale(1.015) translate3d(-.5%,0,0)}100%{transform:scale(1.035) translate3d(.5%,-.35%,0)}}
@media(prefers-reduced-motion:reduce){.toz-simple .toz-room-photo-premium img,.toz-room-preview-figure img{animation:none}}
@media(max-width:600px){.toz-simple .toz-room-photo-premium span{font-size:10px}.toz-room-preview-dialog{padding:9px}.toz-room-preview-figure figcaption{font-size:11px;padding:9px}.toz-room-preview-dialog>button{width:100%;margin-bottom:8px}}
@media(max-width:600px){.toz-simple .toz-availability-urgency{margin:8px 0 10px;padding:9px 10px}.toz-simple .toz-availability-urgency strong{font-size:12px}.toz-simple .toz-availability-urgency span{font-size:11px}}
