/* ══════════════════════════════════════════════════════════════════
   Datepedia — design system. Calm, professional, network-style.
   ══════════════════════════════════════════════════════════════════ */
:root{
  --bg:#F4F2EE; --card:#FFFFFF; --line:#E0DFDC; --line-2:#EBE9E6; --text:#1F2328; --text-2:#3D4247; --muted:#666B70;
  --brand:#0B5394; --brand-d:#083F72; --brand-l:#EAF2FB; --brand-ll:#F3F8FD;
  --rose:#C2185B; --rose-l:#FCE8F0; --green:#057642; --green-l:#E6F4EC; --amber:#915907; --amber-l:#FFF4DE; --red:#B42318; --red-l:#FDECEA;
  --fire:#E8590C; --earth:#2F9E44; --air:#1C7ED6; --water:#7048E8;
  --r:10px; --r-lg:14px; --shadow:0 0 0 1px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.06); --shadow-lg:0 4px 24px rgba(0,0,0,.12);
  --font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --top:56px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 var(--font);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3,h4{line-height:1.25;margin:0 0 .5em;color:var(--text);font-weight:600;letter-spacing:-.01em}
p{margin:0 0 1em}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
[hidden]{display:none!important}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 12px;z-index:999}.skip:focus{left:8px}
.wrap{max-width:1128px;margin:0 auto;padding:20px 16px}
.narrow{max-width:720px}.narrow-md{max-width:860px}
.muted{color:var(--muted)}.small{font-size:13px}.center{text-align:center}.mt{margin-top:24px}
.c-rose{color:var(--rose)}.c-green{color:var(--green)}
.h-sm{font-size:16px}.h-md{font-size:20px}.h-lg{font-size:26px}
.lead{font-size:17px;color:var(--text-2)}
.eyebrow{display:inline-block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--brand);margin-bottom:6px}
.only-mobile{display:none}
.hint{display:block;color:var(--muted);font-size:12.5px;margin-top:4px}
.hp{position:absolute!important;left:-5000px!important}

/* ── Cards & layout ─────────────────────────────────────────────── */
.card{background:var(--card);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:12px}
.pad{padding:16px 20px}.pad-lg{padding:24px 28px}
.stack>*+*{margin-top:14px}
.layout-3{display:grid;grid-template-columns:225px minmax(0,1fr) 300px;gap:20px;align-items:start}
.layout-2{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}
.layout-2r{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}
.col-left,.col-right{display:flex;flex-direction:column;gap:0}
.col-right .card,.col-left .card{margin-bottom:12px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px}
.row-end{display:flex;justify-content:flex-end;gap:8px}
.row-gap{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
.wrap-gap{flex-wrap:wrap}
.sticky-nav{position:sticky;top:calc(var(--top) + 16px)}

/* ── Buttons ────────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:999px;padding:8px 18px;font-weight:600;font-size:15px;cursor:pointer;
  text-decoration:none!important;line-height:1.3;transition:background .15s,box-shadow .15s,color .15s;white-space:nowrap}
.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-d)}
.btn-outline{background:transparent;color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.btn-outline:hover{background:var(--brand-ll);box-shadow:inset 0 0 0 2px var(--brand)}
.btn-ghost{background:transparent;color:var(--muted)}.btn-ghost:hover{background:rgba(0,0,0,.06);color:var(--text)}
.btn-light{background:rgba(255,255,255,.92);color:var(--text)}
.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{background:#912018}
.btn-liked{background:var(--rose-l);color:var(--rose);box-shadow:inset 0 0 0 1px #F2B8CF}
.btn-sm{padding:5px 12px;font-size:14px}.btn-lg{padding:12px 24px;font-size:16px}.btn-block{width:100%}
.btn:disabled{opacity:.6;cursor:default}
.link-btn{background:none;border:0;color:var(--brand);font-weight:600;cursor:pointer;padding:0;text-decoration:underline}
.round-btn{width:62px;height:62px;border-radius:50%;border:0;font-size:24px;cursor:pointer;box-shadow:var(--shadow-lg);transition:transform .12s}
.round-btn:hover{transform:scale(1.07)}.round-btn.pass{background:#fff;color:var(--muted)}.round-btn.like{background:var(--rose);color:#fff}

/* ── Top bar ────────────────────────────────────────────────────── */
.topbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.topbar-in{max-width:1128px;margin:0 auto;padding:0 16px;height:var(--top);display:flex;align-items:center;gap:14px}
.brand{display:flex;align-items:center;color:var(--text)!important;text-decoration:none!important;flex:none}
.logo{display:block;color:#1A2B3C}
.topsearch{position:relative;flex:0 1 280px}
.topsearch i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:13px}
.topsearch input,.topsearch input[type=search]{width:100%;height:36px;border:0;border-radius:6px;background:#EEF3F8;padding:0 12px 0 34px}
.mainnav{margin-left:auto;display:flex;align-items:stretch;height:100%}
.nv{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:72px;padding:0 6px;color:var(--muted)!important;font-size:12px;
  text-decoration:none!important;border-bottom:2px solid transparent;cursor:pointer;list-style:none}
.nv i{font-size:19px;margin-bottom:2px}.nv:hover{color:var(--text)!important}
.nv.active{color:var(--text)!important;border-bottom-color:var(--text)}
.nv .avatar{margin-bottom:2px}
summary.nv::-webkit-details-marker{display:none}
.badge{position:absolute;top:6px;left:calc(50% + 4px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--rose);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}
.inbox-list .badge{position:static}
details>summary{list-style:none;cursor:pointer}details>summary::-webkit-details-marker{display:none}
.me-menu,.lang-menu,.more-menu{position:relative}
.dropdown{position:absolute;right:0;top:calc(100% + 4px);width:280px;background:#fff;border-radius:var(--r);box-shadow:var(--shadow-lg);padding:8px;z-index:60;display:flex;flex-direction:column}
.dropdown a,.dropdown button{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:6px;color:var(--text);background:none;border:0;text-align:left;cursor:pointer;font-size:14px;text-decoration:none}
.dropdown a:hover,.dropdown button:hover{background:#F3F2EF}
.dropdown i{width:18px;text-align:center;color:var(--muted)}
.dropdown hr{border:0;border-top:1px solid var(--line);margin:6px 0}
.dropdown-sm{width:160px}.dropdown-right{right:0}
.dd-head{align-items:flex-start!important}.dd-head span{display:flex;flex-direction:column}.dd-head small{color:var(--muted)}
.guestnav{margin-left:auto;display:flex;align-items:center;gap:6px}
.gl{padding:8px 12px;color:var(--text-2)!important;font-weight:500;border-radius:6px;text-decoration:none!important;font-size:14.5px}
.gl:hover,.gl.active{background:#F3F2EF}
.tabbar{display:none}
.notice-bar,.sysbar{background:var(--amber-l);color:var(--amber);text-align:center;padding:8px 16px;font-size:14px}
.sysbar{background:var(--red-l);color:var(--red)}
.inline{display:inline}

/* ── Toasts & alerts ────────────────────────────────────────────── */
#toasts{position:fixed;top:68px;left:50%;transform:translateX(-50%);z-index:200;display:flex;flex-direction:column;gap:8px;width:min(480px,calc(100% - 32px))}
.toast{background:#1F2328;color:#fff;padding:12px 16px;border-radius:8px;box-shadow:var(--shadow-lg);opacity:0;transform:translateY(-8px);transition:all .25s}
.toast.show{opacity:1;transform:none}.toast-err{background:var(--red)}
.alert{padding:12px 14px;border-radius:8px;margin-bottom:14px;font-size:14.5px}
.alert-err{background:var(--red-l);color:var(--red)}.alert-ok{background:var(--green-l);color:var(--green)}.alert-info{background:var(--brand-l);color:var(--brand-d)}

/* ── Forms ──────────────────────────────────────────────────────── */
.fld{display:flex;flex-direction:column;gap:5px;font-size:14px;margin:0}
.fld>span:first-child{font-weight:600;color:var(--text-2)}
input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date],input[type=time],input:not([type]),select,textarea{
  width:100%;border:1px solid #9A9EA2;border-radius:6px;padding:9px 11px;background:#fff;font-size:15px;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}
textarea{resize:vertical;min-height:44px}
.check{display:flex;gap:9px;align-items:flex-start;font-size:14.5px;cursor:pointer;margin:6px 0}
.check input{margin-top:3px;width:17px;height:17px;accent-color:var(--brand);flex:none}
.pw{position:relative;display:block}.pw input{padding-right:42px}
.pw-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--muted);padding:8px;cursor:pointer}
.chips-field{border:0;padding:0;margin:0}.chips-field legend{font-weight:600;font-size:14px;color:var(--text-2);margin-bottom:8px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;padding:6px 13px;border-radius:999px;border:1px solid #9A9EA2;font-size:14px;cursor:pointer;background:#fff;user-select:none;color:var(--text-2)}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip.on{background:var(--brand);border-color:var(--brand);color:#fff}
.chip:hover{box-shadow:inset 0 0 0 1px var(--text)}
button.chip{font-size:13.5px;text-align:left}
.radio-cards{display:flex;flex-wrap:wrap;gap:8px}
.rcard{position:relative;display:flex;align-items:center;padding:10px 14px;border:1px solid #C7C9CB;border-radius:8px;cursor:pointer;font-size:14.5px;background:#fff;flex:1 1 160px}
.rcard input{position:absolute;opacity:0}
.rcard.on{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--brand-ll);color:var(--brand-d);font-weight:600}
.date3{display:grid;grid-template-columns:1fr 1.6fr 1.2fr;gap:8px}
.loc-field{position:relative}
.loc-input{position:relative;display:flex;align-items:center}
.loc-input>i{position:absolute;left:12px;color:var(--muted)}
.loc-input input{padding-left:34px;padding-right:44px}
.loc-gps{position:absolute;right:3px}
.loc-results{position:absolute;left:0;right:0;top:100%;margin:4px 0 0;padding:6px;list-style:none;background:#fff;border-radius:8px;box-shadow:var(--shadow-lg);z-index:30;max-height:280px;overflow:auto}
.loc-results li{padding:9px 10px;border-radius:6px;cursor:pointer;font-size:14px}
.loc-results li:hover,.loc-results li.on{background:var(--brand-l)}
.or{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px;margin:14px 0}
.or::before,.or::after{content:"";flex:1;border-top:1px solid var(--line)}
.savebar{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;padding:12px 0;background:linear-gradient(transparent,var(--bg) 30%)}
.prompt-edit{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px}

/* ── Auth & onboarding ──────────────────────────────────────────── */
.auth-wrap{max-width:1000px;margin:0 auto;padding:32px 16px 48px}
.auth-split{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.auth-pitch h1{font:600 38px/1.15 var(--serif);color:#1A2B3C;letter-spacing:-.02em}
.auth-card{padding:28px}.auth-card h1,.auth-card h2{font-size:26px}
.narrow-card{max-width:420px;margin:0 auto}
.ticks{list-style:none;padding:0;margin:0 0 1em}.ticks li{display:flex;gap:10px;margin:8px 0;align-items:baseline}.ticks i{color:var(--green)}
.stepper{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 16px;counter-reset:s}
.stepper li{flex:1;display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--muted)}
.stepper li a{display:flex;flex-direction:column;gap:6px;color:inherit;text-decoration:none}
.stepper b{display:block;height:4px;border-radius:2px;background:#D9D7D3;font-size:0}
.stepper li.done b{background:var(--brand)}.stepper li.on b{background:var(--brand)}.stepper li.on{color:var(--text);font-weight:600}

/* ── Home ───────────────────────────────────────────────────────── */
.home main{background:#fff}
.hero{background:#fff}
.hero-in{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-top:40px;padding-bottom:40px}
.hero h1{font:600 52px/1.08 var(--serif);color:#1A2B3C;letter-spacing:-.025em;margin-bottom:16px}
.hero h1 span{display:block;color:var(--brand)}
.hero-join{padding:20px;margin-top:20px;max-width:520px;box-shadow:0 0 0 1px var(--line)}
.hero-join .fld{margin-bottom:10px}
.hero-stats{margin-top:14px;color:var(--muted);font-size:14px}
.hero-svg{width:100%;max-width:520px;margin:0 auto}
.explore{padding-top:36px;padding-bottom:36px}
.explore h2{font:600 28px var(--serif);color:#1A2B3C}
.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.pill{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:999px;border:1px solid #8C8C8C;color:var(--text-2)!important;font-weight:500;text-decoration:none!important;font-size:14.5px;background:#fff}
.pill:hover{background:#F3F2EF;box-shadow:inset 0 0 0 1px #555}
.pill i{color:var(--brand)}.pill-more{border-color:var(--brand);color:var(--brand)!important}
.pill-row.sm .pill{padding:5px 11px;font-size:13px}
.city-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #8C8C8C;border-radius:999px;padding:4px 4px 4px 16px;max-width:560px;margin:12px 0}
.city-search i{color:var(--muted)}.city-search input{border:0!important;box-shadow:none!important;padding:8px 4px;flex:1;background:transparent}
.city-search.big{max-width:none;margin-bottom:16px}
.band{background:var(--bg);padding:48px 0}.band-white{background:#fff}
.band h2{font:600 32px var(--serif);color:#1A2B3C}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}
.feature{padding:22px}.feature i{font-size:22px;color:var(--brand);background:var(--brand-l);width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.feature h3{font-size:17px}.feature p{color:var(--muted);margin:0;font-size:14.5px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-top:48px;padding-bottom:48px}
.split h2{font:600 32px var(--serif);color:#1A2B3C}
.sign-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.sign-grid.sm{grid-template-columns:repeat(3,1fr);gap:6px}.sign-grid.lg{grid-template-columns:repeat(6,1fr)}
.sign-tile{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 6px;border-radius:var(--r);background:#fff;box-shadow:var(--shadow);color:var(--text)!important;text-decoration:none!important;font-weight:600;font-size:14px;text-align:center}
.sign-tile:hover{box-shadow:0 0 0 2px var(--brand)}.sign-tile.on{box-shadow:0 0 0 2px var(--brand)}
.sign-tile small{font-weight:400;color:var(--muted);font-size:11.5px}
.sign-grid.sm .sign-tile{padding:8px 4px;font-size:12px}
.glyph{font-size:26px;line-height:1.1;font-family:"Segoe UI Symbol","Apple Symbols","Noto Sans Symbols 2","DejaVu Sans",sans-serif}
.el-fire .glyph{color:var(--fire)}.el-earth .glyph{color:var(--earth)}.el-air .glyph{color:var(--air)}.el-water .glyph{color:var(--water)}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}
.article-card{display:block;padding:18px 20px;color:var(--text)!important;text-decoration:none!important;transition:box-shadow .15s}
.article-card:hover{box-shadow:0 0 0 1px var(--brand),var(--shadow)}
.article-card h3{font:600 18px/1.3 var(--serif);margin-bottom:8px}.article-card p{color:var(--muted);font-size:14px;margin:0}
.how-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.how-steps li{text-align:center;padding:12px}
.how-steps b{display:inline-flex;width:42px;height:42px;border-radius:50%;background:var(--brand);color:#fff;align-items:center;justify-content:center;font-size:18px;margin-bottom:10px}
.how h2{font:600 32px var(--serif)}
.cta-box{padding:28px}.cta-box h2{font:600 24px var(--serif)}

/* ── FAQ ────────────────────────────────────────────────────────── */
.faq{background:#fff;border-radius:var(--r);box-shadow:var(--shadow);padding:20px 24px;margin-bottom:12px}
.faq h2{font-size:20px}
.faq details{border-top:1px solid var(--line);padding:12px 0}
.faq summary{font-weight:600;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";font-size:20px;line-height:1;color:var(--muted)}
.faq details[open] summary::after{content:"–"}
.faq details>div{margin-top:8px;color:var(--text-2)}.faq details>div p:last-child{margin:0}

/* ── Feed ───────────────────────────────────────────────────────── */
.me-card{overflow:hidden;text-align:center;padding-bottom:14px}
.me-cover{height:56px;background:linear-gradient(120deg,#0B5394,#3A7BC8 60%,#C2185B);background-size:cover;background-position:center}
.me-avatar{display:inline-block;margin-top:-36px;border:2px solid #fff;border-radius:50%;background:#fff}
.me-card h2{font-size:16px;margin:8px 12px 2px}.me-card h2 a{color:var(--text)}
.me-card>p{padding:0 14px}
.me-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:12px 0;text-align:left}
.me-stats a{display:flex;justify-content:space-between;padding:7px 14px;font-size:12.5px;color:var(--muted);text-decoration:none}
.me-stats a:hover{background:#F3F2EF}.me-stats b{color:var(--brand)}
.completeness{padding:0 14px;text-align:left}
.meter{height:6px;border-radius:3px;background:#E8E6E3;overflow:hidden;margin-top:6px}
.meter span{display:block;height:100%;background:var(--green);border-radius:3px}
.todo{list-style:none;padding:0;margin:0}.todo a{display:flex;gap:8px;align-items:center;padding:6px 0;font-size:14px;color:var(--text-2)}
.todo small{margin-left:auto;color:var(--green);font-weight:600}
.avatar-strip{display:flex;gap:14px;overflow-x:auto;padding:4px 0}
.avatar-strip a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12.5px;color:var(--text-2);min-width:68px}
.dot-live{display:inline-block;width:9px;height:9px;border-radius:50%;background:#2DB55D;box-shadow:0 0 0 3px #DDF5E5;margin-right:4px;vertical-align:middle}
.link-list{list-style:none;padding:0;margin:0}.link-list li{padding:6px 0;border-bottom:1px solid var(--line-2);font-size:14px}.link-list li:last-child{border:0}
.link-list small{color:var(--muted)}
.term-of-day{margin-top:12px;padding:12px;background:var(--brand-ll);border-radius:8px}
.term-of-day small{display:block;color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em}
.big3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}
.big3 a{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:8px;background:#F7F6F4;color:var(--text);text-decoration:none;font-size:12.5px;text-align:center}
.big3 small{color:var(--muted);font-size:11px}
.big3.big{gap:12px}.big3.big a{padding:16px 8px;font-size:15px;margin:0}.big3.big em{font-style:normal;color:var(--muted);font-size:12px}

/* ── Avatars & member cards ─────────────────────────────────────── */
.avatar{border-radius:50%;object-fit:cover;flex:none;background:#E9E5DF}
.avatar-ph{display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:600;background:hsl(var(--hue,210) 45% 46%)}
.avatar-ph.sys{background:var(--rose);width:48px;height:48px}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-top:12px}
.pcard{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:box-shadow .15s}
.pcard:hover{box-shadow:var(--shadow-lg)}
.pcard-photo{position:relative;display:block;aspect-ratio:1/1;background:#EEE}
.pcard-photo img,.pcard-photo .avatar{width:100%;height:100%;object-fit:cover;border-radius:0}
.pcard-photo .avatar-ph{font-size:56px!important}
.pcard-compat{position:absolute;right:8px;bottom:8px;background:rgba(255,255,255,.95);color:var(--brand-d);font-weight:700;font-size:12.5px;padding:3px 8px;border-radius:999px;box-shadow:var(--shadow)}
.dot-online{position:absolute;right:8px;top:8px;width:12px;height:12px;border-radius:50%;background:#2DB55D;border:2px solid #fff}
.av-wrap{position:relative;display:inline-block}.av-wrap .dot-online{right:0;top:auto;bottom:2px}
.pcard-body{padding:10px 12px 12px;display:flex;flex-direction:column;flex:1}
.pcard-name{font-size:15.5px;margin:0 0 2px}.pcard-name a{color:var(--text)}.pcard-name .age{font-weight:400}
.pcard-headline{font-size:13px;color:var(--text-2);margin:0 0 4px;line-height:1.35}
.pcard-meta{font-size:12.5px;color:var(--muted);margin:0 0 10px}
.pcard-actions{display:flex;gap:6px;margin-top:auto}.pcard-actions .btn:first-child{flex:1}
.verified{color:#0A66C2;font-size:.9em}
.empty-state{text-align:center;padding:36px 20px;color:var(--muted)}
.empty-state>i{font-size:34px;color:#B8B4AE;margin-bottom:10px}
.empty-state h1,.empty-state h2,.empty-state h3{color:var(--text)}
.empty-state.small{padding:20px}

/* ── Discover ───────────────────────────────────────────────────── */
.filters{padding:16px;position:sticky;top:calc(var(--top) + 16px);max-height:calc(100vh - var(--top) - 32px);overflow:auto}
.filters form>*{margin-bottom:12px}
.fgroup-static{display:block;border:0;padding:0}
.fgroup-static legend,.flabel{display:block;font-weight:600;font-size:13.5px;margin-bottom:6px;color:var(--text-2)}
.fgroup{border-top:1px solid var(--line);padding-top:10px}
.fgroup summary{font-weight:600;font-size:14px;display:flex;justify-content:space-between;align-items:center}
.fgroup summary::after{content:"\f078";font:900 11px "Font Awesome 6 Free";color:var(--muted)}
.fgroup[open] summary::after{content:"\f077"}
.fopts{margin-top:6px;max-height:220px;overflow:auto}
.fcount{background:var(--brand);color:#fff;border-radius:999px;font-size:11px;padding:1px 7px;margin-left:auto;margin-right:8px}
.range2{display:flex;align-items:center;gap:8px}.range2 input{width:80px}
.seg{display:flex;gap:4px;flex-wrap:wrap}
.seg a{padding:5px 12px;border-radius:999px;font-size:13.5px;color:var(--text-2);text-decoration:none;border:1px solid var(--line)}
.seg a.on{background:var(--green);color:#fff;border-color:var(--green)}
.pager{display:flex;justify-content:center;align-items:center;gap:16px;margin:20px 0 4px;font-size:14px}

/* ── Daily picks ────────────────────────────────────────────────── */
.deck{position:relative}
.deck-card{overflow:hidden;max-width:520px;margin:12px auto}
.deck-card.out-left{animation:outL .32s forwards}.deck-card.out-right{animation:outR .32s forwards}
@keyframes outL{to{transform:translateX(-120%) rotate(-8deg);opacity:0}}@keyframes outR{to{transform:translateX(120%) rotate(8deg);opacity:0}}
.deck-photos{position:relative;aspect-ratio:4/5;background:#222}
.deck-photos img{width:100%;height:100%;object-fit:cover}
.gal-prev,.gal-next{position:absolute;top:0;bottom:0;width:40%;background:none;border:0;cursor:pointer}.gal-prev{left:0}.gal-next{right:0}
.gal-dots{position:absolute;top:8px;left:10px;right:10px;display:flex;gap:4px}
.gal-dots span{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.45)}.gal-dots span.on{background:#fff}
.compat-badge{position:absolute;left:12px;bottom:12px;background:#fff;color:var(--brand-d);font-weight:700;padding:5px 12px;border-radius:999px;box-shadow:var(--shadow)}
.deck-body{padding:16px 20px}.deck-body h2{font-size:22px;margin-bottom:2px}.deck-body h2 a{color:var(--text)}
.headline{font-weight:500;color:var(--text-2)}
.why{list-style:none;padding:0;margin:8px 0;font-size:14px}.why li{display:flex;gap:8px;margin:4px 0;align-items:baseline}.why i{color:var(--green);font-size:12px}
.deck-actions{display:flex;justify-content:center;gap:28px;padding:4px 0 20px}

/* ── Profile ────────────────────────────────────────────────────── */
.profile-top{overflow:hidden}
.cover{position:relative;height:200px;background:linear-gradient(120deg,#0B5394,#3A7BC8 55%,#C2185B);background-size:cover;background-position:center}
.cover-edit{position:absolute;right:14px;top:14px;cursor:pointer}
.pt-body{position:relative;padding:0 24px 20px}
.pt-avatar{margin-top:-96px;width:160px;height:160px;border-radius:50%;border:4px solid #fff;background:#fff;overflow:hidden}
.pt-avatar img,.pt-avatar .avatar{width:100%!important;height:100%!important;object-fit:cover}
.pt-actions{position:absolute;right:24px;top:16px;display:flex;gap:8px;align-items:center}
.pt-name{font-size:26px;margin:12px 0 2px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pt-name .age{font-weight:400;margin-left:-8px}
.sign-chip{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--brand-l);font-size:17px;text-decoration:none!important}
.pt-headline{font-size:16.5px;color:var(--text-2);margin:0 0 6px}
.pt-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px;color:var(--muted);margin:0}
.pt-meta i{font-size:12px}
.online-now{color:#1B8A42}.online-now i{font-size:8px;vertical-align:middle}
.online-today i,.online-week i{font-size:8px;color:#9AA0A6;vertical-align:middle}
.tag-rose{color:var(--rose);font-weight:600}
.notice-inline{margin:12px 0 0;padding:10px 12px;background:var(--brand-ll);border-radius:8px;font-size:14px}
.section h2{display:flex;justify-content:space-between;align-items:center}
.edit-link{color:var(--muted);font-size:15px}
.prose{font-size:15.5px;color:var(--text-2)}.prose p{margin:0 0 1em}
.goal-line{margin-bottom:8px}.goal-line i{color:var(--brand)}
.prompts{display:grid;gap:0}
.prompt h3{font:600 14px var(--font);color:var(--muted);margin-bottom:6px}
.prompt p{font:500 19px/1.4 var(--serif);color:var(--text);margin:0}
.exp{display:flex;gap:14px;padding:10px 0}.exp+.exp{border-top:1px solid var(--line-2)}
.exp-ico{width:48px;height:48px;border-radius:8px;background:#EEF3F8;color:var(--brand);display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin:0}
.facts div{display:flex;flex-direction:column}.facts dt{font-size:12.5px;color:var(--muted)}.facts dt i{width:16px;color:var(--brand)}.facts dd{margin:0;font-weight:500}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.tag{padding:4px 12px;border-radius:999px;background:#F3F2EF;font-size:13.5px;color:var(--text-2)}
.tag-shared{background:var(--green-l);color:var(--green);font-weight:600}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.gallery img{border-radius:8px;aspect-ratio:1/1;object-fit:cover;width:100%}
.astro-row{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:center}
.placements{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.placement{display:flex;flex-direction:column;padding:10px;border-radius:8px;background:#F7F6F4;color:var(--text);text-decoration:none;font-size:14px}
.placement small{color:var(--muted);font-size:11.5px}.placement .glyph{font-size:18px;color:var(--brand)}
.wheel-sm svg{max-width:300px;margin:auto}
.compat-card{text-align:center}
.ring{--p:50;width:120px;height:120px;border-radius:50%;margin:8px auto 12px;display:grid;place-items:center;
  background:conic-gradient(var(--brand) calc(var(--p)*1%),#E8EEF5 0)}
.ring span{width:94px;height:94px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:26px;font-weight:700;color:var(--brand-d)}
.ring.big{width:132px;height:132px}.ring.big span{width:104px;height:104px;font-size:30px}
.compat-card .why{text-align:left}
.people-list{list-style:none;padding:0;margin:0}
.people-list li{padding:8px 0;border-bottom:1px solid var(--line-2)}.people-list li:last-child{border:0}
.people-list a{display:flex;gap:10px;align-items:center;color:var(--text);text-decoration:none}
.people-list a span{display:flex;flex-direction:column;min-width:0}.people-list small{color:var(--muted);font-size:12.5px}
.people-list.wide li{display:flex;justify-content:space-between;align-items:center}.pl-person{display:flex;gap:10px;align-items:center}
.dialog{border:0;border-radius:var(--r-lg);padding:24px;width:min(460px,calc(100% - 32px));box-shadow:var(--shadow-lg)}
.dialog::backdrop{background:rgba(0,0,0,.45)}

/* ── Edit profile / photos / settings ───────────────────────────── */
.side-links{display:flex;flex-direction:column;margin-bottom:14px}
.side-links a{padding:7px 10px;border-radius:6px;color:var(--text-2);font-size:14.5px;text-decoration:none}
.side-links a:hover{background:#F3F2EF}
.ph-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ph-tile,.ph-add{position:relative;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:#F1EFEC}
.ph-tile img{width:100%;height:100%;object-fit:cover}
.ph-tile.main{box-shadow:0 0 0 3px var(--brand)}
.ph-main{position:absolute;left:8px;top:8px;background:var(--brand);color:#fff;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px}
.ph-tools{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:flex-end;gap:4px;padding:8px;background:linear-gradient(transparent,rgba(0,0,0,.55))}
.ph-tools button{width:32px;height:32px;border-radius:50%;border:0;background:rgba(255,255,255,.92);cursor:pointer;color:var(--text)}
.ph-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px dashed #B9B5AF;color:var(--muted);cursor:pointer;font-weight:600;background:#FAF9F7}
.ph-add i{font-size:26px}.ph-add:hover{border-color:var(--brand);color:var(--brand)}
.ph-add.busy{opacity:.7;pointer-events:none}
.ph-progress{position:absolute;left:12px;right:12px;bottom:12px;height:5px;background:#E1DED9;border-radius:3px;overflow:hidden}.ph-progress span{display:block;height:100%;width:0;background:var(--brand);transition:width .2s}
.tips-box{background:#F7F6F4;border-radius:8px;padding:14px 18px}.tips-box ul{margin:0 0 8px;padding-left:20px}
.verify-pose{display:flex;gap:14px;align-items:center;padding:14px;border-radius:10px;background:var(--brand-l)}
.pose-ico{width:52px;height:52px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;flex:none}
.verify-pose small{display:block;color:var(--muted)}.verify-pose b{font-size:17px}
.danger-zone{border:1px solid #F3C7C2;border-radius:8px;padding:12px 14px}.danger-zone summary{color:var(--red);font-weight:600}
.lang-list{list-style:none;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}
.lang-list a{padding:5px 12px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;color:var(--text-2)}.lang-list a.on{background:var(--brand);color:#fff;border-color:var(--brand)}

/* ── Connections & notifications ────────────────────────────────── */
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:8px 0 14px;overflow-x:auto}
.tabs a{padding:10px 14px;color:var(--muted);font-weight:600;font-size:14.5px;border-bottom:2px solid transparent;white-space:nowrap;text-decoration:none}
.tabs a.on{color:var(--green);border-bottom-color:var(--green)}.tabs a b{font-weight:600;color:var(--muted);font-size:12.5px}
.notif-list{list-style:none;padding:0;margin:0}
.notif-list li a{display:flex;gap:12px;align-items:center;padding:12px 20px;border-top:1px solid var(--line-2);color:var(--text);text-decoration:none}
.notif-list li.unread a{background:#EEF4FB}.notif-list li a:hover{background:#F3F2EF}
.n-text{display:flex;flex-direction:column;font-size:14.5px}.n-text small{color:var(--muted)}

/* ── Messaging ──────────────────────────────────────────────────── */
.messages-page .wrap{padding-top:16px}
.inbox{display:grid;grid-template-columns:340px 1fr;height:calc(100vh - var(--top) - 60px);min-height:480px;overflow:hidden}
.inbox-list{border-right:1px solid var(--line);overflow-y:auto}
.inbox-head{padding:12px 16px;border-bottom:1px solid var(--line)}
.inbox-list ul{list-style:none;margin:0;padding:0}
.inbox-list li a{display:flex;gap:10px;align-items:center;padding:12px 14px;color:var(--text);text-decoration:none;border-left:3px solid transparent}
.inbox-list li a:hover{background:#F3F2EF}.inbox-list li.on a{background:#EEF4FB;border-left-color:var(--green)}
.inbox-list li.unread b{font-weight:700}.inbox-list li.unread small{color:var(--text);font-weight:600}
.ib-text{flex:1;min-width:0;display:flex;flex-direction:column}
.ib-text small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}
.ib-text time{font-size:12px;color:var(--muted)}
.thread{display:flex;flex-direction:column;min-width:0}
.thread-head{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line)}
.th-person{display:flex;gap:10px;align-items:center;color:var(--text);text-decoration:none;flex:1;min-width:0}
.th-person span{display:flex;flex-direction:column;min-width:0}.th-person small{color:var(--muted);font-size:12.5px}
.thread-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:4px;background:#FAFAF9}
.thread-intro{text-align:center;margin:auto;max-width:440px;display:flex;flex-direction:column;align-items:center}
.icebreakers{display:flex;flex-direction:column;gap:6px;width:100%}
.day-sep{text-align:center;margin:12px 0 6px}.day-sep span{font-size:12px;color:var(--muted);background:#fff;padding:2px 10px;border-radius:999px;border:1px solid var(--line)}
.msg{display:flex;flex-direction:column;max-width:75%}.msg.mine{align-self:flex-end;align-items:flex-end}.msg.theirs{align-self:flex-start}
.bubble{padding:9px 13px;border-radius:16px;font-size:15px;line-height:1.45;word-wrap:break-word;overflow-wrap:anywhere}
.msg.mine .bubble{background:var(--brand);color:#fff;border-bottom-right-radius:4px}.msg.mine .bubble a{color:#fff;text-decoration:underline}
.msg.theirs .bubble{background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.msg time{font-size:11px;color:var(--muted);margin:2px 4px 6px}
.composer{display:flex;gap:8px;align-items:flex-end;padding:10px 12px;border-top:1px solid var(--line)}
.composer textarea{border-radius:18px;max-height:160px;padding:9px 14px}
.composer .btn{width:42px;height:42px;padding:0;flex:none}
.thread-blocked{padding:14px;text-align:center;color:var(--muted);border-top:1px solid var(--line);font-size:14px}
.safety-note{font-size:11.5px;color:var(--muted);text-align:center;margin:0;padding:0 10px 8px}

/* ── Astrology ──────────────────────────────────────────────────── */
.chart-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;margin-bottom:12px}
.chart-wheel{width:100%;height:auto;max-width:520px;display:block;margin:auto}
.cw-ring{fill:none;stroke:#C9CED6;stroke-width:1.2}.cw-inner{fill:#FBFBFD;stroke:#D7DBE1}
.cw-tick{stroke:#C9CED6}.cw-deg{stroke:#D0D4DA}.cw-house{stroke:#C9CED6;stroke-dasharray:3 3}.cw-axis{stroke:#5B6470;stroke-width:1.6}
.cw-sign{font-size:20px;font-family:"Segoe UI Symbol","Apple Symbols","Noto Sans Symbols 2","DejaVu Sans",sans-serif}
.cw-hnum{font-size:10px;fill:#8A9099}
.cw-planet{font-size:17px;fill:#1F2328;font-family:"Segoe UI Symbol","Apple Symbols","Noto Sans Symbols 2","DejaVu Sans",sans-serif}
.cw-lead{stroke:#AEB4BC;stroke-width:.8}.cw-aspect{stroke-width:1;opacity:.55}.cw-aspect.hard{stroke-dasharray:4 3}
.cw-ac{font-size:11px;font-weight:700;fill:#5B6470}
.elements{display:flex;flex-direction:column;gap:8px}
.el-row{display:grid;grid-template-columns:70px 1fr 42px;gap:8px;align-items:center;font-size:14px}
.el-row .meter{margin:0}.el-row b{text-align:right}
.el-fire .meter span{background:var(--fire)}.el-earth .meter span{background:var(--earth)}.el-air .meter span{background:var(--air)}.el-water .meter span{background:var(--water)}
.readings{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.reading{display:flex;gap:12px}.reading .glyph{font-size:24px;color:var(--brand);width:30px;flex:none;text-align:center}
.reading h3{font-size:15.5px;margin:0 0 4px}.reading h3 small{color:var(--muted);font-weight:400}.reading p{margin:0;font-size:14.5px;color:var(--text-2)}
.table-wrap{overflow-x:auto}
.tbl{width:100%;border-collapse:collapse;font-size:14.5px}
.tbl th,.tbl td{padding:9px 10px;border-bottom:1px solid var(--line-2);text-align:left;vertical-align:top}
.tbl thead th{font-size:12.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.tbl.compare td.good{color:var(--green);font-weight:500}.tbl.compare tbody th{font-weight:600;width:28%}
.retro{color:var(--rose);font-weight:700}
.aspects{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px}
.aspects li{padding:7px 10px;border-radius:6px;background:#F7F6F4;font-size:14px}
.aspects li small{color:var(--muted)}
.asp-trine,.asp-sextile{border-left:3px solid var(--air)}.asp-square,.asp-opposition{border-left:3px solid var(--rose)}.asp-conjunction{border-left:3px solid #868E96}
.aspects.big{grid-template-columns:1fr}.aspects.big li{display:flex;flex-direction:column;padding:10px 14px}
.ai-report .report-body h3{font:600 18px var(--serif);margin-top:18px}
.ai-report.loading .report-body{opacity:.6}
.syn-people{display:flex;justify-content:center;align-items:center;gap:20px}
.pair-picker{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pair-picker select{width:auto;flex:1;min-width:150px}
.compat-matrix{border-collapse:separate;border-spacing:3px;width:100%;min-width:640px;font-size:13px}
.compat-matrix th{font-weight:600;font-size:13px;text-align:left;white-space:nowrap}
.compat-matrix th a{color:var(--text);text-decoration:none}.compat-matrix thead th{text-align:center;font-size:18px}
.compat-matrix td{text-align:center;border-radius:6px;padding:0}
.compat-matrix td a{display:block;padding:7px 0;color:inherit;text-decoration:none;font-weight:600}
.sc-4{background:#FDE8E8;color:#9B1C1C}.sc-5{background:#FEF0E1;color:#8A4B08}.sc-6{background:#FFF8DC;color:#755C05}.sc-7{background:#EAF5EC;color:#256B3A}.sc-8{background:#D6EFDC;color:#17562B}.sc-9{background:#BFE6C8;color:#0F4521}
.pair-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px;font-size:14px}
.pair-list a{padding:5px 0;border-bottom:1px solid var(--line-2)}.pair-list small{color:var(--muted)}
.pair-hero{display:flex;justify-content:center;align-items:center;gap:24px;margin-bottom:12px}
.pair-sign{display:flex;flex-direction:column;align-items:center;font-weight:600;color:var(--text)!important;text-decoration:none!important}
.pair-sign .glyph{font-size:44px}
.sign-hero{display:flex;gap:18px;align-items:center;margin-bottom:12px}.glyph.xl{font-size:64px}
.best-matches{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.best-matches a{display:flex;flex-direction:column;align-items:center;padding:14px;color:var(--text);text-decoration:none;margin:0}
.best-matches small{color:var(--green);font-weight:700}
.tool-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}
.tool{color:var(--text)!important;text-decoration:none!important}.tool i{font-size:26px;color:var(--brand);margin-bottom:8px}
.procon{margin:16px 0}.procon ul{padding-left:18px}

/* ── Articles / content ─────────────────────────────────────────── */
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 12px;font-size:13px;color:var(--muted)}
.crumbs li+li::before{content:"›";margin-right:6px;color:#AAA}
.crumbs a{color:var(--muted)}
.page-head{margin:4px 0 18px}
.page-head h1{font:600 36px/1.15 var(--serif);color:#1A2B3C;letter-spacing:-.02em}
.article-title{font:600 34px/1.18 var(--serif);color:#1A2B3C;letter-spacing:-.02em;margin:4px 0 8px}
.article .meta{margin-bottom:14px}
.answer{font-size:18px;color:var(--text);border-left:3px solid var(--brand);padding-left:14px}
.definition{font-weight:500}
.article .prose h2,.prose h2{font:600 24px/1.25 var(--serif);color:#1A2B3C;margin:28px 0 10px}
.prose ul,.prose ol{padding-left:22px}.prose li{margin:6px 0}
.takeaways{background:var(--brand-ll);border:1px solid #D3E3F4;border-radius:10px;padding:14px 18px;margin:16px 0}
.takeaways ul{margin:0;padding-left:20px}.takeaways li{margin:4px 0}
.toc{background:#F7F6F4;border-radius:10px;padding:12px 18px;margin:16px 0;font-size:14.5px}.toc ol{margin:6px 0 0;padding-left:20px}
.example{margin:16px 0;padding:12px 16px;background:#F7F6F4;border-left:3px solid var(--rose);border-radius:0 8px 8px 0;font-style:italic}
.note{margin-top:16px;padding:10px 14px;background:#F7F6F4;border-radius:8px}
.az{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:14px}
.az a{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:6px;box-shadow:var(--shadow);font-weight:600}
.terms{margin:0}.terms div{padding:10px 0;border-bottom:1px solid var(--line-2)}.terms div:last-child{border:0}
.terms dt{font-weight:600;font-size:16px}.terms dd{margin:2px 0 0;color:var(--text-2);font-size:14.5px}
.guide-cat{margin-bottom:28px}
.city-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.city-grid a{display:flex;flex-direction:column;padding:10px 12px;border:1px solid var(--line);border-radius:8px;color:var(--text);text-decoration:none}
.city-grid a:hover{border-color:var(--brand)}.city-grid small{color:var(--muted);font-size:12.5px}
.country-list{columns:3 280px;column-gap:12px}.country-list .card{break-inside:avoid;display:inline-block;width:100%}
.inline-links{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px}
.ideas li{margin:6px 0}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.cat-card{color:var(--text)!important;text-decoration:none!important;margin:0}.cat-card i{font-size:22px;color:var(--brand);margin-bottom:8px}
.story h2{font-family:var(--serif)}

/* ── Admin ──────────────────────────────────────────────────────── */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.stat{margin:0}.stat small{display:block;color:var(--muted)}.stat b{font-size:24px}
.bars{display:flex;align-items:flex-end;gap:3px;height:120px;padding:8px;background:#F7F6F4;border-radius:8px}
.bars span{flex:1;background:var(--brand);border-radius:3px 3px 0 0;min-height:2px}
.admin-item{border:1px solid var(--line);box-shadow:none}
.verify-compare{display:flex;gap:10px;flex-wrap:wrap}.verify-compare figure{margin:0}.verify-compare img{width:180px;height:220px;object-fit:cover;border-radius:8px}
.verify-compare figcaption{font-size:12px;color:var(--muted);text-align:center}

/* ── Footer ─────────────────────────────────────────────────────── */
.site-footer{background:#fff;border-top:1px solid var(--line);margin-top:40px}
.foot-in{max-width:1128px;margin:0 auto;padding:36px 16px 20px;display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:24px}
.foot-in h3{font-size:14px;margin-bottom:10px}
.foot-in ul{list-style:none;padding:0;margin:0}.foot-in li{margin:6px 0;font-size:13.5px}
.foot-in a{color:var(--muted)}.foot-in a:hover{color:var(--brand)}
.foot-brand p{color:var(--muted);font-size:13.5px;margin:10px 0 14px}
.foot-legal{max-width:1128px;margin:0 auto;padding:14px 16px 28px;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12.5px;color:var(--muted)}
.foot-legal a{color:var(--muted)}

/* ── Responsive ─────────────────────────────────────────────────── */
@media (max-width:1100px){
  .layout-3{grid-template-columns:225px minmax(0,1fr)}.layout-3 .col-right{display:none}
  .nv{min-width:60px}.nv span{font-size:11px}.topsearch{flex-basis:200px}
}
@media (max-width:900px){
  .layout-2,.layout-2r,.layout-3{grid-template-columns:minmax(0,1fr)}
  .layout-3 .col-left{display:none}.layout-3 .col-right{display:flex}
  .sticky-nav{position:static}
  .filters{display:none;position:static;max-height:none}.filters.open{display:block}
  .only-mobile{display:inline-flex}
  .hero-in,.split,.auth-split{grid-template-columns:1fr}.hero-art{display:none}
  .features,.article-grid,.tool-cards{grid-template-columns:1fr 1fr}
  .chart-layout,.astro-row{grid-template-columns:1fr}
  .foot-in{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}
  .inbox{grid-template-columns:1fr;height:calc(100vh - var(--top) - 100px)}
  .messages-page.has-thread .inbox-list{display:none}
  .messages-page:not(.has-thread) .thread{display:none}
}
@media (max-width:760px){
  :root{--top:52px}
  body.is-member{padding-bottom:62px}
  .mainnav{display:none}.topsearch{flex:1}
  .guestnav .gl{display:none}.guestnav .lang-menu .gl{display:block}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}
  .tabbar a{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;padding:7px 0 6px;font-size:11px;color:var(--muted);text-decoration:none}
  .tabbar a i{font-size:19px;margin-bottom:2px}.tabbar a.active{color:var(--brand)}
  .tabbar .badge{top:3px}
  .wrap{padding:12px 12px}
  .pad-lg{padding:18px 16px}.pad{padding:14px 16px}
  .hero h1{font-size:38px}.page-head h1,.article-title{font-size:28px}
  .grid2,.facts,.readings{grid-template-columns:minmax(0,1fr)}
  .features,.article-grid,.tool-cards,.how-steps,.best-matches{grid-template-columns:1fr 1fr}
  .sign-grid.lg{grid-template-columns:repeat(4,1fr)}
  .pgrid{grid-template-columns:repeat(2,1fr);gap:8px}
  .ph-grid{grid-template-columns:repeat(2,1fr)}
  .cover{height:130px}
  .pt-body{padding:0 16px 16px}
  .pt-avatar{width:120px;height:120px;margin-top:-64px}
  .pt-actions{position:static;margin-top:12px;flex-wrap:wrap}
  .placements{grid-template-columns:repeat(2,1fr)}
  .date3{grid-template-columns:1fr 1.4fr 1.1fr}
  .msg{max-width:88%}
  .foot-in{grid-template-columns:1fr 1fr}
}
@media (max-width:420px){
  .features,.article-grid,.tool-cards,.how-steps{grid-template-columns:1fr}
  .sign-grid{grid-template-columns:repeat(3,1fr)}
  .pcard-actions .btn span{display:none}
}

.chart-layout>*,.layout-2r>*,.layout-2>*{min-width:0}

/* username field */
.uname{position:relative;display:block}.uname-at{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:600}
.uname input{padding-left:28px!important}
[data-username].ok .uname-msg{color:var(--green)}[data-username].bad .uname-msg{color:var(--red)}
[data-username].ok input{border-color:var(--green)}[data-username].bad input{border-color:var(--red)}

/* ── Groups & forum ─────────────────────────────────────────────── */
.ggrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin-top:14px}
.gcard{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;margin:0}
.gcard-main{display:flex;gap:12px;flex:1;min-width:0;color:var(--text)!important;text-decoration:none!important}
.gcard-text{display:flex;flex-direction:column;min-width:0}.gcard-text b{font-size:15.5px}
.gcard-text small{color:var(--muted);font-size:12.5px;margin:2px 0 4px}.gcard-desc{font-size:13.5px;color:var(--text-2);line-height:1.4}
.g-ico{display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:12px;background-size:cover;background-position:center;vertical-align:middle}
.g-ico-ph{background:hsl(var(--hue,210) 55% 94%);color:hsl(var(--hue,210) 55% 36%)}
.group-top{overflow:hidden}
.g-cover{height:150px;background:linear-gradient(120deg,#0B5394,#3A7BC8 55%,#2F9E44);background-size:cover;background-position:center}
.g-head{display:flex;gap:16px;align-items:flex-end;padding:0 24px 12px;margin-top:-34px;flex-wrap:wrap}
.g-head>.g-ico{border:4px solid #fff;box-shadow:var(--shadow)}
.g-title{flex:1;min-width:220px;padding-top:40px}.g-title h1{font-size:24px;margin:0 0 2px}.g-title p{margin:0}
.g-actions{display:flex;gap:8px;align-items:center;padding-bottom:4px;flex-wrap:wrap}
.g-tabs{margin:0;padding:0 16px}
.tlist{list-style:none;padding:0;margin:8px 0 0}
.trow{border-top:1px solid var(--line-2)}.trow:first-child{border-top:0}
.trow.pinned{background:#FAFAF6}.under-review{opacity:.65}
.trow-main{display:flex;gap:12px;align-items:center;padding:12px 6px;color:var(--text)!important;text-decoration:none!important}
.trow-main:hover{background:#F7F6F4}
.trow-text{flex:1;min-width:0;display:flex;flex-direction:column}.trow-text b{font-weight:600;font-size:15px;line-height:1.35}
.trow-text small{color:var(--muted);font-size:12.5px;margin-top:2px}
.trow-stats{display:flex;gap:12px;color:var(--muted);font-size:13px;flex:none}
.thread-title{font-size:28px}
.post-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0}
.post-head time{font-size:12.5px;color:var(--muted);flex:none}
.post-author{display:flex;gap:10px;align-items:center;color:var(--text)!important;text-decoration:none!important;min-width:0}
.post-author span{display:flex;flex-direction:column;min-width:0}.post-author small{color:var(--muted);font-size:12.5px}
.badge-role{display:inline-block;font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--brand-l);color:var(--brand-d);margin-left:4px;vertical-align:middle}
.post-body{font-size:15.5px}.post-body p:last-child{margin-bottom:6px}
.post-tools{display:flex;flex-wrap:wrap;gap:4px;border-top:1px solid var(--line-2);padding-top:8px;margin-top:8px}
.ptool{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:6px 10px;border-radius:6px;color:var(--muted);font-size:13.5px;font-weight:600;cursor:pointer;text-decoration:none}
.ptool:hover{background:#F3F2EF;color:var(--text)}.ptool.on{color:var(--rose)}.ptool.on .fa-check{color:var(--green)}
.post.best{box-shadow:0 0 0 2px var(--green),var(--shadow)}
.best-flag{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;font-weight:700;color:var(--green);background:var(--green-l);padding:3px 10px;border-radius:999px;margin-bottom:6px}
.replies-h{margin:20px 4px 10px}
.similar-box{margin-top:6px;padding:10px 12px;background:var(--amber-l);border-radius:8px}.similar-box small{color:var(--amber);font-weight:600}
.g-mini{display:flex;gap:10px;align-items:center;color:var(--text)!important;text-decoration:none!important}.g-mini span{display:flex;flex-direction:column}.g-mini small{color:var(--muted)}
@media (max-width:760px){
  .ggrid{grid-template-columns:1fr}
  .g-head{padding:0 16px 12px}.g-title{padding-top:8px}.g-actions{width:100%}
  .trow-stats{display:none}.thread-title{font-size:23px}
}

.forum-teaser{padding-top:40px;padding-bottom:20px}.forum-teaser h2{font:600 32px var(--serif);color:#1A2B3C}
.post-author>span{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.post-author .badge-role{display:inline-block;margin:2px 0 0}
@media (max-width:760px){
  .topbar-in{gap:8px}
  .brand .logo{height:24px;width:auto}
  .guestnav{gap:2px}
  .guestnav .lang-menu .gl{padding:6px 6px;font-size:13px}
  .guestnav .btn{padding:6px 11px;font-size:13.5px}
  .guestnav .btn-ghost{padding:6px 8px}
}
@media (max-width:360px){ .guestnav .btn-ghost{display:none} }
.lbl-short{display:none}
@media (max-width:760px){.guestnav .lbl-long{display:none}.guestnav .lbl-short{display:inline}}

/* Calm default covers + profile buttons always on white (no overlap with the cover) */
.cover,.me-cover,.g-cover{background-color:#E3EAF3;background-image:linear-gradient(135deg,#E8EEF6 0%,#D5E1EF 45%,#E6DDE8 100%)}
.cover[style],.me-cover[style],.g-cover[style]{background-size:cover;background-position:center}
.pt-body{display:flow-root}
.pt-actions{top:14px}
.cover-edit{background:#fff;box-shadow:var(--shadow)}
