@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fc0a7394b875fa43-s.2ytmazkdrg7t9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ebf22b5a21034f8-s.p.3j3877k49yy0l.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ccf27e5a7366fb23-s.1icgra-w5i50b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e41d5df559864f9e-s.p.1g73gv09-xcb6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_8dc9b408-module__iNhzTa__className{font-family:Instrument Serif,Instrument Serif Fallback;font-weight:400}.instrument_serif_8dc9b408-module__iNhzTa__variable{--font-serif:"Instrument Serif", "Instrument Serif Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_b2991b2-module__9mH_6q__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_b2991b2-module__9mH_6q__variable{--font-sans:"Inter", "Inter Fallback"}
:root{--ink:#170f1a;--ink-2:#221828;--card:#fdf8f4;--coral:#ff5a48;--coral-tint:#ff5a4829;--gold:#e7b457;--gold-tint:#e7b45729;--mist:#9b93a8;--mist-dim:#6b6478;--line:#34293a;--text:#f2eaf5;--text-dim:#b9aec4;--r-sm:10px;--r-md:16px;--r-lg:26px;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--maxw:460px;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);--font-display:var(--font-serif), Georgia, serif;--font-body:var(--font-sans), -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--ink);margin:0}body{color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100dvh;font-size:15px;line-height:1.45}h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:400}p{margin:0}a{color:inherit}button{font-family:inherit}.shell{max-width:var(--maxw);flex-direction:column;min-height:100dvh;margin:0 auto;display:flex;position:relative}.shell.fixed{height:100dvh;min-height:0;overflow:hidden}.topbar{padding:calc(14px + var(--safe-top)) 20px 14px;justify-content:space-between;align-items:center;display:flex}.wordmark{font-family:var(--font-display);color:var(--text);font-size:24px;font-style:italic}.wordmark .dot{color:var(--coral)}.btn{cursor:pointer;transition:transform .18s var(--ease-spring), opacity .15s, background .15s;font-size:15px;font-weight:600;font-family:var(--font-body);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:15px 22px;display:inline-flex}.btn.primary{background:var(--coral);color:#fff;width:100%}.btn.primary:active{opacity:.92;transform:scale(.97)}.btn.ghost{color:var(--text);border:1px solid var(--line);background:0 0;width:100%}.btn.ghost:active{background:var(--ink-2);transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.sm{width:auto;padding:10px 18px;font-size:14px}.btn.google{background:var(--card);color:#1f1f1f;border:1px solid #0000;text-decoration:none}.btn.google:active{transform:scale(.97)}.or-divider{color:var(--mist-dim);align-items:center;gap:10px;margin:16px 0 6px;font-size:12px;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--line);flex:1;height:1px}.linklike{color:var(--mist);text-underline-offset:3px;cursor:pointer;font-size:14px;font-family:var(--font-body);background:0 0;border:none;padding:0;text-decoration:underline}label{color:var(--text-dim);margin:16px 0 6px;font-size:13px;font-weight:600;display:block}input,textarea,select{background:var(--ink-2);width:100%;color:var(--text);border:1px solid var(--line);border-radius:var(--r-sm);font-size:15px;font-family:var(--font-body);padding:13px 14px;transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;min-height:80px}input::placeholder,textarea::placeholder{color:var(--mist-dim)}input:focus,textarea:focus,select:focus{border-color:var(--coral);box-shadow:0 0 0 3px var(--coral-tint);outline:none}.err{color:#ff8a7a;margin-top:10px;font-size:13px}.field-hint{color:var(--mist-dim);margin-top:6px;font-size:12px}.pill-row{gap:8px;margin-top:4px;display:flex}.pill-row button{background:var(--ink-2);border:1px solid var(--line);color:var(--text-dim);border-radius:var(--r-sm);cursor:pointer;transition:transform .18s var(--ease-spring), background .15s, color .15s, border-color .15s;flex:1;padding:12px 0;font-size:14px;font-weight:600}.pill-row button:active{transform:scale(.96)}.pill-row button.active{background:var(--coral-tint);border-color:var(--coral);color:var(--coral)}.landing{padding:20px 24px calc(24px + var(--safe-bottom));flex-direction:column;flex:1;justify-content:center;display:flex}.landing-hero{text-align:center;margin-bottom:32px}.landing-hero .spark{margin-bottom:10px;font-size:34px}.landing-hero h1{color:var(--text);font-size:34px;font-style:italic;line-height:1.15}.landing-hero p{color:var(--text-dim);margin-top:12px;font-size:15px;line-height:1.5}.auth-tabs{background:var(--ink-2);border-radius:999px;gap:4px;margin-bottom:8px;padding:4px;display:flex}.auth-tabs button{color:var(--mist);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:10px 0;font-size:14px;font-weight:600;transition:background .18s,color .18s}.auth-tabs button.active{background:var(--coral);color:#fff}.center-msg{text-align:center;color:var(--text-dim);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:40px 24px;display:flex}.center-msg .spark{font-size:32px}.tabbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:8px 8px calc(8px + var(--safe-bottom));background:#170f1aeb;flex:none;display:flex}.tabbar a{color:var(--mist);flex-direction:column;flex:1;align-items:center;gap:4px;padding:6px 0;font-size:11px;font-weight:600;text-decoration:none;transition:color .15s;display:flex}.tabbar a.active{color:var(--coral)}.tabbar svg{transition:transform .18s var(--ease-spring)}.tabbar a:active svg{transform:scale(.88)}.app-body{flex:1;overflow-y:auto}.deck-wrap{flex-direction:column;flex:1;padding:4px 16px 12px;display:flex;position:relative}.deck{flex:1;min-height:420px;position:relative}.deck-empty{text-align:center;color:var(--text-dim);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.deck-empty .spark{font-size:32px}.dcard{border-radius:var(--r-lg);background:var(--ink-2) center/cover no-repeat;touch-action:none;cursor:grab;will-change:transform;position:absolute;inset:0;overflow:hidden;box-shadow:0 18px 40px #00000073}.dcard:active{cursor:grabbing}.dcard .scrim{background:linear-gradient(#0000 45%,#0a060ceb 100%);position:absolute;inset:0}.dcard .info{padding:20px;position:absolute;bottom:0;left:0;right:0}.dcard .name-line{align-items:baseline;gap:8px;display:flex}.dcard .name-line h2{color:#fff;font-size:28px;font-style:italic}.dcard .name-line .age{color:#ffffffd9;font-size:20px;font-family:var(--font-body)}.dcard .city{color:#ffffffbf;margin-top:4px;font-size:13px}.dcard .bio{color:#ffffffe6;margin-top:8px;font-size:14px;line-height:1.4}.dcard .stamp{letter-spacing:1px;text-transform:uppercase;opacity:0;border:3px solid;border-radius:8px;padding:6px 16px;font-size:20px;font-weight:800;position:absolute;top:24px}.dcard .stamp.like{color:var(--coral);border-color:var(--coral);left:20px;transform:rotate(-12deg)}.dcard .stamp.pass{color:var(--mist);border-color:var(--mist);right:20px;transform:rotate(12deg)}.deck-actions{justify-content:center;align-items:center;gap:22px;padding:18px 0 6px;display:flex}.round-btn{cursor:pointer;width:60px;height:60px;transition:transform .18s var(--ease-spring);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 8px 20px #00000059}.round-btn:active{transform:scale(.88)}.round-btn.pass{background:var(--ink-2);color:var(--mist);border:1px solid var(--line)}.round-btn.like{background:var(--coral);color:#fff;width:68px;height:68px}.match-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:80;background:#0a060ce0;justify-content:center;align-items:center;padding:24px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}}.match-card{text-align:center;max-width:340px}.match-card .gold-word{font-family:var(--font-display);color:var(--gold);animation:popIn .4s var(--ease-spring);font-size:42px;font-style:italic}@keyframes popIn{0%{opacity:0;transform:scale(.7)}}.match-avatars{justify-content:center;margin:20px 0;display:flex}.match-avatars img{border:3px solid var(--gold);object-fit:cover;background:var(--ink-2);border-radius:50%;width:92px;height:92px}.match-avatars img+img{margin-left:-22px}.match-card p{color:var(--text-dim);margin-bottom:22px}.page-title{padding:4px 20px 12px}.page-title h1{font-size:24px;font-style:italic}.match-row{color:var(--text);align-items:center;gap:12px;padding:12px 20px;text-decoration:none;transition:background .15s;display:flex}.match-row:active{background:var(--ink-2)}.match-row .thumb{object-fit:cover;background:var(--ink-2);border-radius:50%;flex:none;width:54px;height:54px}.match-row .meta{flex:1;min-width:0}.match-row .name{font-size:15px;font-weight:700}.match-row .preview{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.match-row .preview.new{color:var(--coral);font-weight:600}.chat-header{padding:calc(12px + var(--safe-top)) 16px 12px;border-bottom:1px solid var(--line);align-items:center;gap:12px;display:flex}.chat-header img{object-fit:cover;background:var(--ink-2);border-radius:50%;width:38px;height:38px}.chat-header h2{font-size:17px;font-style:italic}.back-btn{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px;display:flex}.msg-list{flex-direction:column;flex:1;gap:8px;padding:16px;display:flex;overflow-y:auto}.msg-empty{text-align:center;color:var(--text-dim);padding:30px 20px;font-size:13px}.bubble{border-radius:18px;max-width:78%;padding:10px 14px;font-size:14px;line-height:1.4}.bubble.theirs{background:var(--ink-2);border-bottom-left-radius:4px;align-self:flex-start}.bubble.mine{background:var(--coral);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.composer{padding:10px 12px calc(10px + var(--safe-bottom));border-top:1px solid var(--line);gap:8px;display:flex}.composer input{border-radius:999px;flex:1}.composer button{background:var(--coral);color:#fff;cursor:pointer;width:44px;height:44px;transition:transform .18s var(--ease-spring);border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-family:inherit;display:flex}.composer button:active{transform:scale(.9)}.composer button:disabled{opacity:.45}.onboard-wrap,.profile-wrap{padding:8px 20px calc(24px + var(--safe-bottom))}.step-dots{justify-content:center;gap:6px;margin:10px 0 22px;display:flex}.step-dots span{background:var(--line);border-radius:2px;width:22px;height:4px}.step-dots span.active{background:var(--coral)}.photo-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;display:grid}.photo-slot{aspect-ratio:3/4;border-radius:var(--r-sm);background:var(--ink-2) center/cover no-repeat;border:1px dashed var(--line);color:var(--mist);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.photo-slot.filled{border-style:solid}.photo-slot input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.photo-slot .remove{color:#fff;cursor:pointer;background:#0a060cbf;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.profile-header{align-items:center;gap:14px;padding:8px 0 20px;display:flex}.profile-header img{object-fit:cover;background:var(--ink-2);border-radius:50%;flex:none;width:68px;height:68px}.profile-header .name{font-size:20px;font-style:italic}.profile-header .sub{color:var(--text-dim);margin-top:2px;font-size:13px}.section-title{color:var(--mist);text-transform:uppercase;letter-spacing:.5px;margin:22px 0 8px;font-size:12px;font-weight:700}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
