.container{display:flex;justify-content:center;align-items:flex-start;gap:50px;max-width:1200px;margin:40px auto;padding:30px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:box-shadow var(--transition-base)}.container:hover{box-shadow:var(--shadow-lg)}.reservation-container{width:50%}.reservation-container h2{margin-bottom:30px;color:var(--color-primary);font-size:22px}.form-group{margin-bottom:16px}.form-group label{font-weight:600;display:block;margin-bottom:5px;color:#333}.form-group span{color:red}.form-group input,.form-group select,.form-group textarea{width:75%;padding:8px 10px;font-size:14px;border:1px solid #ccc;border-radius:5px;transition:border-color .3s,box-shadow .3s;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007b3d;box-shadow:0 0 5px #007b3d40;outline:none}.form-group textarea{height:100px;resize:vertical}.form-group button{width:75%;padding:10px;background:#007b3d;color:#fff;border:none;border-radius:var(--radius-sm);font-size:16px;font-weight:700;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.form-group button:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.calendar-container{width:350px;padding:20px;background:#fefefe;border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:box-shadow var(--transition-base)}.calendar-container:hover{box-shadow:var(--shadow-lg)}.calendar-header{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:18px;margin-bottom:10px}.calendar-header button{background:#e0e0e0;border:none;padding:6px 12px;cursor:pointer;font-size:16px;border-radius:var(--radius-sm);transition:all var(--transition-base)}.calendar-header button:hover{background:#c5c5c5;transform:translateY(-1px)}#calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding-top:10px}.calendar-day{padding:10px 0;border:1px solid #ddd;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .3s}.calendar-day:hover{background-color:#f0f0f0}.day-header{font-weight:700;background:#f2f2f2}.empty{background:none;border:none}.calendar-day[data-status=free]{background:#28a745;color:#fff}.calendar-day[data-status=full]{background:#ffc107;color:#000}.calendar-day[data-status=closed]{background:#dc3545;color:#fff}.calendar-day.Available{background-color:#4caf50;color:#fff}.calendar-day.Half{background-color:#ffc107;color:#000}.calendar-day.Nearly{background-color:#ff9800;color:#fff}.calendar-day.Full{background-color:#e53935;color:#fff}.calendar-day.Closed{background-color:#9e9e9e;color:#fff}.modal{display:none;position:fixed;z-index:9999;padding-top:100px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#0006}.modal-content{margin:auto;background-color:#fff;padding:20px;border-radius:8px;width:90%;max-width:400px;box-shadow:0 5px 15px #0000004d;text-align:center}.close-modal{float:right;font-size:28px;font-weight:700;color:#333;cursor:pointer}@media (max-width: 900px){.container{flex-direction:column;padding:20px}.reservation-container,.calendar-container,.form-group input,.form-group select,.form-group textarea,.form-group button{width:100%}}#agreementModal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;justify-content:center;align-items:center;padding:20px;background-color:#0006}#agreementModal.show{display:flex!important}.guidelines-content{position:relative;background:#fff;width:100%;max-width:600px;max-height:80vh;overflow-y:auto;padding:30px 40px;border-radius:12px;box-shadow:0 10px 30px #0000004d;font-family:Playfair Display,serif;color:#333;line-height:1.6;margin:0 auto}@media (max-width: 768px){.guidelines-content{max-width:95vw;padding:20px 25px}}#agreementContent{transform:none!important;scale:none!important}.guidelines-content::-webkit-scrollbar{width:8px}.guidelines-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.guidelines-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.guidelines-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.guidelines-content h3:first-child{font-size:24px;font-weight:700;margin-bottom:20px;color:#111827;border-bottom:2px solid #007b3d;padding-bottom:10px}.guidelines-content section h3{font-size:20px;font-weight:600;margin-bottom:15px;color:#007b3d;border-bottom:1px solid #e0e0e0;padding-bottom:8px}.guidelines-content p{font-size:16px;margin-bottom:12px;color:#555}.guidelines-content ul{padding-left:20px;margin-bottom:15px}.guidelines-content li{margin-bottom:8px;color:#555}.guidelines-content strong{color:#333;font-weight:600}.guidelines-content a{color:#007b3d;text-decoration:none}.guidelines-content a:hover{text-decoration:underline}#agreeButton{background:#007b3d;color:#fff;padding:12px 30px;border:none;border-radius:var(--radius-sm);font-weight:600;font-size:16px;cursor:pointer;transition:all var(--transition-base);margin-top:20px;box-shadow:var(--shadow-sm)}#agreeButton:disabled{background:#ccc;cursor:not-allowed;opacity:.6}#agreeButton:not(:disabled):hover{background:#28a745;transform:translateY(-2px);box-shadow:0 4px 12px #007b3d4d}.form-disabled{pointer-events:none;opacity:.4;transition:opacity .3s ease}.form-enabled{pointer-events:auto;opacity:1;transition:opacity .3s ease}#agreementModal,#agreementModal *,.guidelines-content,.guidelines-content *{transform:none!important;scale:none!important}@media (max-width: 768px){#agreementModal{padding:10px}.guidelines-content{padding:20px 25px;max-height:90vh;max-width:95vw}.guidelines-content h3:first-child{font-size:20px}.guidelines-content section h3{font-size:18px}.guidelines-content p,.guidelines-content li{font-size:14px}}@media (max-width: 768px){.navbar{justify-content:flex-start!important;padding-left:20px}.navbar ul{flex-direction:column;align-items:flex-start;gap:15px}}.calendar-legend{display:flex;flex-direction:column;gap:10px;margin-top:20px;font-size:14px}.calendar-legend p{margin:0;display:flex;align-items:center;gap:8px}.legend-box{display:inline-block;width:16px;height:16px;border-radius:4px}.legend-box.Available{background-color:#4caf50}.legend-box.Half{background-color:#ffc107}.legend-box.Nearly{background-color:#ff9800}.legend-box.Full{background-color:#e53935}.legend-box.Closed{background-color:#9e9e9e}
