.AccommodationDetailPage-module__j1_CHG__pageRoot{gap:var(--detail-gap-sm);display:grid}.AccommodationDetailPage-module__j1_CHG__breadcrumb{color:var(--text-muted);font-size:var(--font-sm)}.AccommodationDetailPage-module__j1_CHG__pageHeader{gap:var(--detail-gap-xs);display:grid}.AccommodationDetailPage-module__j1_CHG__pageHeaderTop{justify-content:space-between;align-items:center;gap:var(--detail-gap-xs);display:flex}.AccommodationDetailPage-module__j1_CHG__pageHeader h1{margin:0}.AccommodationDetailPage-module__j1_CHG__pageFavorite{flex-shrink:0}.AccommodationDetailPage-module__j1_CHG__pageHeader p{color:var(--text-muted);margin:0}.AccommodationDetailPage-module__j1_CHG__layout{grid-template-columns:minmax(0,1fr)minmax(var(--detail-aside-min),var(--detail-aside-ratio));gap:var(--detail-gap-sm);align-items:start;display:grid}.AccommodationDetailPage-module__j1_CHG__mainColumn,.AccommodationDetailPage-module__j1_CHG__sideColumn{gap:var(--detail-gap-sm);min-width:0;display:grid}.AccommodationDetailPage-module__j1_CHG__sideColumn{top:var(--detail-aside-top);max-height:var(--detail-aside-max-height);scrollbar-gutter:stable;align-self:start;padding-right:2px;position:sticky;overflow:hidden auto}.AccommodationDetailPage-module__j1_CHG__heroImage{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;height:min(40vh,360px)}.AccommodationDetailPage-module__j1_CHG__paragraph{color:var(--text-muted);margin:0}.AccommodationDetailPage-module__j1_CHG__metaGrid{gap:var(--detail-gap-xs)var(--detail-gap-sm);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.AccommodationDetailPage-module__j1_CHG__metaGrid p{font-size:var(--font-sm);gap:2px;margin:0;display:grid}.AccommodationDetailPage-module__j1_CHG__metaGrid span{color:var(--text-muted);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.03em}.AccommodationDetailPage-module__j1_CHG__coordinateLink{color:var(--primary);border-bottom:1px dashed color-mix(in srgb,var(--primary)60%,transparent);width:fit-content;font-weight:600;text-decoration:none}.AccommodationDetailPage-module__j1_CHG__coordinateLink:hover{color:color-mix(in srgb,var(--primary)82%,white 18%)}.AccommodationDetailPage-module__j1_CHG__galleryGrid{gap:var(--detail-gap-xs);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.AccommodationDetailPage-module__j1_CHG__galleryCard{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.AccommodationDetailPage-module__j1_CHG__galleryImage{object-fit:cover;width:100%;height:150px;display:block}.AccommodationDetailPage-module__j1_CHG__galleryBody{gap:4px;padding:10px;display:grid}.AccommodationDetailPage-module__j1_CHG__galleryTitle{font-size:var(--font-sm);margin:0;font-weight:700}.AccommodationDetailPage-module__j1_CHG__galleryDoc{font-size:var(--font-xs);color:var(--text-muted);margin:0}.AccommodationDetailPage-module__j1_CHG__chipRow{flex-wrap:wrap;gap:6px;display:flex}.AccommodationDetailPage-module__j1_CHG__chip{border:1px solid color-mix(in srgb,var(--border)80%,transparent);background:color-mix(in srgb,var(--surface-2)58%,transparent);min-height:24px;color:var(--text-muted);font-size:var(--font-xs);border-radius:999px;align-items:center;padding:0 8px;display:inline-flex}.AccommodationDetailPage-module__j1_CHG__policyList{gap:6px;margin:0;padding-left:18px;display:grid}.AccommodationDetailPage-module__j1_CHG__modeSwitch{gap:8px;margin-bottom:8px;display:inline-flex}.AccommodationDetailPage-module__j1_CHG__vacancyList{gap:8px;display:grid}.AccommodationDetailPage-module__j1_CHG__vacancyListScrollable{gap:8px;max-height:420px;padding-right:4px;display:grid;overflow:hidden auto}.AccommodationDetailPage-module__j1_CHG__vacancyLink{color:inherit;text-decoration:none}.AccommodationDetailPage-module__j1_CHG__vacancyRow{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(220px,36%);align-items:center;gap:10px;padding:10px;transition:border-color .14s,transform .14s;display:grid;overflow:hidden}.AccommodationDetailPage-module__j1_CHG__vacancyLink:hover .AccommodationDetailPage-module__j1_CHG__vacancyRow{border-color:color-mix(in srgb,var(--primary)40%,var(--border)60%);transform:translateY(-1px)}.AccommodationDetailPage-module__j1_CHG__vacancyLinkActive .AccommodationDetailPage-module__j1_CHG__vacancyRow{border-color:color-mix(in srgb,var(--primary)70%,var(--border)30%);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary)24%,transparent)}.AccommodationDetailPage-module__j1_CHG__vacancyInfo{gap:4px;display:grid}.AccommodationDetailPage-module__j1_CHG__vacancyId{font-size:var(--font-xs);color:var(--text-muted);letter-spacing:.03em;margin:0}.AccommodationDetailPage-module__j1_CHG__vacancyInfo h3{font-size:var(--font-md);margin:0}.AccommodationDetailPage-module__j1_CHG__vacancyMeta{color:var(--text-muted);font-size:var(--font-sm);margin:0}.AccommodationDetailPage-module__j1_CHG__vacancySide{justify-items:end;gap:6px;min-width:0;display:grid}.AccommodationDetailPage-module__j1_CHG__vacancySide .badge{max-width:100%}.AccommodationDetailPage-module__j1_CHG__vacancySide strong{font-size:var(--font-sm)}.AccommodationDetailPage-module__j1_CHG__vacancyOpenHint{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--primary);font-weight:700}.AccommodationDetailPage-module__j1_CHG__summaryBlock{gap:6px;display:grid}.AccommodationDetailPage-module__j1_CHG__summaryBlock p{font-size:var(--font-sm);justify-content:space-between;gap:8px;margin:0;display:flex}.AccommodationDetailPage-module__j1_CHG__summaryBlock span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:var(--font-xs)}.AccommodationDetailPage-module__j1_CHG__actionStack{gap:8px;margin-top:8px;display:grid}.AccommodationDetailPage-module__j1_CHG__statusBanner,.AccommodationDetailPage-module__j1_CHG__errorBanner{border-radius:var(--radius-sm);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)54%,transparent);padding:12px}.AccommodationDetailPage-module__j1_CHG__errorBanner{border-color:color-mix(in srgb,var(--danger)42%,var(--border)58%);background:color-mix(in srgb,var(--danger)10%,var(--surface)90%)}.AccommodationDetailPage-module__j1_CHG__bookingPlanner,.AccommodationDetailPage-module__j1_CHG__bookingPlannerCompact{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)48%,transparent);border-radius:18px;gap:10px;padding:12px;display:grid}.AccommodationDetailPage-module__j1_CHG__bookingPlannerHeader{gap:10px;display:grid}.AccommodationDetailPage-module__j1_CHG__bookingStatusRow{gap:6px;display:grid}.AccommodationDetailPage-module__j1_CHG__bookingPlannerEyebrow,.AccommodationDetailPage-module__j1_CHG__bookingPlannerHint{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0}.AccommodationDetailPage-module__j1_CHG__bookingPlannerTitle{font-size:var(--font-md);margin:0}.AccommodationDetailPage-module__j1_CHG__bookingPlannerText{color:var(--text-muted);font-size:var(--font-sm);margin:0}.AccommodationDetailPage-module__j1_CHG__bookingRangeSummary,.AccommodationDetailPage-module__j1_CHG__bookingMetaRow{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;display:grid}.AccommodationDetailPage-module__j1_CHG__bookingRangePicker{isolation:isolate;gap:10px;display:grid;position:relative}.AccommodationDetailPage-module__j1_CHG__bookingRangeCell,.AccommodationDetailPage-module__j1_CHG__bookingQuoteCard,.AccommodationDetailPage-module__j1_CHG__bookingInputGroup{border:1px solid var(--border);background:var(--surface);border-radius:14px;align-content:start;gap:3px;min-height:78px;padding:8px 10px;display:grid}.AccommodationDetailPage-module__j1_CHG__bookingRangeCell{text-align:left;width:100%;color:inherit;cursor:pointer;transition:border-color .14s,background-color .14s,transform .14s,box-shadow .14s}.AccommodationDetailPage-module__j1_CHG__bookingRangeCell:hover{border-color:color-mix(in srgb,var(--primary)34%,var(--border)66%);background:color-mix(in srgb,var(--primary)5%,var(--surface)95%);transform:translateY(-1px)}.AccommodationDetailPage-module__j1_CHG__bookingRangeCellActive{border-color:color-mix(in srgb,var(--primary)70%,var(--border)30%);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary)16%,transparent);background:color-mix(in srgb,var(--primary)7%,var(--surface)93%)}.AccommodationDetailPage-module__j1_CHG__bookingRangeCellPlaceholder{color:color-mix(in srgb,var(--text-muted)72%,var(--text-strong)28%)}.AccommodationDetailPage-module__j1_CHG__bookingRangeCellHint{font-size:var(--font-xs);color:var(--text-muted)}.AccommodationDetailPage-module__j1_CHG__bookingRangeCell span,.AccommodationDetailPage-module__j1_CHG__bookingQuoteCard span,.AccommodationDetailPage-module__j1_CHG__bookingInputGroup span{font-size:var(--font-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.AccommodationDetailPage-module__j1_CHG__bookingRangeCell strong,.AccommodationDetailPage-module__j1_CHG__bookingQuoteCard strong{font-size:var(--font-sm);line-height:1.2}.AccommodationDetailPage-module__j1_CHG__bookingQuoteMeta{gap:2px;display:grid}.AccommodationDetailPage-module__j1_CHG__bookingQuoteMeta span{font-size:var(--font-xs);color:var(--text-muted);text-transform:none;letter-spacing:0}.AccommodationDetailPage-module__j1_CHG__bookingNumberInput{border-radius:var(--radius-xs);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)55%,transparent);width:100%;min-height:32px;color:inherit;padding:0 8px}.AccommodationDetailPage-module__j1_CHG__calendarPopoverShell{z-index:96;pointer-events:none}.AccommodationDetailPage-module__j1_CHG__calendarPopover{pointer-events:auto;border:1px solid color-mix(in srgb,var(--primary)18%,var(--border)82%);background:linear-gradient(180deg,color-mix(in srgb,var(--surface)98%,var(--primary)2%),color-mix(in srgb,var(--surface)94%,var(--surface-2)6%));box-shadow:0 28px 60px #0003,0 10px 24px color-mix(in srgb,var(--primary)8%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform-origin:top;border-radius:16px;gap:10px;padding:12px;display:grid;overflow:auto}.AccommodationDetailPage-module__j1_CHG__calendarPopoverHeader{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.AccommodationDetailPage-module__j1_CHG__calendarPopoverText{color:var(--text-muted);font-size:var(--font-xs);max-width:24ch;margin:0}.AccommodationDetailPage-module__j1_CHG__calendarNavCluster{align-items:center;gap:8px;display:inline-flex}.AccommodationDetailPage-module__j1_CHG__calendarNav{gap:6px;display:inline-flex}.AccommodationDetailPage-module__j1_CHG__calendarNavButton{border:1px solid var(--border);background:color-mix(in srgb,var(--surface)82%,var(--surface-2)18%);min-height:34px;color:inherit;cursor:pointer;border-radius:999px;padding:0 11px;transition:border-color .14s,background-color .14s,transform .14s}.AccommodationDetailPage-module__j1_CHG__calendarNavButton:hover{border-color:color-mix(in srgb,var(--primary)30%,var(--border)70%);background:color-mix(in srgb,var(--primary)6%,var(--surface)94%);transform:translateY(-1px)}.AccommodationDetailPage-module__j1_CHG__calendarCloseButton{border:1px solid color-mix(in srgb,var(--primary)34%,var(--border)66%);background:color-mix(in srgb,var(--primary)9%,var(--surface)91%);min-height:34px;color:inherit;cursor:pointer;border-radius:999px;padding:0 13px;transition:border-color .14s,background-color .14s,transform .14s}.AccommodationDetailPage-module__j1_CHG__calendarCloseButton:hover{border-color:color-mix(in srgb,var(--primary)48%,var(--border)52%);background:color-mix(in srgb,var(--primary)14%,var(--surface)86%);transform:translateY(-1px)}.AccommodationDetailPage-module__j1_CHG__calendarGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.AccommodationDetailPage-module__j1_CHG__calendarMonth{gap:6px;display:grid}.AccommodationDetailPage-module__j1_CHG__calendarMonthHeader{letter-spacing:.01em;justify-content:space-between;align-items:center;gap:8px;font-weight:700;display:flex}.AccommodationDetailPage-module__j1_CHG__calendarWeekdays,.AccommodationDetailPage-module__j1_CHG__calendarCells{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.AccommodationDetailPage-module__j1_CHG__calendarWeekdays span{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;padding-bottom:2px;font-size:10px}.AccommodationDetailPage-module__j1_CHG__calendarCellEmpty{min-height:32px}.AccommodationDetailPage-module__j1_CHG__calendarDay{min-height:32px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;transition:background-color .12s,transform .12s,box-shadow .12s,opacity .12s,color .12s}.AccommodationDetailPage-module__j1_CHG__calendarDay:hover:not(:disabled){background:color-mix(in srgb,var(--primary)10%,var(--surface)90%);box-shadow:0 4px 14px color-mix(in srgb,var(--primary)10%,transparent);transform:translateY(-1px)}.AccommodationDetailPage-module__j1_CHG__calendarDayDisabled{opacity:.3;cursor:not-allowed;box-shadow:none;filter:saturate(.6);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb,var(--text-muted)28%,transparent);text-decoration-color:color-mix(in srgb,var(--text-muted)28%,transparent);background:0 0}.AccommodationDetailPage-module__j1_CHG__calendarDayInRange{background:color-mix(in srgb,var(--primary)14%,var(--surface)86%);color:color-mix(in srgb,var(--text)84%,var(--primary)16%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary)8%,transparent)}.AccommodationDetailPage-module__j1_CHG__calendarDayStart,.AccommodationDetailPage-module__j1_CHG__calendarDayEnd{background:linear-gradient(180deg,color-mix(in srgb,var(--primary)88%,white 12%),color-mix(in srgb,var(--primary)76%,black 24%));color:#fff;box-shadow:0 10px 22px color-mix(in srgb,var(--primary)20%,transparent),inset 0 0 0 1px #ffffff2e;transform:translateY(-1px)}.AccommodationDetailPage-module__j1_CHG__bookingPlannerFooter{gap:8px;display:grid}.AccommodationDetailPage-module__j1_CHG__bookingConstraintRow{flex-wrap:wrap;gap:6px;display:flex}.AccommodationDetailPage-module__j1_CHG__bookingConstraintPill{border:1px solid color-mix(in srgb,var(--border)78%,transparent);background:color-mix(in srgb,var(--surface)78%,var(--surface-2)22%);min-height:24px;color:var(--text-muted);font-size:var(--font-xs);letter-spacing:.02em;border-radius:999px;align-items:center;padding:0 8px;display:inline-flex}.AccommodationDetailPage-module__j1_CHG__bookingPlannerConstraint{color:color-mix(in srgb,var(--danger)82%,white 18%);font-size:var(--font-sm);margin:0;font-weight:600}@media (max-width:720px){.AccommodationDetailPage-module__j1_CHG__calendarPopoverHeader{flex-direction:column;align-items:stretch}.AccommodationDetailPage-module__j1_CHG__calendarNavCluster{flex-wrap:wrap;justify-content:space-between}.AccommodationDetailPage-module__j1_CHG__calendarNav{justify-content:space-between}.AccommodationDetailPage-module__j1_CHG__calendarPopoverShell{pointer-events:auto}.AccommodationDetailPage-module__j1_CHG__calendarGrid{grid-template-columns:1fr}.AccommodationDetailPage-module__j1_CHG__calendarPopoverText{max-width:none}}.AccommodationDetailPage-module__j1_CHG__mealModeRow,.AccommodationDetailPage-module__j1_CHG__extraOptionsRow{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.AccommodationDetailPage-module__j1_CHG__preferenceChip{border-radius:var(--radius-sm);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-2)52%,transparent);min-height:40px;color:inherit;justify-content:space-between;align-items:center;gap:10px;padding:0 10px;text-decoration:none;transition:border-color .14s,background-color .14s;display:flex}.AccommodationDetailPage-module__j1_CHG__preferenceChip:hover{border-color:color-mix(in srgb,var(--primary)36%,var(--border)64%)}.AccommodationDetailPage-module__j1_CHG__preferenceChip span{font-size:var(--font-sm)}.AccommodationDetailPage-module__j1_CHG__preferenceChip strong{font-size:var(--font-xs);color:var(--text-muted)}.AccommodationDetailPage-module__j1_CHG__preferenceChipActive{border-color:color-mix(in srgb,var(--primary)68%,var(--border)32%);background:color-mix(in srgb,var(--primary)14%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary)28%,transparent)}@media (max-width:1160px){.AccommodationDetailPage-module__j1_CHG__layout{grid-template-columns:minmax(0,1fr)}.AccommodationDetailPage-module__j1_CHG__sideColumn{max-height:none;padding-right:0;position:static;top:auto;overflow:visible}.AccommodationDetailPage-module__j1_CHG__vacancyRow{grid-template-columns:minmax(0,1fr)}.AccommodationDetailPage-module__j1_CHG__vacancySide{justify-items:start}}@media (max-width:760px){.AccommodationDetailPage-module__j1_CHG__vacancyRow{grid-template-columns:minmax(0,1fr)}.AccommodationDetailPage-module__j1_CHG__vacancySide{justify-items:start}.AccommodationDetailPage-module__j1_CHG__calendarGrid{grid-template-columns:minmax(0,1fr)}}
