.profile-editor-overlay,.profile-editor-overlay *{box-sizing:border-box}
.profile-editor-overlay{position:fixed;inset:0;top:var(--profile-viewport-top,0);height:var(--profile-viewport-height,100dvh);display:flex;align-items:flex-end;justify-content:center;padding:8px 8px 0;color:#121b25;font-family:Manrope_500Medium,system-ui,sans-serif}
.profile-editor-backdrop{position:absolute;inset:0;border:0;background:#121b2566;cursor:default}
.profile-editor-sheet{position:relative;display:flex;flex-direction:column;width:100%;max-width:500px;max-height:100%;min-height:0;border:1px solid #e2e6ed;border-bottom:0;border-radius:22px 22px 0 0;background:#f4f5f7;box-shadow:0 -8px 40px #121b2512;overflow:visible}
.profile-editor-heading{display:flex;flex:none;align-items:center;gap:8px;padding:12px 16px 8px}
.profile-editor-heading h2{flex:1;min-width:0;margin:0;font-family:Manrope_800ExtraBold,system-ui,sans-serif;font-size:21px;line-height:28px;letter-spacing:-.45px}
.profile-editor-overlay button,.profile-editor-overlay input{font:inherit}
.profile-icon-button{flex:none;width:40px;height:40px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #e2e6ed;border-radius:50%;background:#fff;color:#121b25;font-size:28px;cursor:pointer}
.profile-editor-form,.profile-birth-panel,.profile-city-panel{display:flex;flex-direction:column;min-height:0;margin:0}
.profile-editor-body,.profile-birth-body{display:flex;flex-direction:column;gap:12px;min-height:0;padding:4px 16px 14px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scroll-padding:12px}
.profile-photo-row{display:flex;flex:none;align-items:center;gap:12px;min-height:48px}
.profile-photo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px}
.profile-photo-upload{position:relative;display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid #e2e6ed;border-radius:11px;background:#fff;font-family:Manrope_700Bold,system-ui,sans-serif;font-size:13px;cursor:pointer;overflow:hidden}
.profile-photo-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.profile-text-button{border:0;background:none;color:#2455ee;min-height:40px;padding:6px 0;font-size:13px;cursor:pointer}
.profile-photo-pending{display:flex;align-items:center;gap:10px;min-width:0;font-size:12px}
.profile-photo-pending>span{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.profile-photo-editor{display:flex;flex-direction:column;align-items:center;gap:9px;width:100%;padding:12px;border:1px solid #dfe4ec;border-radius:15px;background:#fff}
.profile-photo-canvas{display:block;width:min(100%,280px);height:auto;aspect-ratio:1;border-radius:13px;background:#edf2ff;touch-action:none;cursor:grab}
.profile-photo-canvas:active{cursor:grabbing}
.profile-photo-editor>.profile-hint{align-self:stretch;text-align:center}
.profile-photo-zoom{display:flex;align-items:center;gap:10px;width:100%;color:#697383;font-size:13px}
.profile-photo-zoom input{flex:1;min-height:44px;accent-color:#2455ee}
.profile-photo-tools{display:flex;gap:8px;width:100%}
.profile-photo-tools button{flex:1;min-height:44px;padding:8px;border:1px solid #dfe4ec;border-radius:11px;background:#fff;color:#121b25;cursor:pointer}
.profile-photo-editor>.profile-primary{width:100%}
.profile-name-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.profile-field{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0;color:#121b25;font-family:Manrope_700Bold,system-ui,sans-serif;font-size:13px;line-height:19px}
.profile-field input,.profile-date-control{width:100%;min-width:0;height:44px;min-height:44px;padding:0 12px;border:1px solid #dfe4ec;border-radius:11px;background:#fff;color:#121b25;font-family:Manrope_500Medium,system-ui,sans-serif;font-size:16px;line-height:22px;box-shadow:none;appearance:none}
.profile-field input::placeholder,.profile-placeholder{color:#8d96a3}
.profile-field input:focus{outline:2px solid #2455ee;outline-offset:1px}
.profile-date-control{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer}
.profile-date-control svg{flex:none;color:#697383}
.profile-city-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-hint{margin:0;color:#697383;font-family:Manrope_400Regular,system-ui,sans-serif;font-size:11px;line-height:16px}
.profile-editor-footer{flex:none;padding:10px 16px max(14px,env(safe-area-inset-bottom));border-top:1px solid #e2e6ed;background:#f4f5f7;border-radius:0}
.profile-primary{width:100%;height:46px;min-height:46px;border:0;border-radius:12px;padding:10px 14px;background:#2455ee;color:white;font-family:Manrope_700Bold,system-ui,sans-serif!important;font-size:15px!important;line-height:22px;cursor:pointer}
.profile-editor-overlay button:disabled,.profile-photo-upload[aria-disabled=true]{opacity:.45;cursor:default}
.profile-error{margin:0;color:#b33c35;font-size:12px;line-height:18px}
.profile-city-control{position:relative;display:flex;align-items:center}
.profile-city-control input{padding-right:46px}
.profile-city-toggle{position:absolute;right:1px;top:1px;display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:0;border-radius:0 10px 10px 0;background:#fff;color:#697383;cursor:pointer}
.profile-city-popup{position:absolute;bottom:calc(100% - 18px);left:0;right:0;z-index:5;overflow:hidden;border:1px solid #dce2ed;border-radius:13px;background:white;box-shadow:0 8px 32px #121b2529}
.profile-city-body{display:flex;flex-direction:column;gap:12px;min-height:0;padding:8px 16px 16px;overflow-y:auto;overscroll-behavior:contain}
.profile-city-inline .profile-city-popup{position:relative;bottom:auto;left:auto;right:auto;margin-top:8px;box-shadow:none}
.profile-city-inline .profile-city-list{max-height:min(230px,max(88px,calc(var(--profile-viewport-height,100dvh) - 230px)))}
.profile-city-caption{padding:9px 12px;border-bottom:1px solid #edf0f5;color:#697383;font-size:11px;line-height:16px}
.profile-city-list{max-height:min(220px,max(80px,calc(var(--profile-viewport-height,100dvh) - 210px)));overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.profile-city-option{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;min-height:48px;padding:6px 12px;border:0;border-bottom:1px solid #f0f2f6;background:white;color:#121b25;text-align:left;cursor:pointer;line-height:19px}
.profile-city-option span{font-family:Manrope_700Bold,system-ui,sans-serif;font-size:14px}
.profile-city-option small{color:#697383;font-family:Manrope_400Regular,system-ui,sans-serif;font-size:11px;line-height:16px}
.profile-city-option[aria-selected=true]{color:#2455ee;background:#f1f5ff}
.profile-city-option[data-active=true]{background:#eaf0ff;outline:2px solid #2455ee;outline-offset:-2px}
.profile-city-empty{margin:0;padding:12px;color:#697383;font-size:12px;line-height:18px}
.profile-birth-body{gap:10px}
.profile-editor-overlay :is(button,input):focus-visible{outline:3px solid #2455ee;outline-offset:2px}
@media(hover:hover){.profile-city-option:hover{background:#f1f5ff}.profile-primary:hover{background:#1947dc}}
@media(max-height:600px){.profile-editor-heading{padding-top:8px}.profile-editor-body{gap:8px;padding-bottom:10px}.profile-photo-row{min-height:44px}.profile-editor-footer{padding-top:8px;padding-bottom:max(10px,env(safe-area-inset-bottom))}}
@media(min-width:700px){.profile-editor-overlay{padding-bottom:20px;align-items:center}.profile-editor-sheet{border-bottom:1px solid #e2e6ed;border-radius:22px;overflow:hidden}.profile-editor-footer{border-radius:0 0 22px 22px}}
@media(prefers-reduced-motion:reduce){.profile-editor-overlay *{scroll-behavior:auto!important}}

/* The catalog sort menu opens from its trigger without dimming the page. */
[data-testid="ruh-sort-menu"]{box-shadow:0 14px 36px #121b2526}
[data-testid="ruh-sort-menu"] button{cursor:pointer}
[data-testid="ruh-sort-menu"] button:focus-visible{outline:2px solid #2455ee;outline-offset:1px}
@media(hover:hover) and (pointer:fine){[data-testid="ruh-sort-menu"] button:hover{background:#f1f5ff!important}}
@media(prefers-reduced-motion:reduce){[data-testid="ruh-sort-menu"] *{scroll-behavior:auto!important}}
/* The mobile filter action row otherwise stretches beyond its visible card
   and intercepts taps on the sorting control below it. */
@media(max-width:699px){#root div:has(> button[aria-label="Усі фільтри"]){flex-basis:auto!important;height:44px!important;max-height:44px!important}}
.profile-city-option{flex-direction:row;align-items:center;justify-content:space-between;gap:8px;white-space:nowrap;min-height:46px}
.profile-city-option span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-city-option small{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
.profile-editor-sheet:has(.profile-city-panel){height:100%}.profile-city-panel,.profile-city-panel .profile-city-body{flex:1;min-height:0}.profile-city-inline{flex:1;min-height:0;display:flex;flex-direction:column}.profile-city-inline .profile-city-popup{flex:1;min-height:0;display:flex;flex-direction:column}.profile-city-inline .profile-city-list{flex:1;max-height:none;min-height:0}
