:root{color:#1b1b1a;font-synthesis:none;--paper:#f4f7fb;--ink:#08172f;--orange:#173b7a;--muted:#62748f;--line:#d8e3ef;background:#dfddd6;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% 0,#f5f9fd 0,#d7e1ec 70%);min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{background:var(--paper);width:min(100%,460px);min-height:100vh;margin:0 auto;padding-bottom:86px;position:relative;overflow:hidden;box-shadow:0 0 80px #19191424}:is(.app-shell:has(.welcome),.app-shell:has(.onboarding)){padding-bottom:0}.page-enter{animation:.35s cubic-bezier(.2,.8,.2,1) enter}@keyframes enter{0%{opacity:0;transform:translateY(8px)}}.logo{letter-spacing:-.04em;align-items:baseline;gap:7px;display:flex}.logo span{font-family:Unbounded,sans-serif;font-size:13px;font-weight:700}.logo i{color:var(--orange);font-family:Unbounded,sans-serif;font-size:13px;font-style:normal;font-weight:700}.eyebrow{letter-spacing:.18em;color:var(--orange);margin:0 0 10px;font-size:10px;font-weight:800;line-height:1}h1,h2,h3,p{margin-top:0}em{color:var(--orange);font-family:Georgia,serif;font-weight:400}.icon-button{cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.icon-button.quiet{background:0 0}.primary{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:18px;justify-content:center;align-items:center;gap:12px;font-weight:700;transition:transform .15s,opacity .15s;display:flex}.primary:active{transform:scale(.98)}.primary:disabled{opacity:.35;cursor:default}.primary.large{width:100%;min-height:58px;padding:0 24px}.secondary{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;padding:13px 20px;font-weight:700}.topbar{z-index:5;justify-content:space-between;align-items:center;height:68px;padding:12px 19px 8px;display:flex;position:relative}.top-title{font-size:15px;position:absolute;left:50%;transform:translate(-50%)}.mini-avatar{color:#fff;cursor:pointer;background:#222;border:0;border-radius:12px;width:36px;height:36px;font-size:11px;font-weight:800}.welcome{min-height:100vh;padding:24px 22px max(22px, env(safe-area-inset-bottom));background:var(--paper);flex-direction:column;display:flex}.welcome-top{justify-content:space-between;align-items:center;display:flex}.edition{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:9px}.orbit{height:clamp(245px,38vh,330px);margin:15px -22px -8px;position:relative}.orbit-line{border:1px solid #1d1d1b1f;border-radius:50%;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)rotate(-13deg)}.orbit-line.one{width:330px;height:150px}.orbit-line.two{width:230px;height:230px;transform:translate(-50%,-50%)rotate(25deg)}.orbit-line:after,.orbit-line:before{content:"";background:var(--orange);border-radius:50%;width:7px;height:7px;position:absolute}.orbit-line.one:after{top:19px;right:30px}.orbit-line.one:before{bottom:8px;left:45px}.orbit-core{background:var(--orange);color:#fff;border-radius:48% 48% 45% 45%;flex-direction:column;justify-content:center;align-items:center;width:126px;height:152px;display:flex;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)rotate(-7deg);box-shadow:0 24px 55px #173b7a47}.orbit-core small{margin-top:9px;font-family:Georgia,serif;font-style:italic}.orbit-core b{font-family:Unbounded;font-size:18px}.orbit-person{color:#fff;text-align:center;border-radius:17px;place-items:center;min-width:92px;min-height:48px;padding:0 12px;font-size:10px;font-weight:800;line-height:1.2;display:grid;position:absolute;box-shadow:0 8px 20px #0d1b3a29}.orbit-person.p1{background:linear-gradient(135deg,#42c9ae,#198d79);top:27%;left:4%;transform:rotate(-8deg)}.orbit-person.p2{background:linear-gradient(135deg,#315da9,#10285c);top:24%;right:4%;transform:rotate(8deg)}.orbit-person.p3{background:linear-gradient(135deg,#f1a365,#c46c2f);min-width:108px;min-height:54px;bottom:10%;right:12%;transform:rotate(-4deg)}.welcome-copy h1{letter-spacing:-.055em;margin-bottom:16px;font-family:Unbounded,sans-serif;font-size:clamp(30px,8.2vw,39px);line-height:1.14}.welcome-copy .lead{color:#62615d;max-width:360px;font-size:14px;line-height:1.55}.welcome .primary{margin-top:auto}.microcopy{text-align:center;color:#96948d;margin:11px 0 0;font-size:10px}.onboarding{flex-direction:column;min-height:100vh;display:flex}.onboarding-head{grid-template-columns:42px 1fr 35px;align-items:center;gap:15px;height:72px;padding:12px 18px;display:grid}.onboarding-head>span{color:var(--muted);font-size:11px}.progress{background:#dedbd2;border-radius:4px;height:4px;overflow:hidden}.progress i{background:var(--orange);border-radius:4px;height:100%;transition:width .3s;display:block}.form-step{padding:28px 24px 10px}.form-step h2{letter-spacing:-.05em;margin-bottom:12px;font-family:Unbounded;font-size:31px;line-height:1.17}.step-note{color:var(--muted);margin-bottom:27px;font-size:13px;line-height:1.5}label{letter-spacing:.06em;text-transform:uppercase;margin:0 0 18px;font-size:11px;font-weight:800;display:block}label input,label textarea{text-transform:none;letter-spacing:0;resize:none;background:#ffffffb3;border:1px solid #d9d5ca;border-radius:14px;outline:none;width:100%;margin-top:8px;padding:14px 15px;font-size:14px;transition:border-color .15s,box-shadow .15s;display:block}label input:focus,label textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #173b7a1f}label small{text-transform:none;color:#99968d;letter-spacing:0;margin:6px 2px;font-weight:500;display:block}.input-icon{position:relative}.input-icon svg{color:var(--orange);position:absolute;top:22px;left:14px}.input-icon input{padding-left:41px}.goal-grid{gap:10px;display:grid}.goal{cursor:pointer;background:#ffffffa6;border:1px solid #ddd9cf;border-radius:15px;justify-content:space-between;align-items:center;min-height:58px;padding:0 16px;font-weight:700;display:flex}.goal.selected{color:#fff;border-color:var(--ink);background:var(--ink)}.form-footer{padding:16px 22px max(22px, env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--paper) 22%);margin-top:auto}.discover{padding:9px 18px 22px}.section-title{justify-content:space-between;align-items:end;margin:8px 2px 18px;display:flex}.section-title h1{letter-spacing:-.05em;margin:0;font-family:Unbounded;font-size:22px}.section-title .eyebrow{margin-bottom:7px}.filter-wrap{z-index:30;position:relative}.filter{min-width:126px;color:var(--ink);text-align:left;cursor:pointer;background:#e5eaf1;border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:7px;padding:8px 10px 8px 12px;font-size:9px;font-weight:800;display:flex}.filter>span{text-overflow:ellipsis;white-space:nowrap;flex-direction:column;gap:2px;max-width:93px;display:flex;overflow:hidden}.filter small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:7px}.filter-menu{border:1px solid var(--line);background:#fffffffa;border-radius:18px;width:220px;max-height:370px;padding:7px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 18px 45px #08172f2e}.filter-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;width:100%;min-height:43px;padding:0 11px;font-size:11px;font-weight:700;display:flex}.filter-menu button:last-child{border-bottom:0}.filter-menu button.selected{color:var(--orange)}.deck{min-height:535px;position:relative}.card-shadow{background:#e6e0d5;border-radius:28px;height:92%;position:absolute;top:12px;left:17px;right:17px;transform:rotate(2deg)}.card-shadow.two{background:#d6d0c5;transform:rotate(-2.5deg)}.swipe-card{z-index:3;touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:relative}.swipe-card.dragging{cursor:grabbing;transition:none}.swipe-stamp{z-index:10;letter-spacing:.08em;opacity:0;background:#ffffffe6;border:3px solid;border-radius:10px;padding:8px 11px;font-size:15px;font-weight:800;transition:opacity .12s;position:absolute;top:78px}.swipe-stamp.visible{opacity:1}.like-stamp{color:#25866e;left:22px;transform:rotate(-9deg)}.skip-stamp{color:#b54555;right:22px;transform:rotate(9deg)}.person-card{background:#fff;border-radius:28px;position:relative;overflow:hidden;box-shadow:0 15px 40px #1e1c1721}.portrait{place-items:center;height:230px;display:grid;position:relative;overflow:hidden}.portrait>span{color:#fffffff2;letter-spacing:-.1em;z-index:2;font-family:Unbounded;font-size:64px;position:relative}.portrait:after{content:"";border:1px solid #ffffff4d;border-radius:50%;width:175px;height:175px;position:absolute}.portrait-lines{border:1px solid #ffffff38;border-radius:50%;width:360px;height:90px;position:absolute;transform:rotate(-20deg)}.portrait-lines:after{content:"";border:1px solid #ffffff26;border-radius:50%;width:270px;height:270px;position:absolute;top:-90px;left:40px}.sunset .portrait,.row-avatar.sunset,.duo-avatar.sunset{background:linear-gradient(135deg,#f3a56e,#bf513e 55%,#6a1f29)}.ocean .portrait,.row-avatar.ocean,.duo-avatar.ocean{background:linear-gradient(135deg,#69aab4,#346b79 55%,#15333b)}.violet .portrait,.row-avatar.violet,.duo-avatar.violet{background:linear-gradient(135deg,#a28ce9,#684bb3 55%,#302252)}.forest .portrait,.row-avatar.forest,.duo-avatar.forest{background:linear-gradient(135deg,#8eac79,#496b45 55%,#243725)}.rose .portrait,.row-avatar.rose,.duo-avatar.rose{background:linear-gradient(135deg,#e9a5a8,#b6576f 55%,#642b48)}.ink,.row-avatar.ink,.duo-avatar.ink{background:linear-gradient(135deg,#55554f,#1d1d1b)}.match-score{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-radius:12px;align-items:center;gap:5px;padding:8px 10px;font-size:10px;font-weight:800;display:flex;position:absolute;top:15px;left:15px}.match-score svg{color:var(--orange)}.person-copy{padding:18px 18px 20px}.person-name{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.person-name h2{letter-spacing:-.04em;margin-bottom:5px;font-family:Unbounded;font-size:18px}.person-name p{color:var(--muted);margin-bottom:0;font-size:11px}.person-name>span{white-space:nowrap;color:var(--muted);align-items:center;gap:3px;padding-top:4px;font-size:9px;display:flex}.bio{color:#55534f;margin:14px 0;font-size:12px;line-height:1.55}.intent small,.help small,.profile-block small{letter-spacing:.14em;color:#99968e;margin-bottom:7px;font-size:8px;font-weight:800;display:block}.intent div,.tags{flex-wrap:wrap;gap:6px;display:flex}.intent span,.tags span{background:#f0ece3;border-radius:8px;padding:6px 8px;font-size:10px;font-weight:700}.help{margin-top:13px}.help p{text-transform:capitalize;margin:0;font-size:11px}.actions{justify-content:center;align-items:center;gap:16px;height:78px;display:flex;position:relative}.actions>span{color:#88857e;white-space:nowrap;font-size:8px;font-weight:700;position:absolute;bottom:4px;left:calc(50% + 58px)}.round{cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;box-shadow:0 9px 20px #1e1d191f}.round.skip{color:#6f6d67;background:#fff;width:51px;height:51px}.round.like{color:#fff;background:var(--orange);width:66px;height:66px}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:470px;padding:40px;display:flex;position:relative}.empty h2{margin:18px 0 10px;font-family:Unbounded;font-size:20px}.empty p{color:var(--muted);font-size:13px;line-height:1.5}.empty-orbit{border:1px solid var(--line);width:90px;height:90px;color:var(--orange);border-radius:50%;place-items:center;display:grid}.matches{padding:17px 19px}.match-hero{background:var(--ink);color:#fff;border-radius:22px;align-items:center;gap:15px;padding:21px;display:flex}.match-hero .eyebrow{margin-bottom:7px}.match-hero h2{margin:0;font-size:17px}.spark-ball{color:#fff;background:var(--orange);border-radius:19px;flex:none;place-items:center;width:57px;height:57px;display:grid;transform:rotate(-4deg)}.spark-ball svg{transform:rotate(4deg)}.match-list{margin-top:19px}.match-row{border-bottom:1px solid var(--line);grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px;padding:15px 2px;display:grid}.row-avatar{color:#fff;border-radius:18px;place-items:center;width:54px;height:54px;font-weight:800;display:grid}.match-person{min-width:0}.match-row h3{margin-bottom:4px;font-size:13px}.match-row p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:5px;font-size:9px;overflow:hidden}.match-row small{color:var(--orange);font-size:8px;display:block}.contact-button{color:#fff;background:var(--orange);white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:5px;min-height:38px;padding:0 11px;font-size:9px;font-weight:800;text-decoration:none;display:flex}.contact-button.contacted{color:var(--ink);background:#e5eaf1}.empty.compact{min-height:300px;padding:60px 40px}.profile-view{padding-bottom:25px}.profile-cover{border-radius:25px;place-items:center;height:172px;margin:8px 18px 0;display:grid}.big-avatar{color:#fff;background:#ffffff14;border:1px solid #ffffff4d;border-radius:35px;place-items:center;width:95px;height:95px;font-family:Unbounded;font-size:27px;display:grid}.profile-info{padding:20px 23px;position:relative}.profile-info h1{letter-spacing:-.05em;max-width:70%;margin:8px 0 5px;font-family:Unbounded;font-size:24px}.profile-info .role{color:var(--muted);font-size:12px}.location{color:var(--muted);align-items:center;gap:5px;font-size:11px;display:flex}.location svg{color:var(--orange)}.edit{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:6px;padding:9px 11px;font-size:9px;font-weight:800;display:flex;position:absolute;top:23px;right:20px}.profile-bio{border-top:1px solid var(--line);margin:20px 0;padding-top:18px;font-size:13px;line-height:1.6}.profile-block{margin:19px 0}.profile-block p{text-transform:capitalize;font-size:12px}.bottom-nav{width:min(100%,460px);height:calc(72px + env(safe-area-inset-bottom));padding:8px 40px env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#f7f4edf0;border-top:1px solid #d2cec4a6;justify-content:space-between;display:flex;position:fixed;bottom:0}.bottom-nav button{color:#96938b;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;font-size:8px;display:flex}.bottom-nav svg{width:22px}.bottom-nav .active{color:var(--orange);font-weight:800}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#11110f99;place-items:end center;padding:16px;display:grid;position:fixed;inset:0}.match-modal{background:var(--paper);text-align:center;border-radius:28px;width:min(100%,425px);padding:33px 24px 22px;position:relative}.modal-close{color:#98958d;background:0 0;border:0;position:absolute;top:15px;right:15px}.match-modal h2{margin-bottom:18px;font-family:Unbounded;font-size:28px}.match-modal>p:not(.eyebrow){color:var(--muted);max-width:310px;margin:20px auto;font-size:13px;line-height:1.55}.duo{justify-content:center;align-items:center;display:flex}.duo svg{color:var(--orange);z-index:3;margin:0 -3px}.duo-avatar{color:#fff;border:5px solid var(--paper);border-radius:28px;place-items:center;width:82px;height:82px;font-size:16px;font-weight:800;display:grid}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin:14px auto 0;font-size:11px}.splash{background:var(--paper);flex-direction:column;justify-content:center;align-items:center;gap:20px;width:min(100%,460px);height:100vh;margin:auto;display:flex}.splash span{border:2px solid #ddd7cd;border-top-color:var(--orange);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=600px){body{padding:22px 0}.app-shell,.splash{border-radius:28px;height:calc(100vh - 44px);min-height:calc(100vh - 44px);overflow-y:auto}.welcome,.onboarding{min-height:calc(100vh - 44px)}.bottom-nav{border-radius:0 0 28px 28px;bottom:22px}}@media (height<=760px){.orbit{height:220px}.portrait{height:190px}.deck{min-height:495px}.welcome-copy h1{font-size:28px}.form-step{padding-top:16px}}@media (width<=380px){.match-row{grid-template-columns:48px 1fr}.row-avatar{width:48px;height:48px}.contact-button{grid-column:2;justify-self:start}.section-title h1{font-size:19px}.filter{min-width:118px}}
