@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700;800&display=swap');
:root{--rose:#b51f55;--wine:#641f3d;--berry:#8f214f;--blush:#f7dfe7;--peach:#f6c8b8;--gold:#d6a44b;--cream:#fff9f6;--ink:#241923;--muted:#766873;--bg:#fff7f4;--card:rgba(255,255,255,.92);--line:#ead8df;--green:#16835a;--shadow:0 22px 70px rgba(74,24,48,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;background:radial-gradient(circle at 10% 0%,#fff 0,#fff7f4 42%,#f9edf1 100%);color:var(--ink)}a{text-decoration:none;color:inherit}.nav{height:76px;background:rgba(255,250,248,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(234,216,223,.75);display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;z-index:10}.brand-wrap{display:flex;align-items:center;gap:10px}.brand{font-family:'Playfair Display',serif;font-weight:800;font-size:24px;letter-spacing:-.4px}.brand span{color:var(--rose)}.brand b{color:var(--rose)}.navlinks{display:flex;gap:24px;align-items:center}.navlinks a{font-weight:700;color:#63545e}.pill{background:linear-gradient(135deg,var(--wine),var(--rose));color:#fff;padding:11px 18px;border-radius:99px;font-weight:800;box-shadow:0 9px 24px rgba(181,31,85,.2)}.container{max-width:1120px;margin:0 auto;padding:38px 20px}.hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:50px;padding:65px 6%;position:relative;overflow:hidden;background:radial-gradient(circle at 86% 10%,#f5d0dc 0,transparent 31%),radial-gradient(circle at 10% 90%,#f3d2bd 0,transparent 28%),linear-gradient(135deg,#fffdfb,#fff3f0)}.hero:after{content:'♥';position:absolute;right:5%;top:8%;font-size:130px;color:rgba(181,31,85,.055);transform:rotate(15deg)}.hero h1{font-family:'Playfair Display',serif;font-size:68px;line-height:1.02;letter-spacing:-2px;margin:12px 0 20px}.gradient{background:linear-gradient(90deg,var(--wine),var(--rose),#c27648);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{font-size:19px;color:#685b64;max-width:590px;line-height:1.7}.hero-card{border-radius:36px;background:linear-gradient(145deg,rgba(255,255,255,.8),rgba(255,255,255,.45));padding:12px;box-shadow:var(--shadow);transform:rotate(1.5deg);border:1px solid rgba(255,255,255,.85)}.hero-card img{width:100%;height:540px;object-fit:cover;object-position:center;border-radius:28px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}.feature{background:rgba(255,255,255,.72);padding:22px;border:1px solid rgba(234,216,223,.8);border-radius:22px;box-shadow:0 10px 30px rgba(74,24,48,.06)}.feature .icon{font-size:27px;color:var(--rose);margin-bottom:7px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.section-title h1{font-family:'Playfair Display',serif;font-size:38px;margin:0}.muted{color:var(--muted)}.auth{max-width:480px;margin:60px auto;background:var(--card);padding:36px;border-radius:30px;box-shadow:var(--shadow);border:1px solid var(--line)}.auth h1{font-family:'Playfair Display',serif;margin-top:0}.field{margin:14px 0}.field label{display:block;font-weight:800;margin-bottom:7px;font-size:14px}.field input,.field textarea,.field select{width:100%;border:1px solid #dfcfd6;background:#fffdfc;padding:14px;border-radius:14px;font:inherit;outline:none;transition:.2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--rose);box-shadow:0 0 0 4px rgba(181,31,85,.08)}.field textarea{min-height:110px;resize:vertical}.btn{border:0;cursor:pointer;background:linear-gradient(135deg,var(--wine),var(--rose));color:#fff;font-weight:800;padding:14px 21px;border-radius:15px;font-size:15px;box-shadow:0 10px 24px rgba(181,31,85,.18);transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.secondary{background:#f6e9ed;color:var(--wine);box-shadow:none}.btn.purple{background:linear-gradient(135deg,#7b345e,#b75b78)}.full{width:100%}.alert{padding:13px 15px;border-radius:13px;margin-bottom:15px;background:#fff0f3;color:#a51d4d}.alert.success{background:#eaf8f1;color:#11764e}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.profile-card{background:var(--card);border-radius:26px;overflow:hidden;box-shadow:0 13px 38px rgba(74,24,48,.09);border:1px solid var(--line);transition:.25s}.profile-card:hover{transform:translateY(-5px);box-shadow:0 20px 48px rgba(74,24,48,.14)}.profile-img{width:100%;height:350px;object-fit:cover}.profile-body{padding:19px}.name{font-size:20px;font-weight:800}.verified{color:#278bd1;font-size:14px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.tag{background:#f7e9ee;padding:6px 10px;border-radius:99px;font-size:12px;color:#715a65}.actions{display:flex;gap:9px;margin-top:15px}.action{flex:1;border:0;padding:12px;border-radius:13px;font-size:19px;cursor:pointer;background:#f6eef1}.action.like{background:#f8dce6;color:var(--rose)}.action.super{background:#f2e7d1;color:#a67524}.action.liked{background:#20a66b;color:white}.matches{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.match{background:var(--card);border:1px solid var(--line);padding:18px;border-radius:22px;text-align:center;box-shadow:0 10px 30px rgba(74,24,48,.06)}.match img{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid #f1d4df}.chat{max-width:760px;margin:auto;background:var(--card);border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.chat-head{padding:18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px}.chat-head img{width:45px;height:45px;border-radius:50%;object-fit:cover}.messages{padding:20px;min-height:450px;background:#fff8f6}.bubble{max-width:75%;padding:11px 14px;border-radius:17px;margin:8px 0}.mine{margin-left:auto;background:linear-gradient(135deg,var(--wine),var(--rose));color:white;border-bottom-right-radius:5px}.theirs{background:white;border:1px solid var(--line);border-bottom-left-radius:5px}.composer{padding:15px;display:flex;gap:10px}.composer input{flex:1;border:1px solid var(--line);border-radius:99px;padding:13px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price{background:var(--card);border:1px solid var(--line);border-radius:25px;padding:25px;box-shadow:0 10px 32px rgba(74,24,48,.06)}.price.featured{border:2px solid var(--rose);transform:translateY(-6px);box-shadow:0 18px 45px rgba(181,31,85,.14)}.price h2{font-family:'Playfair Display',serif;margin-top:0}.amount{font-size:30px;font-weight:800;color:var(--wine)}.price ul{padding-left:20px;line-height:2}.footer{text-align:center;padding:45px;color:#81717a}.empty{text-align:center;background:var(--card);padding:60px;border-radius:25px;border:1px solid var(--line)}.small{font-size:13px}.logo-icon{width:43px;height:43px;border-radius:14px;background:linear-gradient(145deg,#5b1b38,#b51f55 70%,#d47b56);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:22px;box-shadow:0 9px 23px rgba(181,31,85,.25);margin-right:0;border:1px solid rgba(255,255,255,.5)}
.payment-card{max-width:560px}.momo-box{background:linear-gradient(135deg,#fff0f4,#fff8ed);border:1px solid #eed4dc;padding:20px;border-radius:21px;margin:20px 0}.momo-number{font-size:34px;font-weight:900;letter-spacing:2px;margin:8px 0;color:var(--wine)}.admin-table{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:auto}.admin-row{display:grid;grid-template-columns:1.1fr 1fr .9fr 1.5fr .8fr 1.5fr;gap:12px;align-items:center;padding:16px;border-bottom:1px solid var(--line);min-width:850px}.admin-head{font-weight:800;background:#faf3f5}.admin-row:last-child{border-bottom:0}.status{padding:6px 9px;border-radius:99px;text-transform:capitalize;font-size:12px;font-weight:800}.status.pending{background:#fff4d8;color:#996800}.status.verified{background:#e9fbf1;color:#087b42}.status.rejected{background:#fff0f3;color:#b41f49}.admin-row small{color:var(--muted)}code{font-size:12px}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding:45px 20px}.hero h1{font-size:49px}.hero-card img{height:430px}.cards,.feature-grid,.price-grid{grid-template-columns:1fr 1fr}.matches{grid-template-columns:1fr 1fr}.navlinks a:not(.pill){display:none}}@media(max-width:520px){.cards,.feature-grid,.price-grid,.matches{grid-template-columns:1fr}.container{padding:25px 15px}.hero-card{display:none}.hero h1{font-size:43px}}
/* Romantic main navigation */
.desktop-nav{display:none;align-items:center;gap:5px;padding:6px;background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 24px rgba(74,24,48,.05)}
.nav-item{display:flex;align-items:center;gap:6px;padding:10px 11px;border-radius:13px;color:#6e5c65;font-size:13px;font-weight:800;transition:.2s;white-space:nowrap}
.nav-item span{font-size:16px;line-height:1;color:var(--rose)}
.nav-item:hover,.nav-item.active{background:#f8e8ed;color:var(--wine)}
.nav-item.active{box-shadow:inset 0 0 0 1px #efd3dc}
.nav-item.swipe-top{background:linear-gradient(135deg,var(--wine),var(--rose));color:#fff;box-shadow:0 8px 20px rgba(181,31,85,.18)}
.nav-item.swipe-top span{color:#fff}
.nav-actions{display:flex;align-items:center;gap:10px}
.premium-link{font-weight:800;color:var(--wine);padding:10px 9px}
.eyebrow{text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:900;color:var(--rose);margin-bottom:7px}
.empty-heart{width:62px;height:62px;border-radius:20px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f8dce6,#fff0ea);color:var(--rose);font-size:34px;box-shadow:0 12px 30px rgba(181,31,85,.12)}
.likes-grid .match{position:relative}
.like-card .tag{display:inline-block;margin-top:10px;background:#f8e5eb;color:var(--wine);font-weight:800}
.chat-list{max-width:850px;margin:0 auto;display:grid;gap:12px}
.chat-preview{display:flex;align-items:center;gap:15px;padding:15px 17px;background:var(--card);border:1px solid var(--line);border-radius:21px;box-shadow:0 10px 28px rgba(74,24,48,.06);transition:.2s}
.chat-preview:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(74,24,48,.1);border-color:#e2c2ce}
.chat-preview img{width:58px;height:58px;object-fit:cover;border-radius:50%;border:3px solid #f4dce4}
.chat-preview-body{min-width:0;flex:1}.chat-preview-top{display:flex;justify-content:space-between;gap:12px}.chat-preview-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.chat-arrow{font-size:28px;color:#b58b9a}
.mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(6,1fr);left:50%;transform:translateX(-50%);bottom:14px;width:min(760px,calc(100% - 28px));z-index:50;padding:8px;background:rgba(255,250,248,.96);backdrop-filter:blur(20px);border:1px solid rgba(234,216,223,.98);border-radius:24px;box-shadow:0 18px 48px rgba(74,24,48,.20)}
@media(max-width:1050px){.desktop-nav{gap:2px}.nav-item{padding:9px 8px;font-size:12px}.premium-link{display:none}}
.bottom-item{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 5px;border-radius:16px;color:#7a6871;font-weight:800;transition:.2s}.bottom-item span{font-size:20px;line-height:1;color:#9a7785}.bottom-item small{font-size:10px;white-space:nowrap;letter-spacing:-.15px}.bottom-item.active{background:#f8e7ed;color:var(--wine)}.bottom-item.active span{color:var(--rose)}.bottom-item:hover{background:#fbf0f3;color:var(--wine)}.bottom-item.swipe-item{background:linear-gradient(135deg,var(--wine),var(--rose));color:#fff;box-shadow:0 8px 18px rgba(181,31,85,.2)}.bottom-item.swipe-item span{color:#fff}.footer{padding-bottom:115px}@media(max-width:800px){.nav{height:68px;padding:0 16px}.brand{font-size:22px}.nav-actions{gap:6px}.nav-actions .pill{padding:9px 12px}.premium-link{display:none}}
@media(max-width:520px){.mobile-bottom-nav{width:calc(100% - 10px);bottom:5px;border-radius:19px;padding:6px 4px}.bottom-item{padding:7px 1px}.bottom-item span{font-size:17px}.bottom-item small{font-size:8px}.brand-wrap{gap:7px}.logo-icon{width:39px;height:39px;font-size:19px;border-radius:13px}}
/* Nearby / distance discovery */
.nearby-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;padding:17px 18px;background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:23px;box-shadow:0 10px 30px rgba(74,24,48,.06)}
.nearby-copy{display:flex;align-items:center;gap:13px}.nearby-icon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:15px;background:linear-gradient(135deg,#f8dce6,#fff0ea);color:var(--rose);font-size:24px}.nearby-copy strong{font-size:15px}.nearby-copy p{margin:4px 0 4px;max-width:560px}.nearby-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.radius-form{display:flex;align-items:center;gap:8px}.radius-form label{font-size:12px;font-weight:800;color:var(--muted)}.radius-form select{border:1px solid #dfcfd6;background:#fffdfc;padding:11px 34px 11px 12px;border-radius:13px;font:inherit;font-weight:800;color:var(--wine)}.location-btn{white-space:nowrap}.location-status{font-size:12px;color:var(--green);font-weight:800}.location-note{display:flex;gap:12px;align-items:flex-start;background:#fff8ed;border:1px solid #f0dfc2;padding:14px 16px;border-radius:18px;margin:0 0 22px}.distance-line{color:var(--rose);font-weight:800;font-size:13px;margin-top:5px}.location-settings{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:22px;padding:17px;background:#fff8f6;border:1px solid var(--line);border-radius:18px}
@media(max-width:700px){.nearby-controls{align-items:stretch;flex-direction:column}.nearby-actions{justify-content:space-between}.radius-form{flex:1}.radius-form select{width:100%}.location-btn{flex:1}.location-settings{align-items:flex-start;flex-direction:column}}

/* Swipe choice controls */
.swipe-actions{display:flex;align-items:flex-end;justify-content:center;gap:12px;margin-top:20px;padding-top:4px}.swipe-choice{width:31%;min-height:66px;border:1px solid #ead8df;border-radius:18px;background:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-family:inherit;transition:transform .18s,box-shadow .18s,background .18s}.swipe-choice span{font-size:27px;font-weight:900;line-height:1}.swipe-choice small{font-size:10px;font-weight:800;color:#7a6871}.swipe-choice:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(74,24,48,.12)}.dislike-choice{color:#9c3558}.dislike-choice:hover{background:#fff0f4}.super-choice{min-height:76px;transform:translateY(-4px);background:linear-gradient(145deg,#fff6df,#f7e7c4);border-color:#ead39e;color:#a67524;box-shadow:0 9px 22px rgba(166,117,36,.16)}.super-choice span{font-size:25px;letter-spacing:-3px}.super-choice small{color:#8a6a31}.super-choice:hover{transform:translateY(-7px)}.like-choice{color:var(--rose);background:#fff0f4;border-color:#f0cbd7}.like-choice:hover{background:#fbdde7}.swipe-choice:active{transform:scale(.96)}.super-choice:active{transform:translateY(-2px) scale(.96)}
@media(max-width:600px){.swipe-actions{gap:8px}.swipe-choice{min-height:62px;border-radius:16px}.super-choice{min-height:70px}.swipe-choice span{font-size:24px}.swipe-choice small{font-size:9px}}


/* FINAL PRODUCT POLISH - 2026-10-06 */
.cards{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(245px,1fr))!important;gap:18px!important;align-items:start!important}
.profile-card{min-width:0!important;overflow:hidden!important}
.profile-img{width:100%!important;aspect-ratio:4/5!important;object-fit:cover!important;display:block!important}
.profile-body{padding:15px!important}
.actions,.swipe-actions{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;margin-top:15px!important}
.action,.swipe-choice{display:flex!important;align-items:center!important;justify-content:center!important;border:0!important;cursor:pointer!important}
.swipe-actions .swipe-choice{width:58px!important;height:58px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 7px 20px rgba(74,24,48,.12)!important;font-size:22px!important}
.swipe-actions .swipe-choice small{display:none!important}
.swipe-actions .dislike-choice{color:#9a536e!important}
.swipe-actions .super-choice{color:#8f214f!important;border:2px solid #8f214f!important}
.swipe-actions .like-choice{color:#fff!important;background:#8f214f!important}
@media(max-width:800px){
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
}
@media(max-width:520px){
  .cards{grid-template-columns:1fr!important}
}

/* Uganda Dating 2.0 — Tinder-style Encounters deck */
.encounters-page{min-height:calc(100vh - 76px);padding:28px 18px 120px;background:radial-gradient(circle at 50% 4%,#fff 0,#fff7f4 45%,#f8e9ee 100%)}
.encounters-header{max-width:1050px;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:end;gap:20px}
.encounters-header h1{font-family:'Playfair Display',serif;font-size:42px;margin:0}
.encounters-header p{margin:6px 0 0}
.encounter-range{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.encounter-range form{display:flex;align-items:center;gap:7px}
.encounter-range label{font-size:12px;font-weight:900;color:var(--muted)}
.encounter-range select{border:1px solid var(--line);background:#fffdfc;padding:10px 32px 10px 11px;border-radius:12px;font:inherit;font-weight:800;color:var(--wine)}
.encounter-location-link{font-size:12px;font-weight:900;color:var(--rose);background:#fff;border:1px solid var(--line);padding:10px 12px;border-radius:12px}
.swipe-stage{width:min(460px,100%);margin:0 auto;position:relative}
.swipe-counter{position:relative;z-index:10;width:max-content;margin:0 auto 8px;padding:7px 12px;border-radius:99px;background:rgba(255,255,255,.82);backdrop-filter:blur(12px);border:1px solid var(--line);font-size:12px;color:var(--muted);box-shadow:0 8px 22px rgba(74,24,48,.05)}
.swipe-counter strong{color:var(--wine)}
.encounter-deck{position:relative;width:100%;height:670px;touch-action:none}
.encounter-card{position:absolute;inset:0;background:#fff;border:1px solid rgba(232,211,220,.9);border-radius:30px;overflow:hidden;box-shadow:0 22px 55px rgba(74,24,48,.17);will-change:transform;transition:transform .22s ease,opacity .22s ease;user-select:none;touch-action:none}
.encounter-photo-wrap{height:68%;min-height:430px;position:relative;overflow:hidden;background:#eadde2}
.encounter-photo{width:100%;height:100%;object-fit:cover;object-position:center;display:block;-webkit-user-drag:none}
.encounter-photo-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(27,7,18,.73) 0,rgba(27,7,18,.10) 42%,transparent 72%)}
.encounter-photo-badges{position:absolute;top:16px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.encounter-badge{display:inline-flex;align-items:center;padding:7px 10px;border-radius:99px;background:rgba(29,7,18,.58);color:#fff;font-size:11px;font-weight:900;backdrop-filter:blur(10px)}
.verified-badge{background:rgba(39,139,209,.88)}
.encounter-info{height:32%;min-height:210px;padding:18px 20px 16px;display:flex;flex-direction:column}
.encounter-name-row h2{margin:0;font-size:28px;line-height:1.1;color:#241923}
.profile-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:6px;border-radius:50%;background:#278bd1;color:#fff;font-size:11px;vertical-align:4px}
.encounter-distance{margin-top:6px;color:var(--rose);font-size:13px;font-weight:900}
.encounter-bio{margin:12px 0 0;color:#6f6169;font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.encounter-actions{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:18px;padding-top:14px}
.encounter-action{width:58px;height:58px;border-radius:50%;border:1px solid #ead8df;background:#fff;box-shadow:0 9px 24px rgba(74,24,48,.11);cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.encounter-action:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(74,24,48,.16)}
.encounter-action span{font-size:23px;font-weight:900;line-height:1}
.encounter-pass{color:#a24c6a}
.encounter-super{width:66px;height:66px;color:#8f214f;border:2px solid #8f214f;background:#fff6fa}
.encounter-like{width:64px;height:64px;background:linear-gradient(135deg,#8f214f,#c23c70);color:#fff;border-color:#8f214f}
.encounter-profile-link{align-self:center;border:0;background:none;color:#9a6577;font-size:11px;font-weight:900;margin-top:8px;cursor:pointer}
.swipe-hint{text-align:center;color:#9b7f8b;font-size:11px;font-weight:800;margin:14px 0 0}
.swipe-stamp{position:absolute;top:82px;padding:9px 13px;border:3px solid currentColor;border-radius:12px;font-size:24px;font-weight:900;letter-spacing:2px;opacity:0;pointer-events:none;transform:rotate(-12deg)}
.swipe-stamp-no{left:20px;color:#df416b}
.swipe-stamp-like{right:20px;color:#16835a;transform:rotate(12deg)}
.no-encounters{width:min(580px,calc(100% - 20px));margin:70px auto;padding:56px 25px;background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);text-align:center}
.match-overlay,.info-overlay{position:fixed;inset:0;z-index:200000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(27,7,18,.58);backdrop-filter:blur(10px)}
.match-overlay[hidden],.info-overlay[hidden]{display:none}
.match-modal,.info-modal{width:min(430px,100%);background:#fffaf8;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.25);text-align:center}
.match-sparkle{width:78px;height:78px;margin:0 auto 16px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f7d5e1,#fff0ea);color:var(--rose);font-size:38px}
.match-modal h2,.info-modal h2{font-family:'Playfair Display',serif;font-size:31px;margin:5px 0 12px}
.match-modal-actions{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.info-close{position:absolute;right:calc(50% - min(430px,100%)/2 + 12px);margin-top:-10px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--wine);font-size:24px;cursor:pointer}
.info-photo{width:120px;height:120px;object-fit:cover;border-radius:50%;border:4px solid #f1d4df;display:block;margin:0 auto 15px}
@media(max-width:700px){
  .encounters-page{padding:16px 10px 106px}
  .encounters-header{align-items:flex-start;flex-direction:column;margin-bottom:10px}
  .encounters-header h1{font-size:34px}
  .encounter-range{justify-content:flex-start;width:100%}
  .encounter-range form{flex:1}
  .encounter-range select{width:100%}
  .encounter-location-link{width:100%;text-align:center}
  .swipe-stage{width:min(430px,100%)}
  .encounter-deck{height:calc(100vh - 170px);min-height:575px;max-height:720px}
  .encounter-photo-wrap{height:65%;min-height:390px}
  .encounter-info{height:35%;min-height:205px;padding:15px 16px 13px}
  .encounter-name-row h2{font-size:25px}
  .encounter-actions{gap:14px}
  .encounter-action{width:54px;height:54px}
  .encounter-super{width:62px;height:62px}
  .encounter-like{width:60px;height:60px}
  .swipe-hint{font-size:10px}
  .info-close{right:18px;margin-top:-12px}
}


/* ═════════════════════════════════════════════════════════════
   UGANDA DATING — ROMANTIC 2.0 VISUAL THEME
   Warm wine + rose + blush palette across the app
   ═════════════════════════════════════════════════════════════ */

:root{
  --rose:#c72f68;
  --rose-deep:#9d214f;
  --wine:#4f1833;
  --wine-2:#6d2346;
  --blush:#f9e3ea;
  --blush-2:#fff0f4;
  --pearl:#fffafb;
  --gold:#d9a85b;
  --cream:#fff8f6;
  --ink:#2c1822;
  --muted:#806b75;
  --line:#ecd5de;
  --shadow-romantic:0 18px 55px rgba(104,31,66,.11);
}

body{
  background:
    radial-gradient(circle at 8% 8%,rgba(255,214,227,.50),transparent 24%),
    radial-gradient(circle at 92% 18%,rgba(246,204,214,.42),transparent 25%),
    radial-gradient(circle at 50% 100%,rgba(253,225,214,.50),transparent 30%),
    linear-gradient(135deg,#fffaf9 0%,#fff5f7 48%,#fbeff3 100%);
  color:var(--ink);
}

body:before{
  content:"♥";
  position:fixed;
  left:-20px;
  bottom:90px;
  font-size:170px;
  line-height:1;
  color:rgba(199,47,104,.035);
  transform:rotate(-18deg);
  pointer-events:none;
  z-index:-1;
}

body:after{
  content:"♥";
  position:fixed;
  right:-22px;
  top:120px;
  font-size:150px;
  line-height:1;
  color:rgba(109,35,70,.03);
  transform:rotate(18deg);
  pointer-events:none;
  z-index:-1;
}

/* Main app chrome */
.ud-main-nav{
  background:rgba(255,250,249,.88)!important;
  border-bottom:1px solid rgba(236,213,222,.92)!important;
  box-shadow:0 8px 28px rgba(79,24,51,.06)!important;
}

.brand{
  color:var(--wine)!important;
}
.brand span{
  color:var(--rose)!important;
}

.logo-icon{
  background:linear-gradient(145deg,#5b1738,#bd2e64 72%,#df8b78)!important;
  box-shadow:0 10px 28px rgba(199,47,104,.24)!important;
}

.ud-desktop-nav{
  background:rgba(255,255,255,.86)!important;
  border-color:#eed9e1!important;
  box-shadow:0 10px 28px rgba(79,24,51,.08)!important;
}

.ud-desktop-nav .nav-item{
  color:#745f69!important;
}
.ud-desktop-nav .nav-item.active,
.ud-desktop-nav .nav-item:hover{
  background:linear-gradient(135deg,#f9e5ec,#fff2f5)!important;
  color:var(--rose-deep)!important;
}

.premium-link{
  color:var(--wine)!important;
}

/* Page shells */
.container{
  position:relative;
}

.container:before{
  content:"";
  position:absolute;
  top:8px;
  right:16px;
  width:110px;
  height:110px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(244,182,202,.18),transparent 70%);
  pointer-events:none;
}

.section-title{
  position:relative;
  margin-bottom:28px;
}

.section-title h1,
.encounters-header h1{
  color:var(--wine);
  text-shadow:0 4px 18px rgba(79,24,51,.07);
}

.section-title h1:after,
.encounters-header h1:after{
  content:"";
  display:block;
  width:54px;
  height:3px;
  margin-top:10px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--rose),#e79caf);
}

.eyebrow{
  color:var(--rose)!important;
}

/* Controls / filters */
.nearby-controls{
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,241,245,.88))!important;
  border-color:#eed7df!important;
  box-shadow:var(--shadow-romantic)!important;
}

.location-note{
  background:linear-gradient(135deg,#fff7f1,#fff0f4)!important;
  border-color:#efddcd!important;
}

.radius-form select,
.encounter-range select,
.field input,
.field textarea,
.field select{
  border-color:#e8d2dc!important;
  background:rgba(255,253,253,.96)!important;
  color:var(--ink)!important;
}

.radius-form select:focus,
.encounter-range select:focus,
.field input:focus,
.field textarea:focus,
.field select:focus{
  border-color:#d05b83!important;
  box-shadow:0 0 0 4px rgba(199,47,104,.09)!important;
}

/* Buttons */
.btn,
.pill{
  background:linear-gradient(135deg,#5d1c3b 0%,#a62655 55%,#d04372 100%)!important;
  box-shadow:0 12px 28px rgba(157,33,79,.20)!important;
}

.btn:hover,
.pill:hover{
  box-shadow:0 16px 34px rgba(157,33,79,.27)!important;
}

.btn.secondary{
  background:linear-gradient(135deg,#f8e8ee,#fff4f6)!important;
  color:var(--wine)!important;
  border:1px solid #efd6df!important;
  box-shadow:none!important;
}

/* Discovery/profile cards */
.cards{
  gap:20px!important;
}

.profile-card{
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(255,248,250,.95))!important;
  border-color:#eed9e1!important;
  box-shadow:0 16px 40px rgba(79,24,51,.10)!important;
}

.profile-card:hover{
  box-shadow:0 24px 56px rgba(79,24,51,.16)!important;
}

.profile-body{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,247,249,.95));
}

.name{
  color:var(--wine)!important;
}

.distance-line{
  color:var(--rose)!important;
}

.tag{
  background:linear-gradient(135deg,#f8e8ee,#fff2f5)!important;
  color:#7f4058!important;
  border:1px solid #efd7e0;
}

/* Romantic action buttons on cards */
.action{
  border:1px solid #ecd6df!important;
  background:#fff8fa!important;
  color:#95536b;
}

.action.like{
  background:linear-gradient(135deg,#f9dbe6,#ffeaf1)!important;
  color:var(--rose)!important;
}

.action.super{
  background:linear-gradient(135deg,#fff0d7,#fff7eb)!important;
  color:#a67524!important;
}

/* Auth / forms */
.auth{
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(255,239,245,.92))!important;
  border-color:#eed8e1!important;
  box-shadow:0 22px 60px rgba(79,24,51,.12)!important;
}

.auth h1{
  color:var(--wine);
}

.auth .field label{
  color:#593345;
}

/* Chats */
.chat-preview{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,243,247,.92))!important;
  border-color:#eed7df!important;
  box-shadow:0 12px 32px rgba(79,24,51,.08)!important;
}

.chat-preview:hover{
  border-color:#e6c3d0!important;
  box-shadow:0 18px 40px rgba(79,24,51,.13)!important;
}

.chat-preview img{
  border-color:#f1d5df!important;
  box-shadow:0 5px 16px rgba(199,47,104,.10);
}

.chat{
  border-color:#edd7df!important;
  box-shadow:var(--shadow-romantic)!important;
}

.messages{
  background:
    radial-gradient(circle at 10% 15%,rgba(250,211,223,.35),transparent 25%),
    linear-gradient(180deg,#fff9fa,#fff4f6)!important;
}

.theirs{
  background:#fff!important;
  border-color:#ecd8e0!important;
}

.mine{
  background:linear-gradient(135deg,#5d1c3b,#bc2e64)!important;
}

/* Pricing / premium */
.price{
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(255,241,246,.92))!important;
  border-color:#eed6df!important;
  box-shadow:0 16px 42px rgba(79,24,51,.08)!important;
}

.price.featured{
  border-color:#cd4c78!important;
  box-shadow:0 22px 52px rgba(199,47,104,.15)!important;
  background:linear-gradient(145deg,#fff,#fff0f5)!important;
}

.amount{
  color:var(--wine)!important;
}

/* Profile settings */
.location-settings{
  background:linear-gradient(135deg,#fff9f7,#fff0f4)!important;
  border-color:#eed8e0!important;
}

/* Empty states */
.empty,
.no-encounters{
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,239,245,.92))!important;
  border-color:#eed8e1!important;
  box-shadow:0 20px 52px rgba(79,24,51,.08)!important;
}

.empty h2,
.no-encounters h2{
  color:var(--wine);
}

.empty-heart{
  background:linear-gradient(135deg,#f9dce7,#fff0ea)!important;
  color:var(--rose)!important;
  box-shadow:0 14px 32px rgba(199,47,104,.12)!important;
}

/* Matches / little romantic highlights */
.match{
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(255,240,245,.94))!important;
  border-color:#eed8e0!important;
}

.match img{
  border-color:#f2d4df!important;
  box-shadow:0 7px 18px rgba(199,47,104,.12);
}

/* Swipe / Encounters */
.encounters-page{
  background:
    radial-gradient(circle at 50% 0%,rgba(248,205,218,.45),transparent 25%),
    radial-gradient(circle at 15% 70%,rgba(255,227,217,.42),transparent 22%),
    linear-gradient(135deg,#fffafa,#fff1f5 58%,#f8e7ee)!important;
}

.encounter-card{
  border-color:#ebd4de!important;
  box-shadow:0 28px 65px rgba(79,24,51,.19)!important;
}

.encounter-info{
  background:linear-gradient(180deg,#fffafb,#fff1f5)!important;
}

.encounter-name-row h2{
  color:var(--wine)!important;
}

.encounter-distance{
  color:var(--rose)!important;
}

.encounter-pass{
  background:#fff!important;
  color:#a34a69!important;
  border-color:#edd8e0!important;
}

.encounter-super{
  background:linear-gradient(135deg,#fff7fb,#ffe8f0)!important;
  border-color:#c83d6d!important;
  color:#a92656!important;
}

.encounter-like{
  background:linear-gradient(135deg,#7a2247,#c42f69)!important;
}

/* Premium / special highlights */
.super-choice{
  background:linear-gradient(135deg,#fff5e0,#fffaf0)!important;
}

/* Mobile nav */
.ud-mobile-nav{
  background:rgba(255,249,249,.96)!important;
  border-color:#ecd6df!important;
  box-shadow:0 18px 46px rgba(79,24,51,.18)!important;
}

.ud-mobile-nav .bottom-item.active{
  background:linear-gradient(135deg,#f8e4eb,#fff0f4)!important;
  color:var(--rose-deep)!important;
}

/* Alerts */
.alert{
  background:linear-gradient(135deg,#fff0f4,#fff8fa)!important;
  border:1px solid #efd5df;
}

.alert.success{
  background:linear-gradient(135deg,#f0faf5,#f7fffb)!important;
}

/* Footer */
.footer{
  color:#8c707c!important;
}

/* Extra romance on selected page headers */
.encounters-page:before,
main.container:before{
  background:radial-gradient(circle,rgba(224,115,151,.16),transparent 68%)!important;
}

/* Soft mobile polish */
@media(max-width:700px){
  .section-title{
    margin-bottom:20px;
  }
  .profile-card{
    border-radius:24px!important;
  }
  .auth{
    border-radius:26px!important;
  }
}


/* UGANDA DATING — LOVELY ROMANCE COLOR PASS */
:root{
  --rose:#e85d8c;
  --rose-deep:#c83f70;
  --wine:#6b2748;
  --mauve:#9a7187;
  --lavender:#d9c7dc;
  --blush:#fbe5ee;
  --blush-2:#fff1f6;
  --peach:#f7d8cf;
  --champagne:#f4dfbf;
  --cream:#fffaf8;
  --ink:#321f2a;
  --muted:#8b747f;
  --line:#eedbe3;
  --shadow-romantic:0 20px 60px rgba(173,82,119,.13);
}

body{
  background:
    radial-gradient(circle at 8% 10%,rgba(255,192,215,.34),transparent 22%),
    radial-gradient(circle at 92% 12%,rgba(225,205,229,.28),transparent 24%),
    radial-gradient(circle at 78% 78%,rgba(248,218,203,.30),transparent 22%),
    linear-gradient(135deg,#fffdfd 0%,#fff7fa 42%,#fbf2f7 72%,#fff8f4 100%);
}

body:before{
  content:"♡";
  left:-18px;
  bottom:90px;
  font-size:180px;
  color:rgba(232,93,140,.035);
}
body:after{
  content:"♡";
  right:-18px;
  top:110px;
  font-size:170px;
  color:rgba(154,113,135,.035);
}

.ud-main-nav{
  background:linear-gradient(180deg,rgba(255,252,252,.96),rgba(255,247,249,.92))!important;
  border-bottom-color:#f0dfe6!important;
  box-shadow:0 10px 30px rgba(126,69,93,.07)!important;
}

.ud-desktop-nav{
  background:rgba(255,255,255,.91)!important;
  border-color:#f0dfe6!important;
}

.ud-desktop-nav .nav-item.active,
.ud-desktop-nav .nav-item:hover{
  background:linear-gradient(135deg,#fff0f5,#f9e8f0)!important;
  color:#c83f70!important;
}

.pill,.btn{
  background:linear-gradient(135deg,#bf4777 0%,#e35f8d 54%,#ef769f 100%)!important;
  box-shadow:0 12px 28px rgba(224,86,133,.20)!important;
}

.btn.secondary{
  background:linear-gradient(135deg,#fff0f5,#f8edf4)!important;
  color:#9b496a!important;
  border:1px solid #efdce4!important;
}

.section-title h1,
.encounters-header h1{
  color:#71304f!important;
}

.section-title h1:after,
.encounters-header h1:after{
  background:linear-gradient(90deg,#e85d8c,#d6a7bf,#efc18f)!important;
  height:4px;
  box-shadow:0 3px 10px rgba(232,93,140,.16);
}

.nearby-controls,
.location-note,
.auth,
.chat-preview,
.price,
.empty,
.no-encounters,
.match{
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(255,243,247,.91))!important;
  border-color:#f0dce5!important;
  box-shadow:var(--shadow-romantic)!important;
}

.profile-card{
  background:linear-gradient(180deg,#fffefe 0%,#fff8fb 100%)!important;
  border-color:#f0dce5!important;
  box-shadow:0 16px 42px rgba(151,74,104,.10)!important;
}

.profile-card:hover{
  box-shadow:0 24px 56px rgba(151,74,104,.15)!important;
}

.tag{
  background:linear-gradient(135deg,#fff0f5,#f8edf5)!important;
  color:#98566f!important;
  border-color:#f0dbe4!important;
}

.action{
  background:linear-gradient(135deg,#fffafb,#fff1f5)!important;
  border-color:#eedce4!important;
}

.action.like{
  background:linear-gradient(135deg,#ffdce8,#ffeaf1)!important;
  color:#d34c79!important;
}

.action.super{
  background:linear-gradient(135deg,#fff4df,#fff9ee)!important;
  color:#b9893f!important;
}

.encounters-page{
  background:
    radial-gradient(circle at 50% 0%,rgba(255,192,214,.34),transparent 24%),
    radial-gradient(circle at 8% 72%,rgba(240,214,232,.32),transparent 24%),
    radial-gradient(circle at 92% 65%,rgba(249,219,202,.32),transparent 24%),
    linear-gradient(135deg,#fffdfd,#fff3f7 52%,#fbf3f7)!important;
}

.encounter-card{
  background:linear-gradient(180deg,#fff,#fff8fb)!important;
  border-color:#f0d9e3!important;
  box-shadow:0 28px 70px rgba(148,72,104,.18)!important;
}

.encounter-info{
  background:linear-gradient(180deg,#fffdfd,#fff2f6)!important;
}

.encounter-action{
  border-color:#eedbe4!important;
  box-shadow:0 10px 26px rgba(155,76,108,.10)!important;
}

.encounter-pass{
  color:#bd6684!important;
  background:#fff!important;
}

.encounter-super{
  color:#c23f70!important;
  border-color:#d95d86!important;
  background:linear-gradient(135deg,#fff2f7,#ffe7ef)!important;
}

.encounter-like{
  background:linear-gradient(135deg,#c64072,#ea6b98)!important;
  border-color:#d75883!important;
}

.encounter-badge{
  background:rgba(101,43,69,.56)!important;
}
.verified-badge{
  background:rgba(102,166,203,.88)!important;
}

.chat .messages{
  background:
    radial-gradient(circle at 15% 12%,rgba(255,196,217,.26),transparent 25%),
    radial-gradient(circle at 85% 78%,rgba(225,205,230,.20),transparent 24%),
    linear-gradient(180deg,#fffafb,#fff5f8)!important;
}

.mine{
  background:linear-gradient(135deg,#b94273,#e46795)!important;
}

.theirs{
  background:#fff!important;
  border-color:#efdee5!important;
}

.price.featured{
  border-color:#e36a95!important;
  background:linear-gradient(145deg,#fff,#fff0f5)!important;
  box-shadow:0 24px 58px rgba(224,92,140,.17)!important;
}

.momo-box{
  background:linear-gradient(135deg,#fff1f5,#fff8ee)!important;
  border-color:#f0dfe4!important;
}

.install-app-banner{
  background:linear-gradient(135deg,#fffafd,#fff0f5)!important;
  border-color:#efd9e3!important;
}

.install-app-banner button{
  background:linear-gradient(135deg,#c64072,#e96a98)!important;
}

.ud-mobile-nav{
  background:rgba(255,249,251,.97)!important;
  border-color:#efdde5!important;
  box-shadow:0 18px 50px rgba(125,62,91,.16)!important;
}

.ud-mobile-nav .bottom-item.active{
  background:linear-gradient(135deg,#ffebf2,#f8edf6)!important;
  color:#c33f70!important;
}

.footer{
  color:#9a7f8d!important;
}


/* UGANDA DATING — DEEP ROMANCE PALETTE */
:root{
  --love-rose:#ef6f9f;
  --love-pink:#f7aac3;
  --love-blush:#fde2ec;
  --love-lilac:#e7d8ee;
  --love-mauve:#b7829c;
  --love-plum:#7a3d5d;
  --love-wine:#5a2140;
  --love-peach:#f8d8cc;
  --love-champagne:#f4dfbd;
  --love-cream:#fff9fb;
}

body{
  background:
    radial-gradient(circle at 10% 8%,rgba(255,173,205,.38),transparent 21%),
    radial-gradient(circle at 90% 9%,rgba(225,200,236,.34),transparent 23%),
    radial-gradient(circle at 80% 84%,rgba(249,213,199,.35),transparent 24%),
    radial-gradient(circle at 25% 90%,rgba(253,225,239,.32),transparent 24%),
    linear-gradient(135deg,#fffefe 0%,#fff6fa 38%,#fbf2f8 68%,#fff7f2 100%);
}

.ud-main-nav{
  background:linear-gradient(180deg,rgba(255,254,254,.97),rgba(255,247,250,.94))!important;
}

.logo-icon{
  background:linear-gradient(145deg,#7a3458,#e35d8c 68%,#f0a08e)!important;
  box-shadow:0 10px 30px rgba(227,93,140,.27)!important;
}

.brand{
  color:var(--love-wine)!important;
}
.brand span{
  color:var(--love-rose)!important;
}

.ud-desktop-nav .nav-item.active,
.ud-desktop-nav .nav-item:hover{
  background:linear-gradient(135deg,#fff0f5,#f7ebf8)!important;
  color:#c64978!important;
}

.pill,.btn{
  background:linear-gradient(135deg,#8a4263 0%,#d84f7f 55%,#f27aa3 100%)!important;
  box-shadow:0 13px 30px rgba(216,79,127,.22)!important;
}

.btn.secondary{
  background:linear-gradient(135deg,#fff1f6,#f8eef9)!important;
  color:#8d4668!important;
}

.section-title h1,
.encounters-header h1{
  color:#75334f!important;
}

.eyebrow{
  color:#d34e7c!important;
}

.section-title h1:after,
.encounters-header h1:after{
  background:linear-gradient(90deg,#ed6697,#cf9db8,#efbe94)!important;
  box-shadow:0 4px 14px rgba(237,102,151,.18);
}

.nearby-controls,
.auth,
.chat-preview,
.price,
.empty,
.no-encounters,
.match{
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(255,240,247,.93))!important;
  border-color:#f0d8e2!important;
  box-shadow:0 22px 58px rgba(142,70,105,.12)!important;
}

.location-note{
  background:linear-gradient(135deg,#fff5ef,#fff0f6)!important;
  border-color:#f1dfd4!important;
}

.profile-card{
  background:linear-gradient(180deg,#fffefe,#fff7fa)!important;
  border-color:#efd8e2!important;
  box-shadow:0 18px 44px rgba(139,63,100,.11)!important;
}

.profile-card:hover{
  box-shadow:0 27px 62px rgba(139,63,100,.17)!important;
}

.tag{
  background:linear-gradient(135deg,#fff0f5,#f4ebf8)!important;
  color:#94506d!important;
  border-color:#efdce5!important;
}

.action{
  background:linear-gradient(135deg,#fffafb,#fff0f6)!important;
  border-color:#efdde5!important;
}
.action.like{
  background:linear-gradient(135deg,#ffdbe8,#ffeef4)!important;
  color:#dc4b7d!important;
}
.action.super{
  background:linear-gradient(135deg,#fff1dc,#fff9ef)!important;
  color:#b78943!important;
}

.encounters-page{
  background:
    radial-gradient(circle at 50% 0%,rgba(255,177,207,.37),transparent 25%),
    radial-gradient(circle at 4% 72%,rgba(231,216,238,.32),transparent 23%),
    radial-gradient(circle at 96% 70%,rgba(250,215,201,.34),transparent 23%),
    linear-gradient(135deg,#fffefe,#fff3f8 52%,#faf2f8)!important;
}

.encounter-card{
  background:linear-gradient(180deg,#fffefe,#fff7fb)!important;
  border-color:#efd6e1!important;
  box-shadow:0 30px 74px rgba(128,53,94,.20)!important;
}

.encounter-info{
  background:linear-gradient(180deg,#fffefe,#fff0f6)!important;
}

.encounter-pass{
  color:#bf6285!important;
  background:#fff!important;
}

.encounter-super{
  background:linear-gradient(135deg,#fff1f7,#ffe4ef)!important;
  border-color:#df6790!important;
  color:#c43f73!important;
}

.encounter-like{
  background:linear-gradient(135deg,#a33e68,#e76393,#f07ea5)!important;
  border-color:#d85b89!important;
}

.encounter-badge{
  background:rgba(96,43,69,.53)!important;
}

.chat .messages{
  background:
    radial-gradient(circle at 12% 12%,rgba(255,182,211,.27),transparent 24%),
    radial-gradient(circle at 88% 78%,rgba(224,205,234,.24),transparent 23%),
    linear-gradient(180deg,#fffafd,#fff4f8)!important;
}

.mine{
  background:linear-gradient(135deg,#ad416d,#dc5c8b,#ef78a1)!important;
}

.price.featured{
  border-color:#e56b96!important;
  background:linear-gradient(145deg,#fff,#ffeff5)!important;
  box-shadow:0 25px 62px rgba(222,88,139,.18)!important;
}

.momo-box{
  background:linear-gradient(135deg,#fff1f6,#fff8ee)!important;
  border-color:#f0dbe4!important;
}

.ud-mobile-nav{
  background:rgba(255,249,252,.98)!important;
  border-color:#f0dce6!important;
  box-shadow:0 20px 54px rgba(125,60,91,.18)!important;
}

.ud-mobile-nav .bottom-item.active{
  background:linear-gradient(135deg,#ffeaf2,#f6edf8)!important;
  color:#ca4a79!important;
}

.footer{
  color:#a28291!important;
}

/* Premium store and checkout */
.premium-page{padding-bottom:130px}
.premium-hero{text-align:center;max-width:780px;margin:10px auto 38px;padding:38px 20px 30px;background:radial-gradient(circle at 50% 0%,rgba(255,183,211,.30),transparent 38%),linear-gradient(145deg,rgba(255,255,255,.80),rgba(255,240,247,.74));border:1px solid #f0dce5;border-radius:34px;box-shadow:0 18px 55px rgba(147,67,102,.08)}
.premium-heart{width:74px;height:74px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe2ec,#f6e8f6);color:#e35e8d;font-size:34px;box-shadow:0 12px 30px rgba(227,94,141,.16)}
.premium-hero h1{font-family:'Playfair Display',serif;color:#71304f;font-size:44px;line-height:1.05;margin:6px 0 12px}
.current-plan{display:inline-block;margin-top:12px;padding:9px 13px;border-radius:99px;background:#fff0f5;color:#98506f;font-size:12px;font-weight:800;border:1px solid #f0d7e1}
.plan-section{margin:34px 0}
.premium-section-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:16px}
.premium-section-head h2{font-family:'Playfair Display',serif;color:#71304f;margin:0;font-size:29px}
.credit-pill{padding:9px 13px;border-radius:999px;background:linear-gradient(135deg,#fff2d7,#fff9ef);border:1px solid #f0dfc2;color:#9a7336;font-size:12px;font-weight:900}
.premium-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.premium-plan{position:relative;background:linear-gradient(145deg,#fff,#fff4f8);border:1px solid #efd9e3;border-radius:28px;padding:25px;box-shadow:0 18px 44px rgba(144,68,103,.09)}
.premium-plan.popular{border:2px solid #e46b98;box-shadow:0 24px 56px rgba(222,91,140,.16);transform:translateY(-5px)}
.plan-ribbon{position:absolute;right:16px;top:16px;font-size:9px;font-weight:900;letter-spacing:1px;padding:6px 9px;border-radius:99px;background:#fde0ea;color:#c23f72}
.plan-icon{font-size:31px;color:#dc5b8a}
.plan-badge{margin-top:8px;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;font-weight:900;color:#c6547d}
.premium-plan h3,.premium-addon h3{font-family:'Playfair Display',serif;color:#74334f;font-size:25px;margin:8px 0}
.plan-price{font-size:28px;font-weight:900;color:#5d2743}.plan-price small{font-size:11px;color:#947b86;font-weight:700}
.premium-plan ul{padding-left:0;list-style:none;line-height:2;color:#745e69;font-size:13px;min-height:120px}
.premium-addon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.premium-addon{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:linear-gradient(145deg,#fff,#fff6f9);border:1px solid #efdce4;border-radius:22px;padding:18px;box-shadow:0 12px 30px rgba(144,68,103,.07)}
.addon-icon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe5ee,#f5eafb);font-size:21px;color:#d05280}
.premium-addon .btn{grid-column:1/-1}
.premium-addon strong{font-size:14px;color:#6b2b4a;white-space:nowrap}
.credits-grid .premium-addon{grid-template-columns:auto 1fr auto}
.payment-note{text-align:center;color:#9a7987;font-size:12px;margin-top:28px}
.checkout-amount{font-size:38px;font-weight:900;color:#6d2a4a;margin-top:7px}
.payment-brand{display:inline-block;margin-bottom:10px}
.payment-status{margin-top:18px;padding:15px;border-radius:16px;background:linear-gradient(135deg,#fff1f6,#f8eff8);border:1px solid #efdbe5;color:#8f4567;font-weight:800;text-align:center}
.nav-credit-status{font-size:11px;font-weight:800;color:#9b496a;padding:8px 5px;white-space:nowrap}
@media(max-width:800px){.premium-plan-grid{grid-template-columns:1fr}.premium-plan.popular{transform:none}.premium-addon-grid{grid-template-columns:1fr}.premium-hero h1{font-size:36px}.nav-credit-status{display:none}.premium-section-head{align-items:flex-start;flex-direction:column}}


/* Registration + profile photo gallery */
.photo-onboarding,.preference-panel{
  margin:18px 0;
  padding:18px;
  border:1px solid #efdce4;
  border-radius:22px;
  background:linear-gradient(145deg,#fff,#fff5f9);
}
.photo-onboarding-head,.preference-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.photo-onboarding-head h2,.preference-title h2{margin:0;color:#73334f;font-family:'Playfair Display',serif;font-size:23px}
.photo-count{
  min-width:52px;
  padding:8px 10px;
  border-radius:999px;
  background:#fde8f0;
  color:#b83d6e;
  font-size:12px;
  font-weight:900;
  text-align:center;
}
.photo-grid.onboarding-photo-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.photo-slot{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  border:1px dashed #dbb8c8;
  border-radius:18px;
  background:linear-gradient(145deg,#fffafd,#fff0f5);
  color:#9b5871;
  cursor:pointer;
  padding:0;
}
.photo-slot.required-slot{border-width:2px}
.photo-slot.filled{border-style:solid;border-color:#e56b96}
.photo-slot img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.photo-slot-plus{font-size:34px;line-height:1;display:block}
.photo-slot-label{
  position:absolute;left:7px;right:7px;bottom:7px;padding:6px 7px;border-radius:10px;
  background:rgba(67,23,43,.62);color:#fff;font-size:10px;font-weight:800;
}
.photo-slot-remove{
  position:absolute;top:7px;right:7px;width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;background:rgba(255,255,255,.92);color:#a32b58;font-weight:900;
  box-shadow:0 5px 15px rgba(58,20,39,.14);
}
.gallery-button{margin-top:12px;width:100%}
.photo-hint{margin-top:9px}
.age-range{display:grid;gap:12px}
.age-range label{font-size:12px;font-weight:800;color:#795768}
.age-range input[type=range]{width:100%;accent-color:#d85484}
.form-note{margin:12px 0 0}
.precise-location-box{margin-top:16px}
.nearby-accuracy-note{text-align:center;margin-top:10px}
@media(max-width:600px){
  .photo-grid.onboarding-photo-grid{grid-template-columns:repeat(2,1fr)}
  .photo-onboarding,.preference-panel{padding:14px;border-radius:18px}
}
