.onboarding{--violet:#8c7cff;--coral:#ff7d83;min-height:100vh;background:radial-gradient(circle at 80% 0,rgba(140,124,255,.12),transparent 25%),#09090c;color:#f4f1f6}.setup-header{height:84px;padding:0 max(28px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #202027;background:rgba(9,9,12,.84);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.setup-progress{text-align:right}.setup-progress span,.setup-progress b{display:block}.setup-progress span{color:#8275d8;font-size:8px;font-weight:900;letter-spacing:1.5px}.setup-progress b{margin-top:4px;font-size:11px}.setup-wrap{max-width:1120px;margin:auto;padding:70px 28px 100px}.setup-intro{max-width:790px;margin-bottom:52px}.setup-intro h1{margin:18px 0 12px;font-size:clamp(38px,5vw,64px);line-height:1.02;letter-spacing:-3px}.setup-intro>p{color:#9b97a3;font-size:15px}.setup-intro blockquote{margin:28px 0 0;padding:17px 20px;border-left:2px solid var(--coral);background:linear-gradient(90deg,rgba(255,125,131,.08),transparent);color:#d7d2dc;font:italic 17px Georgia,serif}.onboarding form{display:flex;flex-direction:column;gap:18px}.setup-card{padding:27px;border:1px solid #24232c;border-radius:18px;background:linear-gradient(145deg,rgba(20,19,26,.96),rgba(12,12,16,.96));box-shadow:0 18px 50px rgba(0,0,0,.15)}.setup-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:25px}.setup-title>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(140,124,255,.35);border-radius:50%;color:#a89aff;font:italic 12px Georgia,serif}.setup-title h2{margin:0;font-size:18px}.setup-title p{margin:5px 0 0;color:#74717c;font-size:11px}.setup-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.setup-grid .full{grid-column:1/-1}.onboarding label{color:#bbb7c1}.onboarding input,.onboarding select,.onboarding textarea{background:#0b0b0f;border-color:#292832}.onboarding input:focus,.onboarding select:focus,.onboarding textarea:focus{border-color:#8c7cff;box-shadow:0 0 0 3px rgba(140,124,255,.09)}.onboarding textarea{min-height:110px}.photo-field{grid-row:span 2}.photo-field input{position:absolute;opacity:0;pointer-events:none}.photo-field>span{height:125px;display:grid;place-items:center;border:1px dashed #464250;border-radius:12px;background:radial-gradient(circle,rgba(140,124,255,.12),transparent 55%),#0b0b0f;color:#9e92ee;cursor:pointer}.photo-field>span.has-photo{background-size:cover;background-position:center;color:transparent;border-style:solid}.range-ends{display:flex;justify-content:space-between;color:#77727f;font-size:10px}.range-ends i{font-style:normal}.onboarding input[type=range]{accent-color:#8c7cff}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.choice-grid label,.switch-choice{flex-direction:row;align-items:center;padding:12px;border:1px solid #292832;border-radius:9px;background:#0c0c11;color:#aaa6b0;cursor:pointer}.choice-grid label:has(input:checked),.switch-choice:has(input:checked){border-color:rgba(140,124,255,.55);background:rgba(140,124,255,.1);color:#eeeaff}.choice-grid input,.switch-choice input{width:auto;margin:0;accent-color:#8c7cff}.sub-group{margin-top:19px}.game-setup{padding:18px 0;border-top:1px solid #24232b}.game-setup h3,.looking-title{margin:0 0 14px;font-size:13px}.rank-field.hidden{display:none}.truth-check{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:13px;padding:20px 22px;border:1px solid rgba(140,124,255,.27);border-radius:14px;background:rgba(140,124,255,.055)}.truth-check>label{flex-direction:row;align-items:center}.truth-check input{width:auto;accent-color:#8c7cff}.truth-check strong,.truth-check small{display:block}.truth-check small{margin-top:4px;color:#74717c;font-size:10px}.finish-profile{padding:14px 19px;border-radius:10px;background:linear-gradient(100deg,#7561e8,#9c70ed);color:#fff;font-weight:800;white-space:nowrap}.finish-profile span{margin-left:15px}.finish-profile:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(101,74,216,.25)}
@media(max-width:720px){.setup-header{padding:0 20px}.setup-progress span{display:none}.setup-wrap{padding:45px 18px 70px}.setup-intro h1{letter-spacing:-2px}.setup-card{padding:21px}.setup-grid,.choice-grid{grid-template-columns:1fr 1fr}.photo-field{grid-row:auto;grid-column:1/-1}.truth-check{align-items:stretch;flex-direction:column}.finish-profile{width:100%}}
@media(max-width:430px){.choice-grid,.setup-grid{grid-template-columns:1fr}.setup-grid .full,.photo-field{grid-column:auto}}

/* Revised media, games, and location controls */
.banner-field{margin-bottom:18px}.banner-field input{position:absolute;opacity:0;pointer-events:none}.banner-field>span{height:150px;display:grid;place-items:center;border:1px dashed #464250;border-radius:12px;background:radial-gradient(circle,rgba(140,124,255,.11),transparent 55%),#0b0b0f;color:#9e92ee;cursor:pointer;background-size:cover;background-position:center}.banner-field>span.has-banner{color:transparent;border-style:solid}.basics-grid{grid-template-columns:170px 1fr}.photo-field{grid-row:auto}.photo-field>span{width:150px;height:150px;aspect-ratio:1;border-radius:12px;background-size:cover;background-position:center}.name-fields{display:grid;gap:15px;align-content:start}.voice-recorder{display:flex;align-items:center;gap:16px;padding:15px;margin-bottom:20px;border:1px solid #292832;border-radius:12px;background:#0b0b0f}.voice-recorder button{display:flex;align-items:center;gap:9px;padding:11px 15px;border-radius:9px;background:rgba(140,124,255,.13);color:#e7e1ff}.voice-recorder button>span{width:10px;height:10px;border-radius:50%;background:#ff7d83;box-shadow:0 0 10px rgba(255,125,131,.55)}.voice-recorder button.recording>span{border-radius:2px;animation:record-pulse 1s infinite}.voice-recorder audio{height:34px;flex:1}.voice-recorder #recordingStatus{color:#77727f;font-size:10px;white-space:nowrap}.voice-grid label small{min-height:25px;color:#6f6b76;font-size:9px;font-weight:400}.voice-grid label:last-child{grid-column:1/-1}.dynamic-range{margin-top:22px}.game-search{display:grid;grid-template-columns:1fr auto;gap:9px}.game-search button,.location-permission button{padding:0 18px;border-radius:9px;background:rgba(140,124,255,.15);border:1px solid rgba(140,124,255,.35);color:#ded7ff;font-weight:750}.selected-games{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.selected-games button{padding:8px 10px;border:1px solid rgba(140,124,255,.35);border-radius:999px;background:rgba(140,124,255,.1);color:#d8d0ff;font-size:11px}.selected-games button span{margin-left:5px;color:#ff9da2}.game-detail{margin-top:16px;padding:18px;border:1px solid #292832;border-radius:12px;background:#0c0c11}.game-detail.hidden{display:none}.game-detail h3{margin:0 0 14px}.valorant-line{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:11px}.valorant-line input,.valorant-line select{padding:9px 10px}.vr-hardware{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.other-toy{margin-top:14px;max-width:440px}.location-permission{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:15px;padding:16px;border:1px solid #292832;border-radius:12px;background:#0b0b0f}.location-permission strong,.location-permission small{display:block}.location-permission small{margin-top:5px;color:#77727f;font-size:10px}.location-permission button{padding:11px 15px}.location-permission>span{color:#898492;font-size:10px}.location-visibility{margin-top:12px;max-width:360px}@keyframes record-pulse{50%{opacity:.35;transform:scale(.8)}}
@media(max-width:720px){.basics-grid{grid-template-columns:1fr}.photo-field>span{width:140px;height:140px}.voice-recorder{align-items:stretch;flex-direction:column}.voice-recorder audio{width:100%}.valorant-line,.vr-hardware,.location-permission{grid-template-columns:1fr}.location-permission button{padding:12px}.voice-grid label:last-child{grid-column:auto}}
.basics-grid{align-items:center}.photo-field{align-items:center}.photo-field>span{flex:none}.name-fields{align-self:center}.dynamic-range{margin-bottom:34px}.muted-heading{color:#817d88;font-size:13px}.relationship-block{margin-top:24px;margin-bottom:34px}.relationship-block label{max-width:480px}.looking-title{margin-top:24px}.rank-field.hidden{display:none}.crop-overlay{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:18px;background:rgba(4,4,7,.82);backdrop-filter:blur(16px);opacity:0;visibility:hidden;transition:.2s}.crop-overlay.open{opacity:1;visibility:visible}.crop-dialog{width:min(720px,100%);padding:24px;border:1px solid #302e39;border-radius:20px;background:#111116;box-shadow:0 30px 90px rgba(0,0,0,.55)}.crop-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.crop-head h2{margin:0;font-size:20px}.crop-head p{margin:5px 0 0;color:#7f7a86;font-size:11px}.crop-head button{background:transparent;color:#8f8997;font-size:25px}.crop-stage{display:grid;place-items:center;max-height:480px;overflow:hidden;border-radius:12px;background:#07070a}.crop-stage canvas{display:block;max-width:100%;max-height:460px}.crop-dialog>label{margin-top:18px}.crop-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.crop-actions button{padding:11px 15px;border-radius:9px;background:#23222a;color:#b8b3bf}.crop-actions #saveCrop{background:linear-gradient(100deg,#7561e8,#9c70ed);color:#fff;font-weight:800}
@media(max-width:720px){.basics-grid .photo-field{justify-self:center}.name-fields{width:100%}.crop-dialog{padding:18px}.crop-stage{max-height:360px}.crop-stage canvas{max-height:340px}}

/* Onboarding hover feedback */
.setup-card,.setup-title>span,.photo-field>span,.banner-field>span,.choice-grid label,.game-detail,.game-search button,.location-permission,.finish-profile{transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease,color .22s ease}.setup-card:hover{border-color:#353242;box-shadow:0 22px 58px rgba(0,0,0,.24)}.setup-card:hover .setup-title>span{transform:rotate(-7deg) scale(1.05);border-color:rgba(140,124,255,.65);background:rgba(140,124,255,.08)}.photo-field>span:hover,.banner-field>span:hover{border-color:#8c7cff;background-color:#100f18;box-shadow:inset 0 0 30px rgba(140,124,255,.08)}.choice-grid label:hover{transform:translateY(-2px);border-color:#474251;color:#ddd7e2}.game-detail:hover,.location-permission:hover{border-color:#3e394b}.game-search button:hover{transform:translateY(-2px);background:rgba(140,124,255,.25)}
