:root{--ink:#2b2230;--muted:#746a72;--paper:#fcfaf8;--cream:#f5efed;--sage:#eadde3;--green:#71445d;--gold:#b88a55;--white:#fff;--line:#e6ddda;--shadow:0 26px 70px rgba(65,42,56,.12)}
body{background:linear-gradient(180deg,#fcfaf8 0%,#faf7f5 100%);letter-spacing:-.006em;transition:background-color .3s,color .3s}
h1,h2,h3,.brand,.phone-top,.profile-photo,.detail-photo,.interest-avatar,.profile-avatar{font-family:"Cormorant Garamond",serif}
.topbar{height:82px;background:rgba(252,250,248,.88);border-bottom-color:rgba(82,55,70,.09);box-shadow:0 1px 0 rgba(255,255,255,.8)}
.brand{font-size:26px;letter-spacing:-.02em}.brand-mark{border-radius:12px;background:linear-gradient(145deg,#83526d,#5f344b);box-shadow:0 8px 20px rgba(88,48,70,.18);font-family:"Cormorant Garamond",serif;font-weight:700}
.brand-logo{display:block;width:40px;height:40px;filter:drop-shadow(0 7px 10px rgba(75,42,61,.16))}
.admin-portal-header .brand{color:var(--ink)}
.nav button,.sign-in-button{transition:color .2s,opacity .2s}.nav button:hover,.sign-in-button:hover{color:#9b607c}
.avatar{background:#efe4e8;color:var(--green);box-shadow:inset 0 0 0 1px rgba(113,68,93,.08);overflow:hidden;padding:0}.avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.hero{min-height:700px}.hero-copy h1{max-width:720px;font-weight:600;letter-spacing:-.045em}.hero-copy>p{max-width:600px}
.eyebrow{color:#9f7043;letter-spacing:.21em}
.button{min-height:48px;border-color:#ddd1d3;transition:transform .2s,box-shadow .2s,background-color .2s}.button:hover{box-shadow:0 10px 24px rgba(75,48,63,.1)}
.button.primary{background:linear-gradient(135deg,#784761,#61364e);border-color:#61364e;box-shadow:0 14px 30px rgba(96,53,76,.22)}.button.primary:hover{box-shadow:0 18px 34px rgba(96,53,76,.28)}
.button.quiet{background:rgba(255,255,255,.78);backdrop-filter:blur(10px)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(113,68,93,.22);outline-offset:3px}
.hero-visual{background:radial-gradient(circle at 50% 48%,#eadde3 0%,rgba(244,234,237,.72) 34%,transparent 70%)}
.arch-card{border:1px solid rgba(95,52,75,.08);box-shadow:0 35px 90px rgba(76,50,65,.15)}
.profile-photo,.card-photo,.detail-photo,.interest-avatar{background:linear-gradient(145deg,#d9c3c9,#937287)}
.floating-note{background:#352630}.note-two{background:#b88a55}.mini-badge{color:var(--green);box-shadow:0 10px 25px rgba(67,43,56,.14)}
.principles,.safety-section,.profile-header,.admin-metrics{background:linear-gradient(135deg,#30232d,#46303e)}
.principles p,.safety-copy>p,.profile-header p{color:#d8cad1}.safety-list{color:#f3eaf0}
.feature-sage{background:linear-gradient(145deg,#eee2e6,#e6d5dc)}.feature-cream{background:linear-gradient(145deg,#f4ece6,#eee1da)}.feature-copy p{color:#695e65}
.phone-preview{border-color:#342630;box-shadow:0 30px 60px rgba(69,43,58,.19)}
.choice,.match-card,.setting-card,.auth-card,.profile-form fieldset,.verification-explainer,.verification-form,.verification-status,.privacy-card,.family-invite-card,.family-members-card,.admin-panel,.audit-panel{box-shadow:0 8px 25px rgba(75,50,63,.035)}
.choice:hover,.choice.selected{border-color:#9b607c;background:#f1e5e9;box-shadow:0 8px 20px rgba(113,68,93,.07)}.choice.selected{outline:2px solid rgba(113,68,93,.12);outline-offset:1px}
.match-card:hover{border-color:#d3c1c8;box-shadow:0 24px 55px rgba(72,46,61,.13)}
.home-cta{background:linear-gradient(135deg,#ecdee3,#f3e9e5)}
.onboarding-shell,.auth-card,.editor-actions{box-shadow:0 28px 75px rgba(67,43,56,.11)}
.auth-card input:focus,.profile-form input:focus,.profile-form select:focus,.profile-form textarea:focus,.admin-login-card input:focus{border-color:#9b607c;box-shadow:0 0 0 4px rgba(113,68,93,.1)}
.tabs .active{border-color:#9b607c}.toggle.on,.bar i,.verification-icon{background:var(--green)}
.status-pill{background:#f0e5e9;color:#653d53}.status-verified{background:#e2ece6;color:#315a46}.status-rejected{background:#f6e3e1;color:#8b3e39}
.messages-shell,.admin-login-card{box-shadow:0 25px 70px rgba(64,41,54,.1)}.message-row.mine .message-bubble{background:linear-gradient(135deg,#784761,#61364e)}
.admin-portal-body{background:linear-gradient(145deg,#f6f0ee,#eee4e8)}.admin-portal-header{height:76px;background:rgba(255,255,255,.88);backdrop-filter:blur(16px)}
.member-table tbody tr{transition:background-color .18s}.member-table tbody tr:hover{background:#fcf7f8}.member-search input{outline:none}.member-search input:focus{border-color:#9b607c;box-shadow:0 0 0 4px rgba(113,68,93,.1)}
.site-footer{border-top:1px solid var(--line)}

/* Component Styles: Quick Chips, Prompts, Watermarks, Readiness Widget, Compatibility Gauge */
.quick-filter-bar{display:flex;gap:8px;overflow-x:auto;padding:8px 0 16px;scrollbar-width:none}
.quick-filter-bar::-webkit-scrollbar{display:none}
.filter-chip{white-space:nowrap;padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:var(--white);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:6px}
.filter-chip:hover,.filter-chip.active{background:var(--green);color:var(--white);border-color:var(--green);box-shadow:0 4px 12px rgba(113,68,93,.25)}

.prompt-card{background:linear-gradient(135deg,rgba(124,64,95,.05),rgba(184,138,85,.05));border:1px solid var(--line);border-radius:16px;padding:18px;margin-top:14px;position:relative}
.prompt-question{font-family:"Cormorant Garamond",serif;font-size:18px;font-weight:700;color:var(--green);margin-bottom:6px}
.prompt-answer{font-size:14px;line-height:1.6;color:var(--ink);font-style:italic}

.protected-photo-container{position:relative;overflow:hidden;user-select:none;-webkit-touch-callout:none}
.protected-photo-container img{pointer-events:none}
.photo-watermark{position:absolute;bottom:10px;right:10px;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);color:#fff;font-size:10px;font-weight:700;letter-spacing:.05em;padding:4px 10px;border-radius:999px;pointer-events:none;display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(255,255,255,.2)}

.readiness-card{background:var(--white);border:1px solid var(--line);border-radius:24px;padding:28px;max-width:640px;margin:24px auto;box-shadow:var(--shadow)}
.readiness-progress{height:6px;background:var(--line);border-radius:999px;margin-bottom:20px;overflow:hidden}
.readiness-progress-fill{height:100%;background:linear-gradient(90deg,var(--green),var(--gold));transition:width .3s ease}

.compat-radial{position:relative;width:120px;height:120px;margin:0 auto 16px}
.compat-radial svg{transform:rotate(-90deg);width:100%;height:100%}
.compat-radial circle{fill:none;stroke-width:8;stroke-linecap:round}
.compat-radial .bg{stroke:var(--line)}
.compat-radial .meter{stroke:var(--green);transition:stroke-dashoffset 1s ease}
.compat-score-num{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:"Cormorant Garamond",serif;font-size:32px;font-weight:700;color:var(--green)}

.compat-bar-item{margin-bottom:12px}
.compat-bar-label{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:4px}
.compat-bar-track{height:8px;background:var(--line);border-radius:999px;overflow:hidden}
.compat-bar-fill{height:100%;background:var(--green);border-radius:999px;transition:width .6s ease}

@media(max-width:850px){.hero{min-height:auto}.topbar{height:74px}}

