.region input,.seg-opt input,.nights-opt input{position:absolute;opacity:0;inline-size:1px;block-size:1px;margin:0;pointer-events:none}.region:has(input:focus-visible),.seg-opt:has(input:focus-visible),.nights-opt:has(input:focus-visible){outline:var(--focus-ring);outline-offset:2px}.region-scroll{max-block-size:min(62vh,30rem,calc(100dvh - 14rem));overflow-y:auto;overscroll-behavior:contain;margin-inline-end:-0.5rem;padding-inline-end:0.5rem;display:grid;gap:var(--space-3)}.region-cont-title{margin:0 0 0.4rem;font-size:var(--text-sm);font-weight:650;color:var(--text-muted)}.region-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:var(--space-2)}.region{position:relative;display:grid;gap:0.15rem;padding:0.7rem 0.85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.region:hover{border-color:var(--border-strong);background:var(--bg-elevated)}.region-name{font-weight:650;font-family:var(--font-display)}.region-blurb{font-size:var(--text-sm);color:var(--text-muted);line-height:1.35}.region:has(input:checked){border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-elevated));box-shadow:inset 0 0 0 1px var(--color-primary)}.region:has(input:checked)::before{content:"";position:absolute;inset-block:0.6rem;inset-inline-start:-1px;inline-size:4px;border-radius:var(--radius-full);background:var(--land)}.date-row{display:grid;gap:0.3rem;margin-block-end:var(--space-3)}.seg{display:block;border:0;margin:0;padding:0;min-inline-size:0}.seg-row{display:flex;flex-wrap:wrap;gap:0.35rem;inline-size:100%}.seg-opt{position:relative;cursor:pointer}.seg-opt span{display:inline-flex;align-items:center;justify-content:center;min-inline-size:3rem;min-block-size:2.5rem;padding-inline:0.8rem;border:1px solid var(--border-strong);border-radius:var(--radius-full);font-variant-numeric:tabular-nums;font-weight:550;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.seg-opt:hover span{border-color:var(--text-muted)}.seg-opt:has(input:checked) span{background:var(--text);border-color:var(--text);color:var(--bg-elevated)}.nights-list{display:grid;gap:0.25rem}.nights-opt{position:relative;display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:0.6rem 0.8rem;border-radius:var(--radius);border:1px solid transparent;cursor:pointer}.nights-opt:hover{background:var(--bg-sunken)}.n-text{font-weight:550}.n-range{color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.nights-opt:has(input:checked){border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 7%,var(--bg-elevated))}.nights-opt:has(input:checked) .n-range{color:var(--color-primary);font-weight:650}.stepper{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:0.55rem}.stepper + .stepper{border-block-start:1px solid var(--border)}.stepper label{display:grid}.st-label{font-weight:650}.st-hint{color:var(--text-muted);font-size:var(--text-sm)}.stepper-ctl{display:flex;align-items:center;gap:0.35rem}.stepper-ctl input{inline-size:2.5rem;text-align:center;font:inherit;font-weight:700;font-variant-numeric:tabular-nums;border:0;background:transparent;color:var(--text);-moz-appearance:textfield;appearance:textfield}.stepper-ctl input::-webkit-inner-spin-button,.stepper-ctl input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.step{inline-size:2.5rem;block-size:2.5rem;border-radius:var(--radius-full);border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text);font-size:var(--text-lg);line-height:1;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.step:hover{border-color:var(--color-primary);color:var(--color-primary)}.step:disabled{opacity:0.35;cursor:not-allowed}@media (max-width:720px),(max-height:520px){.region-scroll{max-block-size:none;overflow:visible;margin:0;padding:0}}@media (max-width:720px){.region-grid{grid-template-columns:1fr 1fr}.region{padding:0.55rem 0.65rem}.region-blurb{display:none}}@media (max-width:767px){.nights-opt,.region{min-block-size:2.75rem}.stepper-ctl input{min-block-size:2.75rem;inline-size:2.75rem}.seg-opt span,.step{min-block-size:2.75rem;min-inline-size:2.75rem}.step{inline-size:2.75rem;block-size:2.75rem}}