.seating-chart-tool .front-tools-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.seating-board { display: grid; gap: 12px; }
.seating-board-label { padding: 8px; background: #e7eff4; text-align: center; font-weight: 700; }
.seating-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; }
.seating-desk { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; padding: 5px; border: 2px solid #a7b3bc; border-radius: 6px; }
.seating-desk-label { grid-column: 1 / -1; text-align: center; font-size: 12px; color: #596976; }
.seating-seat { display: flex; min-width: 0; min-height: 92px; padding: 6px; flex-direction: column; justify-content: center; gap: 5px; border: 1px solid #d2dce2; text-align: center; overflow-wrap: anywhere; }
.seating-seat button { align-self: center; font-size: 11px; }
.seating-swap { display: grid; gap: 8px; max-width: 500px; margin-top: 20px; }
.seating-chart-tool #seating-error { color: #a94442; }
@media (max-width: 767px) { .seating-chart-tool .front-tools-options { grid-template-columns: 1fr; } .seating-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } .seating-seat { min-height: 110px; } }
@media print { @page { size: A4 landscape; margin: 7mm; } body * { visibility: hidden !important; } #seating-result, #seating-result * { visibility: visible !important; } #seating-result { position: absolute; inset: 0 auto auto 0; width: 100%; margin: 0; padding: 0; } #seating-result > h2, #seating-duplicate-warning, .seating-swap, #seating-absent, #seating-constraint-status { display: none !important; } #seating-board-view, .seating-board { width: 100%; margin: 0; } .seating-board { gap: 3mm; } .seating-board-label { padding: 2mm; break-inside: avoid; } .seating-row { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 2mm; break-inside: avoid; } .seating-desk { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1mm; padding: 1mm; border-width: 1px; border-radius: 0; break-inside: avoid; } .seating-desk-label { font-size: 8pt; } .seating-seat { min-height: 0; padding: 2mm 1mm; gap: 1mm; font-size: 8pt; overflow-wrap: anywhere; } .seating-seat button, .seating-swap { display: none !important; } }
