.reservation-page{padding:16px;max-width:1100px;margin:auto}.reservation-page .page-head p{line-height:1.6;margin:8px 0}.reservation-filters,.reservation-actions,.reservation-card-head,.reservation-quantities{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.reservation-filters{margin:12px 0}.reservation-filters select{padding:8px;border:1px solid #cbd5e1;border-radius:8px;font:inherit}.reservation-card{padding:16px;margin-bottom:14px}.reservation-card-head{justify-content:space-between}.reservation-quantities{padding:12px 0;border-bottom:1px solid #e2e8f0}.reservation-card p{margin:10px 0}.reservation-note{white-space:pre-wrap;overflow-wrap:anywhere}.reservation-due{color:#a54118}.reservation-form{display:grid;gap:14px}.reservation-form label{display:grid;gap:6px}.reservation-form input,.reservation-form select,.reservation-form textarea{width:100%;box-sizing:border-box;padding:10px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;min-height:42px}.reservation-form textarea{min-height:72px;resize:vertical}.reservation-help{margin:0;color:#64748b;line-height:1.5}.reservation-form-error,.reservation-page [data-error]{color:#b42318;white-space:pre-wrap;overflow-wrap:anywhere}.reservation-history{max-height:65vh;overflow:auto}.reservation-page [data-list]{margin-top:14px}@media(max-width:640px){.reservation-page{padding:12px 12px 90px}.reservation-page .page-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.reservation-card{padding:12px}.reservation-actions{gap:8px}.reservation-actions .btn{flex:1 1 120px;white-space:nowrap}.reservation-quantities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reservation-form{font-size:16px}.reservation-page .page-title{font-size:22px}}
