:root { --dating-ink:#24132c; --dating-muted:#756579; --dating-panel:#fff; --dating-border:#f0e5ef; --dating-pink:#e84393; --dating-purple:#7c3aed; --dating-soft:#fff4fa; --dating-bg:#fff8fc; }
body { margin:0; background:var(--dating-bg); color:var(--dating-ink); }
.dating-card-photo .dating-match-placeholder { width:100%; height:100%; }
.dating-card-photo .dating-match-placeholder img { width:100%; height:100%; object-fit:cover; }
.dating-profile-placeholder img { width:100%; height:100%; object-fit:cover; border-radius:12px; }
.dating-quick-nav { position:fixed; top:16px; right:22px; z-index:8000; display:flex; align-items:center; gap:4px; padding:6px; border:1px solid rgba(232,67,147,.25); border-radius:14px; background:rgba(47,20,48,.92); box-shadow:0 12px 32px rgba(94,23,69,.2); backdrop-filter:blur(14px); }
.dating-quick-nav a { border-radius:9px; padding:8px 10px; color:#fce7f3; font:700 .8rem inherit; text-decoration:none; }
.dating-quick-nav a:hover,.dating-quick-nav a.active { background:rgba(255,255,255,.16); color:#fff; }
.dating-page { min-height:100vh; padding:34px 24px 28px 100px; box-sizing:border-box; }
.dating-shell { display:grid; grid-template-columns:235px minmax(0,1fr); min-height:calc(100vh - 62px); max-width:1370px; margin:0 auto; overflow:hidden; border:1px solid var(--dating-border); border-radius:22px; background:#fff; box-shadow:0 18px 56px rgba(112,35,86,.10); }
.dating-side { display:flex; flex-direction:column; gap:16px; padding:23px 14px; border-right:1px solid var(--dating-border); background:linear-gradient(#fff,#fff8fc); }
.dating-brand { display:flex; gap:10px; align-items:center; padding:0 9px 6px; color:#3a1937; font-size:1.12rem; font-weight:850; }.dating-brand i{color:var(--dating-pink);font-size:1.25rem}
.dating-side-nav { display:grid; gap:3px; }.dating-side-nav button { display:flex; align-items:center; gap:10px; width:100%; border:0; border-radius:10px; padding:11px 10px; background:transparent; color:#665469; font:inherit; font-size:.94rem; text-align:left; cursor:pointer; }.dating-side-nav button i{width:21px;color:#ad8ca5}.dating-side-nav button span{flex:1}.dating-side-nav button small{font-size:.72rem;color:#b9a6b4}.dating-side-nav button:hover,.dating-side-nav button.active{background:#fde7f3;color:#bd1f68;font-weight:800}.dating-side-nav button.active i{color:var(--dating-pink)}
.dating-safety-tip { margin-top:auto; border-radius:12px; padding:13px; background:#f7f2ff; color:#6647a5; font-size:.78rem; line-height:1.45; }.dating-safety-tip i{margin-right:4px}
.dating-main { min-width:0; padding:clamp(20px,4vw,42px); background:radial-gradient(circle at 97% 0,#fff0f7 0,transparent 28%),#fff; }.dating-view{display:none}.dating-view.active{display:block}.dating-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.dating-section-title h1{margin:0;color:#2e1530;font-size:clamp(1.45rem,3vw,2.1rem);letter-spacing:-.04em}.dating-section-title p{margin:6px 0 0;color:var(--dating-muted);line-height:1.5}.dating-badge{border-radius:999px;padding:6px 10px;background:#fde7f3;color:#bd1f68;font-size:.75rem;font-weight:800;white-space:nowrap}
.dating-discover { display:grid; grid-template-columns:minmax(280px,520px) minmax(220px,1fr); gap:28px; align-items:start; max-width:950px; margin:0 auto; }.dating-card { overflow:hidden; border:1px solid var(--dating-border); border-radius:20px; background:#fff; box-shadow:0 12px 30px rgba(85,27,62,.08); }.dating-card-photo{position:relative;height:420px;background:linear-gradient(135deg,#fde2ef,#e9ddff);overflow:hidden}.dating-card-photo img{width:100%;height:100%;object-fit:cover}.dating-card-photo .dating-avatar{display:grid;width:100%;height:100%;place-items:center;color:#fff;font-size:5rem;font-weight:800;background:linear-gradient(135deg,#f472b6,#8b5cf6)}.dating-card-photo:after{position:absolute;right:0;bottom:0;left:0;height:42%;background:linear-gradient(transparent,rgba(31,14,30,.68));content:''}.dating-card-age{position:absolute;z-index:1;bottom:17px;left:19px;color:#fff;font-size:1.65rem;font-weight:850;text-shadow:0 2px 9px rgba(0,0,0,.3)}.dating-card-city{position:absolute;z-index:1;right:16px;bottom:20px;color:#fff;font-size:.88rem;font-weight:700}.dating-card-body{padding:21px}.dating-card-name{margin:0;font-size:1.33rem}.dating-card-bio{min-height:48px;margin:9px 0 14px;color:#665469;line-height:1.55}.dating-interests{display:flex;flex-wrap:wrap;gap:7px}.dating-interest{border-radius:999px;padding:6px 9px;background:#fff0f7;color:#a62b65;font-size:.74rem;font-weight:750}.dating-actions{display:flex;justify-content:center;gap:17px;margin-top:20px}.dating-action{display:grid;width:54px;height:54px;place-items:center;border:1px solid var(--dating-border);border-radius:50%;background:#fff;color:#a67b96;font-size:1.1rem;cursor:pointer;box-shadow:0 5px 14px rgba(91,29,66,.1)}.dating-action:hover{transform:translateY(-2px);box-shadow:0 9px 18px rgba(91,29,66,.16)}.dating-action.pass:hover{color:#64748b;background:#f8fafc}.dating-action.like{width:62px;height:62px;background:linear-gradient(135deg,#f72585,#c026d3);color:#fff;border:0}.dating-action.block:hover{color:#dc2626;background:#fff1f2}.dating-action:disabled{opacity:.55;cursor:wait}
.dating-discover-info{display:grid;gap:14px}.dating-info-panel{border:1px solid var(--dating-border);border-radius:15px;padding:18px;background:#fff}.dating-info-panel h2{margin:0 0 9px;font-size:1rem}.dating-info-panel p,.dating-info-panel li{margin:0;color:var(--dating-muted);font-size:.88rem;line-height:1.58}.dating-info-panel ul{margin:8px 0 0;padding-left:18px}.dating-match-flash{display:none;border:1px solid #f6b7d7;border-radius:15px;padding:16px;background:#fff1f7;color:#b21b62;font-weight:800}.dating-match-flash.show{display:block}
.dating-empty{display:grid;min-height:270px;place-items:center;border:1px dashed #eacddd;border-radius:18px;padding:30px;background:#fffafd;color:#8a7485;text-align:center}.dating-empty i{display:block;margin-bottom:11px;color:#e8b2cf;font-size:2.5rem}.dating-empty strong{display:block;color:#5e3456;font-size:1.05rem}.dating-empty p{max-width:360px;line-height:1.5}
.dating-match-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:16px}.dating-match-card{overflow:hidden;border:1px solid var(--dating-border);border-radius:15px;background:#fff;cursor:pointer;transition:transform .18s,box-shadow .18s}.dating-match-card:hover{transform:translateY(-3px);box-shadow:0 10px 23px rgba(112,35,86,.12)}.dating-match-card img,.dating-match-placeholder{width:100%;height:155px;object-fit:cover}.dating-match-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#f9a8d4,#c4b5fd);color:#fff;font-size:2.7rem;font-weight:800}.dating-match-card div{padding:11px;font-weight:800}.dating-match-card small{display:block;margin-top:3px;color:#9a8193;font-size:.74rem;font-weight:600}
.dating-messages{display:grid;grid-template-columns:minmax(215px,310px) minmax(0,1fr);min-height:510px;border:1px solid var(--dating-border);border-radius:17px;overflow:hidden}.dating-conversations{overflow:auto;border-right:1px solid var(--dating-border);background:#fffafd}.dating-conversation{display:flex;gap:9px;width:100%;border:0;border-bottom:1px solid #f7eaf2;padding:13px;background:transparent;text-align:left;cursor:pointer}.dating-conversation.active,.dating-conversation:hover{background:#fff0f7}.dating-mini-avatar{display:grid;width:38px;height:38px;place-items:center;overflow:hidden;border-radius:50%;background:#f5c7de;color:#fff;font-weight:800;flex:0 0 auto}.dating-mini-avatar img{width:100%;height:100%;object-fit:cover}.dating-conversation-copy{min-width:0;flex:1}.dating-conversation-copy strong{display:block;color:#4b2947;font-size:.87rem}.dating-conversation-copy span{display:block;overflow:hidden;margin-top:3px;color:#987f91;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.dating-unread{align-self:center;border-radius:99px;padding:3px 6px;background:var(--dating-pink);color:#fff;font-size:.68rem;font-weight:800}.dating-thread{display:flex;min-width:0;flex-direction:column;background:#fff}.dating-thread-head{padding:15px 18px;border-bottom:1px solid var(--dating-border);font-weight:850}.dating-thread-body{display:flex;flex:1;min-height:330px;flex-direction:column;gap:9px;overflow:auto;padding:18px}.dating-message{align-self:flex-start;max-width:76%;border-radius:14px 14px 14px 3px;padding:10px 12px;background:#f8eef5;color:#553b51;font-size:.9rem;line-height:1.45}.dating-message.mine{align-self:flex-end;border-radius:14px 14px 3px 14px;background:#7c3aed;color:#fff}.dating-message time{display:block;margin-top:4px;opacity:.65;font-size:.67rem}.dating-compose{display:flex;gap:8px;padding:12px;border-top:1px solid var(--dating-border)}.dating-compose textarea{min-height:42px;flex:1;resize:none;border:1px solid #ead7e5;border-radius:10px;padding:10px;font:inherit;outline:0}.dating-compose textarea:focus{border-color:#e879b5;box-shadow:0 0 0 3px #fce7f3}.dating-primary{border:0;border-radius:10px;padding:10px 14px;background:linear-gradient(135deg,#e84393,#7c3aed);color:#fff;font:800 .86rem inherit;cursor:pointer}.dating-primary:hover{filter:brightness(.95)}
.dating-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:25px;max-width:960px}.dating-form{display:grid;gap:16px}.dating-field{display:grid;gap:6px}.dating-field label{color:#654d61;font-size:.78rem;font-weight:800}.dating-field input,.dating-field textarea,.dating-field select{width:100%;box-sizing:border-box;border:1px solid #e7d8e4;border-radius:10px;padding:10px 11px;background:#fff;color:#382039;font:inherit;outline:0}.dating-field textarea{min-height:108px;resize:vertical;line-height:1.45}.dating-field input:focus,.dating-field textarea:focus,.dating-field select:focus{border-color:#e879b5;box-shadow:0 0 0 3px #fce7f3}.dating-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.dating-profile-preview{border:1px solid var(--dating-border);border-radius:16px;padding:16px;background:#fffafd}.dating-profile-preview img,.dating-profile-preview .dating-profile-placeholder{width:100%;height:214px;object-fit:cover;border-radius:12px}.dating-profile-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#f9a8d4,#c4b5fd);color:#fff;font-size:3.8rem;font-weight:800}.dating-checkbox{display:flex;gap:8px;align-items:center;color:#654d61;font-size:.88rem}.dating-checkbox input{width:auto}.dating-small{color:#967c91;font-size:.75rem;line-height:1.45}
.dating-safety{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.7fr);gap:18px;max-width:920px}.dating-safety-card{border:1px solid var(--dating-border);border-radius:16px;padding:20px;background:#fff}.dating-safety-card h2{margin:0 0 8px;font-size:1.03rem}.dating-safety-card p,.dating-safety-card li{color:#735c70;font-size:.88rem;line-height:1.58}.dating-safety-card ul{padding-left:19px}.dating-blocked{display:grid;gap:7px}.dating-blocked-item{display:flex;align-items:center;justify-content:space-between;border-radius:9px;padding:10px;background:#fff6fa;color:#6d3b59;font-size:.88rem}.dating-text-button{border:0;background:transparent;color:#c02672;font:750 .8rem inherit;cursor:pointer}
.dating-onboard{display:grid;min-height:70vh;place-items:center}.dating-onboard-card{width:min(760px,100%);box-sizing:border-box;border:1px solid var(--dating-border);border-radius:20px;padding:clamp(22px,5vw,42px);background:#fff;box-shadow:0 18px 48px rgba(112,35,86,.11)}.dating-onboard-card header{text-align:center}.dating-onboard-card header i{color:var(--dating-pink);font-size:2.3rem}.dating-onboard-card h1{margin:12px 0 7px;font-size:1.8rem}.dating-onboard-card header p{color:var(--dating-muted);line-height:1.5}.dating-onboard-warning{margin:18px 0;border-radius:10px;padding:11px;background:#fff5dc;color:#8a5a00;font-size:.82rem;line-height:1.45}
.dating-toast{position:fixed;bottom:25px;left:50%;z-index:10002;transform:translateX(-50%);border-radius:10px;padding:11px 14px;background:#351a32;color:#fff;box-shadow:0 12px 25px rgba(58,19,45,.25);font-size:.86rem}
@media(max-width:900px){.dating-quick-nav{top:72px;left:12px;right:12px;justify-content:space-around}.dating-quick-nav a{font-size:.74rem;padding:8px 6px}.dating-page{padding:72px 12px 14px}.dating-shell{grid-template-columns:1fr}.dating-side{flex-direction:row;align-items:center;overflow:auto;padding:10px;border-right:0;border-bottom:1px solid var(--dating-border)}.dating-brand,.dating-safety-tip{display:none}.dating-side-nav{display:flex;gap:4px}.dating-side-nav button{width:auto;white-space:nowrap;padding:9px}.dating-side-nav button small{display:none}.dating-main{padding:22px 16px}.dating-discover{grid-template-columns:1fr}.dating-discover-info{display:none}}
@media(max-width:620px){.dating-quick-nav a:nth-child(3),.dating-quick-nav a:nth-child(5){display:none}.dating-page{padding:69px 0 0}.dating-shell{border:0;border-radius:0;box-shadow:none}.dating-main{padding:20px 14px}.dating-card-photo{height:360px}.dating-messages{grid-template-columns:1fr}.dating-conversations{max-height:165px;border-right:0;border-bottom:1px solid var(--dating-border)}.dating-thread{min-height:360px}.dating-profile-grid,.dating-safety,.dating-form-row{grid-template-columns:1fr}.dating-profile-preview{order:-1}.dating-section-title{margin-bottom:17px}.dating-section-title p{font-size:.86rem}}
