:root{color-scheme:light dark;--brand: #e10600;--brand-bright: #ff2a2a;--brand-deep: #8b0a12;--bg: var(--tg-theme-bg-color, #0a0a0a);--fg: var(--tg-theme-text-color, #f5f0f0);--surface: var(--tg-theme-secondary-bg-color, #161212);--surface-elevated: color-mix(in srgb, var(--bg) 62%, #2a1618);--muted: var(--tg-theme-hint-color, #a89898);--border: color-mix(in srgb, var(--fg) 12%, transparent);--accent: var(--brand);--accent-soft: color-mix(in srgb, var(--brand) 16%, transparent);--accent-fg: #fff8f8;--danger: #ff6b4a;--success: #3d9b6e;--ink-soft: color-mix(in srgb, var(--fg) 72%, var(--muted));--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--control-min: 44px;--radius-sm: .65rem;--radius-md: .95rem;--radius-lg: 1.35rem;--radius-xl: 1.75rem;--radius-full: 999px;--elevation-1: 0 8px 24px color-mix(in srgb, #000 45%, transparent);--elevation-2: 0 18px 48px color-mix(in srgb, #000 55%, transparent);--elevation-glow: 0 10px 32px color-mix(in srgb, var(--brand) 38%, transparent);--duration-fast: .16s;--duration: .32s;--duration-slow: .52s;--ease: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1);--content-width: 28rem;--bottom-nav-height: 4.75rem;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Source Sans 3", "Segoe UI", sans-serif;background-color:var(--bg);color:var(--fg)}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;color:var(--fg)}html{background:radial-gradient(110% 70% at 0% -10%,color-mix(in srgb,var(--brand) 28%,transparent),transparent 55%),radial-gradient(90% 55% at 110% 110%,color-mix(in srgb,var(--brand-deep) 22%,transparent),transparent 50%),var(--bg)}body{font-family:var(--font-body);line-height:1.45;background:transparent;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,textarea,select{font:inherit}:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{position:relative;min-height:100dvh;max-width:var(--content-width);margin:0 auto;padding:calc(var(--space-3) + var(--safe-top)) var(--space-4) calc(var(--bottom-nav-height) + var(--space-5) + var(--safe-bottom));display:grid;grid-template-rows:auto 1fr;gap:var(--space-3);isolation:isolate}.app-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;opacity:.35;background-image:radial-gradient(color-mix(in srgb,var(--fg) 8%,transparent) .6px,transparent .6px);background-size:3px 3px;-webkit-mask-image:linear-gradient(180deg,#000 20%,transparent 90%);mask-image:linear-gradient(180deg,#000 20%,transparent 90%)}.app-shell-boot{padding-bottom:calc(var(--space-5) + var(--safe-bottom));place-content:center}.app-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:var(--control-min);animation:rise-in var(--duration) var(--ease) both}.brand-logo{display:inline-flex;align-items:center;gap:.7rem;min-width:0}.brand-logo-mark{display:block;flex:0 0 auto;object-fit:contain;border-radius:.35rem;filter:drop-shadow(0 6px 18px color-mix(in srgb,var(--brand) 45%,transparent))}.brand-logo-wordmark{font-family:var(--font-display);font-size:1.55rem;font-weight:700;letter-spacing:.01em;line-height:1;background:linear-gradient(180deg,var(--brand-bright),var(--brand) 55%,var(--brand-deep));-webkit-background-clip:text;background-clip:text;color:transparent}.brand-logo-full{display:block;width:min(14rem,72vw);height:auto;filter:drop-shadow(0 12px 36px color-mix(in srgb,var(--brand) 35%,transparent))}.app-header-context{margin:0;padding:.35rem .7rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--ink-soft);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.app-main{min-height:0;animation:view-enter var(--duration) var(--ease) both}.discover-lock-hint{position:fixed;left:50%;bottom:calc(var(--bottom-nav-height) + var(--safe-bottom) + .35rem);transform:translate(-50%);width:min(calc(100% - 1.5rem),calc(var(--content-width) - 1.5rem));margin:0;padding:.65rem .9rem;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:var(--radius-full);background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);color:var(--ink-soft);font-size:.8rem;font-weight:600;text-align:center;box-shadow:var(--elevation-1);z-index:19;animation:rise-in var(--duration) var(--ease) both}.app-shell:has(.discover-lock-hint){padding-bottom:calc(var(--bottom-nav-height) + var(--space-4) + var(--safe-bottom) + 3rem)}.bottom-nav{position:fixed;left:50%;bottom:calc(.55rem + var(--safe-bottom));transform:translate(-50%);width:min(calc(100% - 1.25rem),calc(var(--content-width) - 1.25rem));display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1);padding:.35rem;border:1px solid color-mix(in srgb,var(--fg) 8%,transparent);border-radius:var(--radius-xl);background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.35);backdrop-filter:blur(18px) saturate(1.35);box-shadow:var(--elevation-2);z-index:20;animation:nav-in var(--duration-slow) var(--ease) both}.bottom-nav button{position:relative;min-height:calc(var(--control-min) + .15rem);border:0;border-radius:var(--radius-lg);padding:.35rem .4rem .45rem;display:grid;justify-items:center;align-content:center;gap:.15rem;background:transparent;color:var(--muted);cursor:pointer;font-size:.72rem;font-weight:700;letter-spacing:.01em;transition:color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.bottom-nav-icon{display:grid;place-items:center;width:1.65rem;height:1.65rem;border-radius:var(--radius-full);transition:background var(--duration) var(--ease),transform var(--duration) var(--ease-spring),box-shadow var(--duration) var(--ease)}.bottom-nav button.active{color:var(--brand-bright)}.bottom-nav button.active .bottom-nav-icon{background:linear-gradient(160deg,var(--brand-bright),var(--brand) 55%,var(--brand-deep));color:var(--accent-fg);transform:translateY(-1px) scale(1.05);box-shadow:var(--elevation-glow)}.bottom-nav button:active:not(:disabled){transform:scale(.97)}.bottom-nav button:disabled{opacity:.42;cursor:not-allowed}.boot-state,.state-panel{min-height:50dvh;display:grid;place-content:center;justify-items:center;gap:var(--space-3);text-align:center}.boot-state-animated .brand-logo,.boot-state-animated .brand-logo-full{animation:logo-breathe 2.4s var(--ease) infinite}.boot-pulse{width:2.5rem;height:.28rem;border-radius:var(--radius-full);background:linear-gradient(90deg,transparent,var(--brand-bright),transparent);background-size:200% 100%;animation:shimmer 1.1s linear infinite}.muted{margin:0;color:var(--muted)}.banner{margin:0;padding:.8rem .95rem;border-radius:var(--radius-md);font-size:.92rem;animation:rise-in var(--duration-fast) var(--ease) both}.banner-error{background:color-mix(in srgb,var(--danger) 12%,var(--bg));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 18%,transparent)}.banner-ok{background:color-mix(in srgb,var(--success) 12%,var(--bg));color:var(--success);border:1px solid color-mix(in srgb,var(--success) 18%,transparent)}.btn-primary,.btn-secondary,.btn-danger,.icon-button{cursor:pointer;min-height:var(--control-min);transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration) var(--ease),background var(--duration-fast) var(--ease),opacity var(--duration-fast) var(--ease)}.btn-primary,.btn-secondary,.btn-danger{width:100%;border-radius:var(--radius-md);padding:.85rem 1rem;font-weight:700}.btn-primary{border:0;background:linear-gradient(160deg,var(--brand-bright),var(--brand) 48%,var(--brand-deep));color:var(--accent-fg);box-shadow:var(--elevation-glow)}.btn-primary:hover:not(:disabled){box-shadow:0 14px 34px color-mix(in srgb,var(--brand) 42%,transparent)}.btn-secondary{border:1px solid var(--border);background:color-mix(in srgb,var(--surface-elevated) 88%,transparent);color:inherit;font-weight:600}.btn-danger{border:0;background:linear-gradient(160deg,color-mix(in srgb,var(--danger) 82%,#fff),var(--danger));color:#fff}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-danger:active:not(:disabled),.discovery-actions button:active:not(:disabled){transform:scale(.985)}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled,.icon-button:disabled,.photo-upload:has(input:disabled),.discovery-actions button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.icon-button{display:inline-grid;place-items:center;width:var(--control-min);min-width:var(--control-min);border:0;border-radius:var(--radius-md);padding:0;background:color-mix(in srgb,var(--surface) 85%,transparent);color:inherit}.state-panel-title,.discovery-empty-title{margin:0;font-family:var(--font-display);font-size:1.45rem;font-weight:800;letter-spacing:-.03em}.state-panel-copy{margin:0;color:var(--muted);max-width:18rem}.state-panel-actions{display:grid;gap:var(--space-2);width:min(100%,16rem)}.state-skeleton,.discovery-skeleton{width:min(100%,18rem);aspect-ratio:3 / 4;border-radius:var(--radius-xl);background:linear-gradient(110deg,color-mix(in srgb,var(--surface) 70%,transparent) 25%,color-mix(in srgb,var(--fg) 7%,var(--surface)),color-mix(in srgb,var(--surface) 70%,transparent) 65%);background-size:200% 100%;animation:shimmer 1.2s linear infinite;box-shadow:var(--elevation-1)}.bottom-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;align-items:end;padding:var(--safe-top) 0 0;animation:fade-in var(--duration-fast) var(--ease) both}.bottom-sheet-scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:0;margin:0;background:color-mix(in srgb,#000000 48%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer}.bottom-sheet-scrim:disabled{cursor:default;opacity:1}.bottom-sheet{position:relative;z-index:1;width:100%;max-height:min(88dvh,40rem);overflow:auto;display:grid;gap:var(--space-3);padding:var(--space-5) var(--space-4) calc(var(--space-5) + var(--safe-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:color-mix(in srgb,var(--bg) 94%,#fff);box-shadow:var(--elevation-2);animation:sheet-up var(--duration) var(--ease-spring) both}.bottom-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.bottom-sheet-title{margin:0;font-family:var(--font-display);font-size:1.28rem;font-weight:800;letter-spacing:-.03em}.bottom-sheet-description,.safety-copy{margin:var(--space-2) 0 0;color:var(--muted);font-size:.92rem;line-height:1.45}.bottom-sheet-body{display:grid;gap:var(--space-3)}.safety-sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.profile-editor{display:grid;gap:var(--space-4)}.profile-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);animation:rise-in var(--duration) var(--ease) both}.profile-welcome{margin:0;font-family:var(--font-display);font-size:1.45rem;font-weight:800;letter-spacing:-.035em}.profile-subtitle{margin:.25rem 0 0;color:var(--muted);font-size:.92rem}.profile-status{margin:0;font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:.4rem .7rem;border-radius:var(--radius-full);white-space:nowrap}.profile-status.complete{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.profile-status.incomplete{color:var(--muted);background:color-mix(in srgb,var(--muted) 14%,transparent)}.profile-section{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface-elevated) 92%,transparent);box-shadow:0 1px color-mix(in srgb,#fff 40%,transparent) inset;animation:rise-in var(--duration) var(--ease) both}.profile-section:nth-of-type(2){animation-delay:40ms}.profile-section:nth-of-type(3){animation-delay:80ms}.profile-section:nth-of-type(4){animation-delay:.12s}.profile-section:nth-of-type(5){animation-delay:.16s}.section-heading h2,.profile-section h2{margin:0;font-family:var(--font-display);font-size:1.08rem;letter-spacing:-.02em}.profile-hint{margin:0;color:var(--muted);font-size:.85rem;font-weight:400}.missing-list{margin:0;padding-left:1.1rem;display:grid;gap:var(--space-1);color:var(--ink-soft);font-size:.9rem}.profile-form{display:grid;gap:var(--space-3)}.profile-form label,.photo-upload,.field-hint{display:grid;gap:var(--space-1);font-size:.875rem;font-weight:600}.field-optional{color:var(--muted);font-weight:500}.profile-form input,.profile-form textarea,.profile-form select,.safety-details textarea{font-weight:400;min-height:var(--control-min);padding:.75rem .9rem;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg) 70%,var(--surface));color:inherit;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.profile-form input:focus,.profile-form textarea:focus,.profile-form select:focus,.safety-details textarea:focus{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 3px var(--accent-soft);outline:none}.profile-form textarea,.safety-details textarea{min-height:6rem;resize:vertical}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.photo-item{margin:0;display:grid;gap:var(--space-2);position:relative}.photo-item img{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:var(--radius-md);background:color-mix(in srgb,var(--fg) 8%,transparent);transition:transform var(--duration) var(--ease)}.photo-item:hover img{transform:scale(1.015)}.photo-badge{position:absolute;top:var(--space-2);left:var(--space-2);margin:0;padding:.28rem .55rem;border-radius:var(--radius-full);background:color-mix(in srgb,#000000 58%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.photo-item button{min-height:var(--control-min);padding:.55rem;border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:inherit;cursor:pointer;font-weight:600}.photo-upload{justify-items:center;align-content:center;min-height:var(--control-min);padding:var(--space-4);border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:var(--radius-md);background:var(--accent-soft);cursor:pointer;transition:transform var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.photo-upload:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}.photo-upload input{display:none}.photo-limit{margin:0;padding:var(--space-3);border-radius:var(--radius-md);background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted);font-size:.9rem}.blocked-users summary{cursor:pointer;font-family:var(--font-display);font-size:1.05rem;font-weight:700;min-height:var(--control-min);display:flex;align-items:center}.blocked-users[open] summary{margin-bottom:var(--space-2)}.blocked-empty{display:grid;gap:var(--space-2);justify-items:start}.blocked-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-3)}.blocked-item{display:grid;grid-template-columns:3.5rem 1fr;gap:var(--space-3);align-items:center}.blocked-photo,.blocked-photo-empty{width:3.5rem;height:3.5rem;border-radius:var(--radius-md);object-fit:cover;background:color-mix(in srgb,var(--fg) 8%,var(--surface))}.blocked-photo-empty{display:grid;place-items:center;color:var(--muted);font-weight:700}.blocked-meta{display:grid;gap:var(--space-2);min-width:0}.blocked-name{margin:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blocked-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.blocked-actions .btn-primary,.blocked-actions .btn-secondary,.blocked-actions .btn-danger{width:auto;padding:.55rem .85rem;font-size:.85rem}.discovery-page,.matches-page{display:grid;gap:var(--space-3);min-height:0}.discovery-card{display:grid;grid-template-rows:1fr auto;gap:var(--space-3);min-height:min(68dvh,34rem);animation:card-in var(--duration-slow) var(--ease) both}.discovery-photo{position:relative;min-height:0;border-radius:var(--radius-xl);overflow:hidden;background:color-mix(in srgb,var(--fg) 8%,var(--surface));box-shadow:var(--elevation-2);-webkit-user-select:none;user-select:none}.discovery-photo-hit{position:absolute;z-index:3;top:0;bottom:38%;width:42%;min-height:var(--control-min);border:0;padding:0;margin:0;background:transparent;cursor:pointer}.discovery-photo-hit-prev{left:0}.discovery-photo-hit-next{right:0}.discovery-photo-hit:disabled{cursor:default}.discovery-photo-img,.discovery-photo-empty{width:100%;height:100%;min-height:min(52dvh,26rem);object-fit:cover;display:block}.discovery-photo-img{animation:photo-fade var(--duration) var(--ease) both}.discovery-photo-empty{display:grid;place-items:center;color:var(--muted);background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--accent) 12%,var(--surface)))}.discovery-photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,color-mix(in srgb,#000 22%,transparent) 0%,transparent 28%,transparent 46%,color-mix(in srgb,#000 82%,transparent) 100%);pointer-events:none}.discovery-safety{position:absolute;z-index:4;top:var(--space-3);right:var(--space-3)}.discovery-photo-dots{position:absolute;z-index:2;top:var(--space-3);left:var(--space-3);right:4rem;display:flex;gap:.3rem}.discovery-photo-dots span{flex:1;height:.22rem;border-radius:var(--radius-full);background:color-mix(in srgb,#fff 32%,transparent);transition:background var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.discovery-photo-dots span.active{background:#fff;transform:scaleY(1.35)}.discovery-meta{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:var(--space-5) var(--space-4) var(--space-4);color:#fff5f5}.discovery-meta h2{margin:0;font-family:var(--font-display);font-size:1.85rem;font-weight:800;letter-spacing:-.04em;display:flex;align-items:baseline;gap:var(--space-2);overflow-wrap:anywhere;text-shadow:0 2px 18px color-mix(in srgb,#000 35%,transparent)}.discovery-age,.match-age{font-family:var(--font-body);font-size:1.15rem;font-weight:600;opacity:.92}.discovery-city,.discovery-bio{margin:0}.discovery-city{margin-top:.25rem;opacity:.92;font-size:.95rem;font-weight:600}.discovery-bio{margin-top:var(--space-2);font-size:.98rem;line-height:1.4;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.discovery-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.discovery-actions button{min-height:calc(var(--control-min) + .25rem);border:0;border-radius:var(--radius-lg);padding:.95rem 1rem;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-weight:700;font-size:1rem;cursor:pointer;transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration) var(--ease),filter var(--duration-fast) var(--ease)}.discovery-pass{background:color-mix(in srgb,var(--surface-elevated) 90%,var(--fg));color:var(--fg);border:1px solid var(--border)}.discovery-like{background:linear-gradient(160deg,var(--brand-bright),var(--brand) 48%,var(--brand-deep));color:var(--accent-fg);box-shadow:var(--elevation-glow)}.match-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:var(--space-5);background:color-mix(in srgb,#000 62%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fade-in var(--duration-fast) var(--ease) both}.match-moment{width:min(100%,22rem);display:grid;gap:var(--space-2);justify-items:center;padding:var(--space-6) var(--space-4) var(--space-4);border-radius:var(--radius-xl);background:radial-gradient(120% 90% at 50% -10%,color-mix(in srgb,var(--brand) 30%,transparent),transparent 55%),color-mix(in srgb,var(--bg) 92%,#1a1012);color:var(--fg);box-shadow:var(--elevation-2);text-align:center;animation:match-pop var(--duration-slow) var(--ease-spring) both}.match-moment-photo,.match-moment-photo-empty{width:6rem;height:6rem;border-radius:var(--radius-full);overflow:hidden;background:var(--surface);box-shadow:var(--elevation-glow);animation:logo-breathe 2.8s var(--ease) infinite}.match-moment-photo img{width:100%;height:100%;object-fit:cover;display:block}.match-moment-photo-empty{display:grid;place-items:center;color:var(--accent);font-family:var(--font-display);font-weight:800}.match-kicker{margin:.35rem 0 0;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:800;color:var(--accent)}.match-name{margin:0;font-family:var(--font-display);font-size:1.9rem;font-weight:800;letter-spacing:-.04em}.match-copy{margin:0 0 var(--space-2);color:var(--muted);font-size:.95rem}.match-moment-actions{display:grid;gap:var(--space-2);width:100%}.matches-heading{display:grid;gap:var(--space-1);animation:rise-in var(--duration) var(--ease) both}.matches-heading h1{margin:0;font-family:var(--font-display);font-size:1.4rem;font-weight:800;letter-spacing:-.03em}.matches-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-3)}.matches-list>li{animation:rise-in var(--duration) var(--ease) both}.matches-list>li:nth-child(1){animation-delay:20ms}.matches-list>li:nth-child(2){animation-delay:60ms}.matches-list>li:nth-child(3){animation-delay:.1s}.matches-list>li:nth-child(4){animation-delay:.14s}.matches-list>li:nth-child(5){animation-delay:.18s}.match-card{display:grid;grid-template-columns:5.5rem 1fr;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--border);background:color-mix(in srgb,var(--surface-elevated) 92%,transparent);box-shadow:var(--elevation-1);transition:transform var(--duration-fast) var(--ease),box-shadow var(--duration) var(--ease)}.match-card:hover{transform:translateY(-1px);box-shadow:var(--elevation-2)}.match-photo,.match-photo-empty{width:5.5rem;height:5.5rem;border-radius:var(--radius-md);overflow:hidden;background:color-mix(in srgb,var(--fg) 8%,var(--surface))}.match-photo img{display:block;width:100%;height:100%;object-fit:cover}.match-photo-empty{display:grid;place-items:center;padding:var(--space-1);text-align:center;font-size:.75rem;color:var(--muted)}.match-meta{display:grid;gap:.2rem;min-width:0;align-content:start}.match-meta-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.match-meta h2{margin:0;font-family:var(--font-display);font-size:1.12rem;font-weight:800;letter-spacing:-.02em;display:flex;align-items:baseline;gap:var(--space-2);min-width:0;overflow-wrap:anywhere}.match-age,.match-city,.match-date{margin:0;color:var(--muted)}.match-age{font-family:var(--font-body);font-size:.95rem;font-weight:600}.match-city{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-bio{margin:0;font-size:.9rem;line-height:1.35;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.match-date{margin-top:.15rem;font-size:.75rem}.match-chat{margin-top:var(--space-2);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:.9rem}.match-chat-fallback{margin:var(--space-2) 0 0;padding:.55rem .65rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted);font-size:.82rem;line-height:1.35}.safety-menu{position:relative}.safety-menu-trigger{width:var(--control-min);min-height:var(--control-min);border:0;border-radius:var(--radius-full);padding:0;display:grid;place-items:center;background:color-mix(in srgb,#000000 48%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;transition:transform var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.safety-menu-trigger:hover{transform:scale(1.04)}.match-meta-top .safety-menu-trigger{background:color-mix(in srgb,var(--fg) 8%,transparent);color:var(--fg)}.safety-menu-panel{position:absolute;top:calc(100% + .4rem);right:0;z-index:5;display:grid;min-width:9rem;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg) 94%,#fff);box-shadow:var(--elevation-2);animation:menu-in var(--duration-fast) var(--ease-spring) both}.safety-menu-panel button{min-height:var(--control-min);border:0;border-radius:var(--radius-sm);padding:.65rem .8rem;background:transparent;color:inherit;text-align:left;font-weight:600;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.safety-menu-panel button:hover,.safety-menu-panel button:focus-visible{background:color-mix(in srgb,var(--surface) 80%,transparent)}.safety-reasons{margin:0;padding:0;border:0;display:grid;gap:var(--space-1)}.safety-reasons legend{margin-bottom:var(--space-1);font-weight:700}.safety-reason{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-min);padding:.35rem .55rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface) 70%,transparent);transition:background var(--duration-fast) var(--ease)}.safety-reason:has(input:checked){background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.safety-details{display:grid;gap:var(--space-1);font-weight:600}.safety-details span{display:flex;justify-content:space-between;gap:var(--space-3)}.safety-counter{color:var(--muted);font-weight:500;font-size:.85rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes view-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes nav-in{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}@keyframes card-in{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes photo-fade{0%{opacity:.2;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes match-pop{0%{opacity:0;transform:translateY(20px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sheet-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes logo-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@media(max-height:640px){.discovery-photo-img,.discovery-photo-empty{min-height:min(42dvh,20rem)}.discovery-card{min-height:min(58dvh,28rem)}.discovery-bio{-webkit-line-clamp:2}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms;animation-iteration-count:1;transition-duration:1ms}.boot-state-animated .brand-logo,.boot-state-animated .brand-logo-full,.match-moment-photo,.match-moment-photo-empty{animation:none}}
