.position-picker{inset:0 0 calc(-1*var(--vp-bottom-gap)) 0;z-index:1300;background:var(--c-bg);outline:none;position:fixed}.position-picker__map{cursor:crosshair;position:absolute;inset:0}.position-picker__locate{right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 112px);z-index:600;background:var(--c-card);width:44px;height:44px;color:var(--c-primary);box-shadow:var(--shadow-card);cursor:pointer;border:none;border-radius:12px;place-items:center;display:grid;position:absolute}.position-picker__locate:hover{background:var(--c-primary-soft)}.position-picker__card{left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 16px);z-index:600;border-radius:var(--r-card);background:var(--c-card);min-height:72px;box-shadow:var(--shadow-card);flex-direction:column;gap:4px;padding:14px 16px;display:flex;position:absolute}@media (min-width:640px){.position-picker__card{max-width:420px;margin-inline:auto;left:0;right:0}}.position-picker__card-label{font-size:var(--font-size-caption);font-weight:var(--font-weight-semi);letter-spacing:.06em;text-transform:uppercase;color:var(--c-text-2)}.position-picker__card-text{font-size:var(--font-size-body);color:var(--c-text);margin:0;line-height:1.5}.position-picker__card-text--muted{color:var(--c-text-2)}
.location-form{inset:0 0 calc(-1*var(--vp-bottom-gap)) 0;z-index:1250;background:var(--c-bg);opacity:0;visibility:hidden;pointer-events:none;outline:none;flex-direction:column;transition:opacity .18s,visibility 0s linear .18s;display:flex;position:fixed}.location-form--open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s}@media (prefers-reduced-motion:reduce){.location-form{transition:none}}.location-form__header{padding:calc(env(safe-area-inset-top,0px) + 14px) 18px 14px;border-bottom:1px solid var(--c-line);background:var(--c-card);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:flex}.location-form__title{font-family:var(--f-heading);font-size:var(--font-size-subheading);font-weight:var(--font-weight-bold);color:var(--c-text);text-align:center;flex:1}.location-form__cancel,.location-form__header-spacer{min-width:72px}.location-form__cancel{font-family:var(--f-body);font-size:var(--font-size-body);color:var(--c-text-2);text-align:left;cursor:pointer;background:0 0;border:none;padding:8px 0}.location-form__cancel:hover{color:var(--c-text)}.location-form__save{border-radius:var(--r-button);background:var(--c-primary);min-width:72px;font-family:var(--f-body);font-size:var(--font-size-body);font-weight:var(--font-weight-semi);color:var(--c-on-primary);cursor:pointer;border:none;padding:8px 18px;transition:background .15s}.location-form__save:hover{background:var(--c-primary-hover)}.location-form__save:disabled{opacity:.55;cursor:not-allowed}.location-form__body{flex:1;width:100%;overflow-y:auto}.location-form__inner{width:100%;max-width:780px;padding:20px 18px calc(120px + env(safe-area-inset-bottom,0px));margin-inline:auto}.location-form__question{font-family:var(--f-heading);font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--c-text);margin:0 0 16px}.location-form__kinds{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.location-form__small{color:var(--c-text-2);margin:0 0 6px;font-size:13px;line-height:1.5}.location-form__small--tight{margin:-12px 0 20px}.location-form__small--center{text-align:center;margin-top:12px}.location-form__submit-error{border:1px solid color-mix(in srgb, var(--c-heart) 30%, transparent);border-radius:var(--r-input);background:color-mix(in srgb, var(--c-heart) 10%, transparent);font-size:var(--font-size-body);line-height:var(--line-height-normal);color:var(--c-heart);margin-bottom:20px;padding:12px 14px}.location-form__reason{background:var(--c-danger-soft);border-radius:16px;flex-direction:column;gap:4px;margin-bottom:20px;padding:12px 14px;display:flex}.location-form__reason-cap{font-size:var(--font-size-caption);font-weight:var(--font-weight-semi);color:var(--c-danger)}.location-form__reason-text{font-size:var(--font-size-body);color:var(--c-text);white-space:pre-line;margin:0;line-height:1.55}.location-form__kind-row{background:var(--c-muted);border-radius:16px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.location-form__kind-icon{color:var(--c-primary);display:inline-flex}.location-form__kind-text{font-size:var(--font-size-body);font-weight:var(--font-weight-semi);color:var(--c-text);flex:1}.location-form__kind-change{min-height:44px;font-family:var(--f-body);font-size:13px;font-weight:var(--font-weight-semi);color:var(--c-primary);cursor:pointer;background:0 0;border:0}.location-form__public-hint{background:var(--c-primary-tint);color:var(--c-text-2);border-radius:16px;margin:0 0 16px;padding:12px 14px;font-size:13px;line-height:1.5}.location-form__sections{gap:var(--spacing-md);flex-direction:column;margin-bottom:28px;display:flex}.location-form__aside-hint{font-size:var(--font-size-caption);color:var(--c-text-3)}.location-form__lang{border-radius:var(--r-chip);background:var(--c-primary-soft);font-size:var(--font-size-caption);font-weight:var(--font-weight-semi);color:var(--c-primary);padding:2px 10px}.location-form__chips{flex-wrap:wrap;gap:8px;display:flex}.location-form__row{gap:10px;display:flex}.location-form__postal{flex:0 0 112px}.location-form__city{flex:1;min-width:0}.location-form__error{font-size:var(--font-size-caption);color:var(--c-heart)}.location-form__counter-row{justify-content:space-between;gap:8px;margin-top:6px;display:flex}.location-form__counter-hint,.location-form__counter{font-size:var(--font-size-caption);color:var(--c-text-3)}.location-form__counter--max{color:var(--c-danger)}.location-form__position{flex-direction:column;gap:10px;display:flex}.location-form__map-btn,.location-form__map-empty{border:1px solid var(--c-line);background:var(--c-muted);cursor:pointer;border-radius:16px;width:100%;padding:0;display:block;overflow:hidden}.location-form__map-btn:focus-visible,.location-form__map-empty:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}.location-form__map-empty{border:1.5px dashed var(--c-line);height:120px;color:var(--c-text-3);place-items:center;display:grid}.location-form__map{height:168px;position:relative}.location-form__map-canvas{pointer-events:none;position:absolute;inset:0}.location-form__status{color:var(--c-text);align-items:flex-start;gap:8px;margin:0;font-size:13px;line-height:1.5;display:flex}.location-form__status-icon{color:var(--c-primary);flex:none;margin-top:1px;display:inline-flex}.location-form__status-icon--warn{color:var(--c-warn)}.location-form__status-icon--ok{color:var(--c-success)}.hours{flex-direction:column;gap:8px;display:flex}.hours--collapsed{align-items:flex-start;gap:10px}.hours__none{font-size:var(--font-size-body);color:var(--c-text-2)}.hours__all{background:var(--c-muted);border-radius:16px;flex-direction:column;gap:8px;margin-bottom:4px;padding:12px;display:flex}.hours__all-label{font-size:13px;font-weight:var(--font-weight-semi);color:var(--c-text)}.hours__all-row,.hours__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hours__row{min-height:44px}.hours__chip{justify-content:center;min-width:56px}.hours__time{border:1.5px solid var(--c-line);border-radius:var(--r-input);background:var(--c-card);width:92px;height:44px;font-family:var(--f-body);font-variant-numeric:tabular-nums;color:var(--c-text);padding:0 8px;font-size:15px}.hours__time:focus{border-color:var(--c-primary);outline:none}.hours__to{color:var(--c-text-2);font-size:13px}.hours__closed{font-size:var(--font-size-body);color:var(--c-text-3)}.hours__remove{align-self:flex-start}.season{flex-direction:column;gap:10px;display:flex}.season__grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.season__chip{justify-content:center;width:100%}.season__row{align-items:center;gap:8px;display:flex}.season__summary{color:var(--c-text-2);margin:0;font-size:13px}.location-form__submit{margin-top:8px}.location-form__danger{border-top:1px solid var(--c-line);flex-direction:column;align-items:flex-start;gap:10px;margin-top:32px;padding-top:24px;display:flex}.location-form__danger-text{font-size:var(--font-size-body);color:var(--c-text-2);margin:0}.location-form__warn-box{background:var(--c-warn-soft);font-size:var(--font-size-body);color:var(--c-text);border-radius:16px;align-items:flex-start;gap:8px;margin:12px 0 0;padding:10px 14px;line-height:1.5;display:flex}.location-form__warn-icon{color:var(--c-warn);flex:none;margin-top:2px}
.location-plan-dialog{max-width:420px;max-height:calc(100dvh - 32px);overflow-y:auto}@media (min-width:48rem){.location-plan-dialog{max-width:560px}}.location-plan-dialog__icon{background:var(--c-primary-soft);width:44px;height:44px;color:var(--c-primary);border-radius:14px;place-items:center;display:grid}.location-plan-dialog__summary{background:var(--c-primary-tint);border-radius:16px;flex-direction:column;gap:4px;margin-bottom:16px;padding:14px 16px;display:flex}.location-plan-dialog__name{font-size:15px;font-weight:var(--font-weight-semi);color:var(--c-text)}.location-plan-dialog__meta{color:var(--c-text-2);font-size:13px}.location-plan-dialog__price{font-family:var(--f-heading);font-size:var(--font-size-hero);font-weight:var(--font-weight-bold);color:var(--c-text);margin-top:4px}.location-plan-dialog__per{font-family:var(--f-body);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);color:var(--c-text-2)}.location-plan-dialog__list{flex-direction:column;gap:10px;margin:0 0 16px;padding:0;list-style:none;display:flex}.location-plan-dialog__item{font-size:var(--font-size-body);color:var(--c-text-2);align-items:flex-start;gap:10px;line-height:1.55;display:flex}.location-plan-dialog__text{font-size:var(--font-size-body);color:var(--c-text-2);margin:0 0 16px;line-height:1.55}.location-plan-dialog__test{background:var(--c-warn-soft);font-size:13px;font-weight:var(--font-weight-semi);color:var(--c-text);border-radius:16px;align-items:flex-start;gap:8px;margin:0 0 12px;padding:10px 14px;display:flex}.location-plan-dialog__test-icon{color:var(--c-warn);flex:none;margin-top:1px}.location-plan-dialog__simulate{flex:none;margin:-6px -8px -6px auto}.location-plan-dialog__terms{font-size:var(--font-size-caption);color:var(--c-text-2);margin:0 0 12px;line-height:1.5}.location-plan-dialog__error{font-size:var(--font-size-body);color:var(--c-danger);margin:0 0 12px}
.locations-page{background:var(--c-bg);flex-direction:column;width:100%;min-height:100dvh;display:flex}.locations-page__content{width:100%;max-width:720px;padding:var(--spacing-lg) 18px 140px;flex:1;margin-inline:auto}.locations-page__header{flex-direction:column;gap:6px;margin-bottom:32px;display:flex}.locations-page__title{font-family:var(--f-heading);font-size:var(--font-size-hero);font-weight:var(--font-weight-bold);color:var(--c-text);margin:0;line-height:1.1}.locations-page__lead,.locations-page__limit{font-size:var(--font-size-body);color:var(--c-text-2);margin:0;line-height:1.55}.locations-page__add{width:100%;margin-top:10px}@media (min-width:48rem){.locations-page__add{align-self:flex-start;width:auto}}.locations-page__list{flex-direction:column;gap:14px;display:flex}.locations-page__skeleton{border:1px solid var(--c-line);border-radius:var(--r-card);background:var(--c-card);flex-direction:column;gap:14px;padding:16px;display:flex}.locations-page__error{border-radius:var(--r-card);background:var(--c-card);font-size:var(--font-size-body);color:var(--c-text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.locations-page__block{text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:400px;margin:0 auto;padding:28px 22px;display:flex}.locations-page__block--card{border-radius:var(--r-card-lg);background:var(--c-card);box-shadow:var(--shadow-card);margin-top:24px}.locations-page__tile{background:var(--c-primary-soft);width:52px;height:52px;color:var(--c-primary);border-radius:16px;place-items:center;display:grid}.locations-page__block-title{font-family:var(--f-heading);font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--c-text);margin:0;line-height:1.2}.locations-page__block-body{font-size:var(--font-size-body);color:var(--c-text-2);margin:0 0 4px;line-height:1.55}.locations-page__block-small{font-size:var(--font-size-body);color:var(--c-text-2);margin:0}.locations-page__link{min-height:44px;font-weight:var(--font-weight-semi);color:var(--c-primary);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.locations-page__link:hover{text-decoration:underline}.locations-page__link--small{font-size:13px}
