@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@300;500;700&display=swap);body,html{background-color:#f5f5f5;font-family:Roboto,sans-serif;margin:0;padding:0}.App{color:#333;text-align:center}.hero{align-items:center;background-image:url(https://images.unsplash.com/photo-1563298723-dcfebaa392e3?auto=format&fit=crop&w=1950&q=80);background-position:50%;background-size:cover;display:flex;height:50vh;justify-content:center;position:relative}.overlay{background:#00000080;color:#fff;padding:2rem;text-align:center}.title{font-size:3rem;margin:0}.subtitle{font-size:1.5rem;margin-top:.5rem}.content{margin:2rem auto;max-width:800px;padding:1rem}.calendar-section{border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:2rem}.calendar-section h2{margin-bottom:1.5rem}.footer{background-color:#333;color:#fff;padding:1rem}body{background-color:#f8f8f8;color:#333;font-family:Segoe UI,sans-serif;margin:0}.vacation-app{margin:0 auto;max-width:1000px;padding:1rem}.hero-text h1{font-size:2.5rem;margin:0}.hero-text p{font-size:1.2rem;margin-top:.5rem}.gallery-section,.info-section{margin-top:2rem}.gallery{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:1rem}.gallery img{border-radius:6px;height:140px;object-fit:cover;width:100%}.calendar-section{background-color:#fff;border-radius:6px;box-shadow:0 2px 8px #0000001a;margin-top:2rem;padding:1.5rem}.footer{color:#888;font-size:.9rem;margin-top:3rem;text-align:center}.calendar-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}.toast-message{animation:fadeInOut 3s ease forwards;border-radius:8px;bottom:2rem;box-shadow:0 4px 12px #00000040;color:#fff;font-weight:700;padding:1rem 1.5rem;position:fixed;right:2rem;z-index:9999}.toast-success{background-color:#4bb543}.toast-error{background-color:#d32f2f}.toast-info{background-color:#2196f3}@keyframes fadeInOut{0%{opacity:0;transform:translateY(20px)}10%{opacity:1;transform:translateY(0)}90%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.navbar{background-color:#fff;border-bottom:1px solid #ddd;box-shadow:0 2px 4px #0000000d;padding:.5rem 1rem;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:1000}.navbar-container{align-items:center;display:flex;justify-content:space-between}.navbar-logo a{color:#2c3e50;font-size:1.2rem;font-weight:700;text-decoration:none}.menu-icon{color:#2c3e50;cursor:pointer;display:none;font-size:1.8rem}.navbar-links{display:flex;gap:1rem;list-style:none;margin:0;padding:0}.navbar-links li a{color:#2c3e50;font-weight:500;text-decoration:none}.navbar-links li a:hover{color:#07c}@media (max-width:768px){.menu-icon{display:block}.navbar-links{align-items:flex-start;background-color:#fff;box-shadow:0 4px 6px #0000001a;display:none;flex-direction:column;padding:1rem;position:absolute;right:0;top:60px;width:100%}.navbar-links.active{display:flex}.navbar-links li{padding:.5rem 0;width:100%}}.language-switcher{display:flex;gap:.25rem}.lang-btn{background:none;border:1px solid #ccc;border-radius:4px;color:#2c3e50;cursor:pointer;font-size:.8rem;font-weight:600;padding:.2rem .5rem;transition:background-color .15s,border-color .15s}.lang-btn:hover{background-color:#f0f0f0}.lang-btn.active{background-color:#07c;border-color:#07c;color:#fff}.hero-section{color:#fff;position:relative;text-align:center}.hero-image{border-radius:8px;filter:brightness(70%);height:300px;object-fit:cover;width:100%}.hero-text{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.gallery-section,.info-section,.intro-section{margin:auto;max-width:1000px;padding:2rem 1rem}.features-list{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;padding:0}.features-list li{background-color:#fff;border-radius:6px;box-shadow:0 2px 6px #0000001a;flex:1 0 45%;padding:.75rem 1rem}.gallery-section{margin:2rem auto;max-width:1000px;padding:1rem;text-align:center}.gallery-main{align-items:center;display:flex;justify-content:center;margin-bottom:1rem;position:relative}.main-image{border-radius:10px;box-shadow:0 4px 12px #0000001a;max-height:600px;object-fit:cover;transition:opacity .3s ease;width:60%}.thumbnail-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.thumbnail{border:2px solid #0000;border-radius:6px;cursor:pointer;height:70px;object-fit:cover;opacity:.7;transition:all .3s ease;width:100px}.thumbnail:hover{opacity:1;transform:scale(1.05)}.thumbnail.active{border-color:#666;opacity:1}.nav-button{background-color:#ffffffb3;border:none;border-radius:50%;cursor:pointer;font-size:2rem;padding:.5rem 1rem;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .3s ease;z-index:1}.nav-button:hover{background-color:#fff}.nav-button.left{left:10px}.nav-button.right{right:10px}.image-description{color:#333;font-style:italic;margin:.5rem auto 1.5rem}.omgeving-section{margin:2rem auto;max-width:1000px;padding:1rem}.omgeving-section h2{font-size:2rem;margin-bottom:1.5rem;text-align:center}.omgeving-content{display:flex;flex-direction:column;gap:1.5rem}.omgeving-text p{font-size:1.1rem;line-height:1.6;margin-bottom:1rem}.omgeving-image-container{width:100%}.omgeving-image{border-radius:10px;height:auto;width:100%}@media (min-width:768px){.omgeving-content{align-items:flex-start;flex-direction:row}.omgeving-text{flex:1 1;padding-right:1rem}.omgeving-image-container{flex:1 1}.omgeving-image{max-height:320px;object-fit:cover}}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid #0000;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:0.5;--rdp-outside-opacity:0.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:0.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:0.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:#fff;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction),#0000 50%,var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction),var(--rdp-range_middle-background-color) 50%,#0000 50%);--rdp-range_end-color:#fff;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid #0000;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:0.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:0.75;--rdp-weekday-padding:0.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:0.3s;--rdp-animation_timing:cubic-bezier(0.4,0,0.2,1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{position:relative}.rdp-root,.rdp-root *{box-sizing:border-box}.rdp-day{height:var(--rdp-day-height);text-align:center;width:var(--rdp-day-width)}.rdp-day_button{align-items:center;background:none;border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);color:inherit;cursor:pointer;display:flex;font:inherit;height:var(--rdp-day_button-height);justify-content:center;margin:0;padding:0;width:var(--rdp-day_button-width)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{align-items:center;border:0;display:inline-flex;position:relative;white-space:nowrap;z-index:1}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{align-items:center;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;font:inherit;height:var(--rdp-nav_button-height);justify-content:center;margin:0;padding:0;position:relative;width:var(--rdp-nav_button-width)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{align-items:center;display:inline-flex;gap:var(--rdp-dropdown-gap);position:relative}.rdp-dropdown{-webkit-appearance:none;appearance:none;border:none;cursor:inherit;inset-block-end:0;inset-block-start:0;inset-inline-start:0;line-height:inherit;margin:0;opacity:0;padding:0;position:absolute;width:100%;z-index:2}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{align-content:center;display:flex;font-size:large;font-weight:700;height:var(--rdp-nav-height)}.rdp-root[data-nav-layout=after] .rdp-month,.rdp-root[data-nav-layout=around] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{-webkit-margin-start:var(--rdp-nav_button-width);-webkit-margin-end:var(--rdp-nav_button-width);justify-content:center;margin-inline-end:var(--rdp-nav_button-width);margin-inline-start:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{display:inline-flex;height:var(--rdp-nav-height);inset-inline-start:0;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{display:inline-flex;height:var(--rdp-nav-height);inset-inline-end:0;justify-content:center;position:absolute;top:0}.rdp-months{flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:-webkit-fit-content;max-width:fit-content;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{align-items:center;height:var(--rdp-nav-height);inset-block-start:0;inset-inline-end:0;position:absolute}.rdp-weekday{font-size:smaller;font-weight:500;opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);font-size:small;font-weight:400;height:var(--rdp-week_number-height);opacity:var(--rdp-week_number-opacity);text-align:var(--rdp-weeknumber-text-align);width:var(--rdp-week_number-width)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled{opacity:var(--rdp-disabled-opacity)}.rdp-hidden{color:var(--rdp-range_start-color);visibility:hidden}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:initial;border-radius:0;border-radius:initial;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{background-color:var(--rdp-range_end-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes rdp-slide_in_right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes rdp-slide_out_left{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translateX(0)}to{transform:translateX(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.admin-booking-layout{align-items:flex-start;display:flex;gap:2rem;justify-content:flex-start;position:relative}.admin-datepicker{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;max-width:800px;min-width:320px;position:relative;width:100%}.admin-datepicker>div{position:relative}.booking-range:not(.rdp-day_selected){border-radius:0}.booking-range.rdp-day_start,.booking-range:first-child{border-bottom-left-radius:8px;border-top-left-radius:8px}.booking-range.rdp-day_end,.booking-range:last-child{border-bottom-right-radius:8px;border-top-right-radius:8px}.rdp-nav{display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.rdp-nav_button{background:none;border:none;cursor:pointer;font-size:1.5rem}.rdp-caption{font-weight:700;text-align:center}.rdp-months{display:flex;flex-direction:row;flex-wrap:nowrap;gap:2rem;justify-content:center}.rdp-month{flex:0 0 auto}.admin-blocked{background-color:#d0e8ff;border:none;border-radius:0;box-shadow:none;color:#004080;position:relative;z-index:0}.available-day{background-color:#d4edda!important;border-radius:6px;color:#155724!important}.available-day:hover{background-color:#c3e6cb!important}.overlay-loader-admin{align-items:center;background:#ffffffbf;border-radius:12px;display:flex;inset:0;justify-content:center;position:absolute;z-index:10}.spinner-admin{animation:spin 1s linear infinite;border:4px solid #ccc;border-radius:50%;border-top-color:#07f;height:40px;width:40px}.error-message-admin{background:#ffecec;border:1px solid #ebccd1;border-radius:6px;color:#a94442;font-size:1rem;padding:1rem;text-align:center}.rdp-day_unavailable{background-color:#f8d7da!important;border-radius:6px;color:#721c24!important}.rdp-day_available{background-color:#d4edda!important;border-radius:6px;color:#155724!important;cursor:pointer}.rdp-day_half-morning{background:linear-gradient(0deg,#f8d7da 50%,#d4edda 0)!important;border-radius:6px}.rdp-day_half-afternoon{background:linear-gradient(180deg,#f8d7da 50%,#d4edda 0)!important;border-radius:6px}.admin-blocked{background-color:#d0e8ff!important;border-radius:6px;color:#004080!important}.rdp-day_past{background-color:#f0f0f0!important;color:#999!important;cursor:not-allowed}.admin-blocked:hover{border:none!important;box-shadow:0 0 5px #0040804d;cursor:pointer}.admin-blocked:hover,.rdp-day.admin-blocked:hover{background-color:#c0dcf7!important;color:#004080!important}.date-manager-wrapper{left:50%;max-width:500px;position:absolute;top:-70px;transform:translateX(-50%);width:90%;z-index:20}.date-manager-banner{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 12px #0000001a;display:flex;justify-content:space-between;padding:1rem 1.5rem;pointer-events:auto}.date-manager-info{color:#111827;font-size:.95rem;line-height:1.4}.date-manager-info p{margin:0}.date-manager-close{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;font-weight:700;transition:color .2s ease}.date-manager-close:hover{color:#111827}.booking-warning{background:#fff5f5;border-left:4px solid #e53935;border-radius:4px;color:#c62828;font-size:.95rem;margin-top:12px;padding:8px 12px}.booking-warning.not-confirmed{background:#fff6e5;border-left:4px solid #ff8c00;color:#b35c00}.booking-details{background:#f9f9f9;border-left:3px solid #d33;margin-top:.5rem;padding:.5rem .75rem}.booking-details.not-confirmed{background:#fff6e5;border-left:3px solid #ff8c00;color:#b35c00}.delete-booking-btn{background:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem 1rem}.confirmation-popup{background:#000000d9;border-radius:8px;color:#fff;left:0;padding:1.5rem;position:absolute;top:100%;width:100%;z-index:9999}.confirmation-buttons{display:flex;gap:1rem;margin-top:1rem}.confirm-yes{background:#c0392b}.confirm-no,.confirm-yes{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.confirm-no{background:#7f8c8d}.block-availability-btn{background-color:#07c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.5rem 1rem}.block-availability-btn:hover{background-color:#005fa3}.confirmation-popup.block-mode{border:2px solid #07c}.confirm-yes.block{background-color:#07c;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-right:1rem;padding:.5rem 1rem}.confirm-yes.block:hover{background-color:#005fa3}.unblock-availability-btn{background-color:#2e8b57;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:700;padding:8px 16px}.unblock-availability-btn:hover{background-color:#256d47}.confirmation-popup.unblock-mode{border-left:6px solid green}button.confirm-yes.unblock{background-color:green;color:#fff}.confirm-booking-btn{background:#b35c00;border:none;border-radius:5px;color:#fff;cursor:pointer;margin-left:1rem;margin-top:1rem;padding:.5rem 1rem}.confirmation-popup.confirm-booking-mode{border-left:6px solid #ff8c00}button.confirm-yes.confirm-booking{background-color:#b35c00;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-right:1rem;padding:.5rem 1rem}button.confirm-yes.confirm-booking:hover{background-color:#ff8c00}button.confirm-no.confirm-booking{background-color:#7f8c8d;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.booking-list-container{border-top:1px solid #ddd;margin-top:2rem;max-width:800px;padding-top:1rem;width:100%}.booking-list-container h3{font-size:1.25rem;margin-bottom:1rem;text-align:center}.booking-list{list-style:none;margin:0;padding:0}.booking-item{background:#fafafa;border:1px solid #ccc;border-radius:8px;cursor:pointer;margin-bottom:.75rem;padding:.75rem 1rem;position:relative;transition:background-color .2s ease,box-shadow .2s ease}.booking-item:hover{background-color:#f0f8ff;box-shadow:0 2px 5px #0000000d}.booking-summary{align-items:center;display:flex;flex-wrap:wrap;font-size:.95rem;gap:1rem}.booking-name{flex-shrink:0;font-weight:700;width:150px}.booking-date{color:#555;flex-shrink:0;width:120px}.booking-status{border-radius:4px;flex-shrink:0;font-size:.85rem;padding:.25rem .5rem;text-align:center;text-transform:capitalize;width:100px}.booking-status.confirmed{background-color:#d4edda;color:#155724}.booking-status.pending{background-color:#fff3cd;color:#856404}.booking-status.cancelled{background-color:#f8d7da;color:#721c24}.booking-details{border-top:1px solid #ddd;color:#333;font-size:.9rem;margin-top:.75rem;padding-top:.75rem}.booking-details p{margin:.25rem 0}.no-bookings{color:#666;font-style:italic;text-align:center}.booking-action-points{display:flex;flex-direction:column;gap:4px;margin-top:4px}.booking-action-point{align-items:center;background-color:#fff8e1;border-left:4px solid #f5a623;border-radius:6px;color:#6a4d00;display:flex;font-size:.9rem;gap:6px;padding:6px 10px}.booking-action-point .action-icon{color:#f5a623;flex-shrink:0}.booking-details .extra-info,.booking-details .lastminute-explanation{background-color:#fcfcfc;border-left:3px solid #e0e0e0;border-radius:4px;color:#666;font-size:.85rem;line-height:1.4;margin-left:1rem;margin-top:.25rem;padding-left:.75rem}.booking-details .extra-info+.extra-info,.booking-details .lastminute-explanation+.extra-info{margin-top:.5rem}.bookinglistupdate-modal-wrapper{align-items:center;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.bookinglistupdate-backdrop{background:#00000080;height:100%;left:0;position:absolute;top:0;width:100%}.bookinglistupdate-popup{background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;max-width:500px;padding:2rem;position:relative;width:90%;z-index:1001}.bookinglistupdate-buttons{display:flex;gap:1rem;margin-top:1.5rem}.bookinglistupdate-btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background .2s ease}.bookinglistupdate-confirm{background-color:#b35c00;color:#fff}.bookinglistupdate-confirm:hover{background-color:#a04f00}.bookinglistupdate-cancel{background-color:#777;color:#fff}.bookinglistupdate-cancel:hover{background-color:#666}.bookinglistupdate-loader{align-items:center;background:#ffffffb3;border-radius:10px;display:flex;inset:0;justify-content:center;position:absolute}.bookinglistupdate-spinner{animation:bookinglistupdate-spin .8s linear infinite;border:3px solid #ccc;border-radius:50%;border-top-color:#b35c00;height:24px;width:24px}@keyframes bookinglistupdate-spin{to{transform:rotate(1turn)}}@keyframes bookinglistupdate-fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.booking-list-spinner{align-items:center;display:flex;justify-content:center;padding:1rem}.bookinglistdelete-modal-wrapper{align-items:center;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.bookinglistdelete-backdrop{background:#00000080;height:100%;left:0;position:absolute;top:0;width:100%}.bookinglistdelete-popup{animation:bookinglistdelete-fadeIn .2s ease-in-out;background:#fff;border-radius:8px;box-shadow:0 5px 15px #0000004d;max-width:500px;padding:2rem;position:relative;width:90%;z-index:1001}.bookinglistdelete-buttons{display:flex;gap:1rem;margin-top:1.5rem}.bookinglistdelete-btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background .2s ease}.bookinglistdelete-confirm{background-color:#b30000;color:#fff}.bookinglistdelete-confirm:hover{background-color:#900}.bookinglistdelete-cancel{background-color:#777;color:#fff}.bookinglistdelete-cancel:hover{background-color:#666}.bookinglistdelete-loader{align-items:center;background:#ffffffb3;border-radius:10px;display:flex;inset:0;justify-content:center;position:absolute}.bookinglistdelete-spinner{animation:bookinglistdelete-spin .8s linear infinite;border:3px solid #ccc;border-radius:50%;border-top-color:#b30000;height:24px;width:24px}@keyframes bookinglistdelete-spin{to{transform:rotate(1turn)}}@keyframes bookinglistdelete-fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.booking-layout{align-items:flex-start;display:flex;gap:1rem;justify-content:center;margin:2rem auto;max-width:900px;padding:0 1rem}.datepicker{background-color:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;flex-shrink:0;max-width:700px;padding:1rem}.datepicker>div{flex:1 1;max-height:100%;min-width:300px}.datepicker p{font-weight:700;margin-bottom:.5rem;text-align:center}.day-button{background-color:#e0ffe0;border:none;border-radius:6px;cursor:pointer;padding:.5rem}.day-button.unavailable{background-color:#fdd;color:#888;text-decoration:line-through}.day-button.selected{background-color:#cce5ff;border:2px solid #07f}.customer-booking-wrapper{gap:1.5rem;margin:0 auto;max-width:1000px;padding:2rem}.calendar-with-modal,.customer-booking-wrapper{align-items:center;display:flex;flex-direction:column}.calendar-with-modal{background-color:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;gap:2rem;padding:1.5rem 2rem;width:100%}.rdp-day_unavailable:hover{background-color:#f5bcbc!important;box-shadow:0 0 6px #8b00004d}.rdp-day_available:hover{background-color:#b1dfbb!important;box-shadow:0 0 5px #28a74566;cursor:pointer}.rdp-day_between:hover{box-shadow:0 0 6px #0040804d;cursor:pointer}.rdp-day_between.rdp-day_available:hover,.rdp-day_between:hover{background-color:#b8daff!important}.rdp-day_between.rdp-day_available{background-color:#cce5ff!important;color:#004085!important}.rdp-day_arrival.rdp-day_available,.rdp-day_departure.rdp-day_available{background-color:#cce5ff!important;border:2px solid #07f;color:#004085!important}.calendar-container{flex-direction:column;position:relative;width:100%}.calendar-container,.overlay-loader-customer{align-items:center;display:flex;justify-content:center}.overlay-loader-customer{background:#ffffffbf;border-radius:12px;inset:0;position:absolute;z-index:10}.spinner-customer{animation:spin .7s linear infinite;border:4px solid #d1e8ff;border-radius:50%;border-top-color:#07f;height:36px;width:36px}.availability-error{background:#ffecec;border:1px solid #ebccd1;border-radius:6px;color:#a94442;font-size:1rem;padding:1rem;text-align:center}.rdp-day_half-morning{background:linear-gradient(180deg,#d4edda 50%,#f8d7da 0)}.rdp-day_half-afternoon{background:linear-gradient(180deg,#f8d7da 50%,#d4edda 0)}.range-confirmation-modal{animation:fadeInUp .3s ease-out forwards;background-color:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 4px 20px #0000001a;max-width:400px;padding:1.5rem;width:100%}.range-confirmation-modal h2{font-size:1.25rem;font-weight:600;margin-bottom:12px}.range-confirmation-modal p{line-height:1.4;margin-bottom:20px}.range-confirmation-modal button{border:none;border-radius:4px;cursor:pointer;font-weight:600;padding:8px 16px;transition:background-color .3s ease}.range-confirmation-modal button+button{margin-left:10px}.range-confirmation-modal button.confirm{background-color:#2563eb;color:#fff}.range-confirmation-modal button.confirm:hover{background-color:#1e40af}.range-confirmation-modal button.cancel{background-color:#e5e7eb;color:#333}.range-confirmation-modal button.cancel:hover{background-color:#d1d5db}.range-confirmation-modal button.edit{background-color:#f59e0b;color:#fff}.range-confirmation-modal button.edit:hover{background-color:#b45309}.range-confirmation-modal button.confirm:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.5}.range-confirmation-modal button.confirm:disabled:hover{background-color:#9ca3af}.close-button{background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;font-weight:700;line-height:1;position:absolute;right:12px;top:12px}.close-button:hover{color:#111827}.price-summary{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1rem;padding:1rem}.price-summary h3{font-size:1rem;font-weight:600;margin:0 0 .75rem}.price-summary-table{border-collapse:collapse;font-size:.9rem;width:100%}.price-summary-table td{padding:4px 0}.price-summary-table .price-amount{text-align:right;white-space:nowrap}.price-total-row td{border-top:1px solid #d1d5db;padding-top:8px}.price-waarborg-row td{color:#6b7280;font-size:.85rem;font-style:italic;padding-top:6px}.payment-note{color:#374151;font-size:.85rem;margin-bottom:0;margin-top:.75rem}.form-group{display:flex;flex-direction:column;margin-bottom:1rem}.form-group label{font-size:.9rem;font-weight:500;margin-bottom:.4rem}.form-group input,.form-group textarea{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:.95rem;padding:8px;resize:vertical;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb33;outline:none}.modal-form-buttons{display:flex;justify-content:space-between;margin-top:1rem}button.confirm{background-color:#2563eb;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}button.confirm:hover{background-color:#1e40af}button.confirm:disabled{cursor:not-allowed;opacity:.5}button.confirm:disabled,button.confirm:disabled:hover{background-color:#9ca3af}button.cancel{background-color:#e5e7eb;border:none;border-radius:4px;cursor:pointer;padding:8px 16px}button.cancel:hover{background-color:#d1d5db}.spinner{animation:spin .6s linear infinite;border:2px solid #fff6;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;margin-right:6px;vertical-align:middle;width:14px}@keyframes spin{to{transform:rotate(1turn)}}.warning-text{color:#b32600;font-size:.9rem;margin-top:4px}.booking-success{background:#e6ffed;border:1px solid #b7f0c0;border-radius:10px;box-shadow:0 4px 12px #00000014;margin-bottom:1rem;max-width:600px;padding:1.5rem;text-align:center;width:100%}.booking-success h2{color:#2d7a46;margin-bottom:.5rem}.booking-success p{color:#155724;margin:.4rem 0}.contact-overview{background:#f7fef9;border-radius:6px;margin-top:1rem;padding:.75rem;text-align:left}.contact-overview h4{color:#2d7a46;margin-top:0}.contact-overview p{margin:.2rem 0}.new-booking-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;margin-top:1rem;padding:.5rem 1.2rem}.new-booking-btn:hover{background:#218838}.fade-in-up{animation:fadeInUp .4s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.prijzen-section{margin:auto;max-width:900px;padding:2rem}.prijzen-info{background-color:#f9f9f9;border:1px solid #ddd;border-radius:10px;margin-bottom:2rem;padding:1.5rem}.prijzen-info p{line-height:1.6;margin-bottom:1rem}.prijzen-info ul{margin-top:.5rem;padding-left:1.2rem}.prijzen-info li{margin-bottom:.5rem}.prijzen-kalender{margin-top:2rem}.prijzen-tarieven{margin:2.5rem 0}.prijzen-tarieven h3{margin-bottom:1rem}.prijzen-tabel{border-collapse:collapse;max-width:600px;width:100%}.prijzen-tabel td,.prijzen-tabel th{border-bottom:1px solid #ddd;padding:.6rem .8rem;text-align:left}.prijzen-tabel th,.prijzen-tabel tr.highlight td{font-weight:600}.huisregels-section{background-color:#fff;color:#333;font-family:Segoe UI,sans-serif;margin:auto;max-width:900px;padding:2rem}.huisregels-section h2{font-size:2rem;margin-bottom:1rem;text-align:center}.huisregels-content p{line-height:1.6;margin-bottom:1rem}.huisregels-content ul{margin-bottom:1.5rem;padding-left:1.5rem}.huisregels-content li{line-height:1.5;margin-bottom:.5rem}.huisregels-content h3{color:#222;font-size:1.3rem;margin-top:2rem}.huisregels-content h3.red{color:#b30000;font-weight:700}.thanks{font-style:italic;font-weight:500;margin-top:2rem}