/* SissiesExposed.com — kawaii pink/green theme
   Locked to design/splash-reference.png (Cali's photoshop). */
:root {
  /* Black + baby pink + hot pink only. No purple, no violet, no lavender. */
  --bg-base:        #000000;     /* pure black */
  --bg-panel:       #0C0509;     /* near-black with faint pink */
  --bg-elevated:    #170A12;     /* slightly lifted black-pink */
  --bg-deeper:      #050203;     /* deepest black */

  --pink:           #FF3DA0;     /* hot pink */
  --pink-bright:    #FF6FB8;     /* bright pink */
  --pink-deep:      #E91E91;     /* deep hot pink */
  --baby-pink:      #FFB8DC;     /* baby pink */
  --pastel:         #FFB8DC;     /* alias of baby-pink */
  --soft:           #FFD6EA;     /* soft pink */
  --cyan:           #7BE0FF;     /* secondary accent only (Join CTA + 18+ badge) */

  --lime:           #7FFF9F;     /* check marks only */
  --lime-soft:      #B6F7C6;

  --gold-tier:      #FFD56B;     /* #1 contributor crown only */

  --text:           #FFF5FB;
  --text-muted:     #B89FB3;
  --text-dim:       #7A6A78;

  --glow-pink:       rgba(255, 61, 160, .55);
  --glow-pink-strong:rgba(255, 61, 160, .75);
  --glow-pink-soft:  rgba(255, 61, 160, .25);
  --glow-pastel:     rgba(255, 184, 220, .40);
  --glow-cyan:       rgba(123, 224, 255, .45);
  --glow-lime:       rgba(127, 255, 159, .55);

  --r-sm: 8px;
  --r:    12px;
  --r-lg: 18px;

  --pad-x: clamp(14px, 2vw, 28px);
  --container: 1480px;

  --font-head:   "Quicksand", "Nunito", system-ui, sans-serif;
  --font-body:   "Nunito", system-ui, sans-serif;
  --font-script: "Pacifico", cursive;

  --t-fast: 120ms ease-out;
  --t:      220ms cubic-bezier(.2, .7, .2, 1);
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
/* Long unbroken strings must wrap (URLs, code, no-space display names) */
.se-card__desc, .se-card__title, .se-newest__title, .se-trending__title,
.se-thread__title, .se-thread-page__body, .se-blogpost__body, .se-staticpage__body,
.se-link__title, .se-link__desc, .se-link__url, .se-comment__text,
.se-mysubs__title, .se-feed__target, .se-profile__bio {
  overflow-wrap: anywhere;
  word-break: break-word;
}
img, video, iframe { max-width: 100%; height: auto; }

.se-body {
  font-family: var(--font-body);
  background: var(--bg-base);
  color: var(--text);
  min-height: 100vh;
  font-size: 14px;
  line-height: 1.55;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; border: 0; background: 0; color: inherit; }
ul, ol { list-style: none; padding: 0; margin: 0; }

.se-skip { position: absolute; left: -9999px; }
.se-skip:focus { left: 16px; top: 16px; padding: 8px 12px; background: var(--pink); color: #fff; border-radius: var(--r-sm); z-index: 1000; }

/* ================= TOPBAR (two rows) ================= */
.se-topbar {
  position: relative;
  background: #000;
  border-bottom: 1px solid var(--pink);
}
.se-corner-bow {
  position: absolute;
  font-size: 22px;
  filter: drop-shadow(0 0 8px var(--glow-pink));
  pointer-events: none;
}
.se-corner-bow--tl { top: 6px; left: 8px; transform: rotate(-12deg); }
.se-corner-bow--tr { top: 6px; right: 8px; transform: rotate(12deg); }

.se-topbar__row {
  max-width: var(--container);
  margin: 0 auto;
  padding: 12px var(--pad-x);
  display: grid;
  align-items: center;
}
.se-topbar__row--main {
  grid-template-columns: auto 1fr auto;
  gap: 18px;
  padding-top: 14px;
  padding-bottom: 10px;
}

/* ============ LOGO ============ */
.se-logo {
  display: inline-flex; align-items: flex-start; gap: 6px;
  white-space: nowrap;
}
.se-logo__bow {
  font-size: 18px;
  margin-top: 2px;
  filter: drop-shadow(0 0 6px var(--glow-pink));
}
.se-logo__bow--l { transform: rotate(-12deg); }
.se-logo__wrap   { display: flex; flex-direction: column; align-items: stretch; }

.se-logo__wordmark {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: clamp(24px, 2.6vw, 34px);
  letter-spacing: -.01em;
  display: inline-flex; align-items: baseline; gap: 0;
  line-height: 1;
}
.se-logo__pink { color: var(--pink-bright); }
.se-logo__green { color: var(--lime); }
.se-logo__heart {
  color: var(--pink);
  font-size: .55em;
  margin-left: 4px;
  filter: drop-shadow(0 0 6px var(--glow-pink));
}

.se-logo__sub {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 10.5px;
  letter-spacing: .14em;
  color: var(--text);
  text-transform: uppercase;
  font-weight: 700;
  margin-top: 4px;
  justify-content: center;
}
.se-logo__sub-heart { color: var(--pink); font-size: 11px; }
.se-logo__rule {
  flex: 1;
  height: 1.5px;
  max-width: 30px;
  background: linear-gradient(90deg, transparent, var(--pink), transparent);
}

.se-logo--small { align-items: center; }
.se-logo--small .se-logo__wordmark { font-size: 18px; }
.se-logo--small .se-logo__heart    { font-size: 11px; }

/* ============ SEARCH ============ */
.se-search {
  position: relative;
  display: flex; align-items: stretch;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: 999px;
  padding: 4px 4px 4px 22px;
  max-width: 560px;
  width: 100%;
  justify-self: center;
  transition: border-color var(--t);
}
.se-search:focus-within { border-color: var(--pink-bright); }
.se-search input {
  flex: 1;
  border: 0; background: 0; color: var(--text); outline: 0;
  font-size: 14px;
  height: 36px;
  padding-right: 8px;
}
.se-search input::placeholder { color: var(--text-muted); }
.se-search__btn {
  width: 40px; height: 36px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--pink-bright), var(--pink));
  color: #fff;
  font-size: 14px;
  display: grid; place-items: center;
}

.se-topbar__cta { display: flex; align-items: center; gap: 8px; min-width: 0; }
.se-topbar__userpic {
  display: inline-grid; place-items: center;
  width: 36px; height: 36px;
  border-radius: 50%;
  overflow: hidden;
  border: 1.5px solid var(--pink);
  flex-shrink: 0;
}
.se-topbar__userpic img { width: 100%; height: 100%; object-fit: cover; }

/* Show/hide by viewport */
.se-mob-only { display: none; }
@media (max-width: 900px) {
  .se-desk-only { display: none !important; }
  .se-mob-only  { display: inline-flex; }
}
.se-topbar__heart {
  color: var(--pink);
  font-size: 22px;
  filter: drop-shadow(0 0 6px var(--glow-pink));
  margin-left: 4px;
}

/* ============ BUTTONS ============ */
.se-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 9px 16px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 13px;
  white-space: nowrap;
  transition: transform var(--t-fast), box-shadow var(--t), background var(--t), color var(--t);
  cursor: pointer;
  letter-spacing: .01em;
}
.se-btn:hover  { transform: translateY(-1px); }
.se-btn:active { transform: translateY(0); }
.se-btn--sm { padding: 6px 12px; font-size: 12px; }
.se-btn--lg { padding: 11px 20px; font-size: 13.5px; }
.se-btn--xl { padding: 11px 22px; font-size: 13.5px; }
.se-btn__plus  { font-size: 16px; line-height: 1; margin-right: -2px; }
.se-btn__bow   { font-size: 12px; filter: drop-shadow(0 0 4px var(--glow-pink)); }
.se-btn__people{ font-size: 13px; }

.se-btn--pink {
  background: linear-gradient(135deg, var(--pink-bright), var(--pink));
  color: #fff;
}
.se-btn--pink:hover { filter: brightness(1.08); }
.se-btn--ghost {
  background: var(--bg-deeper);
  color: var(--text);
  border: 1.5px solid rgba(255, 184, 220, .3);
}
.se-btn--ghost:hover { border-color: var(--pink); color: var(--pink-bright); }
.se-btn--cyan-outline {
  background: rgba(123, 224, 255, .06);
  color: var(--cyan);
  border: 1.5px solid var(--cyan);
}
.se-btn--cyan-outline:hover { background: rgba(123, 224, 255, .14); }

/* ================= SECONDARY NAV ================= */
.se-mainnav {
  max-width: var(--container);
  margin: 0 auto;
  padding: 6px var(--pad-x) 10px;
  display: flex; align-items: center; gap: 4px;
  border-top: 1px solid rgba(255, 184, 220, .08);
}
.se-mainnav__bow { font-size: 16px; margin-right: 4px; filter: drop-shadow(0 0 6px var(--glow-pink)); }

.se-mainnav__link {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 12px;
  font-weight: 700;
  font-size: 13px;
  color: var(--text);
  border-radius: 999px;
  transition: color var(--t-fast), background var(--t-fast);
}
.se-mainnav__ico   { font-size: 13px; }
.se-mainnav__caret { font-size: 9px; opacity: .6; }
.se-mainnav__link:hover {
  color: var(--pink-bright);
  background: rgba(255, 61, 160, .08);
}
.se-mainnav__link.is-active {
  color: var(--pink-bright);
  background: rgba(255, 61, 160, .18);
  border: 1px solid var(--pink);
}

.se-mainnav__right { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.se-age-badge {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 10px;
  font-size: 11px; font-weight: 800;
  color: var(--cyan);
  background: rgba(123, 224, 255, .08);
  border: 1px solid rgba(123, 224, 255, .35);
  border-radius: 999px;
  letter-spacing: .04em;
}
.se-age-badge > [aria-hidden] { font-size: 7px; }
.se-adult-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 12px;
  background: rgba(255, 61, 160, .08);
  border: 1px solid rgba(255, 61, 160, .45);
  border-radius: 999px;
  font-size: 12px; font-weight: 700;
  color: var(--pink-bright);
}
.se-adult-pill__heart { color: var(--pink); }
.se-adult-pill__caret { font-size: 8px; opacity: .7; }

/* ================= MAIN ================= */
.se-main { max-width: var(--container); margin: 0 auto; padding: 0 var(--pad-x); }

/* ================= HOME GRID ================= */
.se-grid--home {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr) 290px;
  gap: 16px;
  margin: 16px 0 24px;
}
.se-grid__rail-left,
.se-grid__rail-right { display: flex; flex-direction: column; gap: 14px; }
.se-grid__main       { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.se-grid__triple {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 14px;
}

/* ================= PANEL CHROME (tight, no soft halos) ================= */
.se-promise,
.se-stats,
.se-feed,
.se-tags,
.se-section,
.se-trustband,
.se-adbanner,
.se-catstrip {
  position: relative;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r);
  padding: 14px 14px;
}

/* ================= PROMISE ================= */
.se-promise {
  text-align: center;
  padding: 18px 14px 14px;
  background: #000;
  border-color: var(--pink);
}
.se-promise__shield { display: grid; place-items: center; margin-bottom: 4px; }
.se-promise__eyebrow {
  display: block;
  font-size: 10px; letter-spacing: .22em; font-weight: 800;
  color: var(--pastel);
  margin-bottom: 2px;
}
.se-promise__pct {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 60px;
  line-height: 1;
  color: var(--pink-bright);
  letter-spacing: -.02em;
}
.se-promise__title {
  margin: 6px 0 12px;
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  color: var(--text);
  border-bottom: 1.5px solid rgba(255, 61, 160, .4);
  padding-bottom: 12px;
}
.se-promise__pill {
  display: inline-block;
  background: linear-gradient(90deg, var(--pink), var(--pastel) 50%, var(--pink));
  color: #fff;
  font-size: 11px; font-weight: 800;
  letter-spacing: .14em;
  padding: 7px 14px;
  border-radius: 999px;
  margin-bottom: 12px;
  width: 100%;
}
.se-promise__chips {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 11.5px; color: var(--text-muted);
  margin-bottom: 14px;
  font-weight: 600;
}
.se-promise__chip-heart { color: var(--pink); }
.se-promise__bullets {
  text-align: left;
  display: flex; flex-direction: column; gap: 8px;
  font-size: 12px;
  color: var(--text);
  margin-bottom: 14px;
}
.se-promise__bullets li {
  display: flex; align-items: center; gap: 8px;
}
.se-promise__check {
  display: grid; place-items: center;
  width: 18px; height: 18px;
  background: rgba(127, 255, 159, .14);
  color: var(--lime);
  border: 1px solid rgba(127, 255, 159, .45);
  border-radius: 50%;
  font-size: 10px;
  font-weight: 800;
  flex-shrink: 0;
}
.se-promise__more {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 11.5px; color: var(--pink-bright); font-weight: 700;
}
.se-promise__more:hover { color: var(--pink); }

/* ================= STATS ================= */
.se-stats__header {
  display: flex; align-items: center; gap: 8px;
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
}
.se-stats__bar { font-size: 14px; }
.se-stats__title {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .14em;
  color: var(--pink-bright);
  margin: 0;
}
.se-stats__list { display: flex; flex-direction: column; gap: 10px; }
.se-stats__row {
  display: grid;
  grid-template-columns: 22px 1fr auto;
  gap: 8px;
  align-items: center;
}
.se-stats__icon { font-size: 14px; opacity: .85; }
.se-stats__icon--pulse {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--lime);
  box-shadow: 0 0 0 0 rgba(127, 255, 159, .55);
  animation: pulseDot 2.2s infinite;
  justify-self: center;
}
@keyframes pulseDot {
  0%   { box-shadow: 0 0 0 0 rgba(127, 255, 159, .6); }
  70%  { box-shadow: 0 0 0 10px rgba(127, 255, 159, 0); }
  100% { box-shadow: 0 0 0 0 rgba(127, 255, 159, 0); }
}
.se-stats__label { font-size: 12px; color: var(--text-muted); }
.se-stats__num {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 22px;
  color: var(--pink-bright);
  letter-spacing: -.01em;
}
.se-stats__num--cyan { color: var(--cyan); }

/* ================= AD SLOT (clean black + crisp pink border) ================= */
.se-ad {
  position: relative;
  border: 1.5px solid var(--pink);
  border-radius: var(--r);
  background: #000;
  overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.se-ad--rail        { aspect-ratio: 300 / 250; min-height: 220px; max-width: 100%; }
.se-ad--banner-728  { aspect-ratio: 728 / 90;  min-height: 90px;  max-width: 100%; }
.se-ad--banner-970  { aspect-ratio: 970 / 90;  min-height: 90px;  max-width: 100%; }
/* On narrow viewports, banners shrink width-first; let height auto-size */
@media (max-width: 900px) {
  .se-ad--banner-728,
  .se-ad--banner-970 {
    aspect-ratio: auto;
    width: 100%;
    min-height: 100px;
    max-height: 140px;
  }
}

.se-ad__bow {
  position: absolute; font-size: 22px;
  filter: drop-shadow(0 0 8px var(--glow-pink));
  pointer-events: none;
  z-index: 2;
}
.se-ad__bow--tl { top: 8px; left: 10px; transform: rotate(-12deg); }
.se-ad__bow--tr { top: 8px; right: 10px; transform: rotate(12deg); }

.se-ad__sparkle {
  position: absolute; color: var(--soft);
  filter: drop-shadow(0 0 6px var(--glow-pink-soft));
  animation: twinkle 3.6s ease-in-out infinite;
  font-size: 14px;
  pointer-events: none;
}
.se-ad__sparkle--1 { top: 38%; left: 12%; animation-delay: 0s; }
.se-ad__sparkle--2 { bottom: 22%; left: 28%; font-size: 18px; animation-delay: 1s; color: var(--pastel); }
.se-ad__sparkle--3 { top: 32%; right: 14%; animation-delay: 2s; }
.se-ad__sparkle--4 { bottom: 36%; right: 32%; font-size: 12px; animation-delay: .6s; color: var(--baby-pink); }

@keyframes twinkle {
  0%, 100% { opacity: .35; transform: scale(.85); }
  50%      { opacity: 1;   transform: scale(1.15); }
}
.se-ad__placeholder {
  text-align: center;
  display: flex; flex-direction: column; gap: 8px; align-items: center;
  z-index: 1;
  padding: 14px;
}
.se-ad__label {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 22px;
  letter-spacing: .12em;
  color: var(--pink-bright);
}
.se-ad__size  { font-size: 14px; color: var(--text); font-weight: 700; letter-spacing: .04em; }
.se-ad--banner-728 .se-ad__placeholder,
.se-ad--banner-970 .se-ad__placeholder { flex-direction: row; gap: 22px; padding: 8px 16px; }
.se-ad--banner-728 .se-ad__label,
.se-ad--banner-970 .se-ad__label { font-size: 18px; }

.se-ad__a, .se-ad__a img { width: 100%; height: 100%; display: block; object-fit: cover; }

/* ================= AD BANNER TOP ================= */
.se-adbanner {
  display: grid;
  grid-template-columns: 64px auto 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 12px 18px;
  background: #000;
  border-color: var(--pink);
}
.se-adbanner__avatar {
  width: 56px; height: 56px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid var(--pink);
}
.se-adbanner__avatar img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.se-adbanner__title { display: flex; flex-direction: column; line-height: 1.05; }
.se-adbanner__title-pink {
  font-family: var(--font-script);
  font-size: 26px;
  color: var(--pink-bright);
  letter-spacing: .01em;
}
.se-adbanner__title-sub {
  font-size: 10.5px;
  letter-spacing: .22em;
  color: var(--text);
  font-weight: 700;
  margin-top: 4px;
}
.se-adbanner__points {
  display: grid; grid-template-columns: 1fr 1fr; gap: 4px 16px;
  font-size: 12px; color: var(--text);
}
.se-adbanner__points li {
  display: inline-flex; align-items: center; gap: 6px;
}
.se-adbanner__check {
  display: grid; place-items: center;
  width: 16px; height: 16px;
  background: rgba(127, 255, 159, .14);
  color: var(--lime);
  border: 1px solid rgba(127, 255, 159, .45);
  border-radius: 50%;
  font-size: 9px;
  font-weight: 800;
}
.se-adbanner__cta { white-space: nowrap; }
.se-adbanner__sparkle, .se-adbanner__heart {
  position: absolute; pointer-events: none;
  filter: drop-shadow(0 0 6px var(--glow-pink-soft));
  font-size: 14px;
  animation: twinkle 3.5s ease-in-out infinite;
}
.se-adbanner__sparkle--1 { top: 14%; left: 18%; color: var(--soft); }
.se-adbanner__sparkle--2 { bottom: 16%; left: 30%; animation-delay: 1.4s; color: var(--pastel); font-size: 16px; }
.se-adbanner__sparkle--3 { top: 22%; right: 22%; animation-delay: .9s; color: var(--soft); }
.se-adbanner__sparkle--4 { bottom: 30%; right: 38%; color: var(--baby-pink); animation-delay: .6s; font-size: 12px; }
.se-adbanner__heart--1   { top: 30%; left: 24%; color: var(--pink); animation-delay: .4s; }
.se-adbanner__heart--2   { bottom: 22%; right: 28%; color: var(--pink-bright); font-size: 12px; animation-delay: 1.7s; }

/* ================= HERO ================= */
.se-hero {
  position: relative;
  border-radius: var(--r-lg);
  background: #000;
  border: 1.5px solid var(--pink);
  overflow: hidden;
}

.se-hero__sparkle, .se-hero__heart, .se-hero__bow {
  position: absolute; pointer-events: none;
}
.se-hero__sparkle {
  color: var(--soft);
  filter: drop-shadow(0 0 6px var(--glow-pink-soft));
  animation: twinkle 3.6s ease-in-out infinite;
  font-size: 16px;
}
.se-hero__sparkle--1 { top: 8%;  left: 38%; }
.se-hero__sparkle--2 { top: 22%; left: 45%; font-size: 22px; animation-delay: .8s; color: var(--pastel); }
.se-hero__sparkle--3 { bottom: 30%; left: 30%; font-size: 18px; animation-delay: 1.6s; }
.se-hero__heart {
  color: var(--pink);
  filter: drop-shadow(0 0 8px var(--glow-pink));
  font-size: 18px;
  animation: floaty 5s ease-in-out infinite;
}
.se-hero__heart--1 { top: 30%; left: 36%; font-size: 22px; }
.se-hero__heart--2 { top: 56%; left: 41%; font-size: 14px; color: var(--pastel); animation-delay: 1s; }
.se-hero__bow--bg-l { top: 6px; left: 8px;  font-size: 22px; opacity: .85; transform: rotate(-12deg); filter: drop-shadow(0 0 8px var(--glow-pink)); }
.se-hero__bow--bg-r { top: 6px; right: 8px; font-size: 22px; opacity: .85; transform: rotate(12deg); filter: drop-shadow(0 0 8px var(--glow-pink)); }

@keyframes floaty {
  0%, 100% { transform: translateY(0) rotate(-4deg); opacity: .85; }
  50%      { transform: translateY(-6px) rotate(4deg); opacity: 1; }
}

.se-hero__inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 20px;
  padding: clamp(20px, 2.6vw, 32px);
  align-items: center;
  min-height: 360px;
}
.se-hero__text { position: relative; z-index: 2; min-width: 0; }
.se-hero__eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 14px;
  background: rgba(255, 61, 160, .14);
  border: 1px solid var(--pink);
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .22em;
  color: var(--pink-bright);
  margin-bottom: 16px;
}
.se-hero__eyebrow-heart { color: var(--pink); }
.se-hero__headline {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: clamp(28px, 3.4vw, 42px);
  line-height: 1.05;
  margin: 0 0 16px;
  letter-spacing: -.015em;
}
.se-hero__pink {
  color: var(--pink-bright);
  text-shadow: 0 0 8px rgba(255, 61, 160, .9);
}
.se-hero__green {
  color: var(--lime);
  text-shadow: 0 0 8px rgba(127, 255, 159, .9);
}
.se-hero__bow-end {
  display: inline-block;
  margin-left: 6px;
  font-size: .6em;
  filter: drop-shadow(0 0 8px var(--glow-pink));
  vertical-align: middle;
}
.se-hero__desc {
  color: var(--text-muted);
  font-size: 13.5px;
  line-height: 1.6;
  margin: 0 0 18px;
  max-width: 100%;
}
.se-hero__desc .hl {
  color: var(--lime);
  font-weight: 700;
}
.se-hero__cta-row { display: flex; gap: 10px; flex-wrap: wrap; }
.se-hero__cta-row .se-btn { padding: 10px 18px; font-size: 13px; }

.se-hero__figure {
  position: relative;
  align-self: stretch;
  min-height: 320px;
  display: flex; align-items: center; justify-content: center;
  z-index: 1;
  overflow: hidden;
  border-radius: var(--r-lg);
}
.se-hero__img {
  width: 100%; height: 100%;
  max-height: 380px;
  object-fit: cover;
  object-position: center 18%;
  border-radius: var(--r-lg);
}
.se-hero__seal {
  position: absolute;
  right: 6%;
  top: 30%;
  width: 92px; height: 84px;
  display: grid; place-items: center;
  animation: floaty 4.5s ease-in-out infinite;
  pointer-events: none;
  z-index: 3;
}
.se-hero__seal-bg { position: absolute; inset: 0; width: 100%; height: 100%; }
.se-hero__seal-text {
  position: relative;
  text-align: center;
  color: #fff;
  font-weight: 900;
  line-height: 1;
  text-shadow: 0 1px 4px rgba(0, 0, 0, .4);
}
.se-hero__seal-pct   { display: block; font-size: 18px; letter-spacing: -.02em; }
.se-hero__seal-label { display: block; font-size: 7px; line-height: 1.2; margin-top: 4px; letter-spacing: .08em; opacity: .95; }

/* ================= TRUST BAND ================= */
.se-trustband {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border-radius: var(--r);
}
.se-trustband__item {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 14px 18px;
}
.se-trustband__item + .se-trustband__item {
  border-left: 1px solid rgba(255, 61, 160, .25);
}
.se-trustband__ico {
  display: grid; place-items: center;
  width: 32px; height: 32px;
  background: rgba(255, 61, 160, .12);
  border: 1px solid rgba(255, 61, 160, .45);
  border-radius: 50%;
  font-size: 14px;
}
.se-trustband__text { display: flex; flex-direction: column; line-height: 1.25; }
.se-trustband__title { font-weight: 800; color: var(--text); font-size: 13px; }
.se-trustband__sub   { color: var(--text-muted); font-size: 11.5px; }
.se-trustband__heart {
  color: var(--pink);
  filter: drop-shadow(0 0 6px var(--glow-pink));
  font-size: 14px;
}

/* ================= CATSTRIP ================= */
.se-catstrip { padding: 12px 14px; }
.se-catstrip__header {
  display: flex; align-items: center; gap: 8px;
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
}
.se-catstrip__heart { color: var(--pink); font-size: 13px; }
.se-catstrip__title {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 11.5px;
  letter-spacing: .14em;
  color: var(--pink-bright);
  margin: 0;
}
.se-catstrip__row {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}
.se-catstrip__card,
.se-catstrip__more {
  display: grid;
  grid-template-columns: 38px 1fr;
  grid-template-rows: auto auto;
  column-gap: 8px;
  align-items: center;
  padding: 8px 10px;
  background: rgba(255, 61, 160, .04);
  border: 1.5px solid rgba(255, 61, 160, .30);
  border-radius: var(--r);
  transition: border-color var(--t), background var(--t), transform var(--t);
  position: relative;
  min-height: 56px;
}
.se-catstrip__card:hover, .se-catstrip__more:hover {
  border-color: var(--pink-bright);
  background: rgba(255, 61, 160, .14);
  transform: translateY(-2px);
}
.se-catstrip__ico,
.se-catstrip__more-dots {
  grid-row: 1 / 3;
  display: grid; place-items: center;
  width: 38px; height: 38px;
  background: rgba(255, 61, 160, .14);
  border: 1.5px solid var(--pink);
  border-radius: 8px;
  font-size: 18px;
}
.se-catstrip__name,
.se-catstrip__more-name {
  font-size: 11.5px;
  font-weight: 700;
  color: var(--text);
  line-height: 1.2;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.se-catstrip__count,
.se-catstrip__more-sub {
  font-size: 11px;
  color: var(--pink-bright);
  font-weight: 800;
}

/* ================= SECTION SHELL ================= */
.se-section { padding: 14px 14px; }
.se-section__header {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .22);
}
.se-section__title {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .14em;
  margin: 0;
  color: var(--pink-bright);
  display: inline-flex; align-items: center; gap: 8px;
}
.se-section__ico { font-size: 14px; }
.se-section__cta {
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: 10px;
  color: var(--pink-bright);
  font-weight: 800;
  font-size: 12px;
}
.se-section__cta:hover { color: var(--pink); }

.se-empty,
.se-feed__empty {
  font-size: 12px;
  color: var(--text-muted);
  line-height: 1.5;
  padding: 6px 0 4px;
}
.se-empty a,
.se-feed__empty a {
  color: var(--pink-bright);
  font-weight: 700;
}
.se-empty a:hover,
.se-feed__empty a:hover { color: var(--pink); }

/* ================= TRENDING ================= */
.se-trending__list { display: flex; flex-direction: column; gap: 2px; }
.se-trending__row {
  display: grid;
  grid-template-columns: 22px 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 6px 0;
  border-bottom: 1px solid rgba(255, 184, 220, .08);
  font-size: 12.5px;
}
.se-trending__row:last-child { border-bottom: 0; }
.se-trending__rank {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 13px;
  color: var(--pink);
  text-align: center;
}
.se-trending__title { color: var(--text); font-weight: 600; line-height: 1.4; }
.se-trending__title:hover { color: var(--pink-bright); }
.se-trending__vote { color: var(--pink-bright); font-weight: 800; font-size: 12.5px; }

/* ================= NEWEST ================= */
.se-newest__list { display: flex; flex-direction: column; gap: 6px; }
.se-newest__row {
  display: grid;
  grid-template-columns: 38px 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 5px 0;
  border-bottom: 1px solid rgba(255, 184, 220, .08);
}
.se-newest__row:last-child { border-bottom: 0; }
.se-newest__thumb {
  width: 38px; height: 38px;
  border-radius: 8px;
  background: var(--bg-elevated);
  overflow: hidden;
  display: grid; place-items: center;
}
.se-newest__thumb img { width: 100%; height: 100%; object-fit: cover; }
.se-newest__thumb-fallback { font-size: 16px; }
.se-newest__title { display: block; font-size: 12px; font-weight: 700; color: var(--text); line-height: 1.3; }
.se-newest__title:hover { color: var(--pink-bright); }
.se-newest__cat   { display: block; font-size: 10.5px; color: var(--pastel); margin-top: 1px; }
.se-newest__meta  { display: flex; flex-direction: column; align-items: flex-end; gap: 1px; line-height: 1.2; }
.se-newest__new {
  background: linear-gradient(135deg, var(--pink-bright), var(--pink));
  color: #fff;
  padding: 1px 6px;
  border-radius: 5px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
}
.se-newest__vote { color: var(--pink-bright); font-weight: 800; font-size: 11.5px; }
.se-newest__time { color: var(--text-dim); font-size: 10.5px; }

/* ================= LEADERBOARD ================= */
.se-leaderboard__list { display: flex; flex-direction: column; gap: 4px; }
.se-leaderboard__row {
  display: grid;
  grid-template-columns: 32px 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 5px 0;
  border-bottom: 1px solid rgba(255, 184, 220, .08);
}
.se-leaderboard__row:last-child { border-bottom: 0; }
.se-leaderboard__avatar {
  position: relative;
  width: 32px; height: 32px;
  border-radius: 50%;
  overflow: visible;
  background: var(--bg-elevated);
  border: 2px solid rgba(255, 61, 160, .35);
}
.se-leaderboard__avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.se-leaderboard__crown {
  position: absolute;
  top: -12px; left: 50%; transform: translateX(-50%) rotate(-8deg);
  font-size: 14px;
}
.se-leaderboard__row.is-first .se-leaderboard__avatar { border-color: var(--gold-tier); }
.se-leaderboard__body { display: flex; flex-direction: column; gap: 1px; line-height: 1.25; min-width: 0; }
.se-leaderboard__name {
  font-size: 11.5px;
  font-weight: 700;
  color: var(--text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.se-leaderboard__name:hover { color: var(--pink-bright); }
.se-leaderboard__points {
  font-size: 11.5px;
  font-weight: 800;
  color: var(--pink-bright);
  white-space: nowrap;
}
.se-leaderboard__points-sub {
  font-size: 9.5px;
  color: var(--text-muted);
  font-weight: 600;
  margin-left: 2px;
}

.se-tier {
  display: inline-block;
  padding: 1px 6px;
  border-radius: 999px;
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.se-tier--elite   { background: rgba(255, 61, 160, .22);  color: var(--pink-bright); border: 1px solid rgba(255, 61, 160, .55); }
.se-tier--vip     { background: rgba(255, 213, 107, .22); color: var(--gold-tier);   border: 1px solid rgba(255, 213, 107, .55); }
.se-tier--premium { background: rgba(255, 184, 220, .22); color: var(--baby-pink);   border: 1px solid rgba(255, 184, 220, .55); }

/* ================= ACTIVE FEED ================= */
.se-feed__header {
  display: flex; align-items: center; gap: 8px;
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
}
.se-feed__pulse {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--lime);
  animation: pulseDot 2s infinite;
}
.se-feed__title {
  font-family: var(--font-head);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .14em;
  color: var(--pink-bright);
  margin: 0;
  flex: 1;
}
.se-feed__live {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 10px; font-weight: 800;
  color: var(--lime);
  letter-spacing: .12em;
}
.se-feed__live-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--lime);
}
.se-feed__list { display: flex; flex-direction: column; gap: 2px; }
.se-feed__item {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 10px;
  align-items: flex-start;
  padding: 7px 0;
  border-bottom: 1px solid rgba(255, 184, 220, .08);
}
.se-feed__item:last-child { border-bottom: 0; }
.se-feed__ico {
  display: grid; place-items: center;
  width: 32px; height: 32px;
  border-radius: 8px;
  background: rgba(255, 61, 160, .14);
  border: 1.5px solid var(--pink);
  font-size: 14px;
}
.se-feed__body { display: flex; flex-direction: column; gap: 1px; line-height: 1.3; min-width: 0; }
.se-feed__label  { font-size: 11.5px; color: var(--text); font-weight: 700; }
.se-feed__target { font-size: 11.5px; color: var(--pastel); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.se-feed__time   { font-size: 10.5px; color: var(--text-dim); }
.se-feed__more {
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: 10px;
  color: var(--pink-bright);
  font-weight: 800; font-size: 12px;
}

/* ================= POPULAR TAGS ================= */
.se-tags__header {
  display: flex; align-items: center; gap: 8px;
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
}
.se-tags__bow { font-size: 13px; }
.se-tags__title {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .14em;
  color: var(--pink-bright);
  margin: 0;
}
.se-tags__cloud { display: flex; flex-wrap: wrap; gap: 5px; }
.se-tag {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .01em;
  border: 1px solid;
  transition: transform var(--t-fast), box-shadow var(--t);
}
.se-tag:hover { transform: translateY(-1px); }
.se-tag__count { font-size: 10px; opacity: .85; font-weight: 700; }

.se-tag--t1 { color: var(--pink-bright);  background: rgba(255, 61, 160, .18); border-color: var(--pink); }
.se-tag--t2 { color: var(--pastel);       background: rgba(255, 184, 220, .14); border-color: rgba(255, 184, 220, .50); }
.se-tag--t3 { color: var(--pink);         background: rgba(255, 61, 160, .10);  border-color: rgba(255, 61, 160, .40); }
.se-tag--t4 { color: var(--soft);         background: rgba(255, 214, 234, .12); border-color: rgba(255, 214, 234, .40); }
.se-tag--t5 { color: var(--soft);         background: rgba(255, 214, 234, .14); border-color: rgba(255, 214, 234, .45); }
.se-tag--t6 { color: var(--pink-bright);  background: rgba(255, 61, 160, .22);  border-color: rgba(255, 61, 160, .60); }

.se-tags__more {
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: 10px;
  color: var(--pink-bright); font-weight: 800; font-size: 12px;
}

/* ================= FOOTER ================= */
.se-footer {
  position: relative;
  background: linear-gradient(180deg, transparent, rgba(255, 61, 160, .06));
  border-top: 1px solid rgba(255, 61, 160, .25);
  margin-top: 32px;
  padding: 20px 0;
}
.se-footer__corner {
  position: absolute;
  font-size: 22px;
}
.se-footer__corner--l { top: -14px; left: 16px; transform: rotate(-12deg); }
.se-footer__corner--r { top: -16px; right: 18px; }
.se-footer__inner {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--pad-x);
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 24px;
  align-items: center;
}
.se-footer__left { display: flex; flex-direction: column; gap: 4px; }
.se-footer__copy { font-size: 11px; color: var(--text-muted); }
.se-footer__links {
  display: flex; flex-wrap: wrap; gap: 16px;
  justify-content: center;
}
.se-footer__links a { font-size: 12px; color: var(--text-muted); }
.se-footer__links a:hover { color: var(--pink-bright); }
.se-footer__right { display: flex; flex-direction: column; gap: 2px; align-items: flex-end; }
.se-footer__adult {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 11.5px; color: var(--pink-bright); font-weight: 700;
}
.se-footer__legal { font-size: 10px; color: var(--text-dim); }

/* ================= FLASH ================= */
.se-flash-stack {
  display: flex; flex-direction: column; gap: 8px;
  margin-bottom: 16px;
}
.se-flash {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 14px;
  border-radius: var(--r);
  font-size: 13px;
  border: 1.5px solid;
}
.se-flash__icon { font-size: 16px; }
.se-flash__msg  { flex: 1; }
.se-flash--success { background: rgba(127, 255, 159, .08); border-color: var(--lime); color: var(--lime-soft); }
.se-flash--error,
.se-flash--warn    { background: rgba(255, 61, 160, .10); border-color: var(--pink); color: var(--pink-bright); }
.se-flash--info    { background: rgba(123, 224, 255, .08); border-color: var(--cyan); color: var(--cyan); }

/* ================= AUTH PAGE ================= */
.se-auth {
  display: grid; place-items: center;
  min-height: 60vh;
  padding: 28px 0 48px;
}
.se-auth__card {
  position: relative;
  width: 100%;
  max-width: 460px;
  padding: 32px 28px 24px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  text-align: center;
}
.se-auth__corner { position: absolute; font-size: 22px; pointer-events: none; }
.se-auth__corner--tl { top: 10px; left: 14px; transform: rotate(-14deg); }
.se-auth__corner--tr { top: 10px; right: 14px; transform: rotate(14deg); }
.se-auth__heart { font-size: 32px; color: var(--pink); margin-bottom: 8px; }
.se-auth__title {
  font-family: var(--font-head);
  font-size: 24px;
  font-weight: 800;
  margin: 0 0 8px;
  color: var(--text);
}
.se-auth__sub { color: var(--text-muted); font-size: 13px; margin: 0 0 24px; line-height: 1.5; }

/* ================= FORMS ================= */
.se-form { display: flex; flex-direction: column; gap: 14px; text-align: left; }
.se-field { display: flex; flex-direction: column; gap: 6px; }
.se-field__label {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  color: var(--pink-bright);
  text-transform: uppercase;
}
.se-field__hint { font-size: 11px; color: var(--text-dim); }

.se-input {
  background: #000;
  color: var(--text);
  border: 1.5px solid var(--pink);
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 14px;
  font-family: inherit;
  outline: 0;
  transition: border-color var(--t);
}
.se-input::placeholder { color: var(--text-dim); }
.se-input:focus       { border-color: var(--pink-bright); }
.se-input--textarea   { resize: vertical; min-height: 90px; line-height: 1.5; }

.se-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

.se-checkbox {
  display: grid; grid-template-columns: 18px 1fr; gap: 10px; align-items: start;
  font-size: 12.5px; color: var(--text-muted); line-height: 1.5;
  cursor: pointer;
}
.se-checkbox input[type="checkbox"] {
  appearance: none; -webkit-appearance: none;
  width: 18px; height: 18px;
  margin: 2px 0 0;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: 5px;
  display: grid; place-items: center;
  cursor: pointer;
}
.se-checkbox input[type="checkbox"]:checked {
  background: var(--pink);
}
.se-checkbox input[type="checkbox"]:checked::after {
  content: '✓';
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}
.se-checkbox span strong { color: var(--text); font-weight: 800; }
.se-checkbox a { color: var(--pink-bright); }

.se-form__submit { margin-top: 6px; align-self: stretch; justify-content: center; }
.se-form__alt {
  margin: 14px 0 0;
  text-align: center;
  font-size: 12.5px;
  color: var(--text-muted);
}
.se-form__alt a { color: var(--pink-bright); font-weight: 700; }

/* ================= ACCOUNT PAGE ================= */
.se-account {
  margin: 22px 0 32px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 22px 22px 26px;
  position: relative;
}
.se-account__head {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 16px;
  align-items: center;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
}
.se-account__avatar {
  width: 80px; height: 80px;
  border-radius: 50%;
  border: 2px solid var(--pink);
  overflow: hidden;
  background: var(--bg-elevated);
}
.se-account__avatar img { width: 100%; height: 100%; object-fit: cover; }
.se-account__title {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 22px;
  color: var(--text);
  margin: 0 0 4px;
}
.se-account__meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.se-account__handle { color: var(--text-muted); font-size: 13px; }

.se-tabs {
  display: flex; gap: 4px; flex-wrap: wrap;
  margin-bottom: 18px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
  padding-bottom: 6px;
}
.se-tabs__link {
  padding: 8px 14px;
  font-weight: 700;
  font-size: 13px;
  color: var(--text-muted);
  border-radius: 999px;
  border: 1px solid transparent;
}
.se-tabs__link:hover    { color: var(--pink-bright); }
.se-tabs__link.is-active {
  color: var(--pink-bright);
  background: rgba(255, 61, 160, .12);
  border-color: var(--pink);
}

.se-mysubs { display: flex; flex-direction: column; gap: 6px; }
.se-mysubs__row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 10px;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid rgba(255, 184, 220, .08);
  font-size: 13px;
}
.se-mysubs__title { color: var(--text); font-weight: 700; }
.se-mysubs__title:hover { color: var(--pink-bright); }
.se-mysubs__status {
  font-size: 10px; font-weight: 800;
  padding: 2px 8px; border-radius: 999px;
  letter-spacing: .06em; text-transform: uppercase;
}
.se-mysubs__status--pending  { background: rgba(255, 213, 107, .15); color: var(--gold-tier); border: 1px solid rgba(255, 213, 107, .45); }
.se-mysubs__status--approved { background: rgba(127, 255, 159, .12); color: var(--lime);      border: 1px solid rgba(127, 255, 159, .45); }
.se-mysubs__status--rejected,
.se-mysubs__status--hidden,
.se-mysubs__status--deleted  { background: rgba(255, 61, 160, .10); color: var(--pink-bright); border: 1px solid rgba(255, 61, 160, .35); }
.se-mysubs__time { color: var(--text-dim); font-size: 11px; }

.se-account__logout { margin-left: auto; }

/* ================= ADMIN LAYOUT ================= */
.se-admin {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 16px;
  margin: 22px 0 32px;
}
.se-admin__side {
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r);
  padding: 14px 12px;
  align-self: flex-start;
}
.se-admin__brand {
  display: flex; align-items: center; gap: 8px;
  padding: 4px 8px 12px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
  margin-bottom: 10px;
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 14px;
  color: var(--pink-bright);
  letter-spacing: .14em;
}
.se-admin__brand-bow { font-size: 16px; }
.se-admin__nav { display: flex; flex-direction: column; gap: 2px; }
.se-admin__navlink {
  display: grid; grid-template-columns: 1fr auto; align-items: center;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 700;
  color: var(--text-muted);
  border-radius: 8px;
}
.se-admin__navlink:hover { color: var(--pink-bright); background: rgba(255, 61, 160, .08); }
.se-admin__navlink.is-active {
  color: var(--pink-bright);
  background: rgba(255, 61, 160, .14);
  border: 1px solid var(--pink);
}
.se-admin__navbadge {
  background: var(--pink);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  padding: 1px 7px;
  border-radius: 999px;
  min-width: 20px;
  text-align: center;
}

.se-admin__main {
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r);
  padding: 18px 18px 22px;
  min-width: 0;
}
.se-admin__head {
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
}
.se-admin__title {
  font-family: var(--font-head);
  font-weight: 800;
  font-size: 20px;
  margin: 0;
  color: var(--text);
}
.se-admin__empty {
  text-align: center;
  padding: 48px 20px;
  color: var(--text-muted);
}
.se-admin__empty-icon { font-size: 40px; color: var(--pink); display: block; margin-bottom: 8px; }
.se-admin__stub { color: var(--text-muted); font-size: 13px; padding: 8px; }

/* Queue list */
.se-queue { display: flex; flex-direction: column; gap: 12px; }
.se-queue__item {
  background: #000;
  border: 1.5px solid rgba(255, 61, 160, .35);
  border-radius: var(--r);
  padding: 12px 14px;
  display: flex; flex-direction: column; gap: 8px;
}
.se-queue__head { display: flex; gap: 12px; align-items: baseline; }
.se-queue__title { color: var(--pink-bright); font-weight: 800; font-size: 14px; flex: 1; }
.se-queue__title:hover { text-decoration: underline; }
.se-queue__time  { color: var(--text-dim); font-size: 11.5px; }
.se-queue__meta  { font-size: 12px; color: var(--text-muted); display: flex; flex-wrap: wrap; gap: 6px; }
.se-queue__url   { color: var(--text); font-family: monospace; font-size: 11.5px; }
.se-queue__sep   { opacity: .5; }
.se-queue__by strong { color: var(--text); }
.se-queue__desc  { font-size: 13px; color: var(--text-muted); line-height: 1.5; margin: 0; }
.se-queue__actions {
  display: flex; gap: 10px; flex-wrap: wrap;
  padding-top: 8px;
  border-top: 1px solid rgba(255, 184, 220, .08);
}
.se-queue__reject { display: flex; gap: 6px; flex: 1; min-width: 240px; }
.se-input--inline { flex: 1; padding: 7px 10px; font-size: 12px; }

/* ================= LINK PAGE ================= */
.se-link {
  margin: 22px 0 32px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 22px 24px;
}
.se-link__crumbs { font-size: 12px; color: var(--text-muted); margin-bottom: 16px; }
.se-link__crumbs a { color: var(--pink-bright); }
.se-link__crumbs a:hover { text-decoration: underline; }
.se-link__crumbs > [aria-hidden] { margin: 0 6px; opacity: .5; }
.se-link__head { margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1.5px solid rgba(255, 61, 160, .25); }
.se-link__title { font-family: var(--font-head); font-size: 28px; font-weight: 800; margin: 0 0 6px; color: var(--text); }
.se-link__meta  { font-size: 12px; color: var(--text-muted); display: flex; flex-wrap: wrap; gap: 8px; }
.se-link__meta a { color: var(--pink-bright); }
.se-link__sep { opacity: .5; }
.se-link__votes { color: var(--pink-bright); font-weight: 800; }
.se-link__desc  { font-size: 14px; color: var(--text); line-height: 1.6; margin: 0 0 18px; }
.se-link__cta   { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; }
.se-link__url   { font-family: monospace; font-size: 11.5px; color: var(--text-dim); word-break: break-all; }
.se-link__tags  { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }

.se-auth__card--wide { max-width: 640px; }

/* select styling for category dropdown */
select.se-input {
  appearance: none;
  background:
    linear-gradient(45deg, transparent 50%, var(--pink-bright) 50%) calc(100% - 18px) 50% / 5px 5px no-repeat,
    linear-gradient(135deg, var(--pink-bright) 50%, transparent 50%) calc(100% - 13px) 50% / 5px 5px no-repeat,
    #000;
  padding-right: 32px;
  cursor: pointer;
}

/* Responsive admin */
@media (max-width: 900px) {
  .se-admin { grid-template-columns: 1fr; }
  .se-admin__side { position: relative; }
  .se-admin__nav { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px; }
}

/* ================= LIST PAGES (directory / category / tag / search) ================= */
.se-list {
  margin: 22px 0 32px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 22px 24px;
}
.se-list__head { margin-bottom: 18px; padding-bottom: 14px; border-bottom: 1.5px solid rgba(255, 61, 160, .25); }
.se-list__title { font-family: var(--font-head); font-weight: 800; font-size: 28px; margin: 4px 0 4px; color: var(--text); }
.se-list__sub   { color: var(--text-muted); font-size: 13px; margin: 0 0 12px; line-height: 1.5; }
.se-list__bar   { display: flex; gap: 18px; flex-wrap: wrap; align-items: center; margin-top: 8px; }
.se-list__count { color: var(--text-muted); font-size: 13px; }
.se-list__sort  { display: flex; gap: 4px; margin-left: auto; }
.se-list__sortlink {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--text-muted);
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid transparent;
}
.se-list__sortlink:hover { color: var(--pink-bright); }
.se-list__sortlink.is-active {
  color: var(--pink-bright);
  background: rgba(255, 61, 160, .14);
  border-color: var(--pink);
}
.se-list__search {
  display: flex; gap: 8px; align-items: stretch;
  margin: 14px 0 6px;
}
.se-list__search .se-input { flex: 1; padding: 8px 14px; }

.se-empty--big { text-align: center; padding: 48px 20px; font-size: 14px; }

/* Subcategory chips on category page */
.se-subcats {
  display: flex; flex-wrap: wrap; gap: 6px;
  margin-bottom: 18px;
}
.se-subcat {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 12px;
  background: rgba(255, 61, 160, .08);
  border: 1px solid var(--pink);
  border-radius: 999px;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--pink-bright);
}
.se-subcat:hover { background: rgba(255, 61, 160, .18); }
.se-subcat__count { font-size: 11px; color: var(--text-muted); }

/* Card grid */
.se-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 14px;
}
.se-card {
  position: relative;
  background: #000;
  border: 1.5px solid rgba(255, 61, 160, .35);
  border-radius: var(--r);
  overflow: hidden;
  display: flex; flex-direction: column;
  transition: border-color var(--t), transform var(--t);
}
.se-card:hover { border-color: var(--pink-bright); transform: translateY(-2px); }
.se-card__thumb {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  background: var(--bg-elevated);
  overflow: hidden;
}
.se-card__thumb img { width: 100%; height: 100%; object-fit: cover; }
.se-card__thumb-fallback {
  position: absolute; inset: 0;
  display: grid; place-items: center;
  color: var(--pink); font-size: 30px;
  background: linear-gradient(135deg, rgba(255, 61, 160, .12), rgba(255, 184, 220, .06));
}
.se-card__new {
  position: absolute; top: 8px; left: 8px;
  background: linear-gradient(135deg, var(--pink-bright), var(--pink));
  color: #fff;
  padding: 2px 8px;
  border-radius: 5px;
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: .08em;
}
.se-card__body { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.se-card__title {
  font-size: 14px;
  font-weight: 800;
  color: var(--text);
  line-height: 1.3;
}
.se-card__title:hover { color: var(--pink-bright); }
.se-card__desc { font-size: 12px; color: var(--text-muted); line-height: 1.5; margin: 0; flex: 1; }
.se-card__meta {
  display: flex; flex-wrap: wrap; gap: 6px; align-items: center;
  font-size: 11px; color: var(--text-dim);
  margin-top: 6px;
  padding-top: 8px;
  border-top: 1px solid rgba(255, 184, 220, .08);
}
.se-card__cat { color: var(--pastel); font-weight: 700; }
.se-card__cat:hover { color: var(--pink-bright); }
.se-card__sep { opacity: .5; }
.se-card__votes { color: var(--pink-bright); font-weight: 700; }
.se-card__views { color: var(--text-muted); }

/* ================= PAGINATION ================= */
.se-pager {
  display: flex; gap: 4px; flex-wrap: wrap;
  justify-content: center;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1.5px solid rgba(255, 61, 160, .15);
}
.se-pager__btn,
.se-pager__num {
  display: inline-grid; place-items: center;
  min-width: 36px; height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  color: var(--text-muted);
  border: 1px solid rgba(255, 61, 160, .25);
}
.se-pager__btn:hover,
.se-pager__num:hover { color: var(--pink-bright); border-color: var(--pink); }
.se-pager__num.is-active {
  background: var(--pink);
  color: #fff;
  border-color: var(--pink);
}
.se-pager__btn.is-disabled { opacity: .35; pointer-events: none; }
.se-pager__gap { display: inline-grid; place-items: center; min-width: 24px; color: var(--text-dim); }

/* ================= CATEGORIES INDEX ================= */
.se-catgrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px;
}
.se-catgrid__card {
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r);
  padding: 14px 16px;
}
.se-catgrid__head {
  display: grid; grid-template-columns: 38px 1fr auto;
  gap: 10px; align-items: center;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255, 184, 220, .12);
  margin-bottom: 10px;
}
.se-catgrid__ico {
  display: grid; place-items: center;
  width: 38px; height: 38px;
  background: rgba(255, 61, 160, .14);
  border: 1.5px solid var(--pink);
  border-radius: 8px;
  font-size: 18px;
}
.se-catgrid__name { font-size: 15px; font-weight: 800; color: var(--text); }
.se-catgrid__count { font-size: 12px; color: var(--pink-bright); font-weight: 800; }
.se-catgrid__desc { font-size: 12px; color: var(--text-muted); line-height: 1.5; margin: 0 0 10px; }
.se-catgrid__subs { display: flex; flex-direction: column; gap: 4px; }
.se-catgrid__subs li a { font-size: 12.5px; color: var(--pastel); }
.se-catgrid__subs li a:hover { color: var(--pink-bright); }
.se-catgrid__sub-count { font-size: 11px; color: var(--text-dim); }

/* ================= USER PROFILE ================= */
.se-profile {
  margin: 22px 0 32px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 24px 26px;
}
.se-profile__head {
  display: grid; grid-template-columns: 120px 1fr; gap: 22px;
  padding-bottom: 18px;
  margin-bottom: 18px;
  border-bottom: 1.5px solid rgba(255, 61, 160, .25);
}
.se-profile__avatar {
  width: 120px; height: 120px;
  border-radius: 50%;
  border: 2.5px solid var(--pink);
  overflow: hidden;
  background: var(--bg-elevated);
}
.se-profile__avatar img { width: 100%; height: 100%; object-fit: cover; }
.se-profile__name { font-family: var(--font-head); font-size: 28px; font-weight: 800; margin: 0 0 6px; color: var(--text); }
.se-profile__meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 12.5px; color: var(--text-muted); margin-bottom: 10px; }
.se-profile__handle { color: var(--pink-bright); font-weight: 700; }
.se-profile__pronouns { font-style: italic; }
.se-profile__joined { color: var(--text-dim); }
.se-profile__bio { font-size: 14px; color: var(--text); line-height: 1.6; margin: 0 0 12px; }
.se-profile__links { display: flex; gap: 8px; flex-wrap: wrap; }

.se-profile__section { margin-top: 18px; }
.se-profile__h2 { font-family: var(--font-head); font-size: 16px; font-weight: 800; letter-spacing: .04em; margin: 0 0 12px; color: var(--pink-bright); }
.se-profile__h2-count { color: var(--text-muted); font-size: 13px; font-weight: 700; margin-left: 6px; }

.se-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 10px;
}
.se-gallery__item {
  position: relative;
  margin: 0;
  aspect-ratio: 1 / 1;
  border-radius: var(--r);
  overflow: hidden;
  border: 1.5px solid rgba(255, 61, 160, .35);
}
.se-gallery__item img { width: 100%; height: 100%; object-fit: cover; }
.se-gallery__item figcaption {
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: 6px 10px;
  background: linear-gradient(0deg, rgba(0, 0, 0, .8), transparent);
  font-size: 11.5px;
  color: var(--text);
}

/* ================= MEMBERS LIST ================= */
.se-members {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
}
.se-mcard {
  display: grid; grid-template-columns: 56px 1fr;
  gap: 12px; align-items: center;
  padding: 12px 14px;
  background: #000;
  border: 1.5px solid rgba(255, 61, 160, .35);
  border-radius: var(--r);
  transition: border-color var(--t);
}
.se-mcard:hover { border-color: var(--pink-bright); }
.se-mcard__avatar {
  width: 56px; height: 56px;
  border-radius: 50%;
  border: 2px solid var(--pink);
  overflow: hidden;
  background: var(--bg-elevated);
}
.se-mcard__avatar img { width: 100%; height: 100%; object-fit: cover; }
.se-mcard__body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.se-mcard__name { font-size: 13.5px; font-weight: 800; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.se-mcard__handle { font-size: 11.5px; color: var(--pink-bright); }
.se-mcard__count { font-size: 11px; color: var(--text-muted); }

/* ================= VOTE BUTTON ================= */
.se-vote { display: inline-block; }
.se-vote__btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 14px;
  background: rgba(255, 61, 160, .08);
  border: 1.5px solid var(--pink);
  border-radius: 999px;
  color: var(--pink-bright);
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  transition: background var(--t-fast), color var(--t-fast);
}
.se-vote__btn:hover { background: rgba(255, 61, 160, .18); }
.se-vote__btn.is-voted {
  background: var(--pink);
  color: #fff;
}
.se-vote__heart { font-size: 16px; }

/* ================= COMMENTS ================= */
.se-comments {
  margin-top: 18px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 18px 20px;
}
.se-comments__head { margin-bottom: 14px; padding-bottom: 10px; border-bottom: 1.5px solid rgba(255, 61, 160, .25); }
.se-comments__title { font-family: var(--font-head); font-weight: 800; font-size: 16px; margin: 0; color: var(--pink-bright); letter-spacing: .04em; }
.se-comments__count { color: var(--text-muted); font-size: 13px; font-weight: 700; margin-left: 6px; }
.se-comments__login {
  padding: 10px 14px;
  background: rgba(255, 61, 160, .08);
  border: 1px dashed var(--pink);
  border-radius: var(--r);
  color: var(--text-muted);
  font-size: 13px;
  text-align: center;
  margin-bottom: 14px;
}
.se-comments__login a { color: var(--pink-bright); font-weight: 800; }

.se-comment-form { display: flex; flex-direction: column; gap: 10px; margin-bottom: 18px; align-items: stretch; }
.se-comment-form textarea { width: 100%; }
.se-comment-form button { align-self: flex-end; }

.se-comments__list { display: flex; flex-direction: column; gap: 10px; }
.se-comment {
  display: grid; grid-template-columns: 36px 1fr;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(255, 184, 220, .08);
}
.se-comment:last-child { border-bottom: 0; }
.se-comment__avatar {
  width: 36px; height: 36px;
  border-radius: 50%;
  border: 1.5px solid var(--pink);
  overflow: hidden;
  background: var(--bg-elevated);
}
.se-comment__avatar img { width: 100%; height: 100%; object-fit: cover; }
.se-comment__meta {
  display: flex; gap: 8px; align-items: baseline;
  margin-bottom: 4px;
}
.se-comment__name { color: var(--pink-bright); font-weight: 800; font-size: 13px; }
.se-comment__name:hover { text-decoration: underline; }
.se-comment__time { color: var(--text-dim); font-size: 11px; }
.se-comment__text { color: var(--text); font-size: 13.5px; line-height: 1.55; word-wrap: break-word; }

/* ================= FORUMS LIST ================= */
.se-threads { display: flex; flex-direction: column; gap: 8px; }
.se-thread {
  display: grid; grid-template-columns: 44px 1fr auto;
  gap: 12px;
  padding: 10px 12px;
  background: #000;
  border: 1.5px solid rgba(255, 61, 160, .35);
  border-radius: var(--r);
  align-items: center;
  transition: border-color var(--t);
}
.se-thread:hover { border-color: var(--pink-bright); }
.se-thread__avatar { width: 44px; height: 44px; border-radius: 50%; overflow: hidden; border: 1.5px solid var(--pink); background: var(--bg-elevated); }
.se-thread__avatar img { width: 100%; height: 100%; object-fit: cover; }
.se-thread__title { display: block; font-size: 14px; font-weight: 800; color: var(--text); margin-bottom: 3px; line-height: 1.3; }
.se-thread__title:hover { color: var(--pink-bright); }
.se-thread__pin { font-size: 12px; margin-right: 4px; }
.se-thread__meta { font-size: 11.5px; color: var(--text-muted); display: flex; gap: 6px; flex-wrap: wrap; }
.se-thread__meta a { color: var(--pastel); }
.se-thread__meta a:hover { color: var(--pink-bright); }
.se-thread__sep { opacity: .5; }
.se-thread__stats { display: flex; flex-direction: column; gap: 2px; align-items: flex-end; font-size: 11.5px; color: var(--text-muted); }
.se-thread__votes { color: var(--pink-bright); font-weight: 700; }

/* ================= FORUM THREAD PAGE ================= */
.se-thread-page {
  margin: 22px 0 18px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 22px 24px;
}
.se-thread-page__head { margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1.5px solid rgba(255, 61, 160, .25); }
.se-thread-page__title { font-family: var(--font-head); font-size: 26px; font-weight: 800; margin: 0 0 8px; color: var(--text); }
.se-thread-page__meta { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-size: 12.5px; color: var(--text-muted); }
.se-thread-page__author { display: inline-flex; align-items: center; gap: 8px; color: var(--pink-bright); font-weight: 700; }
.se-thread-page__author img { width: 28px; height: 28px; border-radius: 50%; border: 1.5px solid var(--pink); object-fit: cover; }
.se-thread-page__sep { opacity: .5; }
.se-thread-page__body { font-size: 14px; color: var(--text); line-height: 1.65; margin: 0 0 14px; word-wrap: break-word; }
.se-thread-page__actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.se-thread-page__locked { color: var(--text-muted); font-size: 12.5px; }

/* ================= ACCOUNT GALLERY/AVATAR ================= */
.se-account__section { margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(255, 61, 160, .15); }
.se-account__h3 { font-family: var(--font-head); font-size: 14px; font-weight: 800; letter-spacing: .12em; color: var(--pink-bright); margin: 0 0 12px; text-transform: uppercase; }
.se-account__h3-count { color: var(--text-muted); font-size: 12px; font-weight: 700; margin-left: 6px; }

.se-avatar-edit {
  display: flex; gap: 16px; align-items: center; flex-wrap: wrap;
}
.se-avatar-edit__img {
  width: 80px; height: 80px;
  border-radius: 50%;
  border: 2px solid var(--pink);
  object-fit: cover;
}

.se-gallery__delete {
  position: absolute; top: 6px; right: 6px;
  margin: 0;
}
.se-gallery__delete button {
  width: 24px; height: 24px;
  border-radius: 50%;
  background: rgba(0, 0, 0, .8);
  border: 1px solid var(--pink);
  color: var(--pink-bright);
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
}

/* ================= STATIC PAGES ================= */
.se-staticpage {
  margin: 22px 0 32px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 28px 32px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.se-staticpage__head { margin-bottom: 18px; padding-bottom: 14px; border-bottom: 1.5px solid rgba(255, 61, 160, .25); }
.se-staticpage__title { font-family: var(--font-head); font-weight: 800; font-size: 32px; margin: 8px 0 6px; color: var(--text); }
.se-staticpage__sub { color: var(--text-muted); font-size: 14px; margin: 0; }
.se-staticpage__body { color: var(--text); font-size: 15px; line-height: 1.7; }
.se-staticpage__body h2 { font-family: var(--font-head); font-size: 18px; font-weight: 800; color: var(--pink-bright); margin: 24px 0 10px; letter-spacing: .04em; }
.se-staticpage__body p { margin: 0 0 12px; }

/* ================= ADMIN TABLES + DETAILS ================= */
.se-admin__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12.5px;
}
.se-admin__table th {
  text-align: left;
  font-size: 10.5px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--pink-bright);
  padding: 8px 10px;
  border-bottom: 1.5px solid var(--pink);
  font-weight: 800;
}
.se-admin__table td {
  padding: 8px 10px;
  border-bottom: 1px solid rgba(255, 184, 220, .08);
  color: var(--text);
  vertical-align: top;
}
.se-admin__table tr:hover td { background: rgba(255, 61, 160, .04); }
.se-admin__table a { color: var(--pink-bright); font-weight: 700; }
.se-admin__actions { display: flex; gap: 6px; flex-wrap: wrap; }
.se-admin__toolbar {
  display: flex; gap: 10px; align-items: center;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.se-admin__note { color: var(--text-muted); font-size: 12px; margin: 0 0 12px; }
.se-admin__details {
  margin-bottom: 14px;
  background: rgba(255, 61, 160, .04);
  border: 1px dashed var(--pink);
  border-radius: var(--r);
  padding: 10px 14px;
}
.se-admin__details summary {
  cursor: pointer;
  font-weight: 800;
  color: var(--pink-bright);
  list-style: none;
  font-size: 13px;
}
.se-admin__details[open] summary { margin-bottom: 10px; }
.se-admin__group {
  border: 1px solid rgba(255, 61, 160, .25);
  border-radius: var(--r);
  padding: 12px 14px;
  margin-bottom: 14px;
}
.se-admin__group legend { color: var(--pink-bright); font-weight: 800; font-size: 12px; letter-spacing: .14em; padding: 0 8px; }
.se-admin__userhead { color: var(--text-muted); font-size: 13px; margin-bottom: 14px; }
.se-admin__userhead p { margin: 0 0 6px; }
.se-admin__section {
  border-top: 1px solid rgba(255, 61, 160, .15);
  padding-top: 14px;
  margin-top: 14px;
}
.se-admin__section h3 { font-family: var(--font-head); font-size: 13px; font-weight: 800; color: var(--pink-bright); letter-spacing: .12em; margin: 0 0 10px; }
.se-admin__inlineform { display: inline-flex; gap: 6px; align-items: center; margin-right: 10px; margin-bottom: 6px; }

/* ================= BLOG ================= */
.se-blog-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 14px;
}
.se-blogcard {
  background: #000;
  border: 1.5px solid rgba(255, 61, 160, .35);
  border-radius: var(--r);
  overflow: hidden;
  transition: border-color var(--t);
  display: flex; flex-direction: column;
}
.se-blogcard:hover { border-color: var(--pink-bright); }
.se-blogcard__cover { aspect-ratio: 16 / 9; overflow: hidden; }
.se-blogcard__cover img { width: 100%; height: 100%; object-fit: cover; }
.se-blogcard__body { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.se-blogcard__title { font-size: 16px; font-weight: 800; color: var(--text); line-height: 1.3; }
.se-blogcard__title:hover { color: var(--pink-bright); }
.se-blogcard__excerpt { font-size: 12.5px; color: var(--text-muted); line-height: 1.5; margin: 0; flex: 1; }
.se-blogcard__meta { display: flex; gap: 6px; flex-wrap: wrap; font-size: 11px; color: var(--text-dim); margin-top: 6px; padding-top: 8px; border-top: 1px solid rgba(255, 184, 220, .08); }
.se-blogcard__meta a { color: var(--pastel); font-weight: 700; }

.se-blogpost {
  margin: 22px 0 18px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  padding: 22px 24px;
}
.se-blogpost__cover { margin: 16px -24px; }
.se-blogpost__cover img { width: 100%; max-height: 400px; object-fit: cover; }
.se-blogpost__title { font-family: var(--font-head); font-size: 32px; font-weight: 800; margin: 14px 0 10px; color: var(--text); }
.se-blogpost__meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 12.5px; color: var(--text-muted); margin-bottom: 14px; }
.se-blogpost__excerpt { font-size: 15px; color: var(--pastel); font-style: italic; line-height: 1.55; margin: 0 0 18px; padding-left: 14px; border-left: 3px solid var(--pink); }
.se-blogpost__body { font-size: 15px; color: var(--text); line-height: 1.7; margin-bottom: 18px; word-wrap: break-word; }
.se-blogpost__actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; padding-top: 14px; border-top: 1px solid rgba(255, 61, 160, .15); }

/* ================= 404 ================= */
.se-404 {
  text-align: center;
  padding: 80px 20px;
}
.se-404__heart { font-size: 56px; color: var(--pink); margin-bottom: 12px; }
.se-404__title { font-family: var(--font-head); font-size: 36px; font-weight: 800; margin: 0 0 8px; color: var(--text); }
.se-404__sub   { color: var(--text-muted); margin: 0 0 24px; }

/* ================= CONSTRUCTION MODAL ================= */
.se-modal {
  position: fixed; inset: 0; z-index: 1000;
  display: grid; place-items: center;
  padding: 16px;
}
.se-modal.is-closed { display: none; }
.se-modal__backdrop {
  position: absolute; inset: 0;
  background: rgba(0, 0, 0, .82);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.se-modal__card {
  position: relative;
  max-width: 480px;
  width: 100%;
  padding: 32px 28px 22px;
  background: #000;
  border: 1.5px solid var(--pink);
  border-radius: var(--r-lg);
  text-align: center;
}
.se-modal__corner {
  position: absolute;
  font-size: 22px;
  pointer-events: none;
}
.se-modal__corner--tl { top: 10px; left: 14px; transform: rotate(-14deg); }
.se-modal__corner--tr { top: 10px; right: 50px; transform: rotate(14deg); }
.se-modal__close {
  position: absolute; top: 8px; right: 10px;
  width: 30px; height: 30px;
  border-radius: 50%;
  background: transparent;
  color: var(--pink-bright);
  font-size: 22px; line-height: 1;
  border: 1px solid var(--pink);
  display: grid; place-items: center;
  font-family: monospace;
}
.se-modal__close:hover { background: rgba(255, 61, 160, .18); color: var(--text); }

.se-modal__heart { font-size: 32px; color: var(--pink); margin-bottom: 8px; }
.se-modal__title {
  font-family: var(--font-head);
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
  margin: 0 0 14px;
  line-height: 1.2;
}
.se-modal__pink { color: var(--pink-bright); }
.se-modal__body {
  color: var(--text-muted);
  font-size: 14px;
  line-height: 1.55;
  margin: 0 0 22px;
}
.se-modal__body strong { color: var(--text); font-weight: 800; }

.se-modal__cta { display: flex; flex-direction: column; gap: 8px; align-items: stretch; }
.se-modal__cta .se-btn { justify-content: center; }

.se-modal__small {
  font-size: 11px;
  color: var(--text-dim);
  margin: 18px 0 0;
  line-height: 1.5;
}

/* ================= RESPONSIVE ================= */
@media (max-width: 1280px) {
  .se-grid--home { grid-template-columns: 220px minmax(0, 1fr); }
  .se-grid__rail-right { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; }
  .se-grid__rail-right > * { flex: 1 1 280px; }
  .se-catstrip__row { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 1080px) {
  .se-topbar__row--main { grid-template-columns: 1fr auto; gap: 10px; }
  .se-search { grid-column: 1 / -1; max-width: 100%; }
  .se-grid--home { grid-template-columns: 1fr; }
  .se-grid__rail-left, .se-grid__rail-right { flex-direction: column; }
  .se-grid__triple { grid-template-columns: 1fr; }
}

/* === MOBILE LAYOUT === */
@media (max-width: 900px) {
  :root { --pad-x: 12px; }

  /* Topbar: tight, stack-friendly */
  .se-topbar__row { padding: 8px var(--pad-x); }
  .se-topbar__row--main { grid-template-columns: 1fr auto; gap: 8px; padding-top: 10px; padding-bottom: 8px; }
  .se-corner-bow { display: none; }
  .se-topbar__heart { display: none; }

  /* Logo: smaller, no tagline subline */
  .se-logo__wordmark { font-size: 20px; }
  .se-logo__heart    { font-size: 11px; }
  .se-logo__bow      { font-size: 14px; }
  .se-logo__sub      { display: none; }

  /* Topbar CTAs on mobile: only Submit + (avatar or Sign Up) */
  .se-topbar__cta { gap: 6px; flex-wrap: nowrap; }
  .se-topbar__cta .se-btn { padding: 8px 12px; font-size: 12px; flex-shrink: 0; }
  .se-topbar__cta .se-btn__bow { display: none; }
  /* Submit Link → icon only on phones, keep text on tablets */
  .se-topbar__submit-text { display: inline; }
  .se-topbar__signup-text { display: inline; }

  /* Search: full width below logo */
  .se-search { padding: 3px 4px 3px 16px; }
  .se-search input { height: 34px; font-size: 14px; }
  .se-search__btn  { width: 34px; height: 32px; }

  /* Main nav: horizontal scroll instead of wrap */
  .se-mainnav {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 4px var(--pad-x) 8px;
    scrollbar-width: thin;
    scrollbar-color: var(--pink) transparent;
    -webkit-overflow-scrolling: touch;
  }
  .se-mainnav::-webkit-scrollbar { height: 4px; }
  .se-mainnav::-webkit-scrollbar-thumb { background: var(--pink); border-radius: 2px; }
  .se-mainnav__link {
    flex-shrink: 0;
    padding: 6px 10px;
    font-size: 12px;
    white-space: nowrap;
  }
  .se-mainnav__caret { display: none; }
  .se-mainnav__bow   { display: none; }
  .se-mainnav__right { margin-left: 8px; flex-shrink: 0; }

  /* Hero stacking — figure on top, text below */
  .se-hero__inner { grid-template-columns: 1fr; gap: 14px; padding: 16px; min-height: auto; }
  .se-hero__text  { order: 2; }
  .se-hero__figure { order: 1; min-height: 220px; justify-content: center; }
  .se-hero__img { max-height: 280px; }
  .se-hero__seal { width: 68px; height: 64px; right: 6%; top: 12%; }
  .se-hero__seal-pct { font-size: 14px; }
  .se-hero__seal-label { font-size: 6px; }
  .se-hero__sparkle, .se-hero__heart, .se-hero__bow { display: none; }
  .se-hero__headline { font-size: 26px; line-height: 1.1; }
  .se-hero__desc { font-size: 13.5px; }
  .se-hero__cta-row { flex-direction: column; align-items: stretch; }
  .se-hero__cta-row .se-btn { justify-content: center; }

  /* Trust band stacks */
  .se-trustband { grid-template-columns: 1fr; }
  .se-trustband__item + .se-trustband__item { border-left: 0; border-top: 1px solid rgba(255, 61, 160, .25); }
  .se-trustband__item { padding: 12px 16px; }

  /* Featured Categories: 2-up */
  .se-catstrip__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  /* Ad banner stacks */
  .se-adbanner { grid-template-columns: 1fr; text-align: center; padding: 12px 14px; gap: 8px; }
  .se-adbanner__avatar { display: none; }
  .se-adbanner__title-pink { font-size: 22px; }
  .se-adbanner__points { justify-content: center; grid-template-columns: 1fr; gap: 2px; text-align: left; }
  .se-adbanner__points li { justify-content: flex-start; }

  /* Footer */
  .se-footer__inner { grid-template-columns: 1fr; text-align: center; gap: 12px; }
  .se-footer__left, .se-footer__right { align-items: center; }
  .se-footer__corner { display: none; }
  .se-footer__links { gap: 10px 14px; }

  /* Forms: stack field rows on mobile */
  .se-field-row { grid-template-columns: 1fr; gap: 14px; }
  .se-input { font-size: 16px; padding: 10px 12px; }  /* 16px prevents iOS zoom */
  .se-input--textarea { min-height: 110px; }
  .se-checkbox { font-size: 13px; }

  /* Auth/account cards full width */
  .se-auth { padding: 16px 0 24px; min-height: auto; }
  .se-auth__card { padding: 22px 18px 18px; border-radius: var(--r); }
  .se-account { padding: 16px 16px 20px; border-radius: var(--r); }
  .se-account__head { grid-template-columns: 60px 1fr; gap: 10px; }
  .se-account__avatar { width: 60px; height: 60px; }
  .se-account__avatar img { width: 60px; height: 60px; }
  .se-account__title { font-size: 18px; }
  .se-account__logout { grid-column: 1 / -1; justify-self: stretch; }
  .se-account__logout button { width: 100%; }

  /* Tabs: horizontal scroll */
  .se-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 0 -16px 14px;
    padding: 0 16px 8px;
  }
  .se-tabs__link { flex-shrink: 0; white-space: nowrap; font-size: 12px; padding: 7px 12px; }

  /* List pages */
  .se-list { padding: 16px 14px 20px; border-radius: var(--r); }
  .se-list__title { font-size: 22px; }
  .se-list__head { margin-bottom: 12px; padding-bottom: 10px; }
  .se-list__bar { gap: 10px; }
  .se-list__sort { flex-wrap: wrap; gap: 4px; margin-left: 0; }

  /* Cards: 1 col below 600 */
  .se-cards { grid-template-columns: 1fr; }

  /* Members list 1 col */
  .se-members { grid-template-columns: 1fr; }

  /* Category grid */
  .se-catgrid { grid-template-columns: 1fr; }

  /* Profile page stacks */
  .se-profile { padding: 16px; border-radius: var(--r); }
  .se-profile__head { grid-template-columns: 1fr; text-align: center; gap: 12px; }
  .se-profile__avatar { margin: 0 auto; width: 88px; height: 88px; }
  .se-profile__name { font-size: 22px; }
  .se-profile__meta { justify-content: center; font-size: 11.5px; }
  .se-profile__links { justify-content: center; }
  .se-gallery { grid-template-columns: repeat(2, 1fr); }

  /* Link page */
  .se-link { padding: 16px; border-radius: var(--r); }
  .se-link__title { font-size: 22px; }
  .se-link__cta { flex-direction: column; align-items: stretch; gap: 10px; }
  .se-link__cta .se-btn { justify-content: center; }
  .se-link__url { word-break: break-all; }

  /* Forum thread page */
  .se-thread-page { padding: 16px; border-radius: var(--r); }
  .se-thread-page__title { font-size: 20px; }
  .se-thread { grid-template-columns: 40px 1fr; padding: 10px 12px; }
  .se-thread__stats { grid-column: 1 / -1; flex-direction: row; gap: 10px; padding-top: 6px; border-top: 1px solid rgba(255, 184, 220, .08); }
  .se-thread__avatar { width: 40px; height: 40px; }

  /* Blog post page */
  .se-blogpost { padding: 18px 16px; border-radius: var(--r); }
  .se-blogpost__title { font-size: 24px; }
  .se-blogpost__cover { margin: 12px -16px; }
  .se-blog-list { grid-template-columns: 1fr; }

  /* Static pages */
  .se-staticpage { padding: 18px 16px; border-radius: var(--r); }
  .se-staticpage__title { font-size: 24px; }
  .se-staticpage__body { font-size: 14px; }

  /* Comments */
  .se-comments { padding: 14px 14px; border-radius: var(--r); }
  .se-comment-form button { align-self: stretch; }

  /* Admin layout: sidebar becomes horizontal scroll above body */
  .se-admin { grid-template-columns: 1fr; gap: 10px; }
  .se-admin__side {
    padding: 8px 10px;
    position: static;
  }
  .se-admin__brand { padding: 2px 4px 8px; }
  .se-admin__nav {
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    gap: 6px;
  }
  .se-admin__navlink {
    flex-shrink: 0;
    white-space: nowrap;
    grid-template-columns: auto auto;
    gap: 6px;
    padding: 7px 10px;
    font-size: 12px;
  }
  .se-admin__main { padding: 14px; border-radius: var(--r); }
  .se-admin__title { font-size: 17px; }

  /* Admin tables — horizontal scroll wrapper */
  .se-admin__table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    font-size: 11.5px;
  }
  .se-admin__table th, .se-admin__table td { padding: 6px 8px; }

  /* Queue items */
  .se-queue__item { padding: 10px 12px; }
  .se-queue__head { flex-direction: column; gap: 4px; align-items: flex-start; }
  .se-queue__actions { flex-direction: column; gap: 8px; align-items: stretch; }
  .se-queue__reject { min-width: 0; flex-direction: column; gap: 6px; }
  .se-queue__reject button { width: 100%; }

  /* Promise / Stats / Feed / Tags cards full width without big padding */
  .se-promise, .se-stats, .se-feed, .se-tags, .se-section, .se-catstrip {
    padding: 12px 14px;
    border-radius: var(--r);
  }
  .se-promise__pct { font-size: 48px; }
  .se-stats__num   { font-size: 20px; }

  /* Modal */
  .se-modal { padding: 12px; }
  .se-modal__card { padding: 24px 20px 16px; }
  .se-modal__title { font-size: 18px; }
  .se-modal__body  { font-size: 13px; }
  .se-modal__corner { display: none; }
  .se-modal__small { font-size: 10px; }

  /* Pagination */
  .se-pager__btn, .se-pager__num { min-width: 32px; height: 32px; font-size: 12px; padding: 0 8px; }

  /* Buttons across forms — match input padding */
  .se-form__submit { width: 100%; justify-content: center; }
}

/* === SMALL PHONES === */
@media (max-width: 520px) {
  .se-mainnav__right .se-age-badge { display: none; }
  .se-catstrip__row { grid-template-columns: 1fr; }
  .se-gallery { grid-template-columns: 1fr; }
  .se-hero__inner { padding: 14px; }
  .se-list__title { font-size: 20px; }
  .se-account__title { font-size: 16px; }
  /* Submit Link → icon only on phones to save space */
  .se-topbar__submit-text { display: none; }
  .se-topbar__submit .se-btn__plus { font-size: 18px; margin: 0; }
}
