@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');
:root{--ink:#241e21;--muted:#766f72;--cream:#fbf7f3;--rose:#c84669;--plum:#56253d;--gold:#d9b35e;--line:#e7ded9;--white:#fff;--green:#35ad43;--shadow:0 18px 48px rgba(39,25,28,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.55}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.container{width:min(1180px,92%);margin:auto}

.site-header{height:86px;background:#242425;color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 8px 28px rgba(0,0,0,.16)}.site-header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center}.brand-logo{display:block;width:224px;height:68px;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}.main-nav{display:flex;align-items:center;gap:5px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:13px;padding:6px}.main-nav a{font-size:12px;color:#ddd;padding:9px 12px;border-radius:9px;transition:.2s}.main-nav a:hover,.main-nav a.active{background:rgba(255,255,255,.1);color:#fff}.header-actions{display:flex;align-items:center;gap:14px}.login-link{font-size:12px;color:#eee;text-decoration:underline;text-underline-offset:3px}.header-signup{font-size:12px;color:#2b2522;background:#e5c36f;border-radius:8px;padding:9px 15px;font-weight:800}.mobile-menu{display:none;border:0;background:transparent;color:#fff;font-size:24px}.footer{background:#242425;color:#fff;padding:48px 0 24px;margin-top:0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px}.footer-brand .brand-logo{width:238px;height:78px}.footer p{color:#aaa;font-size:13px;max-width:300px}.footer h4{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#e9cb79;margin:0 0 13px}.footer-grid>div>a:not(.brand){display:block;color:#aaa;font-size:13px;margin:7px 0}.footer-grid>div>a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:18px;color:#888;font-size:11px}

.hero-home{min-height:610px;position:relative;background-image:url("hero-romance.webp");background-size:cover;background-position:center center;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,17,17,.7),rgba(18,17,17,.36) 43%,rgba(18,17,17,.16) 70%,rgba(20,18,19,.58))}.hero-inner{min-height:610px;position:relative;z-index:2;display:grid;grid-template-columns:1fr 500px;align-items:center;gap:55px;padding:45px 0}.hero-copy{color:#fff}.eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:#f6e9ed;color:var(--plum);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.eyebrow.light{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);color:#fff}.hero-copy h1{font:700 clamp(48px,6vw,76px)/.98 "Playfair Display";letter-spacing:-2.5px;margin:18px 0}.hero-copy h1 span{color:#f2d487}.hero-copy p{font-size:20px;max-width:570px}.hero-pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:25px}.hero-pills span{background:rgba(20,18,18,.46);border:1px solid rgba(255,255,255,.18);padding:8px 11px;border-radius:999px;font-size:11px}.register-card,.signup-card{background:rgba(43,42,42,.9);backdrop-filter:blur(15px);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:26px;box-shadow:0 25px 70px rgba(0,0,0,.25)}.register-head,.signup-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}.form-kicker{font-size:10px;letter-spacing:.16em;color:#e7cf88;font-weight:800}.register-card h2,.signup-card h2{font:700 28px/1.05 "Playfair Display";margin:5px 0 0}.live-dot,.secure-pill{font-size:10px;color:#e8d58f;white-space:nowrap}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:15px}.choice-group>label,.field span{display:block;font-size:11px;color:#eee;margin-bottom:6px}.radio-line{display:flex;gap:13px;flex-wrap:wrap}.radio-line label{font-size:11px;color:#ddd;display:flex;align-items:center;gap:5px}.radio-line input{accent-color:#d8b45d}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field input,.field select{width:100%;border:1px solid rgba(224,196,122,.62);border-radius:7px;padding:10px 11px;background:rgba(255,255,255,.04);color:#fff;outline:none}.field select option{color:#222}.field input::placeholder{color:#aaa}.field input:focus{border-color:#f0d88e;background:rgba(255,255,255,.08)}.check{display:flex;gap:7px;align-items:flex-start;margin-top:11px;font-size:10px;color:#ccc}.check input{margin-top:2px;accent-color:#d8b45d}.register-btn{width:100%;margin-top:17px;border:0;border-radius:8px;padding:13px 18px;background:linear-gradient(90deg,#d4ad55,#f0d17e);color:#2b2421;font-weight:800}.form-note{text-align:center;font-size:11px;color:#c9c5c5;margin:11px 0 0}.form-note a{color:#f0d17e;text-decoration:underline}.member-strip{background:#252526;color:#fff}.stats{display:grid;grid-template-columns:repeat(4,1fr);padding:23px 0}.stats div{padding:3px 25px;border-right:1px solid rgba(255,255,255,.12);text-align:center}.stats div:last-child{border:0}.stats strong{display:block;font-size:24px;color:#f0d17e}.stats span{font-size:11px;color:#c8c3c2;text-transform:uppercase;letter-spacing:.06em}.section{padding:78px 0}.members-section{background:#fff}.section-head{max-width:760px;margin:0 auto 38px;text-align:center}.left-head{display:flex;justify-content:space-between;align-items:end;gap:30px;max-width:none;text-align:left}.section-head h2,.results-head h2{font:700 42px/1.05 "Playfair Display";letter-spacing:-1px;margin:10px 0}.section-head p{color:var(--muted);margin:0;max-width:650px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:12px 18px;font-weight:800;font-size:13px;border:0;cursor:pointer}.btn.dark{background:#252526;color:#fff}.btn.white{background:#fff;color:#4d2638}.member-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.member-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:9px;box-shadow:0 10px 28px rgba(44,31,30,.07);transition:.22s}.member-card:hover{transform:translateY(-4px)}.member-photo{height:290px;border-radius:13px;position:relative;overflow:hidden;background-size:cover;background-position:center}.member-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),transparent 45%,rgba(0,0,0,.2))}.online,.match{position:absolute;z-index:2;top:10px;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800}.online{left:10px;background:#35ad43;color:#fff}.match{right:10px;background:#fff;color:#5b2941}.member-info{display:flex;align-items:center;justify-content:space-between;padding:12px 6px 5px}.member-info h3{margin:0;font-size:17px}.member-info p{margin:2px 0 0;font-size:11px;color:var(--muted)}.like-btn{width:38px;height:38px;border-radius:50%;background:#f8eff1;color:#8b3b59;border:0;font-size:21px;cursor:pointer}.tags{display:flex;gap:6px;flex-wrap:wrap;padding:0 6px 8px}.tags span{font-size:10px;background:#f5f1ef;color:#675e60;padding:5px 8px;border-radius:999px}.how-section{padding:80px 0;background:#f4ede8}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.step>span{color:#b28b3e;font-weight:800;font-size:12px}.step h3{font-size:17px;margin:12px 0 7px}.step p{color:var(--muted);font-size:13px;margin:0}.cta{padding:65px 0}.cta-box{background:linear-gradient(120deg,#2c2025,#6c3048);border-radius:24px;padding:48px 54px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-box h2{font:700 40px/1.05 "Playfair Display";margin:10px 0}.cta-box p{color:#ded3d5}.page-hero{padding:80px 0 45px;text-align:center;background:linear-gradient(180deg,#f4ebe5,#fbf7f3)}.page-hero h1{font:700 52px/1.05 "Playfair Display";margin:12px 0}.page-hero p{color:var(--muted);max-width:650px;margin:auto}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature,.form-card,.price,.faq-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:0 10px 30px rgba(45,30,30,.05)}.muted{color:var(--muted)}.form-card{max-width:820px;margin:auto}.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price.featured{border:2px solid #d6b45d}.price .amount{font-size:42px;font-weight:800;margin:15px 0}.price li{margin:9px 0;color:var(--muted)}.faq-item{margin-bottom:12px}.faq-item summary{font-weight:800;cursor:pointer}.avatar{width:100px;height:100px;border-radius:50%;background:linear-gradient(145deg,#d4a990,#705160);box-shadow:inset 0 0 0 5px #fff,0 8px 22px rgba(0,0,0,.12)}

.signup-page{padding:65px 0;background:linear-gradient(135deg,#f7ece7,#fff)}.signup-layout{display:grid;grid-template-columns:1fr 560px;gap:60px;align-items:center}.signup-intro h1{font:700 58px/1.02 "Playfair Display";margin:15px 0}.signup-intro p{font-size:18px;color:var(--muted);max-width:520px}.signup-benefits{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.signup-benefits span{background:#fff;border:1px solid var(--line);padding:8px 11px;border-radius:999px;font-size:11px;font-weight:700}.signup-card{background:#2d2929}.signup-card .field input{background:rgba(255,255,255,.06)}.secure-pill{border:1px solid rgba(255,255,255,.2);padding:5px 8px;border-radius:999px}

.search-controls{background:#fff;padding:20px 0;border-bottom:1px solid var(--line)}.search-filter-box{display:grid;grid-template-columns:1fr 1fr 1.3fr 1fr auto;gap:10px;align-items:end;background:#fff}.filter-field label{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#6f6669;margin:0 0 5px}.filter-field input,.filter-field select{width:100%;border:1px solid #ddd3cf;border-radius:8px;padding:11px;background:#fff;outline:0}.filter-button{height:43px;border:0;border-radius:8px;background:#252526;color:#fff;padding:0 20px;font-weight:800}.search-results{padding:50px 0 80px;background:#fff}.results-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.results-count{font-size:12px;color:var(--muted);padding-bottom:10px}.search-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.search-profile{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 12px 32px rgba(35,25,25,.08);transition:.2s}.search-profile:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(35,25,25,.12)}.search-photo{width:192px;height:192px;background-size:cover;background-position:center 30%;position:relative;margin:12px auto 0;border-radius:13px}.online-now{position:absolute;top:12px;right:12px;background:#35ad43;color:#fff;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:800}.match-badge{position:absolute;left:12px;bottom:12px;background:#fff;color:#5a2940;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:800}.search-profile-body{padding:15px}.search-profile-body h3{margin:0;font-size:20px}.profile-location{margin:2px 0 12px;color:#746c70;font-size:12px}.search-profile-body>p:not(.profile-location){color:#747074;font-size:13px;min-height:42px;margin:0 0 14px}.profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.small-like,.small-view{padding:9px;border-radius:8px;text-align:center;font-size:12px;font-weight:800}.small-like{border:0;background:#f7e9ee;color:#7d3150;cursor:pointer}.small-view{background:#272627;color:#fff}

@media(max-width:1000px){.hero-inner{grid-template-columns:1fr 440px;gap:25px}.hero-copy h1{font-size:58px}.member-grid,.search-grid{grid-template-columns:repeat(2,1fr)}.search-filter-box{grid-template-columns:1fr 1fr 1fr 1fr}.filter-button{grid-column:span 4}.signup-layout{grid-template-columns:1fr 500px;gap:25px}.main-nav{gap:0}}
@media(max-width:780px){.main-nav{display:none}.mobile-menu{display:block}.main-nav.mobile-open{display:flex;position:absolute;top:74px;left:4%;right:4%;flex-direction:column;align-items:stretch;padding:10px;background:#242425}.hero-inner{grid-template-columns:1fr;min-height:auto;padding:55px 0 40px}.register-card{max-width:580px}.stats{grid-template-columns:1fr 1fr}.stats div{padding:8px 10px}.stats div:nth-child(2){border-right:0}.steps,.feature-grid,.prices{grid-template-columns:1fr 1fr}.signup-layout{grid-template-columns:1fr}.signup-intro h1{font-size:46px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.site-header{height:66px}.brand-logo{width:150px;height:45px}.hero-copy h1{font-size:47px}.hero-copy p{font-size:17px}.choice-row,.form-grid,.search-filter-box{grid-template-columns:1fr}.filter-button{grid-column:auto}.member-grid,.search-grid,.steps,.feature-grid,.prices{grid-template-columns:1fr}.section{padding:58px 0}.left-head{display:block}.left-head .btn{margin-top:16px}.page-hero h1{font-size:42px}.results-head{display:block}.search-photo{width:192px;height:192px}.cta-box{padding:35px 25px;display:block}.cta-box h2{font-size:34px}.footer-grid{grid-template-columns:1fr}.signup-card{padding:19px}}

/* Compact member login replacing the large homepage registration panel */
.login-card{width:100%;max-width:430px;background:rgba(43,42,42,.93);backdrop-filter:blur(16px);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:23px;box-shadow:0 24px 65px rgba(0,0,0,.28)}
.login-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:15px}.login-card h2{font:700 27px/1.05 "Playfair Display";margin:5px 0 0}.login-table{border:1px solid rgba(231,207,142,.35);border-radius:10px;overflow:hidden;background:rgba(255,255,255,.035)}.login-row{display:grid;grid-template-columns:105px 1fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.12)}.login-row span{padding:12px;font-size:11px;font-weight:700;color:#eee;background:rgba(255,255,255,.045)}.login-row input{width:100%;border:0;outline:0;background:transparent;color:#fff;padding:12px;font-size:12px}.login-row input::placeholder{color:#999}.login-submit{width:100%;border:0;padding:12px;background:linear-gradient(90deg,#d4ad55,#f0d17e);color:#2b2421;font-weight:800;cursor:pointer}.forgot-link{display:block;text-align:right;margin:10px 2px 0;color:#f0d17e;font-size:11px;text-decoration:underline}.login-divider{display:flex;align-items:center;gap:10px;color:#aaa;font-size:10px;margin:17px 0 10px}.login-divider:before,.login-divider:after{content:"";height:1px;background:rgba(255,255,255,.15);flex:1}.create-account{display:block;text-align:center;border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:10px;color:#fff;font-size:11px;font-weight:800}.create-account:hover{background:rgba(255,255,255,.08)}

/* Profile photos are displayed at a strict 2 × 2 inch visual size (192 × 192 CSS px at 96dpi). */
.user-photo-2x2{width:192px!important;height:192px!important;min-width:192px;min-height:192px;max-width:192px;max-height:192px;border-radius:12px;background:#eee center/cover no-repeat;overflow:hidden;display:flex;align-items:center;justify-content:center;object-fit:cover}.user-photo-2x2 span{font-size:11px;color:#8a7c7f;font-weight:800;letter-spacing:.08em}.photo-upload-row{display:flex;align-items:center;gap:15px;margin:14px 0 8px;padding:12px;border:1px dashed rgba(224,196,122,.5);border-radius:12px;background:rgba(255,255,255,.035)}.photo-preview{flex:0 0 192px;border:1px solid rgba(255,255,255,.2)}.photo-preview.has-photo span{display:none}.photo-upload-copy{min-width:0}.upload-label{display:block;font-size:11px;font-weight:800;color:#eee;margin-bottom:7px}.photo-upload-copy input[type=file]{width:100%;font-size:10px;color:#ddd}.photo-upload-copy p{font-size:9px;color:#aaa;margin:7px 0 0}.search-photo.user-photo-2x2{height:192px!important;width:192px!important;margin:12px auto 0;border-radius:12px}.search-profile .search-photo.user-photo-2x2{background-position:center}.profile-photo-small{width:192px;height:192px;object-fit:cover;border-radius:12px}

/* Any member/avatar image on any page stays at exactly 2 × 2 inches. */
.member-avatar,.profile-avatar,.avatar-photo,.match-avatar,.user-avatar{width:192px!important;height:192px!important;min-width:192px;min-height:192px;max-width:192px;max-height:192px;object-fit:cover;border-radius:12px;}

/* 50-member directory: seven profiles per row on wide screens */
.member-grid-7,.search-grid-7{grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}
.profile-item{padding:7px;border-radius:14px}
.profile-photo-2x2{width:192px!important;height:192px!important;min-width:192px!important;min-height:192px!important;max-width:192px!important;max-height:192px!important;margin:0 auto;border-radius:11px;background-size:cover;background-position:center;position:relative}
.profile-bio{font-size:11px!important;line-height:1.5;color:#756d70;margin:0 6px 8px!important;min-height:33px}
.profile-pagination{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:30px;flex-wrap:wrap}
.profile-pagination button{min-width:38px;height:38px;border:1px solid #ddd1cc;background:#fff;border-radius:9px;color:#51484b;font-size:12px;font-weight:800;cursor:pointer}
.profile-pagination button.active{background:#252526;color:#fff;border-color:#252526}
.profile-pagination button:hover:not(.active){background:#f7eff0}
@media(max-width:1450px){.member-grid-7,.search-grid-7{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1100px){.member-grid-7,.search-grid-7{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:820px){.member-grid-7,.search-grid-7{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-photo-2x2{width:160px!important;height:160px!important;min-width:160px!important;min-height:160px!important;max-width:160px!important;max-height:160px!important}}
@media(max-width:600px){.member-grid-7,.search-grid-7{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-photo-2x2{width:100%!important;height:192px!important;min-width:0!important;min-height:192px!important;max-width:none!important}}

/* Seven full-size 2x2-inch profile cards across the desktop directory */
.members-section .container,.search-results .container{width:min(1480px,96%)}
.member-grid-7,.search-grid-7{grid-template-columns:repeat(7,192px);justify-content:center;gap:14px;overflow:visible}
.profile-item{width:192px}
.profile-photo-2x2{width:192px!important;height:192px!important}
@media(max-width:1200px){.member-grid-7,.search-grid-7{justify-content:start;overflow-x:auto;padding:0 4px 12px;scrollbar-width:thin}.profile-item{flex:none}}

.search-no-results{text-align:center;padding:34px 20px;color:var(--muted);font-size:14px;border:1px dashed #ddd3cf;border-radius:14px;margin-top:10px;background:#faf8f6}.search-no-results[hidden]{display:none}

/* Matches page: five profile cards maximum per row on desktop, inspired by the member-card layout. */
.matches-container{width:min(1380px,94%)}
.match-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin-top:30px}
.match-card{padding:9px;overflow:hidden}
.match-photo{height:290px;background-size:cover;background-position:center;border-radius:13px}
.match-card .member-info{padding:12px 6px 5px}
.match-card .profile-bio{min-height:38px;margin-bottom:5px}
@media(max-width:1200px){.match-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:950px){.match-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.match-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.match-photo{height:250px}}
@media(max-width:460px){.match-grid{grid-template-columns:1fr}.match-photo{height:320px}}

/* Professional account registration and member onboarding */
.professional-signup{padding:78px 0 92px;background:linear-gradient(180deg,#fbf7f3 0%,#f6efeb 100%)}
.account-shell{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:72px;align-items:center;min-height:640px}.account-intro{padding:20px 0}.account-intro h1{font:700 clamp(48px,5vw,72px)/1.02 "Playfair Display",serif;margin:12px 0 20px;letter-spacing:-.035em}.account-intro>p{font-size:18px;color:var(--muted);max-width:590px}.account-steps{display:grid;gap:15px;margin:34px 0 30px;max-width:430px}.account-step{display:flex;gap:13px;align-items:center;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.68)}.account-step.active{border-color:#d8bc78;background:#fff;box-shadow:0 10px 25px rgba(39,25,28,.06)}.account-step>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#292728;color:#fff;font-weight:800;font-size:12px}.account-step.active>span{background:#d7b45f;color:#28201d}.account-step strong{display:block;font-size:13px}.account-step small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.account-card{box-shadow:0 28px 70px rgba(39,25,28,.13);border:1px solid #eadfd9}.account-form-grid{grid-template-columns:1fr 1fr}.full-field{grid-column:1/-1}.account-card .register-btn{margin-top:14px}.account-card .check a{text-decoration:underline;text-underline-offset:2px}.account-page{padding:80px 0 100px;background:linear-gradient(180deg,#fbf7f3,#f4ece8);min-height:calc(100vh - 86px)}.narrow-account{width:min(620px,92%)}.account-panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:55px;box-shadow:0 24px 65px rgba(39,25,28,.10)}.centered-panel{text-align:center}.centered-panel h1{font:700 48px/1.05 "Playfair Display";margin:10px 0 15px}.centered-panel p{color:var(--muted);font-size:14px}.verify-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;background:#eaf7ec;color:#2b9c3a;font-size:30px;font-weight:800}.centered-panel .register-btn{margin-top:18px}.text-button{border:0;background:none;color:#7a304d;font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:3px;margin-top:15px;cursor:pointer}.dashboard-page{padding:55px 0 90px;background:#fbf7f3;min-height:calc(100vh - 86px)}.dashboard-container{width:min(1260px,92%)}.dashboard-welcome{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:28px}.dashboard-welcome h1{font:700 clamp(40px,4.4vw,62px)/1.05 "Playfair Display";margin:8px 0}.dashboard-welcome p{color:var(--muted);margin:0}.heart{color:#c84669}.btn.dark{display:inline-flex;align-items:center;justify-content:center;background:#272627;color:#fff;border-radius:10px;padding:12px 17px;font-size:12px;font-weight:800}.btn.full{width:100%}.completion-card{display:flex;justify-content:space-between;align-items:center;gap:30px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px 28px;box-shadow:0 12px 32px rgba(35,25,25,.06)}.completion-card h2{margin:4px 0 4px;font:700 26px "Playfair Display"}.completion-card p{margin:0;color:var(--muted);font-size:13px}.completion-meter{width:260px}.completion-meter strong{display:block;text-align:right;font-size:20px;margin-bottom:8px}.meter-track{height:9px;background:#eee5e0;border-radius:99px;overflow:hidden}.meter-track span{display:block;width:20%;height:100%;background:linear-gradient(90deg,#c84669,#d9b35e);border-radius:99px;transition:.3s}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 38px}.dashboard-stats>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px}.dashboard-stats strong{display:block;font:700 29px "Playfair Display"}.dashboard-stats span{font-size:11px;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:15px}.section-heading h2{margin:3px 0 0;font:700 29px "Playfair Display"}.text-link{color:#7a304d;font-size:12px;font-weight:800}.mini-match-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.mini-match{background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;overflow:hidden}.mini-photo{height:170px;border-radius:10px;background-size:cover;background-position:center;position:relative}.mini-photo span{position:absolute;left:7px;bottom:7px;background:#fff;color:#7a304d;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.mini-match strong{display:block;margin:9px 3px 0;font-size:13px}.mini-match small{display:block;color:var(--muted);margin:1px 3px 5px;font-size:10px}.dashboard-side{display:grid;gap:15px}.dashboard-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.dashboard-card h3{font:700 23px "Playfair Display";margin:5px 0 8px}.dashboard-card p{font-size:12px;color:var(--muted);margin:0 0 17px}.safety-card{background:#292728;color:#fff;border-color:#292728}.safety-card p{color:#c9c4c5}.safety-card .text-link{color:#e8ca79}.profile-setup-page{padding:54px 0 90px;background:#fbf7f3;min-height:calc(100vh - 86px)}.profile-builder{width:min(1180px,92%)}.builder-top{display:flex;justify-content:space-between;gap:30px;align-items:end}.builder-top h1{font:700 clamp(42px,4.5vw,60px)/1.04 "Playfair Display";margin:8px 0}.builder-top p{margin:0;color:var(--muted)}.builder-completion{text-align:right}.builder-completion strong{display:block;font:700 34px "Playfair Display"}.builder-completion span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.setup-progress{height:7px;background:#e9dfda;border-radius:99px;margin:28px 0 25px;overflow:hidden}.setup-progress span{display:block;width:20%;height:100%;background:linear-gradient(90deg,#c84669,#d9b35e);transition:.25s}.setup-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:20px}.setup-nav{align-self:start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:8px;position:sticky;top:105px}.setup-nav-item{width:100%;display:flex;align-items:center;gap:10px;border:0;background:none;text-align:left;padding:11px 9px;border-radius:10px;cursor:pointer;color:#50474a}.setup-nav-item b{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#f1e9e5;font-size:10px}.setup-nav-item span{font-size:11px;font-weight:800}.setup-nav-item small{display:block;font-size:9px;font-weight:500;color:#8a8083;margin-top:2px}.setup-nav-item.active{background:#2a2829;color:#fff}.setup-nav-item.active b{background:#e0bd68;color:#2a2829}.setup-nav-item.active small{color:#d3ccce}.setup-content{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 12px 32px rgba(35,25,25,.05)}.setup-step{display:none}.setup-step.active{display:block}.step-heading{display:flex;gap:13px;margin-bottom:24px}.step-heading>span{color:#b38c3e;font-weight:900;font-size:11px;letter-spacing:.12em;padding-top:4px}.step-heading h2{font:700 30px "Playfair Display";margin:0 0 4px}.step-heading p{margin:0;color:var(--muted);font-size:12px}.field-label{display:block;font-size:11px;font-weight:800;margin-bottom:8px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:22px}.choice-grid label,.interest-picker label,.radio-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:11px;font-size:11px;cursor:pointer}.choice-grid label:has(input:checked),.interest-picker label:has(input:checked),.radio-card:has(input:checked){border-color:#caa85b;background:#fcf8ee}.choice-grid input,.interest-picker input{margin-right:7px}.two-col{grid-template-columns:1fr 1fr}.interest-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.interest-picker label{display:flex;align-items:center}.profile-builder-photo{background:#fbf8f5}.privacy-box{margin-top:22px;border:1px solid var(--line);border-radius:14px;padding:18px;background:#fbf8f5}.privacy-box h3{font:700 22px "Playfair Display";margin:3px 0 10px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:13px 0}.toggle-row strong{display:block;font-size:11px}.toggle-row small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.toggle-row input{width:18px;height:18px;accent-color:#7a304d}.setup-actions{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:30px;padding-top:20px}.secondary-step{border:1px solid #d9ceca;background:#fff;color:#554b4e;border-radius:9px;padding:11px 17px;font-size:12px;font-weight:800;cursor:pointer}.settings-container{width:min(980px,92%)}.settings-head h1{font:700 clamp(42px,4.5vw,60px)/1.04 "Playfair Display";margin:8px 0}.settings-head p{color:var(--muted)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.settings-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:24px}.settings-card h2{font:700 27px "Playfair Display";margin:5px 0 16px}.settings-card .toggle-row{padding:16px 0}.radio-card{display:flex;gap:10px;margin:9px 0}.radio-card input{accent-color:#7a304d}.radio-card strong,.radio-card small{display:block}.radio-card small{color:var(--muted);font-size:9px;margin-top:2px}.settings-card .register-btn{margin-top:16px}
@media(max-width:1000px){.account-shell{grid-template-columns:1fr 500px;gap:30px}.dashboard-grid{grid-template-columns:1fr}.dashboard-side{grid-template-columns:1fr 1fr}.interest-picker{grid-template-columns:repeat(2,1fr)}.mini-match-grid{grid-template-columns:repeat(3,1fr)}.settings-grid{grid-template-columns:1fr}}
@media(max-width:780px){.account-shell{grid-template-columns:1fr}.account-intro{padding:0}.account-intro h1{font-size:48px}.dashboard-welcome{display:block}.dashboard-welcome .btn{margin-top:18px}.completion-card{display:block}.completion-meter{width:100%;margin-top:20px}.dashboard-stats{grid-template-columns:1fr 1fr}.setup-layout{grid-template-columns:1fr}.setup-nav{position:static;display:grid;grid-template-columns:1fr 1fr;gap:4px}.mini-match-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.account-panel{padding:28px 20px}.account-form-grid,.two-col,.choice-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.account-intro h1,.builder-top h1,.settings-head h1{font-size:42px}.dashboard-stats{grid-template-columns:1fr 1fr}.mini-match-grid{grid-template-columns:repeat(2,1fr)}.mini-photo{height:190px}.setup-content{padding:20px 16px}.setup-nav{grid-template-columns:1fr}.interest-picker{grid-template-columns:1fr}.builder-top{display:block}.builder-completion{text-align:left;margin-top:18px}.photo-upload-row{flex-direction:column;align-items:flex-start}.profile-builder-photo .photo-upload-copy{width:100%}}

/* Backend messaging UI */
.messages-page{padding:70px 0 90px;background:#fbf8f5;min-height:calc(100vh - 180px)}
.messages-head{margin-bottom:28px}.messages-head h1{margin:.25rem 0 .5rem}.messages-shell{display:grid;grid-template-columns:330px minmax(0,1fr);min-height:620px;background:#fff;border:1px solid #eadfd7;border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(50,35,25,.08)}
.conversation-panel{border-right:1px solid #eadfd7;background:#fff}.conversation-heading{padding:22px;border-bottom:1px solid #eadfd7;font-size:17px}.conversation-list{padding:8px}.conversation-item{width:100%;display:grid;grid-template-columns:50px 1fr 20px;gap:12px;align-items:center;text-align:left;background:transparent;border:0;border-radius:14px;padding:12px;cursor:pointer}.conversation-item:hover{background:#f8f2ed}.conversation-avatar{width:50px;height:50px;border-radius:50%;background:#eee center/cover no-repeat;display:block}.conversation-item strong,.conversation-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item small{color:#777;margin-top:4px}.conversation-item em{font-style:normal;font-weight:700;color:#8b3b59}.chat-panel{display:grid;grid-template-rows:auto 1fr auto;min-width:0}.chat-header{padding:20px 24px;border-bottom:1px solid #eadfd7;display:flex;align-items:center;justify-content:space-between}.live-dot{font-size:12px;color:#319447}.chat-thread{padding:24px;overflow:auto;background:linear-gradient(180deg,#fff,#fcfaf8)}.chat-message{display:flex;flex-direction:column;max-width:70%;margin:0 0 14px}.chat-message.mine{margin-left:auto;align-items:flex-end}.chat-message.theirs{margin-right:auto;align-items:flex-start}.chat-bubble{padding:12px 15px;border-radius:18px;background:#f1ebe6;line-height:1.5}.chat-message.mine .chat-bubble{background:#8b3b59;color:#fff;border-bottom-right-radius:5px}.chat-message.theirs .chat-bubble{border-bottom-left-radius:5px}.chat-message small{color:#8a827d;margin-top:4px}.chat-form{display:grid;grid-template-columns:1fr auto;gap:10px;padding:16px;border-top:1px solid #eadfd7;background:#fff}.chat-form input{min-width:0;border:1px solid #d9cec6;border-radius:14px;padding:13px 15px;font:inherit}.chat-empty{text-align:center;max-width:380px;margin:130px auto;color:#756c67}.chat-empty>div{font-size:42px}.chat-empty h2{color:#2d2927}.small-note{font-size:12px}.contact-privacy-card{margin-top:22px;padding:20px;border:1px solid #e8ddd5;border-radius:18px;background:#fcfaf8}
@media(max-width:800px){.messages-shell{grid-template-columns:1fr;min-height:700px}.conversation-panel{border-right:0;border-bottom:1px solid #eadfd7;max-height:260px}.conversation-list{display:flex;overflow:auto;gap:8px}.conversation-item{min-width:220px}.chat-message{max-width:86%}.messages-page{padding-top:40px}}
.message-profile-btn{margin-left:8px;border:1px solid #d8c7c0;background:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700;color:#6f3049;cursor:pointer}.message-profile-btn:hover{background:#faf2f5}
.like-btn.liked{background:#8b3b59!important;color:#fff!important}
.mobile-request-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid #eee2da}.mobile-request-row strong,.mobile-request-row small{display:block}.mobile-request-row small{color:#7b716b;margin-top:4px}.request-actions{display:flex;gap:8px}.request-actions button{border:1px solid #d7cbc4;background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:700}.request-actions .request-accept{background:#8b3b59;color:#fff;border-color:#8b3b59}

/* Light-page form readability: use normal dark text in fields. */
.account-page .field span,.profile-setup-page .field span,.settings-page .field span,.search-controls .filter-field label,.form-card .field span{color:var(--ink)}
.account-page .field input,.account-page .field select,.account-page .field textarea,.profile-setup-page .field input,.profile-setup-page .field select,.profile-setup-page .field textarea,.settings-page .field input,.settings-page .field select,.settings-page .field textarea,.search-controls input,.search-controls select,.form-card .field input,.form-card .field select,.form-card .field textarea{color:var(--ink);background:#fff;border:1px solid #d8cec8}
.account-page .field input::placeholder,.profile-setup-page .field input::placeholder,.profile-setup-page .field textarea::placeholder,.settings-page .field input::placeholder,.settings-page .field textarea::placeholder,.form-card .field input::placeholder,.form-card .field textarea::placeholder{color:#8b8180}
.account-page .field input:focus,.account-page .field select:focus,.account-page .field textarea:focus,.profile-setup-page .field input:focus,.profile-setup-page .field select:focus,.profile-setup-page .field textarea:focus,.settings-page .field input:focus,.settings-page .field select:focus,.settings-page .field textarea:focus,.form-card .field input:focus,.form-card .field select:focus,.form-card .field textarea:focus{border-color:#caa85b;background:#fff;color:var(--ink)}
.profile-setup-page .field select option,.settings-page .field select option,.account-page .field select option{color:var(--ink);background:#fff}
.profile-setup-page input[type=file]{color:var(--ink);background:#fff;border:1px solid #d8cec8;border-radius:8px;padding:8px}
.profile-setup-page input[type=checkbox],.profile-setup-page input[type=radio]{accent-color:#7a304d}
.profile-ready-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 10px 30px rgba(45,30,30,.06);margin:0 0 24px}
.profile-ready-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px}
.profile-ready-head h2{font:700 30px/1.05 "Playfair Display";margin:6px 0 0}
.profile-ready-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:start}
.profile-ready-photo{width:180px;height:220px;border-radius:16px;background:#eee center/cover no-repeat;box-shadow:0 8px 24px rgba(0,0,0,.10)}
.profile-ready-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.profile-detail{border-bottom:1px solid #eee5e0;padding:10px 0}.profile-detail strong{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#8a7f7d;margin-bottom:3px}.profile-detail span{display:block;font-size:13px;color:var(--ink)}
.profile-ready-about{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.profile-ready-about h3{font:700 22px "Playfair Display";margin:0 0 6px}.profile-ready-about p{margin:0;color:var(--muted);font-size:13px}
.profile-ready-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.profile-ready-tags span{background:#f5f1ef;color:#675e60;padding:6px 9px;border-radius:999px;font-size:10px}
@media(max-width:700px){.profile-ready-grid{grid-template-columns:1fr}.profile-ready-photo{width:150px;height:185px}.profile-ready-details{grid-template-columns:1fr}.profile-ready-head{display:block}.profile-ready-head .btn{margin-top:12px}}

/* Light-background form readability: keep labels and typed text dark everywhere. */
.account-page .field > span,
.account-page .field > label,
.account-page label,
.account-page legend,
.profile-setup-page .field > span,
.profile-setup-page .field > label,
.profile-setup-page label,
.profile-setup-page .upload-label,
.profile-setup-page .field-label,
.profile-setup-page .toggle-row strong,
.profile-setup-page .secondary-step,
.settings-page .field > span,
.settings-page .field > label,
.settings-page label,
.search-controls .filter-field label,
.form-card .field > span,
.form-card .field > label,
.form-card label,
.dashboard-page .field > span,
.dashboard-page label {
  color: #2b2522 !important;
}

.account-page .field input,
.account-page .field select,
.account-page .field textarea,
.profile-setup-page .field input,
.profile-setup-page .field select,
.profile-setup-page .field textarea,
.settings-page .field input,
.settings-page .field select,
.settings-page .field textarea,
.search-controls .filter-field input,
.search-controls .filter-field select,
.form-card .field input,
.form-card .field select,
.form-card .field textarea,
.dashboard-page .field input,
.dashboard-page .field select,
.dashboard-page .field textarea {
  color: #1f1b19 !important;
  -webkit-text-fill-color: #1f1b19 !important;
  background-color: #fff !important;
  caret-color: #1f1b19 !important;
}

.account-page .field input::placeholder,
.account-page .field textarea::placeholder,
.profile-setup-page .field input::placeholder,
.profile-setup-page .field textarea::placeholder,
.settings-page .field input::placeholder,
.settings-page .field textarea::placeholder,
.form-card .field input::placeholder,
.form-card .field textarea::placeholder,
.dashboard-page .field input::placeholder,
.dashboard-page .field textarea::placeholder {
  color: #77706d !important;
  -webkit-text-fill-color: #77706d !important;
  opacity: 1 !important;
}

.account-page .field input:-webkit-autofill,
.account-page .field input:-webkit-autofill:hover,
.account-page .field input:-webkit-autofill:focus,
.account-page .field input:-webkit-autofill:active,
.profile-setup-page .field input:-webkit-autofill,
.profile-setup-page .field input:-webkit-autofill:hover,
.profile-setup-page .field input:-webkit-autofill:focus,
.profile-setup-page .field input:-webkit-autofill:active,
.settings-page .field input:-webkit-autofill,
.settings-page .field input:-webkit-autofill:hover,
.settings-page .field input:-webkit-autofill:focus,
.settings-page .field input:-webkit-autofill:active {
  -webkit-text-fill-color: #1f1b19 !important;
  caret-color: #1f1b19 !important;
  box-shadow: 0 0 0 1000px #fff inset !important;
}

.profile-setup-page .choice-grid label,
.profile-setup-page .interest-picker label,
.profile-setup-page .radio-card {
  color: #2b2522 !important;
}

.profile-setup-page .choice-grid label small,
.profile-setup-page .interest-picker label small,
.profile-setup-page .radio-card small {
  color: #6f6663 !important;
}

/* Final form readability and profile editor sizing */
.profile-setup-page .field textarea[name="aboutMe"]{
  display:block;
  width:100% !important;
  min-width:100% !important;
  min-height:230px !important;
  resize:vertical;
  line-height:1.6;
}
.profile-setup-page .field.full-field{
  width:100%;
}

/* Mutual-match chat enhancements */
.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#c94d70;color:#fff;font-size:10px;font-weight:800;vertical-align:middle;margin-left:4px}
.message-profile-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #d8c7c0;background:#fff;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:800;color:#6f3049;cursor:pointer;transition:.2s}.message-profile-btn:hover{background:#faf2f5;transform:translateY(-1px)}
.conversation-item.selected{background:#f8eef2;box-shadow:inset 3px 0 #c94d70}.conversation-item em{min-width:22px;text-align:center}.chat-loading{text-align:center;color:#777;padding:90px 20px}.chat-list-empty{padding:28px 18px;color:#6f6762;line-height:1.55}.chat-list-empty strong{display:block;color:#2d2927;margin-bottom:6px}.chat-list-empty p{margin:0 0 10px}
.chat-header-actions{display:flex;align-items:center;gap:8px}.chat-subtitle{display:block;font-size:12px;color:#7d746f;margin-top:3px}.chat-header-title{min-width:0}.chat-header-title strong{display:block}.chat-form input:disabled{opacity:.7;background:#f7f3f0}.match-empty{grid-column:1/-1;text-align:center;padding:70px 30px;border:1px dashed #e2d5cd;border-radius:20px;background:#fff}.match-empty>div{font-size:42px;color:#c94d70}.match-empty h3{margin:8px 0}.match-empty p{max-width:560px;margin:0 auto 22px;color:#746b66}
.dashboard-chat-card{margin-top:24px;background:#fff;border:1px solid #eadfd7;border-radius:20px;padding:24px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start;box-shadow:0 10px 35px rgba(50,35,25,.05)}.dashboard-chat-card h2{margin:.25rem 0 .35rem}.dashboard-chat-card p{margin:0;color:#746b66;max-width:700px}.dashboard-conversations{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:4px}.dashboard-chat-row{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid #eee4de;border-radius:14px;text-decoration:none;color:inherit;background:#fff}.dashboard-chat-row:hover{background:#faf5f2}.dashboard-chat-avatar{width:42px;height:42px;border-radius:50%;background:#eee center/cover no-repeat}.dashboard-chat-row strong,.dashboard-chat-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-chat-row small{font-size:11px;color:#817872;margin-top:3px}.dashboard-chat-row em{font-style:normal;font-size:11px;font-weight:800;color:#8b3b59}.dashboard-chat-empty{grid-column:1/-1;padding:16px;border-radius:14px;background:#fbf8f5;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.dashboard-chat-empty strong{color:#2d2927}.dashboard-chat-empty span{color:#766d68;font-size:13px}
@media(max-width:900px){.dashboard-conversations{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-chat-card{grid-template-columns:1fr}.dashboard-chat-card>.btn{justify-self:start}}
@media(max-width:560px){.dashboard-conversations{grid-template-columns:1fr}.chat-header{padding:16px}.chat-header-actions .message-profile-btn{padding:7px 10px}.messages-shell{border-radius:16px}.chat-form{grid-template-columns:1fr}.chat-form button{width:100%}}

.notifications-list{display:grid;gap:12px;margin-top:28px}.notification-row{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:16px;border:1px solid #eadfd7;border-radius:16px;background:#fff}.notification-row.unread{background:#fff9fb;border-color:#e9cfd8}.notification-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f8eef2;font-size:20px}.notification-row strong{color:#2b2522}.notification-row p{margin:4px 0;color:#6f6663}.notification-row small{color:#948983}.notification-empty{text-align:center;padding:60px 20px;border:1px dashed #e1d5cd;border-radius:18px}.notification-empty>div{font-size:42px;color:#c94d70}.danger-card{margin-top:20px;border:1px solid #efd0d0!important}.danger-btn{border:1px solid #b83d4f;background:#fff;color:#a32f40;border-radius:10px;padding:12px 16px;font-weight:800;cursor:pointer}.danger-btn:hover{background:#fff4f5}.message-profile-btn.danger{color:#a32f40;border-color:#e4b9c0}.message-profile-btn.danger:hover{background:#fff3f5}
@media(max-width:700px){.notification-row{grid-template-columns:40px 1fr}.notification-icon{width:38px;height:38px}}
.photo-verify-box{margin-top:18px;padding:16px;border:1px solid #eadfd7;border-radius:14px;background:#fbf8f5}.photo-verify-box strong{display:block;color:#2b2522}.photo-verify-box p{margin:5px 0 10px;color:#746b66}.photo-verify-box small{display:block;margin-top:8px;color:#6f3049}

.site-language{border:1px solid rgba(255,255,255,.25);background:#2d2c2c;color:#fff;border-radius:8px;padding:8px 28px 8px 10px;font-size:11px;min-width:125px;outline:none}.site-language option{color:#1f1b19;background:#fff}.header-actions{gap:10px}.account-page input,.account-page select,.account-page textarea,.profile-setup-page input,.profile-setup-page select,.profile-setup-page textarea,.settings-page input,.settings-page select,.settings-page textarea,.form-card input,.form-card select,.form-card textarea,.search-controls input,.search-controls select,.chat-form input{color:#1f1b19 !important;-webkit-text-fill-color:#1f1b19 !important;caret-color:#1f1b19 !important}.account-page input::placeholder,.account-page textarea::placeholder,.profile-setup-page input::placeholder,.profile-setup-page textarea::placeholder,.settings-page input::placeholder,.settings-page textarea::placeholder,.form-card input::placeholder,.form-card textarea::placeholder,.chat-form input::placeholder{color:#77706d !important;-webkit-text-fill-color:#77706d !important;opacity:1}.profile-save-status{margin:10px 0 0;text-align:center;font-weight:700;font-size:13px;color:#7a304d}.profile-save-status.success{color:#2f7d45}.profile-save-status.error{color:#a32f40}.launch-gallery{padding:70px 0;background:#f5eee9}.launch-gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.launch-gallery-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(44,31,30,.06)}.launch-gallery-card img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}.launch-gallery-card div{padding:12px}.launch-gallery-card strong{display:block;font-size:13px}.launch-gallery-card small{color:var(--muted);font-size:11px}.search-api-note{padding:12px 14px;background:#fbf5ef;border:1px solid #eadfd7;border-radius:12px;color:#5f5552;margin-bottom:18px}@media(max-width:900px){.launch-gallery-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.site-language{min-width:108px}.launch-gallery-grid{grid-template-columns:repeat(2,1fr)}}

/* Member profile, real photos and chat controls */
.profile-card-link{cursor:pointer}.search-photo img,.mini-photo img{width:100%;height:100%;display:block;object-fit:cover}.mini-match.profile-card-link{cursor:pointer}.mini-match.profile-card-link:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(35,25,25,.12)}
.small-chat{border:0;border-radius:8px;padding:9px;text-align:center;font-size:12px;font-weight:800;background:#272627;color:#fff;cursor:pointer}.small-chat:disabled{opacity:.55;cursor:not-allowed}.dashboard-photo-section{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 26px;margin:0 0 18px;box-shadow:0 12px 32px rgba(35,25,25,.06)}.dashboard-photo-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px}.dashboard-photo-head h2{font:700 28px "Playfair Display";margin:4px 0}.dashboard-photo-head p{margin:0;color:var(--muted);font-size:12px}.dashboard-photo-row{display:grid;grid-template-columns:repeat(5,240px);gap:12px;overflow-x:auto;padding-bottom:3px}.dashboard-photo-box{width:240px;height:240px;border:1px solid var(--line);border-radius:12px;background:#f6f1ed;overflow:hidden;padding:0;cursor:pointer;position:relative}.dashboard-photo-box img{width:100%;height:100%;display:block;object-fit:cover}.dashboard-photo-box.empty{border:1px dashed #cbbeb7;color:#7a304d;font-weight:800;font-size:12px}.dashboard-photo-box.empty span{display:grid;place-items:center;width:100%;height:100%}
.profile-photo-editor{margin:14px 0 22px;padding:16px;border:1px dashed rgba(224,196,122,.6);border-radius:14px;background:#fbf8f5}.profile-photo-editor-grid{display:grid;grid-template-columns:repeat(5,240px);gap:10px;overflow-x:auto;padding-bottom:4px}.profile-photo-slot{width:240px;height:240px;flex:0 0 240px;border:1px dashed #cfc1ba;border-radius:10px;background:#fff;position:relative;display:grid;place-items:center;color:#9a8d88;font-weight:800}.profile-photo-slot.has-photo{border-style:solid;overflow:hidden}.profile-photo-slot img{width:100%;height:100%;object-fit:cover;display:block}.profile-photo-slot .photo-remove{position:absolute;right:6px;top:6px;width:28px;height:28px;border:0;border-radius:50%;background:rgba(35,30,30,.8);color:#fff;font-size:20px;line-height:1;cursor:pointer}.photo-number{position:absolute;left:7px;bottom:7px;background:#fff;color:#7a304d;border-radius:999px;padding:4px 7px;font-size:9px}.photo-upload-actions{display:flex;align-items:center;gap:12px;margin-top:13px}.photo-upload-actions small{color:var(--muted);font-size:10px}.photo-add-btn{width:auto;display:inline-flex;margin:0;cursor:pointer}.member-profile-page{background:#fbf7f3;min-height:calc(100vh - 86px);padding:45px 0 80px}.member-profile-container{width:min(1120px,92%)}.member-profile-back{margin-bottom:18px}.member-profile-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:28px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 18px 50px rgba(35,25,25,.08)}.member-main-photo{width:100%;height:520px;border:0;border-radius:16px;overflow:hidden;background:#eee;padding:0;cursor:pointer}.member-main-photo img{width:100%;height:100%;object-fit:cover;display:block}.member-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}.member-gallery-photo{height:92px;padding:0;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#eee;cursor:pointer}.member-gallery-photo img{width:100%;height:100%;object-fit:cover;display:block}.member-gallery-empty{padding:30px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:10px}.member-profile-info{padding:22px 8px}.member-profile-info h1{font:700 clamp(42px,5vw,62px)/1.02 "Playfair Display";margin:10px 0 6px}.member-profile-location{color:var(--muted);font-size:13px}.member-profile-info h2{font:700 28px "Playfair Display";margin:35px 0 10px}.member-profile-info>p:not(.member-profile-location){color:#5f5859;line-height:1.75}.member-profile-actions{display:flex;gap:10px;margin-top:28px}.member-profile-actions .btn{width:auto;min-width:130px}.btn.gold{background:#d9b35e;color:#27211f}.photo-modal{position:fixed;z-index:1000;inset:0;background:rgba(15,12,13,.86);display:flex;align-items:center;justify-content:center;padding:35px}.photo-modal[hidden]{display:none}.photo-modal img{max-width:92vw;max-height:88vh;object-fit:contain;border-radius:10px}.photo-modal-close{position:absolute;right:24px;top:18px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#222;font-size:30px;cursor:pointer}.conversation-item-wrap{display:flex;align-items:stretch;gap:4px}.conversation-item-wrap .conversation-item{flex:1}.conversation-delete{width:34px;border:0;border-radius:8px;background:#f5e8e9;color:#8b3b59;font-size:22px;cursor:pointer}.conversation-avatar{width:42px;height:42px;border-radius:50%;overflow:hidden;background:#eee;display:block;flex:0 0 42px}.conversation-avatar img{width:100%;height:100%;object-fit:cover;display:block}.member-profile-error{background:#fff;border:1px solid var(--line);border-radius:18px;padding:45px;text-align:center}.member-profile-error h2{font:700 30px "Playfair Display"}
@media(max-width:900px){.profile-photo-editor-grid{grid-template-columns:repeat(5,240px);overflow-x:auto;padding-bottom:5px}.member-profile-card{grid-template-columns:1fr}.member-main-photo{height:480px}.dashboard-photo-row{grid-template-columns:repeat(5,240px)}.dashboard-photo-box{width:240px;height:240px}}
@media(max-width:560px){.dashboard-photo-head{display:block}.dashboard-photo-head .text-link{display:inline-block;margin-top:10px}.dashboard-photo-row{grid-template-columns:repeat(5,240px);overflow-x:auto}.dashboard-photo-box{width:240px;height:240px;flex:0 0 240px}.member-main-photo{height:380px}.member-gallery{grid-template-columns:repeat(5,75px);overflow-x:auto}.member-gallery-photo{width:75px;height:75px}.member-profile-card{padding:15px}.member-profile-info{padding:10px 4px}.member-profile-actions{flex-direction:column}.member-profile-actions .btn{width:100%}.photo-upload-actions{align-items:flex-start;flex-direction:column}}

/* Final requested fixed member-photo sizing and direct dashboard photo upload */
.search-profile .search-photo.user-photo-2x2{width:192px!important;height:192px!important;min-width:192px!important;min-height:192px!important;max-width:192px!important;max-height:192px!important;margin:12px auto 0;object-fit:cover;object-position:center 30%;}
.search-profile .search-photo.user-photo-2x2 img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;}
.dashboard-photo-row{grid-template-columns:repeat(5,240px);}
.dashboard-photo-box{width:240px!important;height:240px!important;min-width:240px!important;min-height:240px!important;max-width:240px!important;max-height:240px!important;flex:0 0 240px;}
.dashboard-photo-box img{width:100%;height:100%;object-fit:cover;object-position:center 30%;}
.dashboard-photo-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.dashboard-add-photo-btn{width:auto;margin:0;cursor:pointer;}
.notification-clickable{cursor:pointer;transition:.18s;}
.notification-clickable:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(35,25,25,.08);}
.notification-clickable:focus{outline:2px solid #d9b35e;outline-offset:2px;}
.notification-action{display:block;margin-top:7px;color:#8b3b59;font-weight:800;font-size:12px;}
@media(max-width:560px){.dashboard-photo-actions{align-items:flex-start;flex-direction:column;}.dashboard-photo-row{grid-template-columns:repeat(5,240px);overflow-x:auto;}}


/* Latest fixed sizing: public member photos are 1.5in square (144px at 96dpi). */
.member-card .member-photo,
.search-profile .search-photo,
.search-profile .search-photo.user-photo-2x2,
.match-card .member-photo,
.mini-match .mini-photo {
  width:144px !important;
  height:144px !important;
  min-width:144px !important;
  min-height:144px !important;
  max-width:144px !important;
  max-height:144px !important;
  margin:12px auto 0;
  border-radius:12px;
  overflow:hidden;
  background:#eee;
  position:relative;
  background-position:center 22%;
}
.member-card .member-photo img,
.search-profile .search-photo img,
.match-card .member-photo img,
.mini-match .mini-photo img {
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 22% !important;
  display:block;
}

/* User's own photo strip: exactly five 2in x 2in boxes in one row. */
.dashboard-photo-row,
.profile-photo-editor-grid {
  display:grid !important;
  grid-template-columns:repeat(5, 192px) !important;
  grid-auto-rows:192px !important;
  gap:10px !important;
  width:max-content;
  min-width:100%;
  overflow-x:auto !important;
  padding:2px 2px 8px;
}
.dashboard-photo-box,
.profile-photo-slot {
  width:192px !important;
  height:192px !important;
  min-width:192px !important;
  min-height:192px !important;
  max-width:192px !important;
  max-height:192px !important;
  aspect-ratio:1 / 1;
  border-radius:10px;
  overflow:hidden;
  box-sizing:border-box;
}
.dashboard-photo-box img,
.profile-photo-slot img {
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 22% !important;
  display:block;
}
.dashboard-photo-box.empty,
.profile-photo-slot.empty {
  display:grid;
  place-items:center;
  background:#fffaf3;
  border:1px dashed #cbbeb7;
  color:#7a304d;
  text-align:center;
  cursor:pointer;
}
.dashboard-photo-box.empty.center-add,
.profile-photo-slot.empty.center-add {
  background:#f8efd9;
  border:2px dashed #d2ad57;
  color:#6f3048;
  font-weight:900;
}
.dashboard-photo-box.empty span,
.profile-photo-slot.empty span {
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  padding:12px;
  box-sizing:border-box;
}
.photo-size-note {
  display:block;
  margin-top:8px;
  color:#6f6669;
  font-size:11px;
}
@media(max-width:560px){
  .dashboard-photo-row,
  .profile-photo-editor-grid { grid-template-columns:repeat(5,192px) !important; }
  .search-profile .search-photo,
  .search-profile .search-photo.user-photo-2x2,
  .match-card .member-photo,
  .mini-match .mini-photo { width:144px !important; height:144px !important; }
}

/* Social contacts and daily free messaging */
.signup-social-box,.social-profile-card{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fbf8f5}.signup-social-box h3,.social-profile-card h3{font:700 22px "Playfair Display";margin:4px 0 8px}.signup-social-note{font-size:10px;color:var(--muted);margin-top:10px}.member-social-links{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 8px}.member-social-item{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#3c3435;text-decoration:none;font-size:11px;font-weight:700}.member-social-item b{font-weight:500;color:var(--muted)}.social-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#272627;color:#fff;font-weight:900;font-size:12px}.social-whatsapp{background:#25D366}.social-facebook{background:#1877F2}.social-instagram{background:#C13584}.social-x{background:#111}.message-quota{display:inline-block;margin-top:10px;padding:8px 11px;border-radius:999px;background:#f7efe8;color:#7a304d;font-size:11px;font-weight:800}.message-quota.limit{background:#f9e4e7;color:#a12c4e}.chat-form button:disabled{opacity:.5;cursor:not-allowed}

.member-message-box{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fbf8f5}.member-message-box-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.member-message-box textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:90px;border:1px solid #d8cec8;border-radius:10px;padding:11px;background:#fff;color:var(--ink);font:inherit}.member-message-box .register-btn{width:auto;margin-top:10px}.member-message-box .form-note{margin-top:8px}

.signup-social-permissions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}.signup-social-permissions .check{margin:0}

/* Account/session and social-contact refinements */
.ready-social-wrap{margin-top:22px;padding-top:18px;border-top:1px solid #eadfd9}.ready-social-wrap .member-social-links{margin-top:10px}.member-social-links{display:flex;flex-wrap:wrap;gap:10px}.member-social-item{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #eadfd9;border-radius:999px;background:#fff;color:#241f20;text-decoration:none;font-size:13px}.member-social-item:hover{border-color:#c58d9d;transform:translateY(-1px)}.social-icon{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff}.social-whatsapp{background:#25d366}.social-facebook{background:#1877f2}.social-instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045)}.social-x{background:#111}.ready-social-wrap small{display:block;margin-top:8px}.verifyWaiting .register-btn,.centered-panel .register-btn{cursor:pointer}

/* Date a Thai 2026 visual refresh — accessible contrast and premium editorial styling */
:root{--ink:#211b1f;--muted:#655c61;--cream:#f8f3ee;--rose:#c7476a;--plum:#5a2341;--gold:#d8b15d;--line:#ded3cd;--white:#fff;--green:#2e9b57;--navy:#171d2b;--navy2:#222a3a;--shadow:0 20px 55px rgba(36,27,30,.12)}
body{background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}h1,h2,h3,.hero-copy h1,.page-hero h1,.section-head h2,.results-head h2,.signup-intro h1,.member-profile-info h1,.member-profile-info h2{font-family:"Playfair Display",Georgia,serif;color:var(--ink)}
.site-header{background:linear-gradient(100deg,var(--navy),#252b3b);color:#f9f5ef}.main-nav{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}.main-nav a{color:#eee8e2}.main-nav a:hover,.main-nav a.active{background:#fff;color:var(--navy)}.login-link{color:#f5eee7}.header-signup{background:var(--gold);color:#1e1a19}.footer{background:#171b25;color:#f5eee7}.footer p,.footer-grid>div>a:not(.brand){color:#c8c1c0}.footer h4{color:#e6c875}.footer-grid>div>a:hover{color:#fff}
.field input,.field select,.field textarea,.filter-field input,.filter-field select,.member-message-box textarea{background:#fff!important;color:#211b1f!important;border-color:#d6cbc4!important}.field input::placeholder,.member-message-box textarea::placeholder{color:#7b7074!important}.field span,.check,.choice-group>label{color:#312a2d!important}.signup-card{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow)}.signup-card h2,.signup-card .field span,.signup-card .check,.signup-card .form-note,.signup-card .muted{color:var(--ink)!important}.signup-card .form-kicker{color:#8b5b16}.signup-card .form-note a{color:var(--plum)}.signup-social-box{background:#f7f1ec}.secure-pill{color:#6b4e16;border-color:#d9c8a2}.register-card{background:#fff;color:var(--ink)}.register-card h2,.register-card .field span,.register-card .check,.register-card .form-note{color:var(--ink)}.hero-copy{color:#fff}.hero-copy h1{color:#fff}.hero-copy p{color:#f4efeb}.hero-copy h1 span{color:#f3d47c}
.launch-gallery{padding:80px 0;background:#f1e8e0}.launch-gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.launch-gallery-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(40,25,30,.08)}.launch-gallery-card img{display:block;width:100%;height:270px;object-fit:cover}.launch-gallery-card>div{padding:14px 15px}.launch-gallery-card strong{display:block;font:700 18px/1.1 "Playfair Display",serif}.launch-gallery-card small{display:block;margin-top:5px;color:var(--muted);font-size:11px}
.admin-page{padding:55px 0 90px}.admin-login-card{max-width:520px;margin:30px auto}.admin-dashboard{display:block}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:25px 0}.admin-stat-grid>div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(35,25,25,.06)}.admin-stat-grid strong{display:block;font:700 32px "Playfair Display"}.admin-stat-grid span{color:var(--muted);font-size:12px}.admin-section{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;margin-top:20px;box-shadow:0 10px 30px rgba(35,25,25,.05)}.admin-section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:18px}.admin-section h2{margin:5px 0 0;font-size:28px}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:12px 10px;border-bottom:1px solid #eee5e0;text-align:left;font-size:12px;vertical-align:middle}.admin-table th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#766b70}.admin-table td small{display:block;color:var(--muted);margin-top:2px}.admin-action{border:1px solid #cdbeb7;background:#fff;border-radius:8px;padding:7px 10px;font-weight:800;color:#4c2638;cursor:pointer;margin:2px}.admin-action:hover{background:#f8eef2}.admin-action.danger{color:#a12d42;border-color:#e3b9c0}.admin-report,.admin-photo-review{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid #eee5e0}.admin-report:last-child,.admin-photo-review:last-child{border-bottom:0}.admin-report p{margin:5px 0;color:var(--muted)}.admin-report small{color:#8b7e83}.admin-photo-review img{width:90px;height:90px;object-fit:cover;border-radius:12px;background:#eee}.admin-photo-review>div:nth-child(2){flex:1}.admin-photo-review p{margin:4px 0;color:var(--muted)}
.legal-page{padding:70px 0 90px}.legal-card{max-width:900px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:22px;padding:36px;box-shadow:var(--shadow)}.legal-card h1{font-size:52px;margin:0 0 10px}.legal-card h2{font-size:25px;margin:30px 0 8px}.legal-card p,.legal-card li{color:#544b4f;line-height:1.75}.legal-card li{margin:6px 0}
@media(max-width:900px){.launch-gallery-grid{grid-template-columns:repeat(2,1fr)}.admin-stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.launch-gallery-grid{grid-template-columns:1fr}.admin-stat-grid{grid-template-columns:1fr}.admin-section-head{display:block}.admin-section-head .btn{margin-top:12px}.legal-card{padding:24px}.legal-card h1{font-size:38px}}
/* Fixed member-card portrait standard: 1.5in square (144px). */
.search-profile .search-photo,
.match-card .member-photo,
.member-grid .member-photo,
.mini-match .mini-photo{width:144px!important;height:144px!important;max-width:144px!important;min-width:144px!important;margin-left:auto;margin-right:auto;background-position:center 22%;}
.search-profile .search-profile-body{padding-top:12px}
/* User gallery standard: exactly five 2in × 2in squares. */
.dashboard-photo-row,.profile-photo-editor-grid{grid-template-columns:repeat(5,192px)!important;}
.dashboard-photo-box,.profile-photo-slot{width:192px!important;height:192px!important;min-width:192px!important;min-height:192px!important;max-width:192px!important;max-height:192px!important;flex:0 0 192px!important;}

.privacy-select{min-width:190px;border:1px solid #d6cbc4;border-radius:9px;padding:9px 11px;background:#fff;color:#211b1f!important}.small-favorite{border:0;border-radius:8px;padding:9px;background:#f4ede5;color:#9a7330;font-size:16px;cursor:pointer}.small-favorite.active{background:#f7e7b9;color:#7b5610}.notification-delete{width:32px;height:32px;border:1px solid #e6d9d3;border-radius:50%;background:#fff;color:#8b7e83;cursor:pointer;align-self:center}.notification-delete:hover{background:#f9eef1;color:#9d2f4a}.member-profile-actions .message-profile-btn{align-self:center}

/* Live inbox dashboard */
.dashboard-messages-section{margin-top:26px;background:#fff;border:1px solid #eadfd7;border-radius:24px;padding:24px;box-shadow:0 16px 45px rgba(50,35,25,.07)}
.dashboard-section-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.dashboard-section-intro h2{margin:.2rem 0 .35rem}.dashboard-section-intro p{margin:0;color:#746b66;max-width:760px}.live-pill{padding:8px 12px;border:1px solid #cfe8d5;border-radius:999px;background:#f3fbf5;font-weight:800;white-space:nowrap}.inbox-caption{margin-left:10px;color:#827872;font-size:12px;font-weight:500}.dashboard-messages-shell{min-height:650px;box-shadow:none}.dashboard-quota{margin-top:14px}.message-meta{font-variant-numeric:tabular-nums}.chat-message.mine .message-meta{color:#7c4c61}.chat-message.theirs .message-meta{color:#817772}
@media(max-width:800px){.dashboard-messages-section{padding:16px;border-radius:18px}.dashboard-section-intro{flex-direction:column}.dashboard-messages-shell{min-height:720px}}
.chat-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chat-status-legend{font-size:10px;color:#7a716d;white-space:nowrap}.chat-subtitle{display:block}

/* Signup step 1 completion controls */
.signup-card .register-btn:disabled{opacity:.65;cursor:wait;transform:none;box-shadow:none}
.signup-card .check{margin-top:12px}
.signup-card .check a{color:var(--plum);font-weight:700;text-decoration:underline}
.signup-card #signupMessage{min-height:16px}
/* Chat responsiveness and photo attachments */
.chat-form,.dt-chat-form{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;}
.chat-attach-btn{width:42px;height:42px;border:1px solid #d9cec6;border-radius:12px;background:#f7f4f1;color:#344e67;font-size:20px;cursor:pointer;display:grid;place-items:center;}
.chat-attach-btn:hover{background:#eaf2f8;border-color:#9ab4ca;}
.chat-image-preview{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:10px;background:#eef5fa;color:#25465f;font-size:12px;font-weight:700;}
.chat-image-preview[hidden]{display:none;}
.chat-image-preview button{border:0;border-radius:50%;width:26px;height:26px;background:#dbe8f1;color:#17364d;font-size:18px;cursor:pointer;}
.chat-image{display:block;width:auto;height:auto;max-width:min(100%,65vw);max-height:none;object-fit:contain;border-radius:12px;margin-top:6px;cursor:zoom-in;background:#fff}.chat-image.chat-image-scaled{max-width:min(288px,65vw);max-height:192px;width:auto;height:auto;object-fit:contain}.chat-image.chat-image-original{max-width:min(100%,65vw);max-height:288px;width:auto;height:auto;}
.chat-bubble:has(.chat-image){overflow:hidden;}
.chat-message-text{white-space:pre-wrap;overflow-wrap:anywhere;}
@media(max-width:600px){.chat-form,.dt-chat-form{grid-template-columns:38px minmax(0,1fr) auto;gap:7px;padding:10px}.chat-attach-btn{width:38px;height:40px}.chat-image.chat-image-scaled{max-width:min(288px,65vw);max-height:192px}.chat-image.chat-image-original{max-width:min(100%,65vw);max-height:288px}}



/* Layout correction: remove top whitespace and align content flush to sidebar */
html,body{margin-top:0!important;padding-top:0!important}
body:not(.date-thai-home){--dt-layout-gap:0px}
body:not(.date-thai-home) .site-header,
body:not(.date-thai-home) .dashboard-topbar{top:0!important;margin-top:0!important}
body:not(.date-thai-home) main,
body:not(.date-thai-home) .main-content,
body:not(.date-thai-home) .page-content,
body:not(.date-thai-home) .content,
body:not(.date-thai-home) .dashboard-content,
body:not(.date-thai-home) .dashboard-main,
body:not(.date-thai-home) .pink-world-main{margin-left:0!important;left:auto!important;transform:none!important}
body:not(.date-thai-home) .pink-world-sidebar{top:0!important}
body:not(.date-thai-home) .dashboard-modern{margin-top:0!important;padding-top:0!important}
body:not(.date-thai-home) .dashboard-topbar{margin-top:0!important}
body:not(.date-thai-home) .page-hero:first-child,
body:not(.date-thai-home) main>section:first-child{margin-top:0!important}
@media(max-width:800px){
 body:not(.date-thai-home){padding-left:0!important}
 body:not(.date-thai-home) main,body:not(.date-thai-home) .main-content,body:not(.date-thai-home) .page-content,body:not(.date-thai-home) .dashboard-content{margin-left:0!important}
}
/* Homepage: full-width scenic background, compact two-line headline */
body.date-thai-home{padding-left:0!important;margin:0!important;background:#fff7fa!important}
body.date-thai-home .hero-home{width:100%!important;min-height:560px!important;margin:0!important;background-size:cover!important;background-position:center 52%!important;background-repeat:no-repeat!important}
body.date-thai-home .hero-home .hero-overlay{display:block!important;background:linear-gradient(90deg,rgba(255,248,250,.12) 0%,rgba(255,248,250,.04) 58%,rgba(30,20,25,.08) 100%)!important}
body.date-thai-home .hero-home .hero-copy{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:26px 0!important;max-width:600px!important;margin:0!important}
body.date-thai-home .hero-home .hero-copy h1{font-size:clamp(2.2rem,4.4vw,4rem)!important;line-height:1.08!important;letter-spacing:-.025em!important;max-width:590px!important;color:#173a5b!important;text-wrap:balance}
body.date-thai-home .hero-home .hero-copy h1 span{display:inline!important}
body.date-thai-home .hero-home .hero-copy h1 span:last-child{display:block!important}
body.date-thai-home .hero-home .hero-copy p{font-size:1rem!important;max-width:460px!important}
body.date-thai-home .hero-home .hero-inner{width:min(1280px,92%)!important;min-height:560px!important;align-items:center!important}
body.date-thai-home .site-header{margin-top:0!important}
@media(max-width:640px){
 body.date-thai-home .hero-home,body.date-thai-home .hero-home .hero-inner{min-height:500px!important}
 body.date-thai-home .hero-home .hero-copy h1{font-size:clamp(2rem,9vw,3rem)!important}
}

