:root{--bg: #f8f8fa;--surface: #ffffff;--fg: #111113;--fg-secondary: #5c5e6a;--fg-tertiary: #9395a0;--accent: #4f6ef7;--accent-hover: #3b57d9;--available: #22c55e;--available-bg: #f0fdf4;--busy: #f59e0b;--busy-bg: #fffbeb;--border: #ebebef;--shadow-sm: 0 1px 3px rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.02);--shadow-md: 0 4px 16px rgba(0,0,0,.06), 0 2px 4px rgba(0,0,0,.03);--shadow-lg: 0 12px 32px rgba(0,0,0,.1), 0 4px 8px rgba(0,0,0,.04);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 22px;--radius-full: 999px;--font: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif;--transition: .2s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none}img{display:block;max-width:100%}.app{min-height:100dvh;display:flex;flex-direction:column}.app__header{position:sticky;top:0;z-index:100;background:#ffffffb8;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-bottom:1px solid rgba(0,0,0,.06);padding:0 20px;height:56px;display:flex;align-items:center;justify-content:space-between}.app__brand{font-size:1.25rem;font-weight:800;letter-spacing:-.03em;color:var(--fg)}.app__main{flex:1;width:100%;max-width:480px;margin:0 auto;padding:16px}.header-location{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--fg-secondary)}.header-location svg{flex-shrink:0}.filter-bar-wrap{position:sticky;top:56px;z-index:50;background:var(--bg);padding-top:16px;transform:translateY(0);opacity:1;transition:transform .35s cubic-bezier(.25,1,.5,1),opacity .3s ease}.filter-bar-wrap--hidden{transform:translateY(-100%);opacity:0;pointer-events:none}.filter-bar-wrap--visible{transform:translateY(0);opacity:1;pointer-events:auto}.filter-bar{display:flex;gap:8px;padding-bottom:16px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.filter-bar::-webkit-scrollbar{display:none}.filter-chip{position:relative;display:flex;align-items:center;padding:9px 16px;background:#0000000d;border:none;border-radius:var(--radius-full);font-size:.825rem;font-weight:500;color:var(--fg-secondary);white-space:nowrap;transition:all .25s ease;cursor:pointer}.filter-chip:hover{background:#00000014;color:var(--fg)}.filter-chip--active{background:var(--fg);color:#fff}.filter-chip__label{pointer-events:none}.filter-chip select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;cursor:pointer;font-size:16px}.distance-control{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:9px 16px;background:#0000000d;border:none;border-radius:var(--radius-full);font-size:.825rem;font-weight:500;color:var(--fg-secondary);white-space:nowrap}.distance-control input[type=range]{flex:1;min-width:0;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#0000001f;border-radius:2px;cursor:pointer}.distance-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--fg);cursor:grab}.distance-control input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--fg);border:none;cursor:grab}.card{background:var(--surface);border-radius:18px;box-shadow:var(--shadow-sm);border:1px solid rgba(0,0,0,.04);overflow:hidden;transition:transform .3s cubic-bezier(.25,1,.5,1),box-shadow .3s ease}.card:active{transform:scale(.985)}@media(hover:hover){.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}}.card__image-section{position:relative}.card__image-wrap{position:relative;aspect-ratio:4/5;background:linear-gradient(135deg,#e5e7eb,#d1d5db);overflow:hidden;cursor:pointer;touch-action:pan-y}.card__track{display:flex;height:100%;will-change:transform}.card__image{width:100%;height:100%;object-fit:cover;flex-shrink:0}.card__image[src$=".mp4"],.card__image[src$=".mov"],.card__image[src$=".webm"],video.card__image{object-fit:cover}.card__image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--fg-tertiary);font-size:2.5rem}.card__image-link{position:absolute;bottom:0;left:25%;width:50%;height:40%;z-index:2}.card__progress{position:absolute;top:8px;left:8px;right:8px;display:flex;gap:3px;z-index:3}.card__progress-seg{flex:1;height:2.5px;border-radius:2px;background:#ffffff4d;transition:background .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.card__progress-seg--active,.card__progress-seg--done{background:#fffffff2}.card__dots{display:none}.card__gradient{position:absolute;bottom:0;left:0;right:0;height:55%;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,rgba(0,0,0,.15) 50%,transparent 100%);pointer-events:none}.card__overlay-info{position:absolute;bottom:0;left:0;right:0;padding:20px;color:#fff;z-index:1;pointer-events:none}.card__name{font-size:1.35rem;font-weight:800;letter-spacing:-.015em;line-height:1.2;text-shadow:0 1px 3px rgba(0,0,0,.3)}.card__subtitle{display:flex;align-items:center;gap:0;font-size:.82rem;font-weight:500;opacity:.8;margin-top:4px;letter-spacing:.01em}.card__dot{margin:0 6px;opacity:.5}.card__body{padding:16px 20px 20px;display:flex;flex-direction:column;gap:12px}.card__details{display:flex;align-items:center;justify-content:space-between}.card__availability{display:flex;align-items:center;gap:5px;font-size:.8rem;font-weight:500;color:var(--fg-secondary)}.card__availability-dot{width:7px;height:7px;border-radius:50%;background:var(--fg-tertiary);flex-shrink:0}.card__availability--available{color:#166534}.card__availability--available .card__availability-dot{background:var(--available)}.card__availability--busy{color:#92400e}.card__availability--busy .card__availability-dot{background:var(--busy)}.card__photos{display:flex;align-items:center;gap:4px;font-size:.78rem;color:var(--fg-tertiary)}.card__bio{font-size:.86rem;color:var(--fg-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card__meta-row{display:flex;align-items:center;gap:12px}.card__activity{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--fg-tertiary)}.card__actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.card__cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 16px;background:var(--fg);color:#fff;border-radius:var(--radius-sm);font-size:.88rem;font-weight:600;text-align:center;text-decoration:none;letter-spacing:-.01em;transition:background .25s ease,transform .2s ease,box-shadow .25s ease;box-shadow:0 2px 8px #0000001f}.card__cta:hover{background:#222;text-decoration:none;box-shadow:0 4px 12px #0000002e}.card__cta:active{transform:scale(.97)}.card__reply-hint{font-size:.72rem;color:var(--fg-tertiary);text-align:center;margin:-2px 0 0;letter-spacing:.01em}.card__cta--secondary{background:transparent;color:var(--fg);border:1px solid var(--border);box-shadow:none;font-weight:500;padding:10px 16px;font-size:.84rem}.card__cta--secondary:hover{background:var(--bg)}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;letter-spacing:.01em}.badge__dot{width:6px;height:6px;border-radius:50%}.badge--available{background:var(--available-bg);color:#166534}.badge--available .badge__dot{background:var(--available)}.badge--busy{background:var(--busy-bg);color:#92400e}.badge--busy .badge__dot{background:var(--busy)}.badge--hidden{background:#f3f4f6;color:#6b7280}.badge--hidden .badge__dot{background:#9ca3af}.feed{display:flex;flex-direction:column;gap:16px}.feed__count{font-size:.8rem;color:var(--fg-tertiary);padding-bottom:4px}.feed__sentinel{min-height:1px}.feed__end{text-align:center;font-size:.8rem;color:var(--fg-tertiary);padding:16px 0 8px}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:800px 100%;animation:shimmer 1.8s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-card{background:var(--surface);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.skeleton-card__image{aspect-ratio:4/5}.skeleton-card__body{padding:14px 16px;display:flex;flex-direction:column;gap:10px}.skeleton-card__line{height:14px;border-radius:6px}.skeleton-card__line--short{width:40%}.skeleton-card__line--medium{width:65%}.skeleton-card__line--long{width:90%}.skeleton-card__btn{height:40px;border-radius:var(--radius-sm);margin-top:4px}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 24px;gap:12px}.empty-state__icon{width:64px;height:64px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;font-size:1.75rem;margin-bottom:4px}.empty-state__title{font-size:1.05rem;font-weight:600}.empty-state__text{font-size:.875rem;color:var(--fg-secondary);max-width:260px;line-height:1.5}.empty-state__action{margin-top:8px;padding:10px 24px;background:var(--accent);color:#fff;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;transition:background var(--transition)}.empty-state__action:hover{background:var(--accent-hover)}.error-banner{padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);color:#991b1b;font-size:.85rem;margin-bottom:16px}.profile{padding-bottom:32px}.profile__back{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--fg-secondary);padding:4px 0;margin-bottom:16px;transition:color var(--transition)}.profile__back:hover{color:var(--fg)}.profile__back svg{transition:transform var(--transition)}.profile__back:hover svg{transform:translate(-2px)}.profile__hero{position:relative;aspect-ratio:4/5;border-radius:var(--radius-md);overflow:hidden;background:linear-gradient(135deg,#e5e7eb,#d1d5db);margin-bottom:20px;cursor:pointer}.profile__hero img,.profile__hero video,.profile__hero-media{width:100%;height:100%;object-fit:cover}.profile__hero-gradient{position:absolute;bottom:0;left:0;right:0;height:55%;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,rgba(0,0,0,.15) 50%,transparent 100%);pointer-events:none}.profile__hero-badges{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;gap:4px;align-items:flex-end;z-index:2}.profile__perk-badge--boost-light{padding:3px 10px;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;background:#fff3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff}.profile__hero-info{position:absolute;bottom:0;left:0;right:0;padding:20px;color:#fff;z-index:1;pointer-events:none}.profile__hero-name{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;text-shadow:0 1px 4px rgba(0,0,0,.3);margin:0}.profile__hero-meta{display:flex;align-items:center;gap:0;font-size:.85rem;font-weight:500;opacity:.85;margin-top:4px}.profile__hero-status--available{color:#86efac}.profile__hero-status--busy{color:#fcd34d}.profile__hero-status--hidden{color:#fff9}.profile__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.profile__name{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.profile__role{font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-secondary);margin-top:4px}.profile__verified-tick{display:inline-block;vertical-align:middle;margin-left:6px;filter:drop-shadow(0 1px 3px rgba(212,168,83,.5))}.profile__perk-badges{display:flex;gap:6px;margin-top:8px}.profile__perk-badge{padding:3px 10px;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.profile__perk-badge--featured{background:#d4a853;color:#fff}.profile__perk-badge--boost{background:#0000000f;color:var(--fg-secondary)}.profile__section{margin-bottom:20px}.profile__section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-tertiary);margin-bottom:8px}.profile__bio{font-size:.95rem;line-height:1.55;color:var(--fg-secondary)}.profile__contact-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:var(--fg);color:#fff;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;transition:background var(--transition),transform var(--transition)}.profile__contact-btn:hover{background:#333}.profile__contact-btn:active{transform:scale(.98)}.status-tabs{display:flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.status-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;font-size:.8rem;font-weight:500;color:var(--fg-secondary);background:var(--surface);border:none;border-right:1px solid var(--border);cursor:pointer;transition:all var(--transition)}.status-tab:last-child{border-right:none}.status-tab:hover:not(:disabled){background:var(--bg)}.status-tab:disabled{cursor:default}.status-tab__dot{width:6px;height:6px;border-radius:50%;background:var(--fg-tertiary)}.status-tab--active{font-weight:600;color:var(--fg);background:var(--bg)}.status-tab--available.status-tab--active{color:#166534;background:var(--available-bg)}.status-tab--available.status-tab--active .status-tab__dot{background:var(--available)}.status-tab--busy.status-tab--active{color:#92400e;background:var(--busy-bg)}.status-tab--busy.status-tab--active .status-tab__dot{background:var(--busy)}.status-tab--hidden.status-tab--active{color:#6b7280;background:#f3f4f6}.status-tab--hidden.status-tab--active .status-tab__dot{background:#9ca3af}.profile__actions{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.profile__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.profile__grid-item{position:relative;aspect-ratio:1/1;overflow:hidden;cursor:pointer;background:#e5e7eb}.profile__grid-item img,.profile__grid-item video{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}@media(hover:hover){.profile__grid-item:hover img{transform:scale(1.05)}.profile__grid-item:hover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0000001a}}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000eb;display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox__img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;cursor:default}.lightbox__close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:#ffffff26;color:#fff;font-size:1.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition)}.lightbox__close:hover{background:#ffffff4d}.profile-skeleton__hero{aspect-ratio:4/5;border-radius:var(--radius-md);margin-bottom:20px}.profile-skeleton__name{height:24px;width:50%;border-radius:6px;margin-bottom:6px}.profile-skeleton__role{height:14px;width:30%;border-radius:6px;margin-bottom:20px}.profile-skeleton__bio{height:14px;border-radius:6px;margin-bottom:8px}.profile-skeleton__btn{height:48px;border-radius:var(--radius-sm);margin-top:12px}.drag-hint{font-size:.8rem;color:var(--fg-tertiary);margin-bottom:12px}.reorder-saving{font-weight:400;font-size:.7rem;color:var(--accent);margin-left:6px}.drag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.drag-grid__item{position:relative;aspect-ratio:3/4;border-radius:var(--radius-sm);overflow:hidden;cursor:grab;border:2px solid transparent;transition:border-color var(--transition),transform var(--transition)}.drag-grid__item:active{cursor:grabbing}.drag-grid__item--over{border-color:var(--accent);transform:scale(.95)}.drag-grid__item img,.drag-grid__item video{width:100%;height:100%;object-fit:cover;pointer-events:none}.drag-grid__badge{position:absolute;top:6px;left:6px;padding:2px 8px;background:var(--fg);color:#fff;border-radius:var(--radius-full);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.drag-grid__hint{position:absolute;bottom:0;left:0;right:0;padding:4px;background:#00000080;color:#fff;font-size:.6rem;text-align:center;opacity:0;transition:opacity var(--transition)}.drag-grid__item:hover .drag-grid__hint{opacity:1}.app__header-right{display:flex;align-items:center;gap:12px}.user-menu{position:relative}.user-menu__dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);overflow:hidden;z-index:200;animation:fadeIn .15s ease}.user-menu__item{display:block;width:100%;padding:10px 16px;font-size:.875rem;color:var(--fg);text-align:left;transition:background var(--transition);border:none;background:none;cursor:pointer;text-decoration:none}.user-menu__item:hover{background:var(--bg)}.user-menu__item--danger{color:#dc2626}.user-menu__item--danger:hover{background:#fef2f2}.header-login-btn{padding:6px 14px;background:var(--fg);color:#fff;border-radius:var(--radius-full);font-size:.825rem;font-weight:600;transition:background var(--transition)}.header-login-btn:hover{background:#333}.header-avatar{width:32px;height:32px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;font-size:1rem}.auth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--bg)}.auth-card{width:100%;max-width:380px;background:var(--surface);border-radius:var(--radius-lg);padding:32px 24px;box-shadow:var(--shadow-md);text-align:center}.auth-card--wide{max-width:440px}.auth-icon{font-size:2.5rem;margin-bottom:8px}.auth-title{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}.auth-text{font-size:.9rem;color:var(--fg-secondary);line-height:1.5;margin-bottom:24px}.auth-hint{font-size:.8rem;color:var(--fg-tertiary);margin-top:16px}.auth-link-btn{color:var(--accent);font-size:inherit;text-decoration:underline;padding:0}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-input{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:.95rem;background:var(--surface);transition:border-color var(--transition)}.auth-input:focus{outline:none;border-color:var(--accent)}.auth-input--prefixed{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}.auth-textarea{resize:vertical;min-height:72px}.auth-submit{width:100%;padding:12px;background:var(--fg);color:#fff;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;transition:background var(--transition),transform var(--transition)}.auth-submit:hover{background:#333}.auth-submit:active{transform:scale(.98)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-error{font-size:.85rem;color:#dc2626;text-align:left}@keyframes spin{to{transform:rotate(360deg)}}.auth-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 16px}.profile-form{display:flex;flex-direction:column;gap:16px;text-align:left}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:.825rem;font-weight:600;color:var(--fg)}.form-optional{font-weight:400;color:var(--fg-tertiary)}.role-toggle{display:flex;background:#0000000d;border-radius:var(--radius-sm);padding:3px}.role-btn{flex:1;padding:10px 8px;background:transparent;border:none;border-radius:7px;font-size:.85rem;font-weight:500;color:var(--fg-tertiary);transition:all .25s ease}.role-btn:hover{color:var(--fg-secondary)}.role-btn--active{background:var(--surface);color:var(--fg);font-weight:600;box-shadow:0 1px 3px #00000014}.input-with-prefix{display:flex}.input-prefix{display:flex;align-items:center;padding:0 12px;background:var(--bg);border:1px solid var(--border);border-right:none;border-radius:var(--radius-sm) 0 0 var(--radius-sm);font-size:.95rem;color:var(--fg-secondary)}.detect-btn{padding:8px 14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;color:var(--fg-secondary);width:fit-content;transition:all var(--transition)}.detect-btn:hover{border-color:var(--accent);color:var(--accent)}.detect-btn:disabled{opacity:.5}.location-coords{font-size:.8rem;color:var(--fg-tertiary);font-family:monospace}.create-photos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}.create-photos-grid__item{position:relative;aspect-ratio:1/1;border-radius:var(--radius-sm);overflow:hidden;background:#e5e7eb}.create-photos-grid__item img,.create-photos-grid__item video{width:100%;height:100%;object-fit:cover}.create-photos-grid__remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#0009;color:#fff;font-size:.9rem;line-height:1;display:flex;align-items:center;justify-content:center}.create-photos-add{width:100%;padding:10px;border:2px dashed var(--border);border-radius:var(--radius-sm);color:var(--fg-secondary);font-size:.85rem;font-weight:500;transition:all var(--transition)}.create-photos-add:hover{border-color:var(--accent);color:var(--accent)}.geo-status{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:var(--radius-sm);font-size:.85rem}.geo-status--detecting{background:#eff6ff;color:var(--accent)}.geo-spinner{width:16px;height:16px;border:2px solid #bfdbfe;border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.geo-status--done{background:var(--available-bg);color:#166534}.geo-check{flex-shrink:0}.geo-status--denied{background:#fef2f2;color:#991b1b;flex-direction:column;align-items:flex-start;gap:10px}.geo-denied-text{margin:0;line-height:1.5}.location-search__row{display:flex;gap:8px}.location-search__input-wrap{position:relative}.form-hints{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.form-hints li{font-size:.8rem;color:var(--fg-tertiary);padding-left:16px;position:relative}.form-hints li:before{content:"•";position:absolute;left:4px;color:var(--busy)}.location-auto-btn{padding:0 14px;background:#0000000d;border:none;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;color:var(--fg-secondary);white-space:nowrap;cursor:pointer;transition:all var(--transition)}.location-auto-btn:hover{background:#00000014;color:var(--fg)}.location-auto-btn:disabled{opacity:.5}.location-search__input-wrap .auth-input{padding-right:36px}.location-search__spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.location-search__results{list-style:none;padding:0;margin:6px 0 0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.location-search__results li{padding:10px 14px;font-size:.85rem;color:var(--fg);cursor:pointer;transition:background var(--transition);border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.location-search__results li:last-child{border-bottom:none}.location-search__results li:hover{background:var(--bg)}.uploader{margin-top:8px}.uploader__drop{border:2px dashed var(--border);border-radius:var(--radius-sm);padding:24px 16px;text-align:center;cursor:pointer;transition:all var(--transition)}.uploader__drop:hover{border-color:var(--accent)}.uploader__drop--active{border-color:var(--accent);background:#eff6ff}.uploader__drop-text{font-size:.85rem;color:var(--fg-secondary)}.uploader__link{color:var(--accent);font-weight:500}.uploader__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.uploader__thumb{position:relative;aspect-ratio:3/4;border-radius:var(--radius-sm);overflow:hidden}.uploader__thumb img,.uploader__thumb video{width:100%;height:100%;object-fit:cover}.uploader__remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;background:#0009;color:#fff;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center}.edit-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border);text-align:left}.edit-back{margin-top:20px;text-align:center;font-size:.85rem}.edit-back a{color:var(--accent)}.form-success{font-size:.85rem;color:var(--available);text-align:left}.card--featured{border:1px solid rgba(212,168,83,.25)}.card__badges{position:absolute;top:42px;right:10px;z-index:4;display:flex;flex-direction:column;gap:4px;align-items:flex-end}.card__featured-badge,.card__verified-badge{padding:4px 10px;color:#fff;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.card__featured-badge{background:#d4a853;box-shadow:0 2px 8px #d4a85359}.card__verified-tick{display:inline-block;vertical-align:middle;margin-left:5px;filter:drop-shadow(0 1px 3px rgba(212,168,83,.5));flex-shrink:0}.perks-section{margin-top:24px;display:flex;flex-direction:column;gap:16px}.perks-block{padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.perks-title{font-size:.9rem;font-weight:700;margin-bottom:6px}.perks-subtitle{font-size:.8rem;color:var(--fg-secondary);margin-bottom:10px}.perks-progress{height:6px;background:#0000000f;border-radius:3px;overflow:hidden;margin-bottom:12px}.perks-progress__bar{height:100%;background:var(--accent);border-radius:3px;transition:width .4s ease;min-width:4px}.perks-copy-btn{width:100%;padding:10px;background:var(--fg);color:#fff;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;transition:background .2s ease}.perks-copy-btn:hover{background:#222}.perk-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}.perk-item:last-child{border-bottom:none}.perk-item--active{color:var(--accent)}.perk-item__name{font-size:.875rem;font-weight:600}.perk-item__duration{font-size:.75rem;color:var(--fg-tertiary);margin-left:6px}.perk-item__timer{font-size:.78rem;font-weight:500;color:var(--accent)}.perk-activate-btn{padding:6px 14px;background:var(--accent);color:#fff;border-radius:var(--radius-full);font-size:.8rem;font-weight:600;transition:background .2s ease}.perk-activate-btn:hover{background:var(--accent-hover)}.perk-activate-btn:disabled{opacity:.6}.perk-item__impressions{font-size:.75rem;color:var(--accent);margin-top:2px}.perk-item__fire{color:#d4a853;font-weight:600}.perk-item__completed{font-size:.75rem;color:var(--fg-tertiary)}.perks-block--muted{opacity:.7}.perks-history{display:flex;flex-direction:column;gap:8px}.perks-history__toggle{font-size:.8rem;color:var(--fg-tertiary);text-align:left;padding:0;transition:color var(--transition)}.perks-history__toggle:hover{color:var(--fg-secondary)}.perks-history__empty{font-size:.8rem;color:var(--fg-tertiary)}.profile__boost-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;background:linear-gradient(135deg,#d4a853,#c4923e);color:#fff;border-radius:var(--radius-sm);font-size:.88rem;font-weight:600;transition:opacity .2s ease,transform .2s ease}.profile__boost-btn:hover{opacity:.9}.profile__boost-btn:active{transform:scale(.97)}.store{width:100%;max-width:480px;margin:0 auto}.store__title{font-size:1.5rem;font-weight:800;letter-spacing:-.03em;margin:16px 0 6px}.store__subtitle{font-size:.9rem;color:var(--fg-secondary);margin-bottom:24px}.store__grid{display:flex;flex-direction:column;gap:16px}.store__hint{margin-top:24px;font-size:.8rem;color:var(--fg-tertiary);text-align:center}.store-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px 20px;text-align:center}.store-card--featured{border-color:#d4a85359;box-shadow:0 0 0 1px #d4a85326}.store-card__popular{position:absolute;top:-10px;left:50%;transform:translate(-50%);padding:3px 14px;background:#d4a853;color:#fff;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.store-card--bundle{border-color:#d4a85359;background:linear-gradient(to bottom,rgba(212,168,83,.04) 0%,var(--surface) 100%)}.store-card__original-price{font-size:.85rem;font-weight:400;color:var(--fg-tertiary);text-decoration:line-through;margin-left:8px}.store__section-title{font-size:1.1rem;font-weight:700;margin:28px 0 12px}.store-card__icon{font-size:2rem;margin-bottom:8px}.store-card__name{font-size:1.15rem;font-weight:700}.store-card__duration{font-size:.8rem;color:var(--fg-tertiary);margin:2px 0 10px}.store-card__desc{font-size:.85rem;color:var(--fg-secondary);margin-bottom:14px}.store-card__benefits{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:6px;text-align:left}.store-card__benefits li{font-size:.82rem;color:var(--fg-secondary);padding-left:20px;position:relative}.store-card__benefits li:before{content:"✓";position:absolute;left:0;color:var(--available);font-weight:700}.store-card__price{font-size:1.5rem;font-weight:800;margin-bottom:12px}.store-card__buy{width:100%;padding:13px;background:var(--fg);color:#fff;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;transition:background .2s ease,transform .2s ease;box-shadow:0 2px 8px #0000001f}.store-card__buy:hover{background:#222}.store-card__buy:active{transform:scale(.97)}.store-card__buy:disabled{opacity:.5}.delete-account{margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}.delete-account__trigger{font-size:.8rem;color:var(--fg-tertiary);padding:0;transition:color var(--transition)}.delete-account__trigger:hover{color:#dc2626}.delete-account__confirm{display:flex;flex-direction:column;gap:12px}.delete-account__warning{font-size:.85rem;color:#dc2626;line-height:1.5;padding:12px;background:#fef2f2;border-radius:var(--radius-sm)}.delete-account__instruction{font-size:.825rem;color:var(--fg-secondary)}.delete-account__actions{display:flex;gap:8px}.delete-account__btn{flex:1;padding:10px;background:#dc2626;color:#fff;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;transition:background .2s ease}.delete-account__btn:hover:not(:disabled){background:#b91c1c}.delete-account__btn:disabled{opacity:.4;cursor:not-allowed}.delete-account__cancel{flex:1;padding:10px;background:transparent;color:var(--fg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;font-weight:500}.delete-account__cancel:hover{background:var(--bg)}@media(min-width:520px){.app__main{padding:24px}}
