@font-face{font-family:Pretendard;font-weight:100 900;font-style:normal;font-display:swap;src:url(/assets/fonts/PretendardVariable.woff2)format("woff2-variations")}@font-face{font-family:Pretendard;font-weight:100;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-Thin.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:200;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-ExtraLight.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:300;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-Light.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:400;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-Regular.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:500;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-Medium.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:600;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-SemiBold.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:700;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-Bold.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:800;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-ExtraBold.woff)format("woff")}@font-face{font-family:Pretendard;font-weight:900;font-style:normal;font-display:swap;src:url(/assets/fonts/Pretendard-Black.woff)format("woff")}:root{--color-primary:#1f9d55;--color-primary-hover:#17803f;--color-primary-surface:#e6f6ec;--color-on-primary:#fff;--color-region-0:#e4e7e5;--color-region-1:#a6dfbb;--color-region-2:#5cc088;--color-region-3:#1f9d55;--color-region-stroke:#fff;--color-region-owner-stroke:#1b1f1d;--color-text-strong:#202422;--color-text-body:#323734;--color-text-muted:#616b65;--color-text-subtle:#828e87;--color-text-faint:#a6aea9;--color-page-bg:#eaeceb;--color-surface:#f1f3f2;--color-surface-muted:#e5e7e6;--color-surface-subtle:#eceeed;--color-border:#d8dbd9;--color-border-muted:#e4e7e5;--color-border-subtle:#eff1f0;--color-danger:#d64545;--color-danger-surface:#fdecec;--color-accent:#4854e0;--color-accent-surface:#eef1ff;--color-rating:#f2a900;--color-inverse:#202422;--color-on-inverse:#f2f4f3;--font-family-base:"Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs:.875rem;--font-size-sm:.875rem;--font-size-base:.875rem;--font-size-md:.9375rem;--font-size-lg:1.0625rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.3;--line-height-normal:1.5;--line-height-relaxed:1.7;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-pill:999px;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 16px #00000026;--shadow-float:0 1px 4px #00000026;--shadow-panel:-2px 0 8px #0000001a;--shadow-nav:0 -2px 5px #0000001a;--top-nav-content-height:44px;--top-nav-height:calc(var(--top-nav-content-height) + env(safe-area-inset-top));--bottom-nav-content-height:44px;--bottom-nav-height:calc(var(--bottom-nav-content-height) + env(safe-area-inset-bottom))}[data-theme=dark]{--color-primary:#3dbe72;--color-primary-hover:#4dca80;--color-primary-surface:#163322;--color-on-primary:#fff;--color-region-0:#2a2d2b;--color-region-1:#1f4a31;--color-region-2:#2f8a55;--color-region-3:#3dbe72;--color-region-stroke:#121413;--color-region-owner-stroke:#f2f4f3;--color-text-strong:#f2f4f3;--color-text-body:#d8dcd9;--color-text-muted:#9aa39d;--color-text-subtle:#7a847e;--color-text-faint:#5c6560;--color-page-bg:#121413;--color-surface:#1a1c1b;--color-surface-muted:#242624;--color-surface-subtle:#1e201f;--color-border:#3a3e3c;--color-border-muted:#2e322f;--color-border-subtle:#262927;--color-danger:#e86a6a;--color-danger-surface:#3a1c1c;--color-accent:#7b85f0;--color-accent-surface:#1e2238;--color-rating:#f2a900;--color-inverse:#2a2d2b;--color-on-inverse:#f2f4f3}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-family-base)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--color-page-bg);color:var(--color-text-body);margin:0}#root{min-height:100vh}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:var(--font-size-md)}a{color:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toast{left:50%;top:calc(var(--top-nav-height) + .75rem);box-sizing:border-box;border-radius:var(--radius-2xl);background:var(--color-inverse);width:max-content;max-width:calc(100vw - 2rem);color:var(--color-on-inverse);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;z-index:60;cursor:pointer;align-items:flex-start;gap:.65rem;padding:.75rem 1.05rem;transition:transform .22s,opacity .22s;display:flex;position:fixed;transform:translate(-50%,-10px)}.toast--open{opacity:1;pointer-events:auto;transform:translate(-50%)}.toast__icon{border-radius:var(--radius-pill);background:var(--color-primary);width:1.35rem;height:1.35rem;color:var(--color-on-primary);flex-shrink:0;justify-content:center;align-items:center;margin-top:.05rem;display:flex}.toast__icon svg{width:.85rem;height:.85rem}.toast__content{min-width:0}.toast__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:inherit;margin:0}.toast__title+.toast__body{margin-top:.2rem}.toast__body{font-size:var(--font-size-xs);line-height:var(--line-height-normal);color:inherit;opacity:.78;margin:0}[data-theme=dark] .toast{box-shadow:0 8px 24px #00000073}.button{border-radius:var(--radius-md);font-family:inherit;font-weight:var(--font-weight-medium);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.button:disabled{opacity:.6;cursor:not-allowed}.button--full{width:100%}.button--md{font-size:var(--font-size-base);padding:.5rem 1rem}.button--sm{font-size:var(--font-size-xs);padding:.3rem .6rem}.button--lg{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);padding:.65rem}.button--primary{background:var(--color-primary);color:var(--color-on-primary);border:none}.button--secondary,.button--outline{border:1px solid var(--color-border);color:var(--color-text-body);background:0 0}.button--dark{background:var(--color-text-strong);color:var(--color-surface);border:none}.button--dark:disabled{box-shadow:inset 0 0 0 1px var(--color-border);color:var(--color-text-subtle);background:0 0}.button--danger{border:1px solid var(--color-danger);color:var(--color-danger);background:0 0}.bottom-nav{height:var(--bottom-nav-height);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);background:var(--color-surface);border-top:1px solid var(--color-border-muted);box-shadow:var(--shadow-nav);z-index:25;justify-content:stretch;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{height:var(--bottom-nav-content-height);color:var(--color-text-subtle);-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex}.bottom-nav__icon{width:21px;height:21px}.bottom-nav__label{font-size:.68rem;font-weight:var(--font-weight-medium)}.bottom-nav__item--active{color:var(--color-primary)}.backdrop{opacity:0;pointer-events:none;background:#0006;transition:opacity .2s;position:fixed;inset:0}.backdrop--open{opacity:1;pointer-events:auto}.switch{border-radius:var(--radius-pill);background:var(--color-border);border:none;flex-shrink:0;width:44px;height:26px;padding:0;transition:background .2s;position:relative}.switch--on{background:var(--color-primary)}.switch:disabled{opacity:.6;cursor:not-allowed}.switch__thumb{width:20px;height:20px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .2s;position:absolute;top:3px;left:3px}.switch--on .switch__thumb{transform:translate(18px)}.icon-button{color:var(--color-text-subtle);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;display:flex}.icon-button--md svg{width:20px;height:20px;display:block}.icon-button--sm{padding:.3rem}.icon-button--sm svg{width:16px;height:16px;display:block}.modal{background:var(--color-surface);border-radius:var(--radius-2xl);width:calc(100% - 2.5rem);max-width:360px;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;z-index:55;flex-direction:column;gap:.5rem;padding:1.25rem 1.25rem 1.5rem;transition:transform .2s,opacity .2s;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(.94)}.modal--open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.modal__header{justify-content:space-between;align-items:center;display:flex}.modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.modal__close{margin:-.25rem -.25rem -.25rem 0}.modal__body{padding:.5rem 0 .25rem}.nav-drawer{background:var(--color-surface);width:100%;box-shadow:var(--shadow-panel);padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);z-index:41;flex-direction:column;transition:transform .25s;display:flex;position:fixed;inset:0;transform:translate(100%)}.nav-drawer--open{transform:translate(0)}.nav-drawer__header{height:var(--top-nav-content-height);border-bottom:1px solid var(--color-border-muted);background:var(--color-surface);flex-shrink:0;align-items:center;padding:0 16px;display:flex}.nav-drawer__title{text-align:center;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);flex:1;margin:0 44px 0 0}.nav-drawer__back{cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:18px;display:flex}.nav-drawer__body{min-height:0;padding:12px 12px max(12px, env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;display:flex}.nav-drawer__scroll{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex;overflow-y:auto}.nav-drawer__actions{flex-direction:column;display:flex}.nav-drawer__actions--detached{border-top:1px solid var(--color-border-muted);padding-top:4px}.nav-drawer__action{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;height:44px;color:var(--color-text-body);font-size:var(--font-size-md);justify-content:center;align-items:center;gap:8px;display:flex}.nav-drawer__action svg{width:16px;height:16px}.nav-drawer__action:disabled{opacity:.6;cursor:not-allowed}.nav-drawer__list-item{width:100%;color:var(--color-text-body);font-size:var(--font-size-md);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:12px;padding:14px 4px;font-family:inherit;display:flex}.nav-drawer__actions>.nav-drawer__list-item:not(:last-child){border-bottom:1px solid var(--color-border-muted)}.nav-drawer__list-item svg{flex-shrink:0;width:24px;height:24px}.nav-drawer__list-item:active{background:var(--color-surface-muted)}.nav-drawer__list-item:disabled{opacity:.6;cursor:not-allowed}.nav-drawer__list-item-text{text-align:left;flex:1}.nav-drawer__list-item-trailing{font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.nav-drawer__list-item .nav-drawer__chevron{width:12px;height:12px;color:var(--color-text-muted);flex-shrink:0}.nav-drawer__guest{flex-direction:column;gap:12px;padding:24px;display:flex}.nav-drawer__notice{font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--color-text-body);margin:0 0 1rem}.nav-drawer__modal-actions{gap:12px;margin-top:8px;display:flex}.nav-drawer__modal-actions .button{flex:1}.notice-popup__body{white-space:pre-wrap;font-size:var(--font-size-sm);color:var(--color-text-strong);margin:0 0 1rem}.notice-popup__check{font-size:var(--font-size-sm);color:var(--color-text-muted);align-items:center;gap:.4rem;margin-bottom:1rem;display:flex}.layout{flex-direction:column;min-height:100vh;display:flex}.layout:has(.map-page){height:100dvh;overflow:hidden}.layout__header{padding:0 1.5rem;padding-top:env(safe-area-inset-top);padding-left:calc(1.5rem + env(safe-area-inset-left));padding-right:calc(1.5rem + env(safe-area-inset-right));height:var(--top-nav-height);border-bottom:1px solid var(--color-border-muted);background:var(--color-surface);z-index:20;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.layout__header--titled{grid-template-columns:1fr auto 1fr;display:grid}.layout__title{text-align:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg);white-space:nowrap;grid-column:2}.layout__back-button{cursor:pointer;width:44px;height:44px;color:inherit;background:0 0;border:none;grid-column:1;justify-content:center;justify-self:start;align-items:center;margin-left:-.75rem;padding:0;font-size:18px;display:flex}.layout__header--titled .layout__menu-button{grid-column:3;justify-self:end}.layout__brand{font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);color:var(--color-primary);align-items:center;gap:.4rem;text-decoration:none;display:flex}.layout__brand-icon{border-radius:var(--radius-sm);width:24px;height:24px;display:block}.layout__menu-button{color:var(--color-text-body);background:0 0;border:none;justify-content:center;align-items:center;margin:-.25rem;padding:.25rem;display:flex}.layout__menu-button svg{width:22px;height:22px;display:block}.layout__main{min-width:0;min-height:0;padding-bottom:env(safe-area-inset-bottom);flex-direction:column;flex:1;display:flex}.layout__main>*{min-width:0}.layout__main--with-bottom-nav{padding-bottom:var(--bottom-nav-height)}.map-search-bar{top:calc(1rem + env(safe-area-inset-top));z-index:11;position:absolute;left:1rem;right:1rem}.map-search-bar__input-wrap{background:var(--color-surface);border-radius:var(--radius-xl);height:2.75rem;box-shadow:var(--shadow-float);align-items:center;display:flex;position:relative}.map-search-bar__leading-icon{width:24px;height:24px;color:var(--color-text-faint);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:.85rem;padding:0;display:flex}.map-search-bar__leading-icon svg{width:24px;height:24px}.map-search-bar__input{min-width:0;height:100%;font-family:inherit;font-size:var(--font-size-md);color:var(--color-text-body);background:0 0;border:none;flex:1;padding:0 .5rem}.map-search-bar__input::placeholder{color:var(--color-text-subtle)}.map-search-bar__clear{margin-right:.4rem}.map-search-bar__clear svg{width:24px;height:24px}.map-search-bar__suggestions{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:30;max-height:320px;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.map-search-bar__suggestions button{text-align:left;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;width:100%;padding:.6rem .75rem;font-family:inherit;display:block}.map-search-bar__suggestions button:hover{background:var(--color-surface-muted)}.map-search-bar__main-text{color:var(--color-text-body);font-size:var(--font-size-md);display:block}.map-search-bar__sub-text{color:var(--color-text-subtle);font-size:var(--font-size-sm);display:block}.map-search-bar__status{color:var(--color-text-subtle);font-size:var(--font-size-sm);padding:.75rem}.map-search-bar__status--error{color:var(--color-danger)}.chip{border-radius:var(--radius-sm);align-items:center;padding:1px 8px;font-size:.75rem;line-height:1.6;display:inline-flex}.chip--neutral{background:var(--color-surface-muted);color:var(--color-text-body)}.chip--primary{background:var(--color-primary-surface);color:var(--color-primary)}.chip--accent{background:var(--color-accent-surface);color:var(--color-accent)}.chip--danger{background:var(--color-danger-surface);color:var(--color-danger)}.chip--dark{background:var(--color-text-strong);color:var(--color-surface)}.chip--pill{border-radius:var(--radius-pill)}.chip--interactive{border:1px solid var(--color-border);background:var(--color-surface);height:29px;color:var(--color-text-body);font-size:var(--font-size-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;padding:0 .7rem;font-family:inherit;line-height:1.2}.chip--interactive.chip--primary{border-color:var(--color-primary-surface);background:var(--color-primary-surface);color:var(--color-primary)}.chip--interactive.chip--selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.chip--interactive.chip--dark{border-color:var(--color-surface-muted);background:var(--color-surface-muted);color:var(--color-text-strong)}.chip--interactive.chip--dark.chip--selected{border-color:var(--color-text-strong);background:var(--color-text-strong);color:var(--color-surface)}.filter-bar{z-index:10;scrollbar-width:none;gap:.4rem;display:flex;position:absolute;top:4.25rem;left:1rem;right:1rem;overflow-x:auto}.filter-bar::-webkit-scrollbar{display:none}.filter-bar .chip{flex-shrink:0}.near-me-toggle{border:1px solid var(--color-border);background:var(--color-surface);width:36px;height:36px;color:var(--color-text-body);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.near-me-toggle svg{width:16px;height:16px}.near-me-toggle--active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.near-me-toggle:disabled{opacity:.6;cursor:not-allowed}.star-rating{display:inline-flex}.star-rating--readonly{color:var(--color-rating);letter-spacing:1px}.star-rating--primary{color:var(--color-primary)}.star-rating__empty{color:var(--color-border)}.star-rating button{color:var(--color-border);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:1.4rem}.star-rating button.active{color:var(--color-rating)}.star-rating--primary button.active{color:var(--color-primary)}.star-rating--lg button{padding:0 3px;font-size:1.9rem}.bottom-sheet{background:var(--color-surface);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;box-shadow:var(--shadow-md);padding:.75rem 1.25rem;padding-bottom:calc(1.25rem + env(safe-area-inset-bottom));z-index:51;flex-direction:column;gap:.5rem;max-height:100%;transition:transform .25s,height .25s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.bottom-sheet--open{transform:translateY(0)}.bottom-sheet__handle{border-radius:var(--radius-pill);background:var(--color-border);touch-action:none;cursor:grab;flex-shrink:0;align-self:center;width:36px;height:4px;margin-bottom:.25rem;position:relative}.bottom-sheet__handle:before{content:"";position:absolute;inset:-16px -24px}.bottom-sheet__handle:active{cursor:grabbing}.bottom-sheet__header{flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.bottom-sheet__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.bottom-sheet__close{margin:-.25rem -.25rem -.25rem 0}.bottom-sheet__body{flex:auto;min-height:0;padding:.5rem 0 .25rem;overflow-y:auto}.photo-action-sheet{flex-direction:column;gap:.5rem;display:flex}.photo-action-sheet__option{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-body);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;padding:.75rem 1rem}.photo-action-sheet__option:active{background:var(--color-surface-muted)}.full-screen-form-panel{background:var(--color-surface);z-index:56;flex-direction:column;transition:transform .25s;display:flex;position:fixed;inset:0;transform:translateY(100%)}.full-screen-form-panel--open{transform:translateY(0)}.full-screen-form-panel__topbar{padding:0 4px;padding-top:env(safe-area-inset-top);padding-left:calc(4px + env(safe-area-inset-left));padding-right:calc(12px + env(safe-area-inset-right));height:var(--top-nav-height);border-bottom:1px solid var(--color-border-muted);background:var(--color-surface);flex-shrink:0;align-items:center;gap:.5rem;display:flex}.full-screen-form-panel__back{cursor:pointer;width:44px;height:44px;color:var(--color-text-strong);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:26px;line-height:1;display:flex}.full-screen-form-panel__title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.full-screen-form-panel__body{min-height:0;padding:1.25rem;padding-bottom:calc(1.25rem + env(safe-area-inset-bottom));flex:1;overflow-y:auto}.full-screen-form-panel__action{border-radius:var(--radius-md);height:32px;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);white-space:nowrap;cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-left:auto;padding:0 12px}.full-screen-form-panel__action:active{opacity:.6}.full-screen-form-panel__action:disabled{opacity:.5;cursor:not-allowed}.review-form{flex-direction:column;gap:1.25rem;display:flex}.review-form__toilet-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin:0}.review-form__divider{background:var(--color-surface-muted);height:.5rem;margin:0 -1.25rem}.review-form__section{flex-direction:column;gap:.75rem;display:flex}.review-form__section-label{font-size:var(--font-size-md);font-weight:var(--font-weight-bold)}.review-form__comment{border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-sm);resize:vertical;padding:.7rem .8rem}.review-form__char-count{text-align:right;font-size:var(--font-size-xs);color:var(--color-text-subtle);margin:-.5rem 0 0}.review-form__char-count--over{color:var(--color-danger)}.review-form__field{font-size:var(--font-size-sm);flex-direction:column;gap:.3rem;display:flex}.review-form__field--row{flex-direction:row;justify-content:space-between;align-items:center}.review-form__field input{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.45rem .6rem}.review-form__error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.review-form__hidden-input{display:none}.review-form__photo-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.review-form__photo-grid{flex-wrap:wrap;gap:.5rem;display:flex}.review-form__photo-add{border:1px dashed var(--color-primary);border-radius:var(--radius-md);width:80px;height:80px;color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.4rem;display:flex}.review-form__photo-add:disabled{opacity:.6;cursor:not-allowed}.review-form__photo-add svg{width:1.1rem;height:1.1rem}.review-form__photo-preview{width:80px;height:80px;position:relative}.review-form__photo-preview img{object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--color-border);width:80px;height:80px;display:block}.review-form__photo-remove{background:var(--color-surface);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);position:absolute;top:-.4rem;right:-.4rem}.review-form__photo-status{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.field{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.field__label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.field__label--strong{font-weight:var(--font-weight-semibold);color:var(--color-text-strong)}.field input,.field textarea,.field select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-family:inherit;font-size:var(--font-size-md);padding:.55rem .7rem}.field .dropdown__trigger{padding:.55rem .7rem}.field input:disabled,.field input:read-only{background:var(--color-surface-muted);color:var(--color-text-subtle);cursor:not-allowed}.field__input-wrap{display:flex;position:relative}.field__input-wrap input{width:100%;padding-right:2.25rem}.field__input-wrap--trailing-wide input{padding-right:4.1rem}.field__icon-group{align-items:center;gap:.1rem;display:flex;position:absolute;top:0;bottom:0;right:.25rem}.field__input-wrap--leading input{width:100%;padding-left:2.4rem}.field__leading-icon{color:var(--color-text-faint);pointer-events:none;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:.7rem}.field__leading-icon svg{width:1.1rem;height:1.1rem}.field__hint{color:var(--color-text-subtle);margin:0;font-size:.78rem}.field__char-count{text-align:right;color:var(--color-text-subtle);margin:.25rem 0 0;font-size:.78rem}.field__char-count--over{color:var(--color-danger)}.field__error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.field--invalid input,.field--invalid textarea,.field--invalid select,.field--invalid .dropdown__trigger,.field--invalid .form-picker-trigger{border-color:var(--color-danger)}.dropdown{width:auto;display:inline-block;position:relative}.dropdown__trigger{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);width:100%;font-family:inherit;font-size:var(--font-size-md);color:var(--color-text-body);text-align:left;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .5rem;display:flex}.dropdown__trigger:disabled{opacity:.6;cursor:not-allowed}.dropdown__value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dropdown__value--placeholder{color:var(--color-text-subtle)}.dropdown__chevron{color:var(--color-text-subtle);font-size:var(--font-size-xs);flex-shrink:0}.dropdown__menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:100%;max-height:240px;box-shadow:var(--shadow-md);z-index:30;margin:0;padding:.25rem;list-style:none;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.dropdown__option{border-radius:var(--radius-md);text-align:left;width:100%;font-family:inherit;font-size:var(--font-size-md);color:var(--color-text-body);white-space:nowrap;background:0 0;border:none;padding:.45rem .6rem;display:block}.dropdown__option:hover{background:var(--color-surface-muted)}.dropdown__option--active{background:var(--color-primary-surface);color:var(--color-primary);font-weight:var(--font-weight-semibold)}.place-info-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);margin-bottom:.75rem}.place-info-card__header{justify-content:space-between;align-items:center;display:flex}.place-info-card__header h3{margin:0;font-size:1rem}.place-info-card__header button{border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xs);background:0 0;padding:.3rem .6rem}.place-info-card__address{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:.4rem 0 16px}.place-info-card__distance{color:var(--color-text-body);font-weight:var(--font-weight-semibold)}.place-info-card__list{grid-template-columns:repeat(2,1fr);gap:.5rem;margin:.6rem 0;display:grid}.place-info-card__list>div{font-size:var(--font-size-sm);justify-content:space-between;display:flex}.place-info-card__list dt{color:var(--color-text-muted)}.place-info-card__list dd{margin:0;font-weight:600}.place-info-card__source{font-size:var(--font-size-xs)}.place-info-card__form{flex-direction:column;gap:.6rem;margin-top:.6rem;display:flex}.place-info-card__form .field{margin-bottom:0}.place-info-card__checks{font-size:var(--font-size-sm);flex-direction:column;gap:.6rem;display:flex}.place-info-card__check-row{justify-content:space-between;align-items:center;display:flex}.place-info-card__form .place-info-card__underline-input{border:none;border-bottom:1px solid var(--color-border);background:0 0;border-radius:0;padding:.4rem .1rem}.place-info-card__form .place-info-card__underline-input:focus{border-bottom-color:var(--color-primary);outline:none}.place-info-card__error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.place-info-card__actions{justify-content:flex-end;gap:.5rem;display:flex}.skeleton{background:linear-gradient(90deg, var(--color-surface-muted) 25%, var(--color-surface-subtle) 37%, var(--color-surface-muted) 63%);background-size:400% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{background:var(--color-surface-muted);animation:none}}.toilet-panel{max-height:min(65vh,620px);overflow-y:auto}.toilet-panel h2{margin:0;font-size:1.2rem}.toilet-panel__back{margin-bottom:.6rem}.toilet-panel__title-row{justify-content:space-between;align-items:flex-start;gap:.5rem;margin:0 0 5px;display:flex}.toilet-panel__title-tags{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.toilet-panel__territory-badge{white-space:nowrap;flex-shrink:0}.toilet-panel__meta{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0 0 16px}.toilet-panel__rating{color:var(--color-text-body);font-weight:var(--font-weight-semibold)}.toilet-panel__rating-star{color:var(--color-primary)}.toilet-panel__address{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0 0 .5rem}.toilet-panel__tags{gap:.4rem;margin-bottom:.75rem;display:flex}.toilet-panel__actions{gap:.4rem;margin-bottom:1rem;display:flex}.toilet-panel__notice{font-size:var(--font-size-sm);color:var(--color-text-muted)}.toilet-panel__unlock{text-align:center;padding:1rem 0}.toilet-panel__unlock button{border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);border:none;margin-top:.5rem;padding:.5rem 1.2rem}.toilet-panel__unlock-denied{color:var(--color-danger);font-size:var(--font-size-xs)}.toilet-panel__reviews-link{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;width:100%;padding:.75rem .1rem;display:flex}.toilet-panel__reviews-link-rating{font-weight:var(--font-weight-bold);font-size:var(--font-size-md)}.toilet-panel__reviews-link-count{color:var(--color-text-muted);font-size:var(--font-size-sm)}.toilet-panel__reviews-link-chevron{color:var(--color-text-subtle);margin-left:auto;font-size:1.3rem}.toilet-panel__confirm-hint{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-body);margin:0 0 1rem}.toilet-panel__confirm-actions{gap:.5rem;display:flex}.toilet-pin-group-sheet__list{max-height:min(55vh,520px);margin:0;padding:0;list-style:none;overflow-y:auto}.toilet-pin-group-sheet__item{border:none;border-bottom:1px solid var(--color-border-subtle);text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;grid-template-columns:1fr auto;gap:.2rem .6rem;padding:.75rem .25rem;font-family:inherit;display:grid}.toilet-pin-group-sheet__item-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-body);grid-column:1}.toilet-pin-group-sheet__item-meta{font-size:var(--font-size-sm);color:var(--color-text-muted);grid-column:1}.toilet-pin-group-sheet__rating-star{color:var(--color-primary)}.toilet-pin-group-sheet__item-tag{grid-area:1/2/span 2;align-self:center}.cleanliness-filter-bar{scrollbar-width:none;gap:.4rem;display:flex;overflow-x:auto}.cleanliness-filter-bar::-webkit-scrollbar{display:none}.cleanliness-filter-bar .chip{flex-shrink:0}.empty-state{color:var(--color-text-subtle);font-size:var(--font-size-sm)}.toilet-results-sheet__cleanliness{margin-bottom:.6rem}.toilet-results-sheet__status{color:var(--color-text-muted);font-size:var(--font-size-sm)}.toilet-results-sheet__list{max-height:min(55vh,520px);margin:0;padding:0;list-style:none;overflow-y:auto}.toilet-results-sheet__item{border:none;border-bottom:1px solid var(--color-border-subtle);text-align:left;background:0 0;grid-template-columns:1fr auto;gap:.2rem .6rem;width:100%;padding:.75rem .25rem;font-family:inherit;display:grid}.toilet-results-sheet__item-name{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-body);grid-column:1}.toilet-results-sheet__item-meta{font-size:var(--font-size-sm);color:var(--color-text-muted);grid-column:1}.toilet-results-sheet__rating-star{color:var(--color-primary)}.toilet-results-sheet__item-tag{grid-area:1/2/span 2;align-self:center}.map-page{isolation:isolate;z-index:0;flex:1;min-height:0;position:relative;overflow:hidden}.map-page__near-me{z-index:10;box-shadow:var(--shadow-float);position:absolute;bottom:1rem;right:1rem}.map-page__zoom-hint{z-index:10;white-space:nowrap;font-size:var(--font-size-sm);background:var(--color-surface);box-shadow:var(--shadow-float);padding:.4rem .9rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.map-page__prompt-hint{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-body);white-space:pre-line;margin:0 0 1rem}.map-page__prompt-actions{gap:.5rem;display:flex}.map-page__preview h2{margin:0 0 .15rem;font-size:1.2rem}.map-page__preview-address{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0 0 .5rem}.map-page__preview-hint{font-size:var(--font-size-sm);color:var(--color-text-body);margin:0 0 1rem}.map-page__preview-actions{gap:.4rem;display:flex}.auto-login-splash{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.auto-login-splash__badge{background:var(--color-primary);border-radius:var(--radius-2xl);justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:1.25rem;animation:2s ease-in-out infinite auto-login-splash-float;display:flex;box-shadow:0 8px 24px #1f9d5559}.auto-login-splash__badge-text{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-on-primary)}.auto-login-splash__text{font-size:var(--font-size-md);color:var(--color-text-muted);margin:0 0 1.5rem}.auto-login-splash__dots{gap:.5rem;display:flex}.auto-login-splash__dot{background:var(--color-primary);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite auto-login-splash-bounce}@keyframes auto-login-splash-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes auto-login-splash-bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.social-login-button{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;transition:all .3s;display:inline-flex;box-shadow:0 2px 8px #0000001a}.social-login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.social-login-button:active:not(:disabled){transform:translateY(0)}.social-login-button:disabled{opacity:.6;cursor:not-allowed}.social-login-button svg{width:55%;height:55%}.social-login-button--kakao{background:#fee500}.social-login-button--apple{background:#000}.social-login-button--apple svg path{fill:#fff}.social-login-row{justify-content:center;gap:1rem;margin:1rem 0;display:flex}.social-login-row--stacked{flex-direction:column}.social-login-button--wide{border-radius:var(--radius-2xl);width:100%;height:44px;font-family:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);gap:.5rem}.social-login-button--wide.social-login-button--apple{color:#fff}.social-login-button--wide svg{flex-shrink:0;width:20px;height:20px}.kakao-wide-image-button{border-radius:var(--radius-lg);cursor:pointer;background-color:#fee500;border:none;width:100%;padding:0;display:block}.kakao-wide-image-button:disabled{cursor:not-allowed;opacity:.6}.kakao-wide-image-button img{object-fit:contain;width:100%;height:45px;display:block}.form-page-topbar{padding:0 12px;padding-top:env(safe-area-inset-top);padding-left:calc(12px + env(safe-area-inset-left));padding-right:calc(12px + env(safe-area-inset-right));height:var(--top-nav-height);border-bottom:1px solid var(--color-border-muted);background:var(--color-surface);z-index:20;flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}.form-page-topbar__back{cursor:pointer;background:0 0;border:none;justify-content:center;justify-self:start;align-items:center;width:44px;height:44px;padding:0;font-size:18px;display:flex}.form-page-topbar__title{text-align:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);white-space:nowrap;grid-column:2}.form-page-topbar__action{border-radius:var(--radius-md);height:32px;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);white-space:nowrap;cursor:pointer;background:0 0;border:none;flex-shrink:0;grid-column:3;justify-self:end;padding:0 12px}.form-page-topbar__action--dark{color:var(--color-text-strong)}.form-page-topbar__action:active{opacity:.6}.form-page-topbar__action:disabled{opacity:.5;cursor:not-allowed}.form-page-center{flex:1;justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.form-page-center.form-page-center--top{align-items:flex-start;padding:12px}.form-page-center.form-page-center--fill{align-items:stretch;width:100%;min-height:0;padding-bottom:12px}.form-page-plain{width:100%;max-width:480px}.form-page-plain--fill{flex-direction:column;flex:1;min-height:0;margin:0 auto;display:flex}.form-page{background:var(--color-surface);border-radius:var(--radius-2xl);width:100%;max-width:420px;box-shadow:var(--shadow-sm);padding:2rem}.form-page--flat{box-shadow:none;background:0 0;border-radius:0;max-width:480px;padding:1.5rem;animation:.4s ease-out login-page-in}.form-page-section{margin-top:16px;animation:.4s ease-out login-page-in}#reset-password-form .field label{color:var(--color-text-strong)}@keyframes login-page-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-page__form .field input,.form-page--flat .field input,.form-page-plain .field input{border-radius:var(--radius-2xl);border-width:1px;height:38px;padding:0 1rem;transition:border-color .2s,box-shadow .2s}.login-page__form .field__input-wrap input,.form-page--flat .field__input-wrap input,.form-page-plain .field__input-wrap input{padding-right:2.5rem}.login-page__form .field__input-wrap--trailing-wide input,.form-page--flat .field__input-wrap--trailing-wide input,.form-page-plain .field__input-wrap--trailing-wide input{padding-right:4.1rem}.login-page__form .field__input-wrap--leading input,.form-page--flat .field__input-wrap--leading input,.form-page-plain .field__input-wrap--leading input{padding-left:2.75rem}.login-page__form .field__leading-icon,.form-page--flat .field__leading-icon,.form-page-plain .field__leading-icon{left:1rem}.login-page__form .field__icon-group,.form-page--flat .field__icon-group,.form-page-plain .field__icon-group{right:.5rem}.login-page__form .field input:hover:not(:disabled):not(:read-only),.form-page--flat .field input:hover:not(:disabled):not(:read-only),.form-page-plain .field input:hover:not(:disabled):not(:read-only){border-color:var(--color-primary)}.login-page__form .field input:focus,.form-page--flat .field input:focus,.form-page-plain .field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-surface);outline:none}.login-page__form .field--invalid input:hover:not(:disabled):not(:read-only),.form-page--flat .field--invalid input:hover:not(:disabled):not(:read-only),.form-page-plain .field--invalid input:hover:not(:disabled):not(:read-only),.login-page__form .field--invalid input:focus,.form-page--flat .field--invalid input:focus,.form-page-plain .field--invalid input:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-surface)}.form-page-plain .search-row input{border-radius:var(--radius-2xl);border-width:1px;height:38px;padding:0 1rem;transition:border-color .2s,box-shadow .2s}.form-page-plain .search-row input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-surface);outline:none}.form-page-plain .search-row button{border-radius:var(--radius-2xl);height:38px}.form-page-plain .dropdown{width:100%;display:block}.form-page-plain .dropdown__trigger,.form-page-plain .form-picker-trigger{border:2px solid var(--color-border);border-radius:var(--radius-2xl);height:38px;padding:0 1rem;transition:border-color .2s,box-shadow .2s}.form-page-plain .dropdown__trigger:hover,.form-page-plain .form-picker-trigger:hover{border-color:var(--color-primary)}.form-page-plain .dropdown__trigger:focus,.form-page-plain .form-picker-trigger:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-surface);outline:none}@media (width<=480px){.form-page-center{padding:1.5rem 1rem}}.form-page-center h1{font-size:var(--font-size-2xl);margin:0 0 8px}.form-page h1.login-page__title{font-size:30px;font-weight:var(--font-weight-bold);letter-spacing:-.03em;background-image:linear-gradient(var(--color-primary), var(--color-primary));background-position:0 100%;background-repeat:no-repeat;background-size:100% 30%;margin-bottom:0;display:inline-block}.login-page__subtitle{color:var(--color-text-muted);margin:8px 0 2.5rem;font-size:16px}.form-field{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.form-field label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.form-field input,.form-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.55rem .7rem}.form-field input:disabled,.form-field input:read-only{background:var(--color-surface-muted);color:var(--color-text-subtle);cursor:not-allowed}.form-picker-trigger{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;font-family:inherit;font-size:var(--font-size-md);color:var(--color-text-body);text-align:left;justify-content:space-between;align-items:center;padding:.55rem .7rem;display:flex}.form-picker-trigger__chevron{color:var(--color-text-subtle);font-size:var(--font-size-xs);flex-shrink:0}.form-picker-trigger--placeholder{color:var(--color-text-subtle)}.form-field__input-wrap{display:flex;position:relative}.form-field__input-wrap input{width:100%;padding-right:2.25rem}.form-field__input-wrap--password input{padding-right:4.1rem}.form-field__icon-group{align-items:center;gap:.1rem;display:flex;position:absolute;top:0;bottom:0;right:.25rem}.form-field__icon-btn{color:var(--color-text-subtle);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.3rem;display:flex}.form-field__icon-btn svg{width:16px;height:16px}.form-field__row{justify-content:space-between;align-items:center;margin:0 0 1rem;display:flex}.form-field__checkbox{font-size:var(--font-size-sm);color:var(--color-text-muted);cursor:pointer;align-items:center;gap:.4rem;display:flex}.form-field__checkbox input{appearance:none;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:4px;flex-shrink:0;place-content:center;width:18px;height:18px;margin:0;transition:border-color .15s,background-color .15s;display:inline-grid}.form-field__checkbox input:after{content:"";border:solid var(--color-on-primary);border-width:0 2px 2px 0;width:5px;height:9px;transition:transform .15s;transform:rotate(45deg)translate(-1px,-1px)scale(0)}.form-field__checkbox input:checked{background-color:#000;border-color:#000}.form-field__checkbox input:checked:after{transform:rotate(45deg)translate(-1px,-1px)scale(1)}.form-field__checkbox:hover input{border-color:var(--color-primary)}.form-field__forgot-link{font-size:var(--font-size-sm);color:#666;text-decoration:none}.form-search-row{gap:.5rem;display:flex}.form-search-row input{border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1;padding:.55rem .7rem}.form-search-row input:read-only{background:var(--color-surface-muted);color:var(--color-text-subtle)}.form-search-row button{border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--font-weight-semibold);white-space:nowrap;border:none;padding:.55rem 1rem}.form-search-row button:disabled{opacity:.6;cursor:not-allowed}.form-error{color:var(--color-danger);font-size:var(--font-size-sm);margin-bottom:1rem}.signup-address-form .search-row button{background:var(--color-text-strong);color:var(--color-surface)}.signup-profile-form .field label{color:var(--color-text-strong)}.form-page-cta{width:100%;margin-top:auto;margin-bottom:24px}.form-page__footer{font-size:var(--font-size-sm);text-align:center;color:var(--color-text-muted);margin-top:1rem}.form-page__footer-highlight{color:var(--color-primary);font-weight:var(--font-weight-semibold);text-decoration:none}.form-page__footer-highlight:hover{text-decoration:underline}.form-section-hint{color:var(--color-text-subtle);margin:.5rem 0 1rem;font-size:.78rem}.modal .form-section-hint{font-size:14px;line-height:1.6}.form-divider{color:var(--color-text-subtle);font-size:var(--font-size-xs);align-items:center;gap:.75rem;margin:1.25rem 0 1rem;display:flex}.login-page__form+.form-divider{margin-top:2.5rem}.form-divider:before,.form-divider:after{content:"";background:var(--color-border-muted);flex:1;height:1px}.legal-page p.profile-edit-screen-title{font-size:1.375rem;font-weight:var(--font-weight-bold);color:var(--color-text-strong);margin:0 0 1.25rem;line-height:1.35}.signup-flow{flex-direction:column;flex:1;min-height:0;display:flex}.signup-flow__header{padding:0 12px;padding-top:env(safe-area-inset-top);padding-left:calc(12px + env(safe-area-inset-left));padding-right:calc(12px + env(safe-area-inset-right));height:var(--top-nav-height);border-bottom:1px solid var(--color-border-muted);background:var(--color-surface);z-index:20;align-items:center;display:flex;position:sticky;top:0}.signup-flow__back{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:18px;display:flex}.signup-flow__title{text-align:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);flex:1;margin-right:44px}.step-progress-bar{border-radius:var(--radius-pill);margin-bottom:1.5rem;display:flex;overflow:hidden}.step-progress-bar__segment{background:var(--color-border-subtle);flex:1;height:4px}.step-progress-bar__segment--filled{background:var(--color-primary)}.requirement-checklist{flex-wrap:wrap;gap:4px 12px;margin:-8px 0 20px;display:flex}.requirement-checklist__item{font-size:var(--font-size-sm);color:var(--color-text-subtle);align-items:center;gap:4px;transition:color .15s;display:flex}.requirement-checklist__icon{flex-shrink:0;width:15px;height:15px}.requirement-checklist__item--valid{color:var(--color-primary)}.tooltip{background:var(--color-danger);color:var(--color-on-primary);font-size:var(--font-size-sm);line-height:var(--line-height-tight);border-radius:var(--radius-md);box-shadow:var(--shadow-float);opacity:0;pointer-events:none;z-index:5;white-space:nowrap;padding:.4rem .65rem;transition:transform .15s,opacity .15s;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-4px)}.tooltip--open{opacity:1;transform:translateY(0)}.tooltip:before{content:"";border:5px solid #0000;border-bottom-color:var(--color-danger);position:absolute;bottom:100%;left:14px}.check-circle{border:2px solid var(--color-border);background:var(--color-surface);border-radius:50%;flex-shrink:0;display:inline-block;position:relative}.check-circle--sm{border-width:1.5px;width:20px;height:20px}.check-circle--md{width:28px;height:28px}.check-circle--checked{border-color:var(--color-primary);background:var(--color-primary)}.check-circle--checked:after{content:"";border-right:2px solid var(--color-on-primary);border-bottom:2px solid var(--color-on-primary);position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.check-circle--sm.check-circle--checked:after{width:5px;height:9px}.check-circle--md.check-circle--checked:after{width:6px;height:11px}.legal-page{width:100%;max-width:720px;margin:2rem auto;padding:0 1rem 3rem}.legal-page h1{font-size:var(--font-size-xl);border-bottom:2px solid var(--color-primary);margin-bottom:1.5rem;padding-bottom:1rem}.legal-page h2{font-size:var(--font-size-lg);margin:1.5rem 0 .6rem}.legal-page p{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-body);margin:0 0 .75rem}.legal-page p.form-error,.legal-page p.field__error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.legal-page ul{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-body);margin:0 0 .75rem;padding-left:1.25rem}.legal-page li{margin-bottom:.4rem}.legal-page li ul{margin-top:.4rem}.legal-page strong{color:var(--color-text-strong)}.legal-page a{color:var(--color-primary);text-decoration:none}.legal-page__meta{font-size:var(--font-size-sm);color:var(--color-text-subtle);margin-bottom:1.5rem}.legal-page__card{border:1px solid var(--color-border-muted);border-radius:var(--radius-xl);background:var(--color-surface);margin-top:1rem;padding:1.1rem 1.25rem}.legal-page__card h2{margin-top:0}.signup-terms-page__list{width:100%;margin-top:8px}.signup-terms-page__all{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:12px 0;display:flex}.signup-terms-page__all strong{font-size:var(--font-size-md);color:var(--color-text-strong)}.signup-terms-page__divider{background:var(--color-border);height:1px;margin:4px 0 8px}.signup-terms-page__row{justify-content:space-between;align-items:center;padding:10px 0;display:flex}.signup-terms-page__item{cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-body);text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:0;display:flex}.signup-terms-page__view{cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;padding:0}.signup-terms-page__doc-overlay{z-index:100;background:var(--color-surface);flex-direction:column;display:flex;position:fixed;inset:0}.signup-terms-page__doc{flex:1;min-height:0;padding:0 20px;overflow-y:auto}.signup-terms-page__doc .legal-page{max-width:none;margin:0;padding:20px 0}.signup-terms-page__doc-confirm{width:calc(100% - 40px);margin:12px 20px calc(20px + env(safe-area-inset-bottom));flex-shrink:0}.search-row{gap:.5rem;display:flex}.search-row input{border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-md);flex:1;padding:.55rem .7rem}.search-row input:read-only{background:var(--color-surface-muted);color:var(--color-text-subtle)}.search-row button{border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;border:none;padding:.55rem 1rem}.search-row--merged{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:0;overflow:hidden}.search-row--merged:focus-within{border-color:var(--color-text-strong)}.search-row--merged input{border:none;border-radius:0;outline:none;min-width:0}.search-row.search-row--merged .search-row__icon-button{color:var(--color-text-strong);background:0 0;border-radius:0;justify-content:center;align-items:center;padding:0 .75rem;display:inline-flex}.search-row__icon-button svg{width:1.15rem;height:1.15rem}.search-row--dark button{background:var(--color-text-strong);color:var(--color-surface)}.search-row button:disabled{opacity:.6;cursor:not-allowed}.address-search-panel{background:var(--color-surface);z-index:56;flex-direction:column;transition:transform .25s;display:flex;position:fixed;inset:0;transform:translateY(100%)}.address-search-panel--open{transform:translateY(0)}.address-search-panel__topbar{padding:0 4px;padding-top:env(safe-area-inset-top);padding-left:calc(4px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right));height:var(--top-nav-height);border-bottom:1px solid var(--color-border-muted);background:var(--color-surface);flex-shrink:0;align-items:center;gap:.5rem;display:flex}.address-search-panel__back{cursor:pointer;width:44px;height:44px;color:var(--color-text-strong);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:26px;line-height:1;display:flex}.address-search-panel__title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.address-search-panel__body{flex:1;min-height:0;overflow:hidden}.address-search-panel__embed{width:100%;height:100%}.address-search-panel__error{text-align:center;min-height:0;color:var(--color-danger);background:var(--color-danger-surface);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:1.25rem;display:flex}.birthday-select__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-strong);margin-bottom:8px;display:block}.birthday-select__row{gap:8px;width:100%;display:flex}.birthday-select__row .dropdown{flex:1;min-width:0}.birthday-select__row .dropdown__trigger{border:1px solid var(--color-border);border-radius:var(--radius-2xl);width:100%;height:38px;padding:0 .75rem}.birthday-select__row .dropdown__menu{z-index:2}.birthday-picker{z-index:10000;background:var(--color-surface);flex-direction:column;display:flex;position:fixed;inset:0}.birthday-picker__header{height:calc(44px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 12px 0;border-bottom:1px solid var(--color-border-muted);flex-shrink:0;grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.birthday-picker__header h2{text-align:center;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);grid-column:2;margin:0}.birthday-picker__back{appearance:none;cursor:pointer;width:44px;height:44px;color:var(--color-text-strong);background:0 0;border:0;grid-column:1;justify-content:center;align-items:center;padding:0;font-size:18px;line-height:1;display:inline-flex}.birthday-picker__body{flex:1;padding:24px 20px 0;overflow:visible}.birthday-picker__subtitle{font-size:22px;font-weight:var(--font-weight-bold);color:var(--color-text-strong);margin:0 0 20px;line-height:1.35}.birthday-picker__footer{padding:24px 20px max(36px, env(safe-area-inset-bottom));flex-shrink:0}.segmented{border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface-muted);gap:2px;width:100%;padding:3px;display:flex}.segmented__item{border-radius:var(--radius-md);height:32px;color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:0 0;border:none;flex:1}.segmented__item--active{background:var(--color-surface);color:var(--color-text-strong);box-shadow:var(--shadow-sm)}.kakao-loading{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.kakao-loading__badge{border-radius:var(--radius-2xl);background:#fee500;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:1.25rem;animation:2s ease-in-out infinite kakao-loading-float;display:flex;box-shadow:0 8px 24px #fee50066}.kakao-loading__icon{fill:#3c1e1e;width:42px;height:42px}.kakao-loading__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-strong);letter-spacing:-.02em;margin:0 0 .4rem}.kakao-loading__subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1.75rem}.kakao-loading__dots{gap:.5rem;margin-bottom:1.5rem;display:flex}.kakao-loading__dot{background:#fee500;border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite kakao-loading-bounce;box-shadow:0 4px 12px #fee50080}.kakao-loading__progress{background:var(--color-border-subtle);border-radius:var(--radius-pill);width:100%;max-width:220px;height:5px;overflow:hidden}.kakao-loading__progress-fill{border-radius:var(--radius-pill);background:#fee500;width:0;height:100%;animation:2s ease-in-out infinite kakao-loading-progress}@keyframes kakao-loading-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes kakao-loading-bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}@keyframes kakao-loading-progress{0%{width:0%}50%{width:70%}to{width:100%}}.ad-banner{aspect-ratio:3;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-muted);border-radius:var(--radius-xl);width:min(342px,100%);color:var(--color-text-body);box-shadow:var(--shadow-sm);margin:0 auto;text-decoration:none;display:block;position:relative;overflow:hidden}.ad-banner--cta{background:#0f3d24;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 16px;display:flex}.ad-banner--cta:before,.ad-banner--cta:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.ad-banner--cta:after{background:#1f9d5559;width:130px;height:130px;top:-45px;right:-30px}.ad-banner--cta:before{background:#1f9d5533;width:160px;height:160px;bottom:-60px;left:-45px}.ad-banner__cta-copy{z-index:1;text-align:left;flex-direction:column;gap:.35rem;min-width:0;display:flex;position:relative}.ad-banner__cta-copy strong{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:#fff;letter-spacing:-.01em}.ad-banner__cta-copy span{font-size:var(--font-size-xs);color:#ffffffc7}.ad-banner__cta-button{z-index:1;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);white-space:nowrap;flex-shrink:0;padding:.7rem 1.3rem;position:relative}.ad-banner__image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ad-banner__text{background:linear-gradient(#0000,#000000ad);flex-direction:column;gap:.1rem;min-width:0;padding:.6rem .75rem;display:flex;position:absolute;bottom:0;left:0;right:0}.ad-banner__business{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#fff;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ad-banner__benefit{font-size:var(--font-size-xs);color:#ffffffd9;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ad-banner__label{color:#fff;border-radius:var(--radius-sm);background:#00000073;padding:1px 5px;font-size:.65rem;position:absolute;top:.5rem;right:.5rem}.ad-banner--loading .skeleton{position:absolute;inset:0}.region-map{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.region-map__canvas-wrap{border-radius:var(--radius-xl);background:var(--color-surface-muted);position:relative;overflow:hidden}.region-map__canvas{width:100%;height:min(20rem,45vh)}.region-map__hover{font-size:var(--font-size-xs);color:var(--color-text-body);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);pointer-events:none;flex-direction:column;gap:.1rem;padding:.4rem .65rem;display:flex;position:absolute;top:.5rem;left:.5rem}.region-map__legend{font-size:var(--font-size-xs);color:var(--color-text-subtle);flex-wrap:wrap;gap:.35rem .85rem;margin:0;padding:0;list-style:none;display:flex}.region-map__legend li{align-items:center;gap:.3rem;display:flex}.region-map__swatch{border-radius:var(--radius-sm);width:.85rem;height:.85rem}.region-map__swatch--0{background:var(--color-region-0)}.region-map__swatch--1{background:var(--color-region-1)}.region-map__swatch--2{background:var(--color-region-2)}.region-map__swatch--3{background:var(--color-region-3)}.region-map__swatch--owner{background:var(--color-region-0);border:2px solid var(--color-region-owner-stroke)}.tabs{gap:.5rem;display:flex}.tabs button{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;padding:.4rem 1rem}.tabs button.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.tabs--underline{border-bottom:1px solid var(--color-border-muted);gap:0}.tabs--underline button{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex:1;margin-bottom:-1px;padding:.75rem 0}.tabs--underline button.active{color:var(--color-text-strong);font-weight:var(--font-weight-semibold);border-bottom-color:var(--color-text-strong);background:0 0}.ranking-page{width:100%;max-width:560px;margin:0 auto 2rem;padding:1rem 1rem 0}.ranking-page>.ad-banner{width:100%;max-width:none;margin:0 0 1rem}.ranking-page h1{font-size:var(--font-size-xl)}.ranking-page__tabs{margin-bottom:1rem}.ranking-page__region-title{font-size:var(--font-size-lg);margin:0 0 .75rem}.ranking-page__owner{background:var(--color-surface);border-radius:var(--radius-xl);flex-direction:column;gap:.15rem;margin-bottom:1rem;padding:.85rem 1rem;display:flex}.ranking-page__owner-title{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.ranking-page__owner-nickname{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.ranking-page__owner-meta{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.ranking-page__owner-empty{font-size:var(--font-size-sm);color:var(--color-text-subtle)}.ranking-page__list{background:var(--color-surface);border-radius:var(--radius-xl);margin:0;padding:0;list-style:none;overflow:hidden}.ranking-page__list li{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:.75rem;padding:.7rem 1rem;display:flex}.ranking-page__empty{justify-content:center}.ranking-page__rank{font-weight:var(--font-weight-bold);color:var(--color-primary);width:1.5rem}.ranking-page__nickname{font-weight:var(--font-weight-semibold);flex:1}.ranking-page__level{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.ranking-page__score{font-size:var(--font-size-sm);color:var(--color-text-body)}.review-report-page__list{flex-direction:column;display:flex}.review-report-page__list-item{border:none;border-bottom:1px solid var(--color-border);width:100%;font-family:inherit;font-size:var(--font-size-base);color:var(--color-text-body);text-align:left;cursor:pointer;background:0 0;align-items:center;padding:.9rem .2rem;display:flex}.review-report-page__list-item:last-child{border-bottom:none}.review-report-page__list-item:active{background:var(--color-surface-muted)}.review-report-page__detail{box-sizing:border-box;resize:vertical;width:100%;font:inherit}.toilet-reviews-page{flex:1;min-height:0;padding:0 1.25rem 1.5rem;overflow-y:auto}.toilet-reviews-page__summary{align-items:baseline;gap:.4rem;padding:1rem 0;display:flex}.toilet-reviews-page__summary-star{color:var(--color-primary);font-size:var(--font-size-lg)}.toilet-reviews-page__summary-score{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.toilet-reviews-page__summary-count{color:var(--color-text-muted);font-size:var(--font-size-sm)}.toilet-reviews-page__dist{flex-direction:column;gap:.4rem;padding:0 0 .85rem;display:flex}.toilet-reviews-page__dist-row{grid-template-columns:1.15rem 1fr 2.4rem;align-items:center;gap:.5rem;display:grid}.toilet-reviews-page__dist-score{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:right}.toilet-reviews-page__dist-track{background:var(--color-surface-muted);border-radius:var(--radius-pill);height:.45rem;overflow:hidden}.toilet-reviews-page__dist-fill{height:100%;width:var(--dist-width,0%);background:var(--color-primary);border-radius:var(--radius-pill)}.toilet-reviews-page__dist-percent{font-size:var(--font-size-xs);color:var(--color-text-subtle);text-align:right}.toilet-reviews-page__toolbar{justify-content:space-between;align-items:center;gap:.75rem;padding:.15rem 0 .75rem;display:flex}.toilet-reviews-page__photo-filter{color:var(--color-text-body);font-family:inherit;font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:0;display:flex}.toilet-reviews-page__sort{flex:0 0 8.75rem;width:8.75rem;margin-left:auto}.toilet-reviews-page__sort .dropdown{width:100%;display:block}.toilet-reviews-page__sort .dropdown__menu{left:auto;right:0}.toilet-reviews-page__error{color:var(--color-text-subtle);font-size:var(--font-size-sm);text-align:center;padding:1.5rem 0}.toilet-reviews-page__list{margin:0;padding:0;list-style:none}.toilet-reviews-page__item{border-bottom:1px solid var(--color-border);padding:1.25rem 0}.toilet-reviews-page__item:last-child{border-bottom:none}.toilet-reviews-page__item-header{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.toilet-reviews-page__item-author{flex-wrap:wrap;align-items:baseline;gap:.5rem;margin-bottom:.4rem;display:flex}.toilet-reviews-page__item-author-name{font-weight:var(--font-weight-semibold)}.toilet-reviews-page__item-author-stats,.toilet-reviews-page__item-date{color:var(--color-text-muted);font-size:var(--font-size-sm)}.toilet-reviews-page__item-stale{color:var(--color-danger);border:1px solid var(--color-danger);border-radius:var(--radius-sm);padding:0 4px;font-size:.75rem}.toilet-reviews-page__item-private{margin-top:.5rem}.toilet-reviews-page__item-comment{font-size:var(--font-size-md);color:var(--color-text-body);line-height:var(--line-height-relaxed);margin:.6rem 0 0}.toilet-reviews-page__item-photos{gap:.5rem;margin-top:.75rem;display:grid}.toilet-reviews-page__item-photos--single{grid-template-columns:1fr}.toilet-reviews-page__item-photos--multi{grid-template-columns:repeat(3,1fr)}.toilet-reviews-page__item-photo{object-fit:cover;border-radius:var(--radius-md);width:100%;display:block}.toilet-reviews-page__item-photos--single .toilet-reviews-page__item-photo{max-height:360px}.toilet-reviews-page__item-photos--multi .toilet-reviews-page__item-photo{aspect-ratio:1}.toilet-reviews-page__helpful{margin-top:1rem}.toilet-reviews-page__helpful-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.toilet-reviews-page__helpful-label{font-size:var(--font-size-sm);color:var(--color-text-body)}.toilet-reviews-page__helpful-buttons{gap:.5rem;margin-top:.6rem;display:flex}.toilet-reviews-page__vote-btn{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;flex:1;padding:.55rem 0}.toilet-reviews-page__vote-btn:disabled{opacity:.6;cursor:not-allowed}.toilet-reviews-page__vote-btn--active{border-color:var(--color-primary);background:var(--color-primary-surface);color:var(--color-primary)}.toilet-reviews-page__item-report{color:var(--color-text-subtle);font-size:var(--font-size-xs);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0}.contribution-credit-section__list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.contribution-credit-section__list .contribution-credit-section__item{border-bottom:1px solid var(--color-border-subtle);flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;padding-bottom:.6rem;display:flex}.contribution-credit-section__meta{flex-direction:column;gap:.2rem;min-width:0;display:flex}.contribution-credit-section__reason{font-weight:var(--font-weight-semibold);font-size:var(--font-size-md)}.contribution-credit-section__date{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.contribution-credit-section__amount{font-weight:var(--font-weight-bold);font-size:var(--font-size-md);color:var(--color-primary);flex-shrink:0}.contribution-credit-section__more{margin-top:1rem}.region-guest-section{flex-direction:column;gap:1.5rem;display:flex}.region-guest-section__divided{border-top:1px solid var(--color-border);padding-top:1.5rem}.region-guest-section__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 .5rem}.region-guest-section__title-row{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.625rem;display:flex}.region-guest-section__title-row .region-guest-section__title{margin:0}.region-guest-section__count{font-size:var(--font-size-sm);color:var(--color-text-subtle);flex-shrink:0}.region-guest-section__desc{font-size:var(--font-size-sm);color:var(--color-text-subtle);margin:0 0 .75rem}.region-guest-section__form{flex-direction:column;gap:.5rem;display:flex}.region-guest-section__form .field input,.region-guest-section__form .dropdown__trigger,.region-guest-section__form .button{box-sizing:border-box;height:38px;padding-top:0;padding-bottom:0}.region-guest-section__form .dropdown__trigger{margin-bottom:1rem}.region-guest-section__list{flex-direction:column;gap:.6rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.region-guest-section__list .region-guest-section__item{border-bottom:1px solid var(--color-border-subtle);flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;padding-bottom:.6rem;display:flex}.region-guest-section__meta{flex-direction:column;gap:.2rem;min-width:0;display:flex}.region-guest-section__name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-md)}.region-guest-section__sub{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.my-page{width:100%;max-width:560px;margin:2rem auto;padding:0 1rem 3rem}.my-page__profile-card{background:var(--color-surface);border-radius:var(--radius-xl);align-items:center;gap:1rem;margin-bottom:1rem;padding:1.25rem 1.5rem;display:flex}.my-page__avatar{border-radius:var(--radius-pill);background:var(--color-surface-muted);flex-shrink:0;justify-content:center;align-items:center;width:4.5rem;height:4.5rem;display:flex;overflow:hidden}.my-page__avatar-icon{width:2.5rem;height:2.5rem;color:var(--color-text-muted)}.my-page__avatar-image{object-fit:cover;width:100%;height:100%}.my-page__profile-info{flex-direction:column;flex:1;min-width:0;display:flex}.my-page__profile-edit{color:var(--color-text-muted);flex-shrink:0}.my-page__nickname-row{align-items:center;gap:.6rem;display:flex}.my-page__nickname{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-strong);margin:0}.my-page__stats-row{align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.my-page__stat-inline{align-items:baseline;gap:.3rem;display:inline-flex}.my-page__stat-value{font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.my-page__stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.my-page__tabs{margin-bottom:1rem}.my-page__section{background:var(--color-surface);border-radius:var(--radius-xl);margin-bottom:1rem;padding:1.25rem 1.5rem}.my-page__section--plain{background:0 0;border-radius:0;padding:.5rem 0}.my-page__review-filters{scrollbar-width:none;gap:.4rem;margin-bottom:1rem;display:flex;overflow-x:auto}.my-page__review-filters::-webkit-scrollbar{display:none}.my-page__review-filters .chip{flex-shrink:0}.my-page__section ul{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.my-page__section li{border-bottom:1px solid var(--color-border-subtle);flex-direction:column;padding-bottom:.6rem;display:flex}.my-page__review-item{--review-thumb-size:3.5rem;width:100%;min-height:calc(var(--review-thumb-size) + .8rem);color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:.75rem;padding:.4rem 0;display:flex}.my-page__review-thumb{width:var(--review-thumb-size);height:var(--review-thumb-size);border-radius:var(--radius-lg);object-fit:cover;background:var(--color-surface-muted);flex-shrink:0}.my-page__review-item-body{flex-direction:column;flex:1;min-width:0;display:flex}.my-page__item-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-md)}.my-page__review-item .my-page__item-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.my-page__review-comment{min-height:calc(var(--font-size-sm) * var(--line-height-normal));font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-body);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.my-page__item-sub{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.my-page__filter-star{color:var(--color-primary)}.chip--selected .my-page__filter-star{color:inherit}.my-review-detail-page{padding:1.25rem 1.25rem 1.5rem}.my-review-detail-page__place-row{justify-content:space-between;align-items:center;gap:.6rem;margin:0 0 .45rem;display:flex}.my-review-detail-page__place-row .icon-button{flex-shrink:0}.my-review-detail-page__place{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:.15rem;margin:0;padding:0;display:inline-flex}.my-review-detail-page__place-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);overflow:hidden}.my-review-detail-page__place-chevron{width:1.15rem;height:1.15rem;color:var(--color-text-subtle);flex-shrink:0}.my-review-detail-page__header{flex-wrap:wrap;align-items:center;gap:.6rem;min-width:0;display:flex}.my-review-detail-page__date{color:var(--color-text-muted);font-size:var(--font-size-sm)}.my-review-detail-page__private{margin-top:.5rem}.my-review-detail-page__comment{font-size:var(--font-size-md);color:var(--color-text-body);line-height:var(--line-height-relaxed);margin:.6rem 0 0}.my-review-detail-page__photos{gap:.5rem;margin-top:.75rem;display:grid}.my-review-detail-page__photos--single{grid-template-columns:1fr}.my-review-detail-page__photos--multi{grid-template-columns:repeat(3,1fr)}.my-review-detail-page__photo{object-fit:cover;border-radius:var(--radius-md);width:100%;display:block}.my-review-detail-page__photos--single .my-review-detail-page__photo{max-height:360px}.my-review-detail-page__photos--multi .my-review-detail-page__photo{aspect-ratio:1}.my-review-detail-page__menu{flex-direction:column;gap:.5rem;display:flex}.my-review-detail-page__menu-option{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-body);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;padding:.75rem 1rem}.my-review-detail-page__menu-option:active{background:var(--color-surface-muted)}.my-review-detail-page__menu-option--danger{color:var(--color-danger)}.my-review-detail-page__actions{gap:.5rem;margin-top:1.5rem;display:flex}.my-review-detail-page__actions .button{flex:1}.my-review-detail-page__delete-hint{font-size:var(--font-size-md);color:var(--color-text-body);line-height:var(--line-height-relaxed);margin:0 0 1rem}.level-info-page__card--current{border-color:var(--color-primary)}.level-info-page__name{align-items:center;gap:.5rem;display:flex}.level-info-page__name--current{color:var(--color-primary)}.level-info-page__current-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-pill);padding:.05rem .45rem}.legal-page p.level-info-page__footnote{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:12px}.image-upload-field{flex-direction:column;gap:6px;min-width:0;display:flex}.image-upload-field__header{justify-content:space-between;align-items:center;gap:8px;display:flex}.image-upload-field__caption{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.image-upload-field__reset{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;padding:2px 8px}.image-upload-field__reset:disabled{opacity:.5;cursor:not-allowed}.image-upload-field--invalid .image-upload-field__box{border-color:var(--color-danger)}.image-upload-field__box{border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-subtle);min-height:96px;color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px;display:flex;overflow:hidden}.image-upload-field__box input{display:none}.image-upload-field__box--filled{border-style:solid;padding:0}.image-upload-field__thumb{object-fit:cover;width:100%;height:96px}.bottom-sheet-select__list{max-height:60vh;margin:0;padding:0;list-style:none;overflow-y:auto}.bottom-sheet-select__list .dropdown__option{font-size:var(--font-size-md);padding:.85rem .6rem}@keyframes calendar-range-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.calendar-range{z-index:10000;background:var(--color-surface);flex-direction:column;animation:.22s ease-out calendar-range-slide-in;display:flex;position:fixed;inset:0}.calendar-range__header{height:calc(44px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 12px 0;border-bottom:1px solid var(--color-border-muted);flex-shrink:0;grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.calendar-range__header h2{text-align:center;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);grid-column:2;margin:0}.calendar-range__back{appearance:none;cursor:pointer;width:44px;height:44px;color:var(--color-text-strong);background:0 0;border:0;grid-column:1;justify-content:center;align-items:center;padding:0;font-size:18px;line-height:1;display:inline-flex}.calendar-range__body{flex:1;padding:20px 20px 0;overflow-y:auto}.calendar-range__subtitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-strong);line-height:var(--line-height-tight);margin:0 0 4px}.calendar-range__hint{font-size:var(--font-size-sm);color:var(--color-text-subtle);line-height:var(--line-height-normal);margin:0 0 20px}.calendar-range__nav{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.calendar-range__nav-label{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong)}.calendar-range__nav-btn{width:36px;height:36px;color:var(--color-text-strong);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.calendar-range__nav-btn:hover:not(:disabled){background:var(--color-surface-muted)}.calendar-range__nav-btn:disabled{opacity:.35;cursor:not-allowed}.calendar-range__weekdays,.calendar-range__week{grid-template-columns:repeat(7,1fr);display:grid}.calendar-range__weekdays{margin-bottom:4px}.calendar-range__weekdays span{text-align:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-subtle);padding:6px 0}.calendar-range__week{margin-bottom:24px}.calendar-range__cell{height:40px;position:relative}.calendar-range__cell--in-range{background:var(--color-primary-surface)}.calendar-range__cell--range-start{background:var(--color-primary-surface);border-radius:999px 0 0 999px}.calendar-range__cell--range-end{background:var(--color-primary-surface);border-radius:0 999px 999px 0}.calendar-range__day{appearance:none;width:40px;height:40px;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-body);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;margin:0 auto;display:flex}.calendar-range__day:disabled{color:var(--color-text-faint);cursor:not-allowed}.calendar-range__day--today{border:1px solid var(--color-primary)}.calendar-range__day--selected{background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--font-weight-semibold)}.calendar-range__summary{border-radius:var(--radius-md);background:var(--color-surface-subtle);text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:16px 0 0;padding:12px}.calendar-range__footer{padding:16px 20px max(36px, env(safe-area-inset-bottom));flex-shrink:0}.my-ads-list{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);margin-top:1.25rem;padding:1.25rem 1.1rem}.my-ads-list h2{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .9rem}.my-ads-list ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.my-ads-list__item{box-sizing:border-box;border-radius:var(--radius-lg);background:var(--color-surface-muted);width:100%;font-size:var(--font-size-sm);color:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .75rem;text-decoration:none;transition:background-color .15s;display:flex}.my-ads-list__item:hover,.my-ads-list__item:active{background:var(--color-surface-subtle)}.my-ads-list__item-main{flex:1;min-width:0}.my-ads-list__item-title{font-weight:var(--font-weight-semibold);color:var(--color-text-strong);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.my-ads-list__item-period{color:var(--color-text-subtle);margin-top:.25rem;font-size:.75rem;display:block}.my-ads-list__item-meta{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;display:flex}.my-ads-list__item-chevron{color:var(--color-text-subtle);line-height:1}.ad-apply-page{width:100%;max-width:520px;margin:0 auto;padding:1rem}.ad-apply-page__image-hint{letter-spacing:.02em;line-height:var(--line-height-relaxed)}.ad-apply-page__hero{background:var(--color-surface);border-radius:var(--radius-2xl);margin-bottom:1.25rem;padding:16px}.ad-apply-page__hero h1{font-size:var(--font-size-xl);color:var(--color-text-strong);margin:0 0 .4rem}.ad-apply-page__hero-lead{font-size:var(--font-size-sm);color:var(--color-text-body);line-height:var(--line-height-relaxed);margin:0}.ad-apply-page__partner-link{margin-top:.75rem}.ad-apply-page__pending-hint{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-danger);margin:.75rem 0 0}.ad-apply-page__hero-highlights{font-size:var(--font-size-sm);color:var(--color-text-body);line-height:var(--line-height-relaxed);margin:1rem 0 0;padding-left:1.1rem}.ad-apply-page__hero-highlights li{margin-bottom:.3rem}.ad-apply-page__hero-highlights strong{color:var(--color-text-strong)}.ad-apply-page__section{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);margin-bottom:1rem;padding:1.25rem 1.1rem}.ad-apply-page__section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .9rem}.ad-apply-page__field-label{margin-bottom:.35rem;display:block}.ad-apply-page__category-grid{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.ad-apply-page__upload-grid{grid-template-columns:1fr 1fr;gap:.6rem;min-width:0;margin-bottom:1rem;display:grid}.ad-apply-page__preview-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.ad-apply-page__preview-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted)}.ad-apply-page__preview-frame{border:1px solid var(--color-border-muted);border-radius:var(--radius-lg);overflow:hidden}.ad-apply-page__preview-chrome{background:var(--color-surface-muted);border-bottom:1px solid var(--color-border-muted);font-size:var(--font-size-xs);color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.ad-apply-page__preview-screen{background:var(--color-page-bg)}.ad-apply-page__preview-topbar{text-align:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);color:var(--color-text-body);background:var(--color-surface);border-bottom:1px solid var(--color-border-muted);padding:.75rem}.ad-apply-page__preview-body{flex-direction:column;align-items:center;gap:.6rem;padding:.75rem;display:flex}.ad-apply-page__preview-ghost{border-radius:var(--radius-md);background:var(--color-surface-muted);width:100%;max-width:342px;height:1.4rem}.ad-apply-page__preview-placeholder{background:var(--color-surface-muted);position:absolute;inset:0}.ad-apply-page__age-row{grid-template-columns:1fr auto 1fr;align-items:end;gap:.5rem;min-width:0;margin-bottom:1rem;display:grid}.ad-apply-page__age-row .field{min-width:0;margin-bottom:0}.ad-apply-page__age-row .field input{width:100%}.ad-apply-page__age-tilde{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-text-body);padding-bottom:.9rem}.org-apply-panel__lead{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-strong);margin:0 0 1rem}.org-apply-panel__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:1.5rem 0 .75rem}.org-apply-panel__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.org-apply-panel__item{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);flex-direction:column;gap:.2rem;padding:.7rem 1rem;display:flex}.org-apply-panel__title{align-items:center;gap:.4rem;display:flex}.org-apply-panel__meta{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.org-apply-panel__actions{justify-content:flex-end;gap:.5rem;display:flex}.partner-page{box-sizing:border-box;width:100%;max-width:720px;margin:0 auto;padding:1.25rem 1rem 3rem}.partner-page__tabs{margin-bottom:1rem}.ad-apply-detail__title-row{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.ad-apply-detail__title-row h1{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;overflow:hidden}.ad-apply-detail__section-title{margin-bottom:0}.ad-apply-detail__row{justify-content:space-between;gap:.75rem;padding:.65rem 0;display:flex}.ad-apply-detail__label{font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.ad-apply-detail__value{text-align:right;font-size:var(--font-size-sm);color:var(--color-text-body);word-break:break-word}.ad-apply-detail__confirm-hint{font-size:var(--font-size-md);line-height:var(--line-height-relaxed);color:var(--color-text-body);margin:0 0 1rem}.ad-apply-detail__confirm-actions{gap:.5rem;display:flex}.admin-nav{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.admin-dashboard-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-dashboard-page h1{font-size:var(--font-size-xl)}.admin-dashboard-page__tiles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.admin-dashboard-page__tile{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);color:inherit;flex-direction:column;gap:.4rem;padding:1rem;text-decoration:none;display:flex}.admin-dashboard-page__tile:hover{border-color:var(--color-primary);background:var(--color-primary-surface)}.admin-dashboard-page__tile-label{color:var(--color-text-subtle);font-size:.82rem}.admin-dashboard-page__tile-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.description-list{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin:0;overflow:hidden}.description-list__row{min-height:38.5px;display:flex}.description-list__row+.description-list__row{border-top:1px solid var(--color-border-subtle)}.description-list__label{background:var(--color-surface-subtle);border-right:1px solid var(--color-border-subtle);color:var(--color-text-muted);white-space:nowrap;flex:0 0 110px;align-content:center;padding:.5rem .75rem}.description-list__value{min-width:0;color:var(--color-text-body);overflow-wrap:anywhere;white-space:pre-wrap;flex:1;align-content:center;margin:0;padding:.5rem .75rem}.side-drawer{background:var(--color-surface);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;height:90%;box-shadow:var(--shadow-panel);padding-bottom:env(safe-area-inset-bottom);z-index:53;flex-direction:column;transition:transform .25s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.side-drawer--open{transform:translate(0)}.side-drawer__header{border-bottom:1px solid var(--color-border-muted);flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem .75rem 1.25rem;display:flex}.side-drawer__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.side-drawer__body{flex:auto;min-height:0;padding:.75rem 1.25rem 1.5rem;overflow-y:auto}@media (width>=768px){.side-drawer{width:480px;height:auto;padding-top:env(safe-area-inset-top);border-radius:0;top:0;left:auto;transform:translate(100%)}}.side-drawer--full{width:auto;height:auto;padding-top:env(safe-area-inset-top);border-radius:0;inset:0}.side-drawer--full.side-drawer--open{transform:translate(0)}.side-drawer--full .side-drawer__header{height:var(--top-nav-content-height);grid-template-columns:1fr auto 1fr;padding:0 12px;display:grid}.side-drawer--full .side-drawer__back{justify-self:start}.side-drawer--full .side-drawer__title{text-align:center;grid-column:2}.admin-ads-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-ads-page h1{font-size:var(--font-size-xl)}.admin-ads-page__lead{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-ads-page__filters{flex-wrap:wrap;align-items:flex-end;gap:.65rem;margin-bottom:1rem;display:flex}.admin-ads-page__field{min-width:10rem;font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;flex:10rem;gap:.3rem;display:flex}.admin-ads-page__field .dropdown{width:100%}.admin-ads-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-ads-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;width:100%;color:inherit;align-items:center;gap:.75rem;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-ads-page__row--active{border-color:var(--color-text-strong)}.admin-ads-page__thumb{border-radius:var(--radius-lg);object-fit:cover;background:var(--color-surface-muted);flex-shrink:0;width:72px;height:72px}.admin-ads-page__info{flex:1;min-width:0}.admin-ads-page__title-row{align-items:center;gap:.5rem;display:flex}.admin-ads-page__business{font-weight:var(--font-weight-bold)}.admin-ads-page__meta{font-size:var(--font-size-xs);color:var(--color-text-subtle);margin:.2rem 0 0}.admin-ads-page__detail{flex-direction:column;gap:1.25rem;display:flex}.admin-ads-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .75rem}.admin-ads-page__preview-image{aspect-ratio:3;object-fit:cover;border-radius:var(--radius-lg);background:var(--color-surface-muted);width:100%}.admin-ads-page__theme{gap:.4rem;margin-top:.5rem;display:flex}.admin-ads-page__region-save{justify-content:flex-end;margin-bottom:.75rem;display:flex}.admin-ads-page__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.admin-ads-page__confirm{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-ad-insights-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-ad-insights-page h1{font-size:var(--font-size-xl)}.admin-ad-insights-page__lead{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-ad-insights-page__filters{flex-wrap:wrap;align-items:flex-end;gap:.65rem;margin-bottom:1rem;display:flex}.admin-ad-insights-page__field{min-width:10rem;font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;flex:10rem;gap:.3rem;display:flex}.admin-ad-insights-page__field--search{flex:2 14rem}.admin-ad-insights-page__field .dropdown,.admin-ad-insights-page__field input{width:100%}.admin-ad-insights-page__field input{border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;color:var(--color-text-strong);background:var(--color-surface);padding:.55rem .7rem}.admin-ad-insights-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-ad-insights-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;width:100%;color:inherit;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-ad-insights-page__row--active{border-color:var(--color-text-strong)}.admin-ad-insights-page__title{font-size:var(--font-size-sm);color:var(--color-text-strong);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.admin-ad-insights-page__meta{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.admin-ad-insights-page__pager{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-ad-insights-page__detail{flex-direction:column;gap:1.25rem;display:flex}.admin-ad-insights-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .75rem}.admin-orgs-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-orgs-page h1{font-size:var(--font-size-xl)}.admin-orgs-page__lead,.admin-orgs-page__hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-orgs-page__filters{flex-wrap:wrap;align-items:flex-end;gap:.65rem;margin-bottom:1rem;display:flex}.admin-orgs-page__field{min-width:10rem;font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;flex:10rem;gap:.3rem;display:flex}.admin-orgs-page__field .dropdown{width:100%}.admin-orgs-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-orgs-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;width:100%;color:inherit;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-orgs-page__row--active{border-color:var(--color-text-strong)}.admin-orgs-page__title{font-size:var(--font-size-sm);color:var(--color-text-strong);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.admin-orgs-page__meta{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.admin-orgs-page__pager{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-orgs-page__detail{flex-direction:column;gap:1.25rem;display:flex}.admin-orgs-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .75rem}.admin-orgs-page__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.75rem;display:flex}.admin-notices-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-notices-page h1{font-size:var(--font-size-xl)}.admin-notices-page__lead,.admin-notices-page__hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-notices-page__card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);margin-bottom:1.5rem;padding:1rem}.admin-notices-page__card-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .75rem}.admin-notices-page__fields{flex-wrap:wrap;gap:.75rem;display:flex}.admin-notices-page__fields .field{flex:12rem;margin-bottom:0}.admin-notices-page__fields .dropdown{width:100%}.admin-notices-page__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.admin-notices-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-notices-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;width:100%;color:inherit;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-notices-page__row--active{border-color:var(--color-text-strong)}.admin-notices-page__title{font-size:var(--font-size-sm);color:var(--color-text-strong);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.admin-notices-page__meta,.admin-notices-page__excerpt{font-size:var(--font-size-xs);color:var(--color-text-subtle)}.admin-notices-page__excerpt{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.admin-notices-page__pager{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-notices-page__detail{flex-direction:column;gap:1.25rem;display:flex}.admin-notices-page__body{white-space:pre-wrap;font-size:var(--font-size-sm);color:var(--color-text-strong);margin:0}.admin-notices-page__error{color:var(--color-danger);font-size:var(--font-size-sm)}.profile-edit-history{border-top:1px solid var(--color-border-subtle);margin-top:.9rem;padding-top:.7rem}.profile-edit-history__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .4rem}.profile-edit-history__filter{max-width:10rem;margin-bottom:.75rem}.profile-edit-history__list{margin:0;padding:0;list-style:none}.profile-edit-history__row{font-size:var(--font-size-xs);color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.25rem .6rem;margin:0;padding:.35rem 0;display:flex}.profile-edit-history__row+.profile-edit-history__row{border-top:1px dashed var(--color-border-subtle)}.profile-edit-history__time{color:var(--color-text-faint);font-variant-numeric:tabular-nums}.profile-edit-history__field{font-weight:var(--font-weight-semibold);color:var(--color-text-body)}.profile-edit-history__change{align-items:center;gap:.35rem;min-width:0;display:inline-flex}.profile-edit-history__value{overflow-wrap:anywhere}.profile-edit-history__thumb{object-fit:cover;border-radius:var(--radius-pill);border:1px solid var(--color-border-subtle);width:1.75rem;height:1.75rem}.profile-edit-history__empty{font-size:var(--font-size-xs);color:var(--color-text-faint);margin:.25rem 0}.profile-edit-history__pagination{font-size:var(--font-size-xs);justify-content:center;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.admin-users-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-users-page h1{font-size:var(--font-size-xl)}.admin-users-page__filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.admin-users-page__filter-group{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.admin-users-page__status-filter{min-width:8.75rem}.admin-users-page__status-filter .dropdown{width:100%}.admin-users-page__include-deleted{font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-body);white-space:nowrap;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:0;display:inline-flex}.admin-users-page__include-deleted:disabled{opacity:.6;cursor:not-allowed}.admin-users-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-users-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;display:flex}.admin-users-page__row--active{border-color:var(--color-primary)}.admin-users-page__nickname{font-weight:var(--font-weight-semibold)}.admin-users-page__username{color:var(--color-text-subtle);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.admin-users-page__status,.admin-users-page__level{color:var(--color-text-muted);font-size:.78rem}.admin-users-page__section{margin-bottom:1.25rem}.admin-users-page__detail-tabs{margin-bottom:1rem}.admin-users-page__section-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.admin-users-page__section-header .admin-users-page__section-title{margin:0}.admin-users-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .5rem}.admin-users-page__section-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.admin-users-page__profile-image{object-fit:cover;border-radius:var(--radius-md);width:6rem;height:6rem;display:block}.admin-users-page__kakao-history{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-users-page__kakao-history-item{align-items:center;gap:.6rem;display:flex}.admin-users-page__kakao-history-image{object-fit:cover;border-radius:var(--radius-md);flex-shrink:0;width:3rem;height:3rem}.admin-users-page__kakao-history-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}.admin-users-page__detail-skeleton{margin:0 0 .4rem}.admin-users-page__inline-field{font-size:var(--font-size-sm);align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.admin-users-page__inline-field input{border-radius:var(--radius-md);border:1px solid var(--color-border);width:5rem;padding:.3rem .4rem}.admin-users-page__textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;font-size:var(--font-size-sm);resize:vertical;padding:.5rem .6rem}.admin-users-page__confirm-message{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.admin-users-page__pagination{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-toilets-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-toilets-page h1{font-size:var(--font-size-xl)}.admin-toilets-page__filters{margin-bottom:1rem}.admin-toilets-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-toilets-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;display:flex}.admin-toilets-page__row--active{border-color:var(--color-primary)}.admin-toilets-page__name{font-weight:var(--font-weight-semibold)}.admin-toilets-page__address{color:var(--color-text-subtle);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.admin-toilets-page__section{margin-bottom:1.25rem}.admin-toilets-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .5rem}.admin-toilets-page__section-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.admin-toilets-page__textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;font-size:var(--font-size-sm);resize:vertical;margin-top:.5rem;padding:.5rem .6rem}.admin-toilets-page__confirm-message{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.admin-toilets-page__pagination{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-reviews-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-reviews-page h1{font-size:var(--font-size-xl)}.admin-reviews-page__filters{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.admin-reviews-page__search{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:flex;overflow:hidden}.admin-reviews-page__search:focus-within{border-color:var(--color-text-strong)}.admin-reviews-page__search input{border:none;outline:none;width:7rem;min-width:0;padding:.4rem .6rem;font-family:inherit}.admin-reviews-page__search input+input{border-left:1px solid var(--color-border-subtle)}.admin-reviews-page__search-button{color:var(--color-text-strong);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0 .75rem;display:inline-flex}.admin-reviews-page__search-button svg{width:1.15rem;height:1.15rem}.admin-reviews-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-reviews-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-reviews-page__row--active{border-color:var(--color-primary)}.admin-reviews-page__toilet{font-weight:var(--font-weight-semibold)}.admin-reviews-page__score{color:var(--color-text-muted);font-size:.78rem}.admin-reviews-page__comment{color:var(--color-text-subtle);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.admin-reviews-page__section{margin-top:1.25rem}.admin-reviews-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .5rem}.admin-reviews-page__photo{object-fit:cover;border-radius:var(--radius-md);width:5rem;height:5rem}.admin-reviews-page__action-group{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.admin-reviews-page__action-group input{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;font-family:inherit;font-size:var(--font-size-sm);padding:.5rem .6rem}.admin-reviews-page__pagination{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-reports-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-reports-page h1{font-size:var(--font-size-xl)}.admin-reports-page__lead{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-reports-page__filters{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.admin-reports-page__status-filter{min-width:8.75rem}.admin-reports-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-reports-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-reports-page__row--active{border-color:var(--color-text-strong)}.admin-reports-page__row-main{min-width:0;font-size:var(--font-size-sm);color:var(--color-text-strong);flex-direction:column;gap:.15rem;display:flex}.admin-reports-page__row-sub{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-subtle);font-size:.78rem;overflow:hidden}.admin-reports-page__row-meta{text-align:right;color:var(--color-text-muted);flex-shrink:0;font-size:.78rem}.admin-reports-page__pagination{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-reports-page__section{margin-bottom:1.25rem}.admin-reports-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .5rem}.admin-reports-page__detail-skeleton{margin:0 0 .4rem}.admin-reports-page__photos{flex-wrap:wrap;gap:.4rem;display:flex}.admin-reports-page__photo{object-fit:cover;border-radius:var(--radius-md);width:5rem;height:5rem}.admin-reports-page__textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;font-family:inherit;font-size:var(--font-size-sm);resize:vertical;padding:.5rem .6rem}.admin-reports-page__options{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.5rem;display:flex}.admin-reports-page__inline-field{font-size:var(--font-size-sm);align-items:center;gap:.5rem;display:flex}.admin-reports-page__inline-field input{border-radius:var(--radius-md);border:1px solid var(--color-border);width:5rem;padding:.3rem .4rem}.admin-reports-page__toggle{font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-body);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:0;display:inline-flex}.admin-reports-page__toggle:disabled{opacity:.6;cursor:not-allowed}.admin-reports-page__hint{color:var(--color-text-subtle);margin:.4rem 0 0;font-size:.78rem}.admin-reports-page__section-actions{justify-content:flex-end;gap:.5rem;margin-top:.75rem;display:flex}.admin-reports-page__confirm-message{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.oss-page__toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:1.25rem 0 .75rem;display:flex}.oss-page__tabs{flex-wrap:wrap;gap:8px;width:100%;display:flex}.oss-page__tab{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-body);border-radius:var(--radius-lg);font-size:var(--font-size-sm);cursor:pointer;padding:8px 12px;font-family:inherit}.oss-page__tab--active{border-color:var(--color-primary);color:var(--color-primary);font-weight:var(--font-weight-semibold)}.oss-page__search{border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:160px;font-size:var(--font-size-md);background:var(--color-surface);color:var(--color-text-body);flex:1;padding:8px 12px}.oss-page__table-wrap{margin:.5rem 0 1.5rem;overflow-x:auto}.oss-page__table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.oss-page__table th,.oss-page__table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border);color:var(--color-text-body);padding:10px 8px}.oss-page__table th{color:var(--color-text-strong);font-weight:var(--font-weight-semibold);background:var(--color-surface)}.oss-page__table td:nth-child(2){white-space:nowrap;width:88px}.oss-page__table td:nth-child(3){word-break:break-word}.oss-page__note{font-size:var(--font-size-xs);line-height:var(--line-height-normal);color:var(--color-text-subtle);margin-top:4px}.account-withdraw-section p{margin:0 0 .75rem}.account-withdraw-section ul{font-size:var(--font-size-sm);color:var(--color-text-subtle);line-height:var(--line-height-relaxed);margin:0 0 1rem;padding-left:1.1rem}.account-withdraw-section .account-withdraw-section__button{border-color:var(--color-text-strong);color:var(--color-text-strong)}.account-withdraw-section__login-hint{font-size:var(--font-size-sm);color:var(--color-text-subtle)}.account-withdraw-section__form input{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;margin-bottom:.75rem;padding:.55rem .7rem}.account-withdraw-section__warning{color:var(--color-text-strong);background:var(--color-surface-muted);border-radius:var(--radius-lg);margin:0 0 .75rem;padding:.75rem;font-size:.82rem}.account-withdraw-section__error{font-size:var(--font-size-sm);color:var(--color-danger);margin:0 0 .75rem}.account-withdraw-section__actions{gap:.5rem;display:flex}.error-report-page{width:100%;max-width:520px;margin:0 auto;padding:1rem}.error-report-page__hero{background:var(--color-surface);border-radius:var(--radius-2xl);margin-bottom:1.25rem;padding:16px}.error-report-page__hero h1{font-size:var(--font-size-xl);color:var(--color-text-strong);margin:0 0 .4rem}.error-report-page__hero-lead{font-size:var(--font-size-sm);color:var(--color-text-body);line-height:var(--line-height-relaxed);margin:0}.error-report-page__section{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);margin-bottom:1rem;padding:1.25rem 1.1rem}.error-report-page__section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .9rem}.error-report-page__field-label{margin-bottom:.35rem;display:block}.error-report-page__upload-box{box-sizing:border-box;border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-subtle);width:100%;min-height:88px;color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px;display:flex}.error-report-page__upload-box strong{font-size:var(--font-size-sm);color:var(--color-text-body)}.error-report-page__upload-box--busy{cursor:not-allowed;opacity:.7}.error-report-page__upload-box input{display:none}.error-report-page__photo-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:.75rem;display:grid}.error-report-page__photo{flex-direction:column;align-items:center;gap:4px;display:flex}.error-report-page__photo-thumb{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-lg);width:100%}.error-report-page__photo-size{font-size:var(--font-size-xs);color:var(--color-text-muted)}.error-report-page__photo-remove{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;padding:2px 8px}.error-report-page__mine{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);margin-top:1.25rem;padding:1.25rem 1.1rem}.error-report-page__mine h2{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .9rem}.error-report-page__mine ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.error-report-page__item{box-sizing:border-box;border-radius:var(--radius-lg);background:var(--color-surface-muted);width:100%;font-size:var(--font-size-sm);color:inherit;cursor:pointer;flex-direction:column;gap:.35rem;padding:.75rem .85rem;text-decoration:none;transition:background-color .15s;display:flex}.error-report-page__item:hover,.error-report-page__item:active{background:var(--color-surface-subtle)}.error-report-page__item-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.error-report-page__item-badges{align-items:center;gap:.4rem;min-width:0;display:flex}.error-report-page__item-category{font-size:var(--font-size-xs);color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.error-report-page__item-date{font-size:var(--font-size-xs);color:var(--color-text-subtle);flex-shrink:0}.error-report-page__item-title{font-weight:var(--font-weight-semibold);color:var(--color-text-strong);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.error-report-page__item-preview{-webkit-line-clamp:2;font-size:var(--font-size-xs);color:var(--color-text-subtle);line-height:var(--line-height-relaxed);-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.error-report-page__pagination{font-size:var(--font-size-sm);color:var(--color-text-muted);justify-content:center;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.support-inquiry-detail__title-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.support-inquiry-detail__title-row h1{font-size:var(--font-size-xl);color:var(--color-text-strong);margin:0}.support-inquiry-detail__row{border-bottom:1px solid var(--color-border-muted);font-size:var(--font-size-sm);justify-content:space-between;align-items:baseline;gap:.75rem;padding:.5rem 0;display:flex}.support-inquiry-detail__row:last-of-type{border-bottom:none}.support-inquiry-detail__label{color:var(--color-text-muted);flex-shrink:0}.support-inquiry-detail__value{color:var(--color-text-strong);text-align:right;word-break:break-word}.support-inquiry-detail__content{font-size:var(--font-size-sm);color:var(--color-text-body);line-height:var(--line-height-relaxed);white-space:pre-wrap;word-break:break-word;margin:.75rem 0 0}.support-inquiry-detail__photos{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.75rem;display:grid}.support-inquiry-detail__photo{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-lg);width:100%}.support-inquiry-detail__answered-at{font-size:var(--font-size-xs);color:var(--color-text-subtle);margin:.5rem 0 0}.admin-inquiries-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-inquiries-page h1{font-size:var(--font-size-xl)}.admin-inquiries-page__tabs{margin-bottom:1rem}.admin-inquiries-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-inquiries-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-inquiries-page__row--active{border-color:var(--color-primary)}.admin-inquiries-page__title{font-weight:var(--font-weight-semibold);flex-shrink:0}.admin-inquiries-page__preview{color:var(--color-text-subtle);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.admin-inquiries-page__section{margin-top:1.25rem}.admin-inquiries-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .5rem}.admin-inquiries-page__photos{flex-wrap:wrap;gap:.4rem;display:flex}.admin-inquiries-page__photo{object-fit:cover;border-radius:var(--radius-md);width:5rem;height:5rem}.admin-inquiries-page__answer{flex-direction:column;gap:.5rem;display:flex}.admin-inquiries-page__answer textarea{border-radius:var(--radius-md);border:1px solid var(--color-border);width:100%;font-family:inherit;font-size:var(--font-size-sm);resize:vertical;padding:.5rem .6rem}.admin-inquiries-page__answer-submit{height:38px}.admin-inquiries-page__pagination{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-jobs-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-jobs-page h1{font-size:var(--font-size-xl)}.admin-jobs-page__lead{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-jobs-page__card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);margin-bottom:1.5rem;padding:1rem}.admin-jobs-page__card-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .35rem}.admin-jobs-page__hint{color:var(--color-text-subtle);margin:0 0 .75rem;font-size:.78rem}.admin-jobs-page__fields{flex-direction:column;gap:.65rem;display:flex}.admin-jobs-page__field{font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;gap:.3rem;display:flex}.admin-jobs-page__field .dropdown{width:100%}.admin-jobs-page__field input,.admin-jobs-page__field textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--color-text-strong);background:var(--color-surface);padding:.55rem .7rem}.admin-jobs-page__row-fields{flex-wrap:wrap;gap:.65rem;display:flex}.admin-jobs-page__row-fields>*{flex:10rem}.admin-jobs-page__actions{flex-wrap:wrap;gap:.5rem;margin-top:.85rem;display:flex}.admin-jobs-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-jobs-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-jobs-page__row--active{border-color:var(--color-text-strong)}.admin-jobs-page__row-main{min-width:0;font-size:var(--font-size-sm);color:var(--color-text-strong);flex-direction:column;gap:.15rem;display:flex}.admin-jobs-page__row-sub{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-subtle);font-size:.78rem;overflow:hidden}.admin-jobs-page__row-meta{text-align:right;color:var(--color-text-muted);flex-shrink:0;font-size:.78rem}.admin-jobs-page__section{margin-bottom:1.25rem}.admin-jobs-page__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0 0 .5rem}.admin-jobs-page__runs{flex-direction:column;gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.admin-jobs-page__run{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);font-size:var(--font-size-sm);padding:.65rem .75rem}.admin-jobs-page__run-meta{color:var(--color-text-muted);justify-content:space-between;gap:.5rem;font-size:.78rem;display:flex}.admin-jobs-page__run-message{white-space:pre-wrap;word-break:break-word;color:var(--color-text-strong);margin:.35rem 0 0}.admin-jobs-page__pagination{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:.85rem;display:flex}.admin-jobs-page__confirm-message{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-jobs-page__error{font-size:var(--font-size-sm);color:var(--color-danger);margin:0 0 .75rem}.admin-client-errors-page{width:100%;max-width:760px;margin:2rem auto;padding:0 1rem 3rem}.admin-client-errors-page h1{font-size:var(--font-size-xl)}.admin-client-errors-page__lead{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 1rem}.admin-client-errors-page__filters{flex-wrap:wrap;align-items:flex-end;gap:.65rem;margin-bottom:1rem;display:flex}.admin-client-errors-page__field{min-width:8.5rem;font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;flex:8.5rem;gap:.3rem;display:flex}.admin-client-errors-page__field--search{flex:2 14rem}.admin-client-errors-page__field .dropdown{width:100%}.admin-client-errors-page__field input{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--color-text-strong);background:var(--color-surface);padding:.55rem .7rem}.admin-client-errors-page__list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-client-errors-page__row{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.7rem 1rem;font-family:inherit;display:flex}.admin-client-errors-page__row--active{border-color:var(--color-text-strong)}.admin-client-errors-page__row-main{min-width:0;font-size:var(--font-size-sm);color:var(--color-text-strong);flex-direction:column;gap:.15rem;display:flex}.admin-client-errors-page__row-sub{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-subtle);font-size:.78rem;overflow:hidden}.admin-client-errors-page__row-meta{text-align:right;color:var(--color-text-muted);flex-shrink:0;font-size:.78rem}.admin-client-errors-page__pagination{font-size:var(--font-size-sm);justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.admin-client-errors-page__pre{white-space:pre-wrap;word-break:break-word;max-height:20rem;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;overflow:auto}.admin-client-errors-page__error{font-size:var(--font-size-sm);color:var(--color-danger);margin:0 0 .75rem}.theme-settings-page__options{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.theme-settings-page__option{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-body);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:.9rem 1.1rem;display:flex}.theme-settings-page__option:active{background:var(--color-surface-muted)}.theme-settings-page__option--selected{border-color:var(--color-primary);color:var(--color-text-strong)}.theme-settings-page__check{width:18px;height:18px;color:var(--color-primary);flex-shrink:0}.notification-settings-page{padding:12px}.notification-settings-page__row{border-bottom:1px solid var(--color-border-muted);align-items:center;gap:12px;padding:14px 4px;display:flex}.notification-settings-page__row svg{width:24px;height:24px;color:var(--color-text-body);flex-shrink:0}.notification-settings-page__row-label{font-size:var(--font-size-md);color:var(--color-text-body);flex:1}.notification-settings-page__hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:.6rem 0 0;padding:0 4px}.legal-page.change-password-page{flex-direction:column;flex:1;min-height:0;margin-bottom:0;padding-bottom:0;display:flex}.change-password-page__form{flex-direction:column;flex:1;min-height:0;margin-top:1rem;display:flex}.profile-edit-page{width:100%;max-width:520px;margin:0 auto;padding:1.5rem 1rem}.profile-edit-page__avatar-block{flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.profile-edit-page__avatar{border-radius:var(--radius-2xl);background:var(--color-surface-muted);flex-shrink:0;justify-content:center;align-items:center;width:8.75rem;height:8.75rem;display:flex;position:relative;overflow:hidden}.profile-edit-page__avatar-image{object-fit:cover;width:100%;height:100%}.profile-edit-page__avatar-icon{width:5rem;height:5rem;color:var(--color-text-faint)}.profile-edit-page__avatar-camera{border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);width:2rem;height:2rem;color:var(--color-text-strong);cursor:pointer;justify-content:center;align-items:center;display:flex;position:absolute;bottom:.375rem;right:.375rem}.profile-edit-page__avatar-camera svg{width:16px;height:16px}.profile-edit-page__avatar-camera:disabled{opacity:.6;cursor:default}.profile-edit-page__photo-status{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0}.profile-edit-page__hidden-input{display:none}.profile-edit-page__list{flex-direction:column;display:flex}.profile-edit-page__list-item{border:none;border-bottom:1px solid var(--color-border-muted);width:100%;color:var(--color-text-body);font-size:var(--font-size-md);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:14px .2rem;font-family:inherit;display:flex}.profile-edit-page__list-item:last-child{border-bottom:none}.profile-edit-page__list-item:active{background:var(--color-surface-muted)}.profile-edit-page__list-item-label{font-weight:var(--font-weight-semibold);color:var(--color-text-strong);flex-shrink:0}.profile-edit-page__list-item-value{text-align:right;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.profile-edit-gender-page__form{margin-top:1rem}.profile-edit-gender-page__options{flex-direction:column;display:flex}.profile-edit-gender-page__option{border:none;border-bottom:1px solid var(--color-border-muted);width:100%;font-family:inherit;font-size:var(--font-size-base);color:var(--color-text-body);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:.9rem .2rem;display:flex}.profile-edit-gender-page__options .profile-edit-gender-page__option:last-child{border-bottom:none}.profile-edit-gender-page__option:active{background:var(--color-surface-muted)}.profile-edit-gender-page__option:disabled{opacity:.7;cursor:default}.profile-edit-gender-page__option--selected{color:var(--color-text-strong);font-weight:var(--font-weight-semibold)}
