.apq-widget{--apq-max-width:1120px;--apq-radius:18px;--apq-day-height:48px;--apq-modal-width:980px;--apq-free:#8FB99A;--apq-partial:#C69A72;--apq-full:#B56E68;--apq-unknown:#A7ADA5;--apq-accent:#314A34;--apq-text:#20251F;--apq-border:#D9D8CF;max-width:var(--apq-max-width);margin:24px auto;color:var(--apq-text);font-family:inherit;box-sizing:border-box}
.apq-widget *{box-sizing:border-box}
.apq-admin-note{margin-bottom:12px;padding:11px 14px;border:1px solid #e6c368;background:#fff8df;border-radius:10px;font-size:14px}
.apq-main-card,.apq-form-panel,.apq-success-panel{background:#FFFDF9;border:1px solid var(--apq-border);border-radius:var(--apq-radius);box-shadow:0 10px 35px rgba(30,40,50,.08)}
.apq-main-card{padding:22px}.apq-main-title{margin:0 0 17px;font-size:clamp(22px,3vw,34px);line-height:1.15}
.apq-booking-row{display:grid;grid-template-columns:1.35fr 1fr 1.2fr auto;gap:10px;align-items:stretch}
.apq-field-button,.apq-submit-step{min-height:72px;border-radius:14px;font:inherit}
.apq-field-button{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--apq-border);background:#FFFDF9;padding:12px 14px;cursor:pointer;transition:.15s ease}
.apq-field-button:hover,.apq-field-button:focus-visible{border-color:var(--apq-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--apq-accent) 15%,transparent);outline:0}
.apq-field-icon{font-size:23px;line-height:1}.apq-field-copy{display:flex;flex-direction:column;min-width:0}.apq-field-copy small{font-size:14px;color:#60695F;margin-bottom:3px}.apq-field-copy strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.apq-submit-step,.apq-primary-button{border:0;background:var(--apq-accent);color:#fff;font-weight:700;cursor:pointer;transition:.15s ease}
.apq-submit-step{padding:0 26px}.apq-submit-step:hover:not(:disabled),.apq-primary-button:hover:not(:disabled){filter:brightness(.95);transform:translateY(-1px)}
.apq-submit-step:disabled,.apq-primary-button:disabled{opacity:.45;cursor:not-allowed;transform:none}
.apq-main-status{min-height:0;margin-top:12px;font-size:14px}.apq-main-status:empty{display:none}.apq-main-status.is-warning,.apq-main-status.is-error{padding:10px 12px;border-radius:10px}.apq-main-status.is-warning{background:#fff7df;border:1px solid #ead18b}.apq-main-status.is-error{background:#fff0ef;border:1px solid #e8b1ad}
.apq-form-panel{margin-top:18px;padding:22px;scroll-margin-top:30px}.apq-form-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.apq-form-heading-copy{flex:1;min-width:0}.apq-form-heading h3{margin:0 0 12px;font-size:24px}.apq-link-button{border:0;background:none;color:var(--apq-accent);font:inherit;font-weight:700;cursor:pointer;padding:6px}
.apq-form-missing{padding:15px;border-radius:10px;background:#fff7df;border:1px solid #ead18b}
.apq-success-panel{margin-top:18px;padding:22px;display:flex;gap:16px;align-items:flex-start;scroll-margin-top:30px}.apq-success-panel[hidden]{display:none}.apq-success-copy{flex:1;min-width:0}.apq-success-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#dff4d9;color:#297d20;font-size:27px;font-weight:800;flex:0 0 auto}.apq-success-panel h3{margin:0 0 7px;font-size:24px}.apq-success-panel p{margin:0 0 10px}.apq-success-summary{margin-top:12px}
body.apq-modal-open{overflow:hidden}.apq-modal[hidden]{display:none}.apq-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px}.apq-modal-backdrop{position:absolute;inset:0;background:rgba(18,24,30,.62);backdrop-filter:blur(2px)}
.apq-modal-dialog{position:relative;z-index:1;width:min(100%,var(--apq-modal-width));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:var(--apq-radius);box-shadow:0 24px 70px rgba(0,0,0,.28);padding:22px}.apq-small-dialog{width:min(100%,520px)}.apq-apartment-dialog{width:min(100%,760px)}
.apq-modal-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.apq-modal-header h3{margin:0 0 5px;font-size:24px}.apq-modal-header p{margin:0;color:#687078}.apq-modal-close{width:40px;height:40px;border:1px solid var(--apq-border);border-radius:50%;background:#fff;font-size:28px;line-height:1;cursor:pointer;flex:0 0 auto}
.apq-calendar-nav{display:flex;justify-content:flex-end;gap:8px;margin:-2px 0 12px}.apq-calendar-nav button{width:40px;height:40px;border:1px solid var(--apq-border);border-radius:50%;background:#fff;font-size:26px;cursor:pointer}.apq-calendar-nav button:disabled{opacity:.35;cursor:not-allowed}
.apq-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.apq-month h4{text-align:center;margin:0 0 12px;font-size:18px;text-transform:lowercase}.apq-weekdays,.apq-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.apq-weekdays{margin-bottom:6px}.apq-weekdays span{text-align:center;color:#7b8289;font-size:14px;font-weight:700;padding:3px 0}
.apq-day,.apq-day-empty{min-width:0;height:var(--apq-day-height);border-radius:9px}.apq-day{position:relative;border:0;background:var(--apq-right);color:#fff;font:inherit;font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.35);cursor:pointer;overflow:hidden;transition:.12s ease}.apq-day-split{background:linear-gradient(135deg,var(--apq-left) 0 48.5%,rgba(255,255,255,.9) 49%,rgba(255,255,255,.9) 51%,var(--apq-right) 51.5% 100%)}.apq-day:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px rgba(20,30,40,.2)}.apq-day:disabled{opacity:.38;cursor:default}.apq-day:focus-visible{outline:3px solid var(--apq-text);outline-offset:2px}.apq-day.apq-today:after{content:"";position:absolute;inset:3px;border:2px solid rgba(255,255,255,.95);border-radius:7px}.apq-day.apq-in-range{box-shadow:inset 0 0 0 2px rgba(34,34,34,.55)}.apq-day.apq-selected{box-shadow:inset 0 0 0 3px #222,0 3px 8px rgba(20,30,40,.2)}
.apq-calendar-selection{margin-top:16px;padding:11px 13px;border-radius:10px;background:#f4f6f7;font-size:14px}.apq-legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:15px;padding-top:15px;border-top:1px solid var(--apq-border);font-size:13px}.apq-legend span{display:inline-flex;align-items:center;gap:7px}.apq-legend i{width:15px;height:15px;border-radius:4px}.apq-legend .free{background:var(--apq-free)}.apq-legend .partial{background:var(--apq-partial)}.apq-legend .full{background:var(--apq-full)}.apq-legend .unknown{background:var(--apq-unknown)}.apq-footnote{margin:10px 0 0;color:#777f86;font-size:14px}
.apq-modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.apq-primary-button,.apq-secondary-button{min-height:44px;padding:0 20px;border-radius:11px;font:inherit;font-weight:700}.apq-secondary-button{border:1px solid var(--apq-border);background:#fff;cursor:pointer}
.apq-counter-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--apq-border)}.apq-counter-row strong,.apq-counter-row small{display:block}.apq-counter-row small{margin-top:3px;color:#7c838a}.apq-counter{display:flex;align-items:center;gap:12px}.apq-counter button{width:38px;height:38px;border-radius:50%;border:1px solid var(--apq-border);background:#fff;font-size:24px;cursor:pointer}.apq-counter output{min-width:28px;text-align:center;font-size:18px;font-weight:800}
.apq-apartment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.apq-apartment-option{display:flex;flex-direction:column;gap:6px;text-align:left;border:2px solid var(--apq-border);border-radius:14px;background:#fff;padding:16px;cursor:pointer;font:inherit}.apq-apartment-option strong{font-size:19px}.apq-apartment-option span{color:#616970}.apq-apartment-option small{color:#777f86}.apq-apartment-option em{font-style:normal;font-size:13px;font-weight:700;margin-top:4px}.apq-apartment-option.is-selected{border-color:var(--apq-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--apq-accent) 15%,transparent)}.apq-apartment-option.apq-availability-free em{color:#287622}.apq-apartment-option.apq-availability-unknown em{color:#9a6600}.apq-apartment-option.apq-availability-occupied em{color:#a02b25}.apq-apartment-option-both{grid-column:1/-1;background:#fafbfc}.apq-apartment-option:disabled{opacity:.55;cursor:not-allowed}
.apq-selection-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--apq-border);border-radius:12px;background:#f7f8f9;overflow:hidden;max-width:720px}.apq-selection-summary-row{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(0,1.4fr);gap:10px;padding:9px 12px;border-bottom:1px solid var(--apq-border)}.apq-selection-summary-row:nth-last-child(-n+2){border-bottom:0}.apq-selection-summary-row:nth-child(odd){border-right:1px solid var(--apq-border)}.apq-selection-summary-row:last-child{grid-column:1/-1;border-right:0;border-top:1px solid var(--apq-border)}.apq-selection-summary-row span{color:#697178;font-size:13px}.apq-selection-summary-row strong{color:var(--apq-text);font-size:14px;overflow-wrap:anywhere}
.apq-cf7-wrap .wpcf7-form{margin:0}.apq-cf7-wrap input[type=text],.apq-cf7-wrap input[type=email],.apq-cf7-wrap input[type=tel],.apq-cf7-wrap textarea,.apq-cf7-wrap select{width:100%;border:1px solid var(--apq-border);border-radius:10px;padding:11px 12px;font:inherit}.apq-cf7-wrap textarea{min-height:120px}.apq-cf7-wrap input[type=submit]{border:0;border-radius:11px;background:var(--apq-accent);color:#fff;padding:13px 22px;font:inherit;font-weight:700;cursor:pointer}.apq-cf7-wrap input[type=submit]:disabled{opacity:.55}.apq-cf7-wrap .wpcf7-response-output{margin:14px 0 0!important;border-radius:10px}.apq-cf7-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.apq-cf7-grid label{display:block}.apq-cf7-full{grid-column:1/-1}
@media(max-width:900px){.apq-booking-row{grid-template-columns:1fr 1fr}.apq-submit-step{min-height:58px}.apq-field-button{min-height:68px}.apq-months{gap:18px}}
@media(max-width:720px){.apq-widget{margin:16px auto}.apq-main-card,.apq-form-panel,.apq-success-panel{border-radius:14px}.apq-main-card,.apq-form-panel{padding:16px}.apq-booking-row{grid-template-columns:1fr}.apq-field-button{min-height:64px}.apq-submit-step{min-height:52px}.apq-modal{padding:0}.apq-modal-dialog{width:100%;height:100%;max-height:none;border-radius:0;padding:16px}.apq-small-dialog,.apq-apartment-dialog{width:100%}.apq-months{grid-template-columns:1fr}.apq-day,.apq-day-empty{height:44px}.apq-apartment-options{grid-template-columns:1fr}.apq-modal-footer{position:sticky;bottom:-16px;background:#fff;padding:12px 0 16px}.apq-form-heading{flex-direction:column}.apq-selection-summary{grid-template-columns:1fr;width:100%}.apq-selection-summary-row,.apq-selection-summary-row:nth-child(odd),.apq-selection-summary-row:last-child{grid-column:auto;border-right:0;border-top:0;border-bottom:1px solid var(--apq-border)}.apq-selection-summary-row:last-child{border-bottom:0}.apq-cf7-grid{grid-template-columns:1fr}.apq-cf7-full{grid-column:auto}.apq-success-panel{padding:16px}}
@supports not (color:color-mix(in srgb,#000 50%,#fff)){.apq-field-button:hover,.apq-field-button:focus-visible,.apq-apartment-option.is-selected{box-shadow:0 0 0 3px rgba(49,74,52,.15)}}
