
/* Vicver Global — corporate public booking experience */
.vr-booking-layout{
 display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
 gap:24px;max-width:1440px;margin:28px auto;padding:26px;
 color:#41403f;font-family:Roboto,Arial,sans-serif;align-items:start;
 background:#f4f2ed;border:1px solid #e9e4d9;border-radius:20px;
 box-shadow:0 16px 48px rgba(24,23,20,.12);box-sizing:border-box
}
.vr-booking-left{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(170px,.75fr);gap:16px;align-items:start;min-width:0}
.vr-calendar-panel,.vr-time-panel,.vr-booking-form{
 position:relative;background:#fff;border:1px solid #e8e3d9;border-radius:14px;
 padding:22px;box-shadow:0 12px 36px rgba(44,40,31,.07);min-width:0;box-sizing:border-box
}
.vr-calendar-panel:before,.vr-time-panel:before,.vr-booking-form:before{
 content:"";position:absolute;top:0;left:20px;right:20px;height:3px;
 background:linear-gradient(90deg,#be9e44,#dfc77d);border-radius:0 0 4px 4px
}
.vr-calendar-heading{display:flex;align-items:center;justify-content:center;margin:0 0 20px}
.vr-calendar-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}
.vr-calendar-navigation strong{text-transform:capitalize;min-width:110px;text-align:center;font-size:15px;font-weight:700;color:#41403f;letter-spacing:.01em}
.vr-calendar-navigation button{width:34px;height:34px;border:1px solid #eee9df;border-radius:50%;background:#f7f5f0;color:#41403f;font-size:22px;line-height:1;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.vr-calendar-navigation button:hover:not(:disabled){background:#be9e44;border-color:#be9e44;color:#fff}
.vr-calendar-navigation button:focus-visible,.vr-calendar-day:focus-visible,.vr-time-slot:focus-visible,.vr-booking-form button:focus-visible{outline:3px solid rgba(190,158,68,.35);outline-offset:2px}
.vr-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.vr-calendar-weekday{text-align:center;color:#8b867b;font-size:11px;font-weight:700;padding:8px 0;text-transform:uppercase;letter-spacing:.06em}
.vr-calendar-day,.vr-calendar-empty{min-height:40px}
.vr-calendar-day{border:1px solid transparent;border-radius:50%;background:#fff;color:#41403f;font:inherit;font-size:13px;cursor:pointer;padding:0;transition:all .16s ease}
.vr-calendar-day:hover:not(:disabled){border-color:#be9e44;background:#fbf8ef;color:#80651e}
.vr-calendar-day.is-today{border-color:#be9e44}
.vr-calendar-day.is-selected{background:#be9e44;border-color:#be9e44;color:#fff;font-weight:700;box-shadow:0 4px 10px rgba(190,158,68,.25)}
.vr-calendar-day:disabled{opacity:.25;cursor:not-allowed}
.vr-calendar-help{margin:16px 0 0;color:#898477;font-size:11px;line-height:1.5}
.vr-time-panel h3{font-size:15px;margin:2px 0 15px;color:#41403f;font-weight:700}
.vr-time-placeholder,.vr-time-loading,.vr-time-empty{font-size:12px;color:#777267;line-height:1.55;margin:0}
.vr-time-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:420px;overflow:auto;padding:1px}
.vr-time-slot{border:1px solid #e8e2d6;background:#fff;border-radius:7px;padding:9px 5px;color:#41403f;font-size:12px;font-weight:600;cursor:pointer;transition:all .16s ease}
.vr-time-slot:hover{border-color:#be9e44;background:#fbf8ef;color:#80651e}
.vr-time-slot.is-selected{background:#be9e44;border-color:#be9e44;color:#fff;font-weight:700;box-shadow:0 3px 9px rgba(190,158,68,.2)}
.vr-booking-form{margin:0;max-width:none;padding:28px}
.vr-booking-form h2{margin:0 0 7px;color:#41403f;font-size:25px;line-height:1.2;font-weight:700;letter-spacing:-.02em}
.vr-booking-form>p{margin:0 0 22px;color:#817c72;font-size:13px;line-height:1.5}
.vr-booking-form label{display:block;margin:0 0 15px;font-weight:600;font-size:12px;color:#514d45}
.vr-booking-form input,.vr-booking-form select,.vr-booking-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:11px 12px;border:1px solid #ded9cf;border-radius:8px;font:inherit;font-size:13px;background:#fff;color:#41403f;min-height:42px;transition:border-color .16s,box-shadow .16s}
.vr-booking-form input:focus,.vr-booking-form select:focus,.vr-booking-form textarea:focus{outline:none;border-color:#be9e44;box-shadow:0 0 0 3px rgba(190,158,68,.13)}
.vr-booking-form input[readonly]{background:#f7f6f2;cursor:default}
.vr-form-date-time{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vr-booking-form button[type=submit]{background:#be9e44;color:#fff;border:1px solid #b49339;border-radius:8px;padding:13px 22px;font-weight:700;font-size:14px;cursor:pointer;width:100%;margin-top:7px;box-shadow:0 5px 12px rgba(190,158,68,.2);transition:background .18s,transform .18s,box-shadow .18s}
.vr-booking-form button[type=submit]:hover{background:#a98a34;transform:translateY(-1px);box-shadow:0 7px 16px rgba(190,158,68,.25)}
.vr-booking-form small{display:block;margin-top:13px;color:#898477;line-height:1.5;font-size:11px}
.vr-notice{max-width:1388px;margin:18px auto;padding:16px 18px;border:1px solid #e7d8aa;border-left:4px solid #be9e44;border-radius:9px;background:#fbf8ef;color:#41403f;font-family:Roboto,Arial,sans-serif}
@media(max-width:1120px){.vr-booking-layout{grid-template-columns:1fr;padding:20px}.vr-booking-left{grid-template-columns:minmax(0,1.2fr) minmax(190px,.8fr)}}
@media(max-width:680px){.vr-booking-layout{display:flex;flex-direction:column;gap:14px;margin:12px auto;padding:12px;border-radius:14px}.vr-booking-left{width:100%;grid-template-columns:minmax(0,1fr);gap:12px}.vr-calendar-panel,.vr-time-panel,.vr-booking-form{width:100%;padding:17px}.vr-calendar-day,.vr-calendar-empty{min-height:38px}.vr-time-slots{grid-template-columns:repeat(2,minmax(0,1fr));max-height:300px}.vr-form-date-time{gap:8px}.vr-booking-form h2{font-size:22px}}
