.has-photo{overflow:hidden;padding:0}
.has-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.fan-strip{height:86px;border-radius:0 0 18px 18px;margin:0 .5rem}
@media(min-width:640px){.fan-strip{height:104px}}
.fan-profile{padding:0 1rem 1rem;margin-top:-46px;position:relative}
.fan-profile .avatar-fan{width:92px;height:92px;font-size:2rem;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 8px 22px rgba(0,0,0,.45)}
.fan-profile h1{font-size:1.45rem;margin:.55rem 0 .1rem}
.fan-profile .handle{margin:0;color:var(--muted);font-size:.9rem}
.fan-facts{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:.55rem 0;font-size:.85rem;color:var(--muted)}
.fan-stats{display:flex;gap:1.3rem;margin:.6rem 0}
.fan-stats div{font-size:.82rem;color:var(--muted)}
.fan-stats strong{display:block;font-size:1.05rem;color:var(--text,#fff)}
.fan-about{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:.7rem .85rem;margin:.6rem 0;font-size:.93rem;white-space:pre-wrap;overflow-wrap:anywhere}
.fan-about .eyebrow{margin:0 0 .25rem}
.fp-card{margin-top:1rem;padding:1rem;border:1px solid rgba(201,179,240,.22);border-radius:16px;background:rgba(20,8,18,.55)}
.fp-photo-row{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap;margin:.4rem 0 .9rem}
.fp-photo-row .avatar-fan{width:76px;height:76px;font-size:1.7rem}
.fp-colors{display:flex;flex-wrap:wrap;gap:.5rem;margin:.35rem 0 .2rem;border:0;padding:0}
.fp-colors label{position:relative;cursor:pointer;display:block}
.fp-colors input{position:absolute;opacity:0;width:1px;height:1px}
.fp-colors span{display:block;width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.15)}
.fp-colors input:checked + span{border-color:#fff;box-shadow:0 0 0 2px rgba(184,155,232,.7)}
.fp-colors input:focus-visible + span{outline:2px solid #fff;outline-offset:2px}
.comment-item .who{display:flex;align-items:center;gap:.4rem}
.cm-av{width:24px;height:24px;border-radius:50%;flex-shrink:0;display:inline-grid;place-items:center;font-size:.7rem;font-weight:600;color:#fff;overflow:hidden;background:#5b3a8f}
.cm-av img{width:100%;height:100%;object-fit:cover;display:block}
@keyframes fvUp{from{transform:translateY(30px);opacity:.4}to{transform:none;opacity:1}}

.profile-actions{flex-wrap:wrap}
[data-tip]{display:none!important}
:root{
  --bg:#0d0b11;
  --bg2:#120e18;
  --panel:rgba(22,18,28,.88);
  --card:rgba(22,18,28,.8);
  --line:rgba(201,179,240,.14);
  --line-strong:rgba(201,179,240,.32);
  --text:#ffffff;
  --muted:#9ca3af;
  --pink:#c9b3f0;
  --pink-hot:#c9b3f0;
  --pink-soft:#b89be8;
  --pink-light:#dccbf7;
  --pink-mist:rgba(201,179,240,.18);
  --pink-glow:rgba(201,179,240,.45);
  --blush:#b89be8;
  --blush2:#c9b3f0;
  --rose:#c9b3f0;
  --purple:#a855f7;
  --gold:#dccbf7;
  --ok:#5ee0a0;
  --danger:#ff5a7a;
  --radius:20px;
  --navw:252px;
  --railw:300px;
  --top:58px;
  --bottom-nav-h:calc(4.5rem + env(safe-area-inset-bottom,0px));
  --shadow:0 24px 56px rgba(0,0,0,.55);
  --inset:inset 0 1px 0 rgba(255,255,255,.06);
  --glow-pink:rgba(201,179,240,.55);
  --glow-gold:rgba(220,203,247,.5);
  --glow-purple:rgba(168,85,247,.45);
  --glow-pink-soft:0 0 40px rgba(201,179,240,.28), 0 0 80px rgba(168,85,247,.12);
  font-family:var(--sans),system-ui,-apple-system,sans-serif;
  font-weight:400;
  letter-spacing:.01em;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;color:var(--text)}
body{
  background:
    radial-gradient(900px 520px at 8% -8%, rgba(201,179,240,.32), transparent 55%),
    radial-gradient(700px 420px at 96% 2%, rgba(168,85,247,.18), transparent 50%),
    radial-gradient(640px 400px at 50% 108%, rgba(90,60,140,.28), transparent 55%),
    linear-gradient(180deg, #16121c 0%, var(--bg) 40%, #08060c 100%);
  background-attachment:fixed;
  position:relative;overflow-x:hidden;
}
a{color:var(--pink-soft);text-decoration:none;transition:color .18s ease, text-shadow .18s}
a:hover{color:var(--pink-light);text-shadow:0 0 18px rgba(220,203,247,.35)}
button,input,textarea,select{font:inherit}
::selection{background:rgba(184,155,232,.55);color:#fff}

.app-shell{display:grid;min-height:100vh;grid-template-columns:1fr;position:relative;z-index:1}
@media(min-width:900px){.app-shell{grid-template-columns:var(--navw) minmax(0,1fr)}}
@media(min-width:1100px){
  .app-shell.has-rail{
    grid-template-columns:var(--navw) minmax(0,1fr) var(--railw);
    gap:0;column-gap:0;padding-right:0;
  }
}

.side{
  display:none;flex-direction:column;gap:.15rem;padding:1.2rem 1rem 1.6rem;
  border-right:1px solid var(--line);
  background:linear-gradient(180deg, rgba(12,6,14,.98), rgba(5,3,8,.97));
  position:sticky;top:0;height:100vh;overflow:auto;
  contain:layout paint style;
}
@media(min-width:900px){.side{display:flex}}
.side .brand{
  font-family:var(--serif),Georgia,serif;font-size:1.9rem;font-weight:600;
  letter-spacing:.04em;color:var(--text);padding:.35rem .65rem 1.3rem;display:block;
}
.side .brand span{
  background:linear-gradient(115deg,var(--pink-light),var(--pink),var(--pink-hot));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 12px rgba(184,155,232,.4));
}
.side a.nav-item,.side button.nav-item{
  display:flex;align-items:center;gap:.8rem;padding:.78rem .9rem;border-radius:999px;
  color:var(--muted);border:0;background:transparent;cursor:pointer;text-align:left;
  width:100%;font-size:.95rem;font-weight:500;transition:background .2s,color .2s,box-shadow .2s;
}
.side a.nav-item:hover{background:var(--pink-mist);color:var(--text)}
.side a.nav-item.on{
  background:linear-gradient(135deg, rgba(184,155,232,.22), rgba(167,139,222,.12));
  color:#fff;font-weight:650;
  box-shadow:inset 0 0 0 1px rgba(184,155,232,.35), 0 0 24px rgba(184,155,232,.12);
}
.side .ico{width:22px;text-align:center;opacity:.9;font-size:1.05rem}
.side .cta{
  margin-top:.8rem;
  background:linear-gradient(135deg, var(--pink-soft), var(--pink-hot))!important;
  color:#fff!important;font-weight:700;justify-content:center;
  box-shadow:0 10px 32px rgba(167,139,222,.45), 0 0 0 1px rgba(255,255,255,.08) inset;
}
.side .cta:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 14px 40px var(--glow-pink)}
.side .spacer{flex:1}
.lang-switch{display:flex;gap:.35rem;padding:.55rem .5rem;margin-top:.35rem}
.lang-switch button{
  flex:1;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--muted);
  border-radius:999px;padding:.42rem .5rem;cursor:pointer;font-size:.76rem;font-weight:600;
  transition:all .2s;
}
.lang-switch button.on{
  color:#fff;border:0;
  background:linear-gradient(135deg,var(--pink-soft),var(--pink-hot));
  box-shadow:0 6px 18px rgba(167,139,222,.35);
}

.topbar{
  position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;
  gap:.6rem;padding:.6rem .95rem;padding-top:max(.6rem,env(safe-area-inset-top,0px));min-height:var(--top);
  background:rgba(5,3,8,.96);
  border-bottom:1px solid var(--line);
  box-shadow:0 8px 32px rgba(167,139,222,.06);
  contain:layout paint style;
}
@media(min-width:900px){.topbar{display:none}}
.topbar .brand{font-family:var(--serif),Georgia,serif;font-size:1.45rem;font-weight:600;color:var(--text)}
.topbar .brand span{
  background:linear-gradient(115deg,var(--pink-light),var(--pink-hot));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.top-actions{display:flex;gap:.4rem;align-items:center}
.pill{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--muted);
  border-radius:999px;padding:.35rem .7rem;font-size:.76rem;cursor:pointer;transition:all .18s}
.pill.on{color:#fff;border-color:rgba(184,155,232,.5);background:rgba(184,155,232,.18);
  box-shadow:0 0 16px rgba(184,155,232,.2)}

.main-wrap{min-width:0;display:flex;flex-direction:column;width:100%;max-width:none;margin:0}
@media(min-width:900px){
  .main-wrap{max-width:none;padding-right:0;padding-left:0}
  .app-shell:not(.has-rail) .main-wrap{max-width:min(920px,100%);padding-right:1.25rem}
}
.main{padding:0 0 calc(5.8rem + env(safe-area-inset-bottom,0px));min-width:0}
@media(min-width:900px){.main{padding:.4rem 0 2.8rem}}
/* Notifications — mobile: scroll region BETWEEN topbar and fixed bottom-nav (same idea as page-chat) */
.app-shell.page-notif .foot{display:none!important}
.notif-page{min-height:0}
#sb-notif-list{
  display:flex;flex-direction:column;gap:.55rem;
  padding-bottom:.5rem;
}
#sb-notif-list .notif-item{margin:0;padding:.85rem 1rem}
@media(max-width:899px){
  .app-shell.page-notif{
    height:calc(100dvh - var(--bottom-nav-h));
    min-height:0;overflow:hidden;
  }
  .app-shell.page-notif .main-wrap{
    max-width:none!important;width:100%;padding:0!important;margin:0;
    height:100%;
    min-height:0;overflow:hidden;
    display:flex;flex-direction:column;
  }
  .app-shell.page-notif .topbar{
    flex:0 0 auto;position:sticky;top:0;z-index:45;
  }
  .app-shell.page-notif .main{
    flex:1 1 auto;min-height:0;padding:0!important;margin:0;
    display:flex;flex-direction:column;overflow:hidden;
  }
  .app-shell.page-notif .main > .notif-page,
  .app-shell.page-notif .main > .page-pad.notif-page,
  .app-shell.page-notif .main > .page-pad{
    flex:1 1 auto;min-height:0;height:auto;max-height:100%;
    margin:.65rem .65rem .4rem;padding:1rem!important;
    display:flex;flex-direction:column;overflow:hidden;
    border-radius:18px;
  }
  .app-shell.page-notif #sb-notif-list,
  .app-shell.page-notif .notif-list{
    flex:1 1 auto;min-height:0;
    overflow-y:auto;-webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    padding-bottom:1.25rem;
    margin-top:.55rem;
  }
}
@media(min-width:900px){
  .app-shell.page-notif .main{padding-bottom:2.8rem}
  .app-shell.page-notif #sb-notif-list{max-height:none;overflow:visible}
}
@media(min-width:1100px){
  /* Flush: main fills middle column; rail sits tight on the right — no dead void */
  .app-shell.has-rail .main-wrap{max-width:none;width:100%;min-width:0}
  .app-shell.has-rail .main{max-width:none;width:100%;margin:0;padding:.4rem .35rem 2.8rem .15rem}
}

.bottom-nav{
  position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);
  gap:0;padding:.45rem .2rem calc(.55rem + env(safe-area-inset-bottom,0px));
  background:rgba(5,3,8,.97);border-top:1px solid var(--line);
  box-shadow:0 -12px 40px rgba(167,139,222,.08);
  contain:layout paint style;
}
@media(min-width:900px){.bottom-nav{display:none}}
.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:.12rem;padding:.38rem;
  color:var(--muted);font-size:.62rem;font-weight:600;letter-spacing:.02em;
  transition:color .18s, transform .18s, text-shadow .18s}
.bottom-nav a.on{color:var(--pink);transform:translateY(-2px);
  text-shadow:0 0 16px rgba(184,155,232,.55)}
.bottom-nav a:hover{color:var(--pink-light)}
.bottom-nav .ico{font-size:1.18rem}

/* ===== Fansly-style profile card ===== */
.profile-card{
  position:relative;margin:0;overflow:visible;
  background:rgba(14,10,18,.94);
  border:0;border-bottom:1px solid rgba(201,179,240,.16);
  border-radius:0;box-shadow:none;
  contain:layout paint;
}

.cover{
  width:100%;height:auto;aspect-ratio:3 / 1;min-height:148px;max-height:260px;
  position:relative;overflow:hidden;isolation:isolate;border-radius:0;
  background:
    linear-gradient(180deg, rgba(13,11,17,.12) 0%, rgba(13,11,17,.28) 45%, rgba(13,11,17,.88) 100%),
    radial-gradient(ellipse 95% 85% at 50% -5%, rgba(201,179,240,.72), transparent 58%),
    radial-gradient(ellipse 55% 60% at 88% 22%, rgba(168,85,247,.42), transparent 52%),
    radial-gradient(ellipse 40% 50% at 10% 70%, rgba(201,179,240,.32), transparent 55%),
    radial-gradient(circle at 50% 95%, rgba(220,203,247,.08), transparent 40%),
    linear-gradient(155deg, #3a0c22, #140610 50%, #020104);
}
@media(max-width:639px){
  .cover{aspect-ratio:2.15 / 1;min-height:132px;max-height:200px}
}
@media(min-width:900px){
  .cover{max-height:280px;min-height:168px}
}
.cover::before{
  content:"";position:absolute;inset:-30%;z-index:0;
  background:radial-gradient(circle at 42% 38%, rgba(201,179,240,.38), transparent 44%);
  filter:blur(28px);animation:breathe 12s ease-in-out infinite alternate;opacity:.7;
}
.cover::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg, transparent 30%, rgba(13,11,17,.5) 72%, rgba(13,11,17,.92)),
    radial-gradient(1.6px 1.6px at 14% 22%, rgba(255,255,255,.7), transparent),
    radial-gradient(1.4px 1.4px at 72% 16%, rgba(230,220,250,.65), transparent),
    radial-gradient(1px 1px at 38% 48%, rgba(255,255,255,.45), transparent),
    radial-gradient(1.5px 1.5px at 88% 58%, rgba(227,215,250,.55), transparent),
    radial-gradient(1px 1px at 22% 78%, rgba(255,255,255,.4), transparent),
    radial-gradient(1.3px 1.3px at 56% 32%, rgba(220,203,247,.5), transparent);
  mix-blend-mode:screen;opacity:.85;animation:twinkle 5.5s ease-in-out infinite alternate;
}
@keyframes breathe{from{transform:translate3d(-3%,0,0) scale(1)}to{transform:translate3d(4%,3%,0) scale(1.1)}}
@keyframes twinkle{from{opacity:.5}to{opacity:.95}}

.profile-body{position:relative;z-index:2;padding:0 1rem 1.2rem}
@media(min-width:640px){.profile-body{padding:0 1.25rem 1.35rem}}

/* Avatar overlaps cover bottom edge; ALL identity text stays below cover */
.profile-top{
  display:grid;grid-template-columns:auto 1fr;gap:.55rem 1rem;
  align-items:start;margin-top:0;
  --av:108px;
}
@media(min-width:640px){
  .profile-top{--av:124px;gap:.65rem 1.25rem;align-items:start}
}

.avatar-stage{
  position:relative;width:var(--av);height:var(--av);flex-shrink:0;
  margin-top:calc(-1 * var(--av) * .55);margin-bottom:0;grid-row:1 / span 2;
}
.avatar-halo{
  position:absolute;inset:-18px;border-radius:50%;pointer-events:none;
  background:
    radial-gradient(circle, var(--glow-pink) 0%, rgba(201,179,240,.25) 38%, transparent 68%),
    radial-gradient(circle at 70% 30%, var(--glow-gold) 0%, transparent 45%);
  filter:blur(10px);animation:haloPulse 3s ease-in-out infinite;opacity:.9;
}
.avatar-halo::after{
  content:"";position:absolute;inset:8px;border-radius:50%;
  box-shadow:0 0 28px var(--glow-pink), 0 0 56px rgba(220,203,247,.18);
  animation:haloRing 3.6s ease-in-out infinite;
}
@keyframes haloPulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}
@keyframes haloRing{0%,100%{opacity:.45;transform:scale(.96)}50%{opacity:.95;transform:scale(1.04)}}
.avatar-lg{
  position:relative;z-index:1;
  width:var(--av);height:var(--av);border-radius:50%;
  border:2px solid var(--pink-hot);
  box-shadow:
    0 0 0 3px rgba(13,11,17,.95),
    0 0 0 5px rgba(201,179,240,.55),
    0 16px 40px rgba(0,0,0,.55),
    0 0 48px var(--glow-pink);
  background:
    radial-gradient(circle at 32% 28%, rgba(230,220,250,.95), transparent 38%),
    radial-gradient(circle at 68% 58%, rgba(201,179,240,.85), transparent 42%),
    linear-gradient(160deg,#c9b3f0,#1a0812);
  display:grid;place-items:center;
  font-family:var(--serif),serif;font-size:clamp(2rem,8vw,2.6rem);font-weight:600;color:rgba(255,255,255,.45);
}
.crown-badge{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);z-index:3;
  filter:drop-shadow(0 6px 14px rgba(201,179,240,.6)) drop-shadow(0 0 10px var(--glow-gold));
  animation:crownFloat 3.2s ease-in-out infinite;
}
.crown-svg{display:block;width:28px;height:18px}
@media(min-width:640px){.crown-svg{width:32px;height:20px}}
@keyframes crownFloat{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-4px)}}
.avatar-stage.is-online .avatar-lg{
  animation:onlineBreath 2.8s ease-in-out infinite;
}
@keyframes onlineBreath{
  0%,100%{box-shadow:0 0 0 3px rgba(13,11,17,.95),0 0 0 5px rgba(94,224,160,.55),0 16px 40px rgba(0,0,0,.55),0 0 40px var(--glow-pink)}
  50%{box-shadow:0 0 0 3px rgba(13,11,17,.95),0 0 0 6px rgba(94,224,160,.9),0 16px 40px rgba(0,0,0,.55),0 0 64px var(--glow-pink)}
}
.avatar-online{
  position:absolute;right:4px;bottom:6px;z-index:4;
  width:16px;height:16px;border-radius:50%;
  background:var(--ok);border:2.5px solid #0d0b11;
  box-shadow:0 0 12px rgba(94,224,160,.85);
  animation:dotPulse 2s ease-in-out infinite;
}

.profile-header{
  display:flex;flex-direction:column;gap:.45rem;min-width:0;
  padding-top:.45rem;grid-column:2;grid-row:1;align-self:start;
}
@media(min-width:640px){
  .profile-header{
    flex-direction:row;align-items:flex-start;justify-content:space-between;gap:1rem;
    padding-top:.55rem;
  }
}
.profile-header-main{min-width:0;flex:1}
.profile-meta .eyebrow,.profile-header-main .eyebrow{
  margin-bottom:.15rem;
  background:linear-gradient(90deg,var(--pink-light),var(--gold),var(--purple));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  letter-spacing:.22em;font-weight:800;
}
.name-row{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:.05rem 0}
.profile-header-main h1{
  font-family:var(--serif),Georgia,serif;font-size:clamp(1.65rem,4.5vw,2.35rem);
  margin:0;font-weight:600;line-height:1.05;letter-spacing:.01em;
}
.profile-header-main h1 .name-glow{
  background:linear-gradient(115deg,#fff 10%,var(--pink-light) 45%,var(--gold) 95%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 0 18px rgba(201,179,240,.35));
}
.verified-badge{
  display:inline-flex;align-items:center;justify-content:center;
  width:1.35rem;height:1.35rem;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--purple),var(--gold));
  color:#0d0b11;font-size:.72rem;font-weight:800;
  box-shadow:0 0 16px var(--glow-purple), 0 0 10px var(--glow-gold);
}
.star-chip{
  display:inline-flex;align-items:center;gap:.25rem;
  font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:#0d0b11;padding:.26rem .6rem;border-radius:999px;
  background:linear-gradient(135deg,#f0c878 0%,#dccbf7 45%,#c9b3f0 100%);
  box-shadow:0 0 18px rgba(240,200,120,.4), 0 2px 8px rgba(0,0,0,.35);
}
.star-chip::before{content:"♛";font-size:.72rem;line-height:1}
.ai-chip{
  display:inline-flex;align-items:center;gap:.2rem;
  font-size:.58rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;
  color:#e8d9ff;padding:.24rem .55rem;border-radius:999px;
  border:1px solid rgba(168,85,247,.55);
  background:linear-gradient(135deg,rgba(88,40,140,.55),rgba(201,179,240,.22));
  box-shadow:0 0 14px rgba(168,85,247,.35), inset 0 0 10px rgba(255,255,255,.04);
}
.ai-chip::before{content:"AI";font-size:.55rem;line-height:1;color:#d4b3ff;font-weight:800;letter-spacing:.02em}
.handle-row{
  display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .65rem;
  color:var(--muted);margin:.15rem 0 0;font-size:.88rem;font-weight:450;
}
.handle-row .handle{color:var(--muted);margin:0;font-size:.88rem;font-weight:500}
.status-online{
  display:inline-flex;align-items:center;gap:.35rem;
  color:var(--ok);font-size:.82rem;font-weight:600;
}
.tagline{
  margin:.4rem 0 .15rem;font-size:1rem;font-weight:550;letter-spacing:-.01em;line-height:1.35;
  background:linear-gradient(92deg,#ffffff 10%,#dccbf7 55%,#c9b3f0 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.tagline .accent{
  position:relative;display:inline;
  background:linear-gradient(92deg,var(--pink-light),var(--gold),var(--pink));
  background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:accentShift 5s ease-in-out infinite;
  font-family:var(--serif),Georgia,serif;font-style:italic;font-weight:600;
}
.tagline .accent::after{
  content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--pink),var(--gold),var(--pink),transparent);
  background-size:200% 100%;animation:underlineSweep 4.5s ease-in-out infinite;opacity:.9;
}
@keyframes accentShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes underlineSweep{0%,100%{background-position:0% 50%;opacity:.55}50%{background-position:100% 50%;opacity:1}}

/* Action bar — Fansly top-right */
.profile-actions{
  display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;
  grid-column:1 / -1;grid-row:2;
}
@media(min-width:640px){
  .profile-actions{
    grid-column:auto;grid-row:auto;flex-shrink:0;
    justify-content:flex-end;max-width:100%;
  }
}
.profile-actions .btn{min-width:0;padding:.58rem .95rem;font-size:.84rem;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.profile-actions .btn.icon-btn{
  width:2.45rem;height:2.45rem;padding:0;min-width:2.45rem;border-radius:50%;
  font-size:1rem;
}
.profile-actions .btn.primary{box-shadow:0 8px 28px rgba(201,179,240,.45)}
.profile-actions .btn.gold{box-shadow:0 8px 24px rgba(220,203,247,.3)}
.profile-actions .btn.subscribe-cta{
  background:linear-gradient(135deg,#dccbf7 0%,#c9b3f0 45%,#dccbf7 130%);
  border:0;color:#fff;font-weight:700;
  box-shadow:0 10px 32px rgba(201,179,240,.5), 0 0 0 1px rgba(255,255,255,.1) inset;
}

.bio{
  color:var(--muted);line-height:1.65;margin:.85rem 0 .55rem;
  max-width:none;font-size:.94rem;font-weight:400;
  background:none;border:0;padding:0;
}
.info-bar{
  display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .75rem;
  margin:.35rem 0 .7rem;font-size:.84rem;color:var(--muted);
}
.info-bar .info-item{display:inline-flex;align-items:center;gap:.3rem}
.info-bar .info-item a{color:var(--pink-soft)}
.interest-tags{display:flex;flex-wrap:wrap;gap:.35rem}
.interest-tags .tag{
  display:inline-block;padding:.22rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;
  color:var(--pink-light);background:rgba(201,179,240,.1);border:1px solid rgba(201,179,240,.28);
  letter-spacing:.02em;
}
.stats-row{
  display:flex;flex-wrap:wrap;gap:0;margin:.55rem 0 0;
  border-top:1px solid var(--line);padding-top:.75rem;
}
.stats-row > span{
  display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;
  flex:1 1 auto;min-width:4.2rem;padding:.2rem .55rem .1rem 0;
  background:transparent;border:0;backdrop-filter:none;
  font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
}
.stats-row strong{
  font-size:1.05rem;font-weight:700;letter-spacing:0;text-transform:none;
  background:linear-gradient(135deg,#fff,var(--pink-light));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}

/* legacy profile-block (fan profiles) keep usable */
.profile-block{
  padding:0 1.05rem 0;margin-top:-56px;position:relative;z-index:2;
  display:flex;flex-direction:column;align-items:flex-start;text-align:left;
}
.profile-meta{padding:.7rem 0 0;width:100%;max-width:30rem}
.profile-meta h1{
  font-family:var(--serif),Georgia,serif;font-size:clamp(1.75rem,4.5vw,2.35rem);
  margin:0;font-weight:600;line-height:1.05;
}
.handle{color:var(--muted);margin:0;font-size:.9rem;font-weight:450}
.actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.55rem;margin:1rem 0 1.25rem}
.actions .btn{min-width:7.2rem;box-shadow:0 8px 28px rgba(0,0,0,.25)}
.actions .btn.primary{box-shadow:0 10px 36px rgba(201,179,240,.5)}
.actions .btn.gold{box-shadow:0 8px 28px rgba(232,184,74,.35)}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  border-radius:999px;padding:.72rem 1.2rem;border:1px solid var(--line-strong);
  background:rgba(255,255,255,.05);color:var(--text);cursor:pointer;
  font-weight:600;font-size:.9rem;letter-spacing:.015em;
  transition:transform .15s ease, box-shadow .2s, background .2s, border-color .2s, filter .15s;
}
.btn:hover{border-color:rgba(184,155,232,.45);background:rgba(184,155,232,.1);color:#fff}
.btn.primary{
  background:linear-gradient(135deg, #dccbf7 0%, #b89be8 45%, #a78bde 100%);
  border:0;color:#fff;font-weight:700;
  box-shadow:0 12px 32px rgba(167,139,222,.48), 0 0 0 1px rgba(255,255,255,.12) inset;
}
.btn.primary:hover{filter:brightness(1.1);transform:translateY(-2px);
  box-shadow:0 16px 44px var(--glow-pink), 0 0 32px rgba(220,203,247,.35), 0 0 0 1px rgba(255,255,255,.18) inset}
.btn.gold{
  background:linear-gradient(135deg, #ffe08a, #e8b84a);border:0;color:#1a1208;font-weight:700;
  box-shadow:0 8px 24px rgba(232,184,74,.28);position:relative;overflow:hidden;
}
.btn.gold:hover{filter:brightness(1.08);transform:translateY(-2px);
  box-shadow:0 14px 36px var(--glow-gold), 0 0 28px rgba(220,203,247,.35)}
.btn.ghost{background:transparent}
.btn.outline{
  background:transparent;border:1.5px solid rgba(201,179,240,.55);color:#fff;font-weight:650;
}
.btn.outline:hover{background:rgba(201,179,240,.12);border-color:var(--pink);color:#fff}
.btn:disabled{opacity:.5;cursor:default;transform:none;box-shadow:none;filter:none}
.btn{position:relative;overflow:hidden}
.btn.primary.shimmer,.btn.gold,.btn.subscribe-cta{/* shimmer host */}
.btn.subscribe-cta{
  background:linear-gradient(135deg,#dccbf7 0%,#c9b3f0 45%,#dccbf7 140%);
  border:0;color:#fff;font-weight:700;
  box-shadow:0 10px 32px rgba(201,179,240,.5), 0 0 0 1px rgba(255,255,255,.1) inset;
}
.btn.subscribe-cta:hover{filter:brightness(1.08);transform:translateY(-2px);
  box-shadow:0 14px 40px var(--glow-pink), 0 0 28px rgba(220,203,247,.25)}
.btn.gold::before,.btn.shimmer::before,.btn.subscribe-cta::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(105deg, transparent 30%, rgba(255,255,255,.55) 48%, rgba(240,235,252,.35) 52%, transparent 70%);
  transform:translateX(-120%);animation:ctaShimmer 4.2s ease-in-out infinite;
}
.btn.primary.shimmer::before{
  background:linear-gradient(105deg, transparent 28%, rgba(255,255,255,.4) 48%, rgba(230,220,250,.3) 55%, transparent 72%);
}
@keyframes ctaShimmer{
  0%,55%{transform:translateX(-130%);opacity:0}
  60%{opacity:1}
  78%{transform:translateX(130%);opacity:.85}
  100%{transform:translateX(130%);opacity:0}
}

.tabs{display:flex;gap:0;border-bottom:1px solid var(--line);margin:.55rem 0 .85rem;overflow-x:auto;position:relative;padding:0 .25rem}
@media(min-width:640px){.tabs{margin:.55rem .75rem .85rem;padding:0}}
.tabs-indicator{
  position:absolute;bottom:0;height:2.5px;border-radius:2px;pointer-events:none;z-index:1;
  background:linear-gradient(90deg,var(--pink-light),var(--pink),var(--purple),var(--gold));
  box-shadow:0 0 14px var(--glow-pink), 0 0 10px var(--glow-purple), 0 0 8px var(--glow-gold);
  transition:left .28s cubic-bezier(.22,.7,.25,1), width .28s cubic-bezier(.22,.7,.25,1);
}
.tabs a{
  padding:.9rem 1.05rem;color:var(--muted);border-bottom:2px solid transparent;
  white-space:nowrap;font-weight:500;font-size:.9rem;letter-spacing:.02em;transition:color .15s;
  position:relative;z-index:2;
}
.tabs a.on{color:#fff;border-color:transparent;text-shadow:0 0 14px rgba(201,179,240,.45)}
.tabs a:hover{color:var(--pink-light)}
.media-subtabs{display:flex;gap:.4rem;padding:0 .85rem .75rem;flex-wrap:wrap}
.media-subtabs a,.media-subtabs button{
  padding:.35rem .75rem;border-radius:999px;font-size:.78rem;font-weight:600;
  border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--muted);cursor:pointer;
}
.media-subtabs a.on,.media-subtabs button.on{
  color:#fff;border-color:rgba(201,179,240,.45);background:rgba(201,179,240,.16);
  box-shadow:0 0 14px rgba(201,179,240,.2);
}

.feed{display:grid;gap:.85rem;padding:0 0 1.2rem}
@media(min-width:640px){.feed{padding:0 .75rem 1.2rem}}
.card{
  background:rgba(22,18,28,.94);
  border:1px solid transparent;border-radius:var(--radius);overflow:hidden;
  box-shadow:var(--shadow), var(--inset), 0 0 0 1px rgba(201,179,240,.08);
  transition:transform .2s ease, box-shadow .25s ease, border-color .2s;
  position:relative;
  content-visibility:auto;contain-intrinsic-size:auto 520px;
  contain:layout paint style;
}
.card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:3;
  background:linear-gradient(145deg, rgba(220,203,247,.4), rgba(240,200,120,.28), rgba(184,155,232,.35));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:.7;
}
.card:hover{
  border-color:transparent;
  box-shadow:var(--shadow), 0 0 36px rgba(184,155,232,.22), 0 0 24px rgba(220,203,247,.08), var(--inset);
  transform:translateY(-2px);
}
.card.glass,.glass{
  background:rgba(14,8,18,.92);
  border:1px solid rgba(184,155,232,.22);
  box-shadow:0 16px 48px rgba(0,0,0,.4), 0 0 40px rgba(184,155,232,.1);
}
.post-head{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem .1rem;position:relative}
.post-head .mini{
  width:40px;height:40px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--pink-light),var(--pink-hot));
  box-shadow:0 0 0 2px rgba(184,155,232,.35), 0 6px 16px rgba(167,139,222,.3);
}
.post-head .post-meta{min-width:0;flex:1}
.post-head strong{display:inline;font-size:.92rem;font-weight:650}
.post-head .sub{color:var(--muted);font-size:.76rem;margin-top:.1rem}
.post-text{padding:.5rem 1.05rem .65rem;line-height:1.55;font-size:.97rem;font-weight:350}
.post-media{
  position:relative;width:100%;aspect-ratio:4/5;background:#08040a;margin:0;
  max-height:min(480px,72vh);overflow:hidden;
}
@media(min-width:900px){.post-media{max-height:520px}}
@media(max-width:639px){.post-media{max-height:420px;aspect-ratio:3/4}}
.post-media .ph{width:100%;height:100%;min-height:180px;display:block;
  background:
    radial-gradient(circle at 30% 28%, hsla(330,90%,55%,.65), transparent 48%),
    linear-gradient(145deg,hsl(330 55% 22%),hsl(340 60% 8%))}
.post-media img,.post-media video{
  width:100%;height:100%;max-height:inherit;object-fit:cover;object-position:center;display:block;
}
.post.locked .post-media img,.post.locked .post-media video,.post.locked .post-media .ph{
  filter:blur(10px) brightness(.38) saturate(.9);transform:scale(1.04)
}
.lock-overlay{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.5rem;background:rgba(5,2,8,.78);text-align:center;padding:1.2rem;
  overflow:hidden;
}
.lock-overlay .sparkles{
  position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .35s;
  background-image:
    radial-gradient(circle, rgba(220,203,247,.9) 0 1px, transparent 1.5px),
    radial-gradient(circle, rgba(220,203,247,.85) 0 1px, transparent 1.5px),
    radial-gradient(circle, #fff 0 1px, transparent 1.5px);
  background-size:60px 80px, 90px 70px, 50px 60px;
  background-position:10% 20%, 70% 40%, 40% 75%;
  animation:sparkleDrift 3.5s linear infinite;
}
.post.locked:hover .lock-overlay .sparkles{opacity:.85}
@keyframes sparkleDrift{from{transform:translateY(0)}to{transform:translateY(-18px)}}
.lock-ico{
  width:56px;height:56px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(145deg, rgba(184,155,232,.35), rgba(240,200,120,.2));
  border:1px solid rgba(220,203,247,.45);font-size:1.3rem;
  box-shadow:0 0 36px var(--glow-pink), 0 0 20px var(--glow-gold), 0 0 0 4px rgba(184,155,232,.1);
  color:#fff;position:relative;z-index:1;animation:keyGlow 2.8s ease-in-out infinite;
}
@keyframes keyGlow{0%,100%{box-shadow:0 0 24px var(--glow-pink),0 0 12px var(--glow-gold)}50%{box-shadow:0 0 42px var(--glow-pink),0 0 28px var(--glow-gold)}}
.lock-overlay strong,.lock-overlay .muted,.lock-overlay .btn{position:relative;z-index:1}
.post-stats{display:none}
.post-actions{
  display:flex;align-items:center;gap:.1rem;flex-wrap:wrap;
  padding:.25rem .55rem .55rem;border-top:1px solid var(--line);
}
.post-actions button{
  display:inline-flex;align-items:center;justify-content:center;gap:.32rem;
  background:transparent;border:0;color:var(--muted);
  padding:.42rem .68rem;cursor:pointer;border-radius:999px;
  font-weight:600;font-size:.82rem;line-height:1;
  transition:color .15s, background .15s, text-shadow .15s;
}
.post-actions button .pa-ico{font-size:1.05rem;line-height:1;opacity:.92}
.post-actions button .pa-n{font-variant-numeric:tabular-nums;font-size:.8rem;color:inherit}
.post-actions button:hover{background:rgba(201,179,240,.1);color:var(--pink);
  text-shadow:0 0 12px rgba(201,179,240,.35)}
.post-head .post-menu{
  margin-left:auto;background:transparent;border:0;color:var(--muted);cursor:pointer;
  font-size:1.25rem;padding:.3rem .55rem;border-radius:999px;line-height:1;
  flex-shrink:0;
}
.post-head .post-menu:hover{color:#fff;background:rgba(255,255,255,.06)}
.post-menu-pop{
  display:none !important;position:absolute;right:.55rem;top:2.45rem;z-index:8;min-width:10.5rem;
  background:rgba(16,12,20,.98);border:1px solid rgba(201,179,240,.28);border-radius:12px;
  box-shadow:0 18px 44px rgba(0,0,0,.55), 0 0 24px rgba(201,179,240,.08);padding:.35rem;
}
.post-menu-pop.open{display:grid !important}
.post-menu-pop[hidden]{display:none !important}
.post-menu-pop button{
  background:transparent;border:0;color:var(--muted);text-align:left;padding:.55rem .7rem;
  border-radius:8px;cursor:pointer;font-size:.84rem;font-weight:500;width:100%;
}
.post-menu-pop button:hover{background:rgba(201,179,240,.12);color:#fff}
.badge.ppv{color:var(--gold);border-color:rgba(220,203,247,.45);background:rgba(220,203,247,.1)}
.badge.subs{color:var(--purple);border-color:rgba(168,85,247,.5);background:rgba(168,85,247,.12)}

.badge{
  display:inline-block;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;
  padding:.22rem .55rem;border-radius:999px;border:1px solid var(--line);color:var(--muted);margin-right:.35rem;
}
.badge.free{color:var(--ok);border-color:rgba(94,224,160,.35);background:rgba(94,224,160,.08)}
.badge.locked{color:var(--pink-light);border-color:rgba(184,155,232,.5);
  background:rgba(184,155,232,.12);box-shadow:0 0 12px rgba(184,155,232,.15)}
.badge.verified{color:var(--pink-light);border-color:rgba(220,203,247,.5);
  background:rgba(184,155,232,.12)}

.page-pad{padding:1.25rem 1.1rem}
.eyebrow{
  text-transform:uppercase;letter-spacing:.18em;font-size:.66rem;color:var(--pink-soft);
  margin:0 0 .35rem;font-weight:700;text-shadow:0 0 14px rgba(184,155,232,.25);
}
h1,h2{font-family:var(--serif),Georgia,serif;font-weight:600;line-height:1.12;margin:.1rem 0 .5rem;letter-spacing:.01em}
h1{font-size:clamp(1.75rem,4vw,2.25rem)}
.muted{color:var(--muted)}
.form{display:grid;gap:.85rem}
label{display:grid;gap:.35rem;font-size:.86rem;color:var(--muted);font-weight:450}
input,textarea,select{
  width:100%;padding:.82rem 1rem;border-radius:16px;border:1px solid var(--line);
  background:rgba(0,0,0,.4);color:var(--text);transition:border-color .2s, box-shadow .2s;
}
input:focus,textarea:focus,select:focus{
  outline:none;border-color:rgba(184,155,232,.65);
  box-shadow:0 0 0 3px rgba(184,155,232,.2), 0 0 24px rgba(184,155,232,.12);
}
.flash{padding:.85rem 1rem;border-radius:14px;margin-bottom:1rem;border:1px solid var(--line);font-size:.92rem}
.flash.ok{background:rgba(94,224,160,.1);color:var(--ok);border-color:rgba(94,224,160,.3)}
.flash.err{background:rgba(255,90,122,.1);color:var(--danger);border-color:rgba(255,90,122,.3)}
.flash.warn{background:rgba(184,155,232,.1);color:var(--pink-light);border-color:rgba(184,155,232,.3)}

.foot{text-align:center;padding:1.6rem 1rem 2.2rem;color:var(--muted);font-size:.78rem;
  border-top:1px solid var(--line);margin-top:1.2rem;letter-spacing:.02em}

.age-gate{
  position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1.1rem;
  background:rgba(2,1,4,.96);
}
.age-card{
  max-width:420px;width:100%;
  background:linear-gradient(165deg, rgba(36,14,28,.95), rgba(8,4,12,.98));
  border:1px solid rgba(184,155,232,.35);border-radius:24px;padding:1.75rem 1.6rem;
  box-shadow:0 40px 80px rgba(0,0,0,.6), 0 0 80px rgba(167,139,222,.2), var(--inset);
}
.age-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.2rem}
.blurred-by-age{filter:blur(10px) brightness(.65);pointer-events:none;user-select:none}

.price-card{
  display:grid;gap:.6rem;padding:1.45rem;border-radius:22px;
  border:1px solid rgba(184,155,232,.4);
  background:linear-gradient(160deg, rgba(184,155,232,.18), rgba(167,139,222,.06));
  box-shadow:var(--shadow), 0 0 48px rgba(167,139,222,.15), var(--inset);
}
.price{font-family:var(--serif),serif;font-size:2.5rem;font-weight:600;color:var(--pink-light);margin:0;
  text-shadow:0 0 24px rgba(184,155,232,.35)}

.chat-shell{
  display:flex;flex-direction:column;
  height:calc(100dvh - 7.5rem);min-height:420px;max-height:none;
  border-radius:22px;overflow:hidden;border:1px solid rgba(184,155,232,.25);
  background:linear-gradient(165deg, rgba(28,12,24,.96), rgba(8,4,12,.98));
  box-shadow:var(--shadow), 0 0 48px rgba(167,139,222,.12), var(--inset);
  contain:layout paint;
}
@media(min-width:900px){
  .chat-shell{height:calc(100vh - 3rem)}
}
.app-shell.page-chat .chat-shell{
  height:100%;min-height:0;border-radius:0;border:0;box-shadow:none;
}
.chat-head{
  display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;flex-wrap:wrap;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(184,155,232,.1), transparent);
}
.chat-head .ava{
  width:46px;height:46px;border-radius:50%;flex-shrink:0;
  background:
    radial-gradient(circle at 32% 28%, rgba(238,230,252,.95), transparent 40%),
    linear-gradient(145deg, var(--pink-light), var(--pink-hot));
  box-shadow:0 0 0 2px rgba(184,155,232,.45), 0 8px 22px rgba(167,139,222,.4);
  display:grid;place-items:center;font-family:var(--serif),serif;font-size:1.3rem;color:#fff;font-weight:700;
}
.chat-head h2{margin:0;font-size:1.2rem}
.chat-head .sub{color:var(--muted);font-size:.8rem;margin-top:.12rem}
.chat-thread{
  flex:1;overflow:auto;display:flex;flex-direction:column;gap:.55rem;
  padding:1rem 1rem 1.1rem;scroll-behavior:smooth;
}
.chat-day{
  align-self:center;margin:.45rem 0 .2rem;padding:.28rem .75rem;border-radius:999px;
  font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:650;
  color:var(--pink-soft);background:rgba(184,155,232,.1);border:1px solid rgba(184,155,232,.25);
}
.chat-empty{
  margin:auto;text-align:center;padding:2rem 1.2rem;max-width:280px;
}
.chat-empty .moon{
  width:60px;height:60px;margin:0 auto .9rem;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #ebe2fb, transparent 42%),
    linear-gradient(160deg, var(--pink-soft), var(--pink-hot));
  box-shadow:0 0 48px var(--pink-glow), 0 0 24px var(--glow-pink);
}
.bubble{
  max-width:min(78%,440px);padding:.72rem .95rem .52rem;border-radius:18px;
  line-height:1.55;font-size:.94rem;font-weight:350;position:relative;
  animation:bubbleIn .28s ease both;word-wrap:break-word;overflow-wrap:anywhere;
}
@keyframes bubbleIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.bubble.fan{
  background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);
  box-shadow:0 8px 22px rgba(0,0,0,.22);color:rgba(255,255,255,.88);
}
.bubble.lily{
  background:linear-gradient(145deg, rgba(184,155,232,.55), rgba(201,179,240,.32));
  border:1px solid rgba(184,155,232,.5);
  box-shadow:0 10px 28px rgba(167,139,222,.28), 0 0 24px rgba(184,155,232,.14);
}
.bubble.mine{align-self:flex-end;border-bottom-right-radius:5px}
.bubble.theirs{align-self:flex-start;border-bottom-left-radius:5px}
.bubble .who{font-size:.66rem;color:var(--muted);margin-bottom:.28rem;letter-spacing:.04em;font-weight:600}
.tr-note{font-size:.72rem;opacity:.62;margin-top:.2rem;font-style:italic}.tr-note span{font-style:normal}
.ai-tag{display:inline-block;font-size:.62rem;padding:0 .35rem;border-radius:999px;background:rgba(232,160,191,.18);color:var(--accent,#e8a0bf);margin-left:.25rem}
.ai-del{background:none;border:0;cursor:pointer;font-size:.72rem;padding:0 .2rem;opacity:.7;color:inherit}.ai-del:hover{opacity:1}
.ai-off-dot{font-size:.62rem;opacity:.8;white-space:nowrap}.ai-off-dot[hidden]{display:none}
.ai-pause-btn{margin-left:auto;font-size:.74rem;padding:.3rem .6rem;white-space:nowrap}
.bubble.lily .who{color:var(--pink-light)}
.bubble .time{display:block;font-size:.62rem;color:var(--muted);margin-top:.35rem;opacity:.8}
.bubble-media{margin:.25rem 0 .35rem}
.bubble-media img{max-width:min(240px,70vw);max-height:220px;border-radius:12px;display:block;object-fit:cover}
.bubble-voice audio{width:min(240px,70vw);max-width:100%;height:36px;display:block}
.bubble-voice .voice-label{font-size:.68rem;color:var(--muted);margin-top:.2rem}
.chat-voice{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);cursor:pointer;flex-shrink:0;font-size:1.05rem;color:inherit}
.chat-voice.rec{background:rgba(167,139,222,.35);border-color:rgba(184,155,232,.7);box-shadow:0 0 16px rgba(184,155,232,.35);animation:pulseRec 1s ease infinite}
@keyframes pulseRec{50%{box-shadow:0 0 22px rgba(184,155,232,.55)}}
.chat-voice-status{font-size:.75rem;color:var(--pink-soft);margin:.2rem 0;min-height:1em}
.bubble-reacts{display:flex;flex-wrap:wrap;align-items:center;gap:.28rem;margin-top:.4rem;position:relative}
.react-chips{display:flex;flex-wrap:wrap;gap:.22rem}
.react-chip{appearance:none;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.28);color:#fff;border-radius:999px;padding:.12rem .42rem;font-size:.78rem;cursor:pointer;line-height:1.3}
.react-chip.on{border-color:rgba(184,155,232,.55);background:rgba(184,155,232,.22)}
.react-chip span{margin-left:.2rem;opacity:.85;font-size:.7rem}
.react-add{appearance:none;border:1px dashed rgba(255,255,255,.18);background:transparent;color:var(--muted);border-radius:999px;padding:.1rem .4rem;font-size:.72rem;cursor:pointer}
.react-picker{position:static;flex-basis:100%;width:max-content;max-width:100%;flex-wrap:wrap;margin-top:.3rem;z-index:50;display:flex;gap:.15rem;padding:.35rem;border-radius:14px;background:rgba(12,6,14,.96);border:1px solid rgba(184,155,232,.35);box-shadow:0 10px 30px rgba(0,0,0,.45)}
.bubble.mine .react-picker{margin-left:auto}.react-picker[hidden]{display:none!important}
.react-pick{appearance:none;border:0;background:transparent;font-size:1.15rem;cursor:pointer;padding:.15rem;border-radius:8px;line-height:1}
.react-pick:hover{background:rgba(184,155,232,.2)}
.chat-attach{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);cursor:pointer;flex-shrink:0;font-size:1.1rem}
.chat-attach input{display:none}
.chat-attach-preview{font-size:.75rem;color:var(--muted);margin:.25rem 0}
.lm-toast{position:fixed;left:50%;bottom:88px;transform:translateX(-50%) translateY(12px);background:rgba(20,8,18,.94);border:1px solid rgba(184,155,232,.45);color:#fff;padding:.7rem 1.1rem;border-radius:999px;font-size:.88rem;z-index:9999;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 10px 40px rgba(0,0,0,.45)}
.lm-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.report-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);padding:1rem}
.report-modal[hidden]{display:none!important}
.report-modal .box{background:var(--card,#121016);border:1px solid var(--line);border-radius:18px;padding:1.1rem;max-width:420px;width:100%}
.friend-actions{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.65rem}
.bubble.mine .time{text-align:right}
.bubble.theirs .time{text-align:left}
.chat-shell .chat-thread{flex:1;min-height:0;overflow-y:auto}
.chat-shell .chat-composer{flex:0 0 auto;display:block!important}
.chat-composer{
  border-top:1px solid var(--line);padding:.65rem .75rem calc(.75rem + env(safe-area-inset-bottom));
  background:rgba(5,3,8,.96);
}
.chat-composer .row{display:flex;gap:.5rem;align-items:flex-end}
.chat-composer textarea{
  flex:1;min-height:42px;max-height:120px;resize:none;border-radius:16px;padding:.65rem .85rem;
  background:rgba(0,0,0,.35);border:1px solid rgba(184,155,232,.22);
}
.chat-composer .btn{flex-shrink:0;min-width:88px;padding:.7rem 1rem}

/* Owner DM split — full-height shell; list scrolls; composer always visible */
.app-shell.page-chat .foot{display:none!important}
.app-shell.page-chat .main-wrap{
  max-width:none!important;width:100%;padding:0!important;margin:0;
  min-height:100vh;height:100vh;height:100dvh;overflow:hidden;
}
.app-shell.page-chat .main{
  flex:1;min-height:0;padding:0!important;margin:0;
  display:flex;flex-direction:column;overflow:hidden;
}
.app-shell.page-chat .main > .page-pad,
.app-shell.page-chat .main > .dm-page{
  flex:1 1 auto;min-height:0;height:100%;margin:0;padding:0!important;
  display:flex;flex-direction:column;overflow:hidden;
}
@media(max-width:899px){
  .app-shell.page-chat .main-wrap{
    height:calc(100dvh - 3.6rem - env(safe-area-inset-bottom,0px));
    min-height:0;
  }
}
.dm-page{
  flex:1;min-height:0;height:100%;margin:0;padding:0;
  display:flex;flex-direction:column;overflow:hidden;
}
.dm-shell{
  flex:1;min-height:0;height:100%;width:100%;
  display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);
  overflow:hidden;border:0;border-radius:0;
  background:linear-gradient(165deg, rgba(28,12,24,.96), rgba(8,4,12,.98));
  box-shadow:none;
}
@media(min-width:820px){
  .dm-shell{
    grid-template-columns:minmax(260px,320px) minmax(0,1fr);
    border-left:1px solid rgba(184,155,232,.18);
    border-right:1px solid rgba(184,155,232,.18);
  }
}
.dm-list{
  display:flex;flex-direction:column;justify-content:flex-start;
  min-height:0;height:100%;overflow:hidden;
  border-bottom:1px solid var(--line);
  background:rgba(8,4,12,.7);
}
@media(min-width:820px){
  .dm-list{border-bottom:0;border-right:1px solid var(--line)}
}
.dm-list-head{
  flex:0 0 auto;padding:.85rem 1rem .7rem;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(184,155,232,.1), transparent);
}
.dm-list-head h1{margin:0;font-size:1.25rem}
.dm-list-head .muted{margin:.25rem 0 0;font-size:.78rem}
.dm-search{
  margin:.65rem 0 0;width:100%;border-radius:12px;padding:.55rem .75rem;font-size:.85rem;
  background:rgba(0,0,0,.35);border:1px solid rgba(184,155,232,.2);color:var(--text);
}
.dm-list-scroll{
  flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;
  display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;
  gap:.12rem;padding:.35rem .4rem .6rem;
  /* kill any space-between / margin-top:auto pushing fans to bottom */
}
.dm-item{
  flex:0 0 auto;margin-top:0!important;align-self:stretch;
  display:flex;align-items:center;gap:.7rem;padding:.65rem .6rem;border-radius:14px;
  color:inherit;text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:background .15s,border-color .15s;
}
.dm-item:hover{background:rgba(184,155,232,.08)}
.dm-item.on{
  background:rgba(184,155,232,.14);border-color:rgba(184,155,232,.35);
  box-shadow:inset 0 0 0 1px rgba(184,155,232,.15);
}
.dm-item .meta{min-width:0;flex:1}
.dm-item .meta strong{
  display:block;font-size:.9rem;font-weight:650;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.dm-item .meta .handle{
  font-size:.72rem;color:var(--pink-soft);font-weight:550;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.dm-item .meta .preview{
  font-size:.78rem;color:var(--muted);margin-top:.18rem;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.dm-item .dm-time{
  flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:.28rem;
  height:auto!important;min-height:0;max-height:none;position:static!important;
  overflow:visible;padding:0!important;margin:0;border:0!important;border-right:0!important;
  background:none!important;backdrop-filter:none!important;gap:.28rem;
}
.dm-item .dm-time .t{font-size:.68rem;color:var(--muted)}
.nav-unread{
  display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .28rem;
  margin-left:.35rem;border-radius:999px;font-size:.62rem;font-weight:800;line-height:1;
  background:linear-gradient(135deg,var(--pink),var(--pink-hot));color:#fff;
  box-shadow:0 0 10px rgba(184,155,232,.45);
}
.nav-item .nav-unread,.bottom-nav .nav-unread{vertical-align:middle}
.dm-badge{
  min-width:1.15rem;height:1.15rem;padding:0 .35rem;border-radius:999px;
  background:linear-gradient(135deg,var(--pink-soft),var(--pink-hot));
  color:#fff;font-size:.65rem;font-weight:700;display:grid;place-items:center;
  box-shadow:0 4px 12px rgba(167,139,222,.45);
}
.dm-pane{
  display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;
}
.dm-pane .chat-head{flex:0 0 auto}
.dm-pane .chat-thread{flex:1 1 auto;min-height:0;overflow-y:auto}
.dm-pane .chat-composer{
  flex:0 0 auto;display:block!important;visibility:visible!important;
  position:relative;z-index:2;
  border-top:1px solid var(--line);padding:.65rem .75rem calc(.75rem + env(safe-area-inset-bottom));
  background:rgba(5,3,8,.97);
}
.dm-empty{
  flex:1;display:grid;place-items:center;text-align:center;padding:2rem 1.4rem;color:var(--muted);
}
.dm-empty .moon{
  width:56px;height:56px;margin:0 auto .85rem;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #ebe2fb, transparent 42%),
    linear-gradient(160deg, var(--pink-soft), var(--pink-hot));
  box-shadow:0 0 40px var(--pink-glow);
}
.dm-back{
  display:inline-flex;align-items:center;gap:.35rem;margin-right:.35rem;
  color:var(--pink-soft);font-size:.82rem;font-weight:600;text-decoration:none;
}
@media(min-width:820px){.dm-back{display:none}}
.dm-shell.show-thread .dm-list{display:none}
.dm-shell.show-thread .dm-pane{display:flex}
@media(min-width:820px){
  .dm-shell.show-thread .dm-list{display:flex}
}
@media(max-width:819px){
  .dm-shell:not(.show-thread) .dm-pane{display:none}
  .dm-shell:not(.show-thread) .dm-list{height:100%;min-height:0}
}
.dm-admin-link{font-size:.78rem;margin-top:.45rem}
.dm-admin-link a{color:var(--pink-soft)}

.avatar-fan{
  width:118px;height:118px;border-radius:50%;border:3px solid #050308;
  box-shadow:0 0 0 2px rgba(184,155,232,.5), 0 18px 44px rgba(0,0,0,.5), 0 0 44px rgba(184,155,232,.3);
  display:grid;place-items:center;
  font-family:var(--serif),serif;font-size:2.6rem;font-weight:600;color:rgba(255,255,255,.7);
}
.avatar-sm{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;
  font-family:var(--serif),serif;font-weight:600;color:rgba(255,255,255,.85);font-size:1.05rem;
  box-shadow:0 0 0 2px rgba(184,155,232,.35), 0 6px 16px rgba(167,139,222,.3);
}
.profile-card-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin:.7rem 0}
.username{color:var(--pink-soft);font-weight:600}
.username:hover{color:var(--pink-light)}

.admin-msg{border-bottom:1px solid var(--line);padding:.8rem 0}
.grid-2{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}.grid-2>*{min-width:0}@media(min-width:720px){.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}#ppv-admin table,#ppv-sales table{display:block;max-width:100%;overflow-x:auto}
.chip{
  padding:.32rem .75rem;border-radius:999px;border:1px solid var(--line);
  background:rgba(255,255,255,.03);font-size:.82rem;color:var(--muted);font-weight:550;
}
.chip.pro{color:var(--gold);border-color:rgba(240,200,120,.4);background:rgba(240,200,120,.08)}
.chip.verified{color:var(--pink-light);border-color:rgba(184,155,232,.45);background:rgba(184,155,232,.12)}
.chip.pending{color:var(--pink-soft);border-color:rgba(184,155,232,.4);background:rgba(184,155,232,.1)}
.online-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ok);
  margin-right:.4rem;box-shadow:0 0 10px rgba(94,224,160,.7);animation:dotPulse 2s ease-in-out infinite}
@keyframes dotPulse{0%,100%{opacity:.7;box-shadow:0 0 8px rgba(94,224,160,.5)}50%{opacity:1;box-shadow:0 0 14px rgba(94,224,160,.95)}}
.verify-box{
  margin-top:1.25rem;padding:1.2rem;border-radius:18px;border:1px solid rgba(184,155,232,.22);
  background:rgba(184,155,232,.06);
}
.legal{line-height:1.75;max-width:720px}
.legal h1{margin:0 0 .5rem;font-size:1.75rem}
.legal h2{margin:1.6rem 0 .55rem;font-size:1.15rem;color:var(--pink-light)}
.legal h3{margin:1.1rem 0 .4rem;font-size:1.02rem}
.legal ul{margin:.4rem 0 .8rem;padding-left:1.2rem}
.legal li{margin:.35rem 0}
.legal-meta{font-size:.85rem;margin:0 0 1.25rem}
.legal a{color:var(--pink-light);text-decoration:underline;text-underline-offset:2px}
.verify-legal{font-size:.82rem;color:var(--muted);margin:.15rem 0 .75rem;line-height:1.45}
.verify-legal a{color:var(--pink-light)}
.auth-hero{text-align:center;padding:1.5rem 1rem .5rem}
.auth-hero .moon{
  width:68px;height:68px;margin:0 auto .9rem;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #ebe2fb, transparent 42%),
    radial-gradient(circle at 65% 60%, var(--pink), transparent 45%),
    linear-gradient(160deg,#b89be8,#120810);
  box-shadow:0 0 48px rgba(184,155,232,.45);
}

/* ===== Right social rail (Fansly/FB) ===== */
.social-rail{
  display:none;flex-direction:column;gap:.85rem;padding:1rem .75rem 2rem .15rem;
  position:sticky;top:0;height:100vh;overflow:auto;align-self:start;
  width:var(--railw);max-width:var(--railw);min-width:0;box-sizing:border-box;
}
@media(min-width:1100px){
  .app-shell.has-rail .social-rail{
    display:flex;justify-self:stretch;
    padding:1rem .9rem 2rem .65rem;
    border-left:1px solid var(--line);
    background:linear-gradient(180deg, rgba(12,6,14,.72), rgba(5,3,8,.4));
  }
}
.rail-card{
  background:rgba(14,10,18,.94);border:1px solid rgba(201,179,240,.18);
  border-radius:18px;padding:.9rem .95rem 1rem;
  box-shadow:0 12px 32px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.04);
  contain:layout paint;
}
.rail-card h3{
  margin:0 0 .75rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;
  font-weight:700;color:var(--pink-soft);
}
.rail-list{display:flex;flex-direction:column;gap:.55rem}
.rail-person{
  display:flex;align-items:center;gap:.65rem;padding:.35rem .2rem;border-radius:12px;
  color:var(--text);transition:background .18s;
}
.rail-person:hover{background:rgba(184,155,232,.08)}
.rail-person .meta{min-width:0;flex:1}
.rail-person .meta strong{display:block;font-size:.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-person .meta span{display:block;font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-person .dot-on{
  width:9px;height:9px;border-radius:50%;background:var(--ok);flex-shrink:0;
  box-shadow:0 0 10px rgba(94,224,160,.7);
}
.rail-hint{font-size:.78rem;color:var(--muted);margin:.35rem 0 0;line-height:1.45}
.rail-empty{font-size:.82rem;color:var(--muted);padding:.25rem 0}
.avatar-xs{
  width:36px;height:36px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;
  font-family:var(--serif),serif;font-weight:600;color:rgba(255,255,255,.9);font-size:.95rem;
  box-shadow:0 0 0 2px rgba(184,155,232,.35);
  background-size:cover;background-position:center;
}

/* Mobile community strip under profile */
.mobile-rail{display:block;margin:.75rem .75rem 0;padding:0}
@media(min-width:1100px){.mobile-rail{display:none}}
.mobile-rail .rail-card{margin-bottom:.75rem}

/* Cover / avatar owner edit chrome */
.cover{position:relative}
.cover.has-img{background-color:#0a060c}
.cover.has-img::before{opacity:.18}
.cover.has-img::after{
  opacity:.55;mix-blend-mode:normal;
  background:linear-gradient(180deg, transparent 62%, rgba(13,11,17,.22) 88%, rgba(13,11,17,.55));
}
.cover-img-el{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
  display:block;z-index:0;pointer-events:none;
}
/* Full-banner owner control: always-visible CTA top-right + hover dim */
.cover .media-edit.cover-edit{
  position:absolute;inset:0;z-index:6;
  display:flex;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;
  gap:.4rem;padding:.65rem .7rem;
  background:transparent;transition:background .18s ease;
  pointer-events:none; /* children re-enable */
}
.cover .media-edit.cover-edit > *{pointer-events:auto}
.cover .media-edit.cover-edit:hover,
.cover .media-edit.cover-edit:focus-within{
  background:linear-gradient(180deg, rgba(5,2,10,.55) 0%, rgba(5,2,10,.28) 55%, rgba(5,2,10,.15) 100%);
}
.cover-edit-cta{
  display:inline-flex;align-items:center;gap:.45rem;
  border:0;cursor:pointer;max-width:calc(100% - .5rem);
  padding:.55rem .95rem;border-radius:999px;
  background:linear-gradient(135deg,var(--pink-soft),var(--pink-hot));
  color:#fff;font-weight:700;font-size:.82rem;letter-spacing:.01em;
  box-shadow:0 8px 24px rgba(167,139,222,.5),0 0 0 2px rgba(5,3,8,.8);
  transition:transform .15s,filter .15s;
}
.cover-edit-cta:hover{transform:scale(1.04);filter:brightness(1.08)}
.cover-edit-cta .cam{font-size:1.05rem;line-height:1}
@media(max-width:479px){
  .cover-edit-cta span:not(.cam){display:none}
  .cover-edit-cta{padding:.55rem;width:40px;height:40px;justify-content:center;border-radius:50%}
}
.avatar-stage{position:relative}
.avatar-lg.has-img{
  background-size:cover!important;background-position:center!important;color:transparent!important;
  font-size:0!important;
}
.avatar-lg img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;
}
.avatar-stage .media-edit{
  position:absolute;right:-4px;bottom:8px;z-index:6;
}
.media-edit .btn-edit{
  width:36px;height:36px;border-radius:50%;border:0;cursor:pointer;
  background:linear-gradient(135deg,var(--pink-soft),var(--pink-hot));color:#fff;
  display:grid;place-items:center;font-size:1rem;
  box-shadow:0 6px 18px rgba(167,139,222,.45),0 0 0 2px rgba(5,3,8,.85);
  transition:transform .15s,filter .15s;
}
.media-edit .btn-edit:hover{transform:scale(1.06);filter:brightness(1.08)}
.media-edit .btn-edit.danger{
  background:rgba(20,10,16,.85);border:1px solid rgba(255,90,122,.5);font-size:.85rem;
}
.media-edit input[type=file]{display:none}
.media-edit-msg{margin:.5rem .75rem 0;font-size:.82rem}

/* Gallery grid */
.gallery-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;
  padding:0 .75rem 1.4rem;
}
@media(min-width:640px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}}
.gallery-item{
  position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;
  background:#0a0610;border:1px solid rgba(201,179,240,.16);
  box-shadow:0 10px 28px rgba(0,0,0,.35);max-height:280px;
}
.gallery-item img,.gallery-item .ph{
  width:100%;height:100%;object-fit:cover;display:block;
}
.gallery-item .ph{
  background:
    radial-gradient(circle at 30% 25%, hsla(var(--h,280),70%,55%,.55), transparent 55%),
    linear-gradient(160deg,#2a1020,#08040a);
}
.gallery-item.locked img,.gallery-item.locked .ph{
  filter:blur(14px) brightness(.4) saturate(.85);transform:scale(1.08);
}
.gallery-item .g-lock{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.35rem;z-index:2;color:#fff;text-align:center;padding:.5rem;
  background:rgba(5,2,8,.25);
}
.gallery-item .g-lock span{font-size:1.35rem}
.gallery-item .g-lock em{font-style:normal;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--pink-light);font-weight:650}
.gallery-item .g-badge{
  position:absolute;top:.45rem;left:.45rem;z-index:3;font-size:.65rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;padding:.22rem .5rem;border-radius:999px;
  background:rgba(5,3,8,.72);border:1px solid rgba(184,155,232,.35);color:var(--pink-light);
}
.gallery-item .g-badge.subs{color:var(--gold);border-color:rgba(240,200,120,.45)}
.gallery-item .g-badge.friends{color:#9ad4ff;border-color:rgba(120,180,255,.45)}
.gallery-item .g-badge.followers{color:#c9a0ff;border-color:rgba(180,140,255,.45)}
/* composer-fab / floating push-bar removed — posts via profile; push on Účet */
.composer-fab,#push-bar{display:none !important}
.composer-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:1rem}
.composer-modal[hidden]{display:none!important}
.composer-modal-backdrop{position:absolute;inset:0;background:rgba(4,0,10,.88)}
.composer-modal-panel{position:relative;z-index:1;width:min(520px,100%);max-height:min(92vh,820px);overflow:auto;
  border-radius:22px;background:linear-gradient(180deg,rgba(28,8,28,.97),rgba(12,4,18,.98));
  border:1px solid rgba(201,179,240,.28);box-shadow:0 24px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.06)}
.composer-modal-x{position:absolute;top:.65rem;right:.65rem;z-index:2;width:2.1rem;height:2.1rem;border-radius:999px;
  border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.35);color:#fff;cursor:pointer;font-size:1rem}
.composer-card{padding:1.05rem 1.05rem 1.15rem}
.composer-card.compact{margin:.75rem;border-radius:18px;border:1px solid rgba(201,179,240,.22);
  background:rgba(255,255,255,.03);box-shadow:0 10px 36px rgba(0,0,0,.28)}
.composer-head h2{margin:.15rem 0 .55rem;font-family:var(--serif),serif;font-size:1.55rem}
.composer-drop{position:relative;margin:.55rem 0 .75rem;border:1.5px dashed rgba(220,203,247,.4);border-radius:16px;
  background:rgba(184,155,232,.06);min-height:132px;display:grid;place-items:center;transition:.2s ease;cursor:pointer}
.composer-drop.drag{border-color:var(--pink);background:rgba(184,155,232,.14);box-shadow:0 0 0 3px rgba(184,155,232,.18)}
.composer-drop-inner{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1rem;text-align:center}
.composer-drop-ico{font-size:1.6rem}
.composer-preview{position:relative;width:100%;padding:.55rem}
.composer-preview img{width:100%;max-height:240px;object-fit:cover;border-radius:12px;display:block}
.composer-preview .btn{position:absolute;top:.8rem;right:.8rem}
.composer-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.35rem}
.badge.friends{color:#9ad4ff;border-color:rgba(120,180,255,.4)}
.badge.followers{color:#c9a0ff;border-color:rgba(180,140,255,.4)}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 .75rem .55rem;flex-wrap:wrap}

/* Cosmic atmosphere — night VIP salon (paint-cheap; paused while scrolling) */
.cosmos{
  position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  --px:0px; --py:0px;
  contain:strict; transform:translateZ(0);
}
.cosmos-nebula{
  position:absolute;inset:-8%;
  background:
    radial-gradient(ellipse 55% 40% at 22% 18%, rgba(167,139,222,.2), transparent 60%),
    radial-gradient(ellipse 45% 35% at 78% 28%, rgba(120,40,160,.16), transparent 62%),
    radial-gradient(ellipse 50% 40% at 50% 88%, rgba(167,139,222,.12), transparent 58%);
  /* pre-blurred via soft gradients — no live filter:blur on full-viewport layer */
  opacity:.78; transform:translate3d(calc(var(--px)*.12), calc(var(--py)*.1), 0);
  animation:nebulaDrift 36s ease-in-out infinite alternate;
}
.cosmos-stars{
  position:absolute;inset:0;opacity:.55;
  background-image:
    radial-gradient(1.4px 1.4px at 8% 12%, rgba(255,255,255,.75), transparent),
    radial-gradient(1.2px 1.2px at 22% 38%, rgba(230,220,250,.55), transparent),
    radial-gradient(1px 1px at 41% 18%, rgba(255,255,255,.5), transparent),
    radial-gradient(1.5px 1.5px at 63% 8%, rgba(240,200,120,.55), transparent),
    radial-gradient(1px 1px at 78% 42%, rgba(255,255,255,.45), transparent),
    radial-gradient(1.3px 1.3px at 91% 22%, rgba(227,215,250,.5), transparent),
    radial-gradient(1px 1px at 14% 68%, rgba(255,255,255,.4), transparent),
    radial-gradient(1.2px 1.2px at 35% 82%, rgba(220,203,247,.45), transparent),
    radial-gradient(1px 1px at 55% 58%, rgba(255,255,255,.35), transparent),
    radial-gradient(1.4px 1.4px at 72% 76%, rgba(240,200,120,.4), transparent),
    radial-gradient(1px 1px at 88% 88%, rgba(255,255,255,.4), transparent),
    radial-gradient(1.1px 1.1px at 48% 32%, rgba(238,230,252,.5), transparent);
  animation:starTwinkle 8s ease-in-out infinite alternate;
  transform:translate3d(calc(var(--px)*.06), calc(var(--py)*.06), 0);
}
.cosmos-particles{
  position:absolute;inset:0;opacity:.22;
  background-image:
    radial-gradient(circle, rgba(220,203,247,.5) 0 1.2px, transparent 2px),
    radial-gradient(circle, rgba(240,200,120,.35) 0 1px, transparent 1.5px),
    radial-gradient(circle, rgba(255,255,255,.3) 0 1px, transparent 1.5px);
  background-size:200px 240px, 260px 300px, 160px 180px;
  background-position:0 0, 40px 60px, 90px 30px;
  animation:particleFloat 28s linear infinite;
  transform:translate3d(calc(var(--px)*.1), calc(var(--py)*.08), 0);
}
@keyframes nebulaDrift{from{transform:translate3d(-1%,-.8%,0)}to{transform:translate3d(1.5%,1%,0)}}
@keyframes starTwinkle{from{opacity:.4}to{opacity:.7}}
@keyframes particleFloat{from{background-position:0 0, 40px 60px, 90px 30px}to{background-position:0 -220px, -80px 340px, 40px -160px}}

/* Pause expensive looping animations while user scrolls */
.cosmos.is-scrolling .cosmos-nebula,
.cosmos.is-scrolling .cosmos-stars,
.cosmos.is-scrolling .cosmos-particles{animation-play-state:paused!important}
html.is-scrolling .avatar-halo,
html.is-scrolling .avatar-halo::after,
html.is-scrolling .crown-badge,
html.is-scrolling .cover::before,
html.is-scrolling .cover::after,
html.is-scrolling .btn.gold::before,
html.is-scrolling .btn.shimmer::before,
html.is-scrolling .tagline .accent,
html.is-scrolling .tagline .accent::after,
html.is-scrolling .lock-ico,
html.is-scrolling .lock-overlay .sparkles{animation-play-state:paused!important}

@media (prefers-reduced-motion: reduce){
  .cosmos-nebula,.cosmos-stars,.cosmos-particles,
  .avatar-halo,.avatar-halo::after,.avatar-stage.is-online .avatar-lg,
  .crown-badge,.cover::before,.cover::after,.online-dot,.avatar-online,
  .btn.gold::before,.btn.shimmer::before,.tagline .accent,.tagline .accent::after,
  .lock-ico,.lock-overlay .sparkles,.bubble{animation:none!important}
  .tabs-indicator{transition:none}
  .card:hover,.btn:hover,.btn.primary:hover,.btn.gold:hover{transform:none}
  .cosmos-particles{opacity:.08;display:none}
  .cosmos-nebula{opacity:.4;animation:none!important}
  .cosmos-stars{animation:none!important;opacity:.4}
  .cover::before{filter:none!important}
  .avatar-halo{filter:none!important}
}
@media (max-width:640px){
  .cosmos-particles{opacity:.12;animation-duration:40s}
  .cosmos-nebula{opacity:.55;animation-duration:48s}
  .cosmos-stars{animation-duration:12s}
  .card:hover{transform:none}
  /* Soften continuous cover/halo work on phones */
  .cover::before{animation-duration:14s;filter:blur(24px)}
  .avatar-halo{filter:blur(6px);animation-duration:4.5s}
}
.like-btn.is-liked .pa-ico{filter:drop-shadow(0 0 8px rgba(201,179,240,.65))}
.like-btn.is-liked{color:#b89be8}
.comments-panel{margin:.55rem .85rem .85rem;padding:.7rem .75rem;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(201,179,240,.18)}
.comments-title{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .55rem}
.comments-list{display:grid;gap:.55rem;margin-bottom:.65rem;max-height:14rem;overflow:auto}
.comment-item{display:grid;gap:.15rem}
.comment-item .who{font-size:.85rem}
.comment-item .when{font-size:.72rem;color:var(--muted)}
.comment-item .body{font-size:.92rem;white-space:pre-wrap}
.comment-form{display:flex;gap:.45rem;align-items:center}
.comment-form input{flex:1;min-width:0;background:rgba(0,0,0,.35);border:1px solid rgba(201,179,240,.25);border-radius:999px;color:#fff;padding:.55rem .9rem;font:inherit}
.comment-form .btn{flex-shrink:0}
.stories-strip{margin:.35rem .75rem 0;padding:.55rem 0 .15rem}
.stories-label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 .55rem .35rem}
.stories-row{display:flex;gap:.7rem;overflow-x:auto;padding:0 .2rem .55rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.stories-row::-webkit-scrollbar{display:none}
.story-ring{position:relative;flex:0 0 auto;width:4.35rem;height:4.35rem;border-radius:999px;padding:0;border:0;background:transparent;cursor:pointer}
.story-ring-glow{position:absolute;inset:0;border-radius:999px;background:conic-gradient(from 210deg,#c9b3f0,#e3d7fa,#c77dff,#c9b3f0);padding:2px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.story-ring img{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);object-fit:cover;border-radius:999px;border:2px solid #0d0b11;background:#121016}
.story-ring:active{transform:scale(.96)}
.story-lightbox{position:fixed;inset:0;z-index:80;background:rgba(6,4,10,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.25rem}
.story-lightbox[hidden]{display:none !important}
.story-lightbox img{max-width:min(96vw,420px);max-height:78vh;border-radius:18px;object-fit:contain;box-shadow:0 24px 60px rgba(201,179,240,.22)}
.story-cap{margin-top:.85rem;color:#f7d6e4;text-align:center;max-width:22rem}
.story-close{position:absolute;top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right));background:rgba(255,255,255,.08);border:0;color:#fff;width:2.4rem;height:2.4rem;border-radius:999px;font-size:1.1rem;cursor:pointer}
.a2hs-bar{position:sticky;top:0;z-index:40;display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;justify-content:space-between;padding:.55rem .75rem;background:linear-gradient(90deg,rgba(201,179,240,.28),rgba(120,40,90,.45));border-bottom:1px solid rgba(201,179,240,.28)}
.a2hs-bar[hidden]{display:none !important}
.a2hs-text{flex:1;min-width:10rem;font-size:.88rem}
.a2hs-ios{width:100%;margin:.15rem 0 0;font-size:.8rem}
.post-media img[data-story-open]{cursor:zoom-in}
/* p36 theme */
:root{
  --bg:#121016;--bg2:#17141c;--panel:#1a1720;--card:#18151e;
  --line:rgba(255,255,255,.08);--line-strong:rgba(201,179,240,.26);
  --text:#f2eef7;--muted:#a19cab;--ink:#1a1420;
  --lav:#c9b3f0;--lav-2:#b89be8;--lav-3:#dccbf7;--violet:#a68ce0;
  --pink:#c9b3f0;--pink-hot:#c9b3f0;--pink-soft:#b89be8;--pink-light:#dccbf7;--pink-mist:rgba(201,179,240,.1);--pink-glow:rgba(201,179,240,.2);
  --blush:#b89be8;--blush2:#c9b3f0;--rose:#c9b3f0;--purple:#a68ce0;--gold:#dccbf7;
  --glow-pink:rgba(201,179,240,.18);--glow-gold:rgba(220,203,247,.15);--glow-purple:rgba(166,140,224,.15);--glow-pink-soft:none;
  --radius:18px;--shadow:0 18px 44px rgba(0,0,0,.35);--inset:none;--top:64px;
  --serif:"Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,"Noto Serif","Source Serif Pro",Georgia,"Times New Roman";
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial;
  font-family:var(--sans),sans-serif;
}
html{background:#121016;-webkit-text-size-adjust:100%}
body{background:#121016;background-attachment:scroll;color:var(--text);font-family:var(--sans),sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--lav)}a:hover{color:var(--lav-3);text-shadow:none}
::selection{background:rgba(201,179,240,.4);color:#fff}
:focus-visible{outline:2px solid var(--lav);outline-offset:2px}
.cosmos{display:none!important}
h1,h2,h3{font-family:var(--serif),serif;font-weight:400;letter-spacing:-.005em;color:var(--text)}
h1{font-size:clamp(1.8rem,4.4vw,2.5rem);line-height:1.1}
.eyebrow,.lm-eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.66rem;font-weight:600;color:var(--violet);text-shadow:none;margin:0 0 .6rem}
.lm-eyebrow.line{display:flex;align-items:center;gap:.85rem}
.lm-eyebrow.line::before{content:"";width:28px;height:1px;background:var(--violet);opacity:.8}
.lm-eyebrow.sm{font-size:.6rem;margin:.95rem 0 .35rem}
.muted{color:var(--muted)}

/* buttons */
.btn{border-radius:10px;padding:.78rem 1.2rem;border:1px solid rgba(255,255,255,.16);background:transparent;color:var(--text);font-weight:600;font-size:.88rem;letter-spacing:.01em;box-shadow:none;gap:.55rem}
.btn:hover{border-color:rgba(201,179,240,.55);background:rgba(201,179,240,.06);color:#fff;transform:none}
.btn.primary,.btn.subscribe-cta,.side .cta,.btn.gold{background:var(--lav)!important;color:var(--ink)!important;border:1px solid var(--lav);box-shadow:none;font-weight:650}
.btn.primary:hover,.btn.subscribe-cta:hover,.side .cta:hover,.btn.gold:hover{background:var(--lav-3)!important;filter:none;transform:none;box-shadow:0 8px 26px rgba(201,179,240,.18)}
.btn.gold::before,.btn.shimmer::before,.btn.subscribe-cta::before{display:none}
.btn.ghost,.btn.outline{background:transparent;border:1px solid rgba(255,255,255,.18);color:var(--text)}
.btn svg{flex:0 0 auto}
.pill{border-radius:8px;border-color:rgba(255,255,255,.14);background:transparent}
.pill.on{background:rgba(201,179,240,.14);border-color:rgba(201,179,240,.5);color:#fff;box-shadow:none}

/* cards, forms */
.card{background:var(--card);border:1px solid var(--line);box-shadow:none;border-radius:var(--radius)}
.card::before{display:none}
.card:hover{transform:none;box-shadow:none;border-color:rgba(255,255,255,.12)}
.card.glass,.glass{background:var(--card);border:1px solid var(--line);box-shadow:none}
input,textarea,select{border-radius:10px;background:#0f0d13;border:1px solid rgba(255,255,255,.12)}
input:focus,textarea:focus,select:focus{border-color:rgba(201,179,240,.7);box-shadow:0 0 0 3px rgba(201,179,240,.15)}
.flash{border-radius:12px}
.price-card{background:var(--card);border:1px solid var(--line-strong);box-shadow:none;border-radius:18px}
.price{color:var(--lav);text-shadow:none;font-weight:400}

/* wordmark */
.lm-brand{display:inline-flex;align-items:center;gap:.5rem;color:var(--text)!important;text-decoration:none;line-height:1;flex:0 0 auto}
.lm-brand:hover{text-shadow:none;color:#fff!important}
.lm-brand svg{color:var(--text);opacity:.95}
.lm-word{font-family:var(--serif),serif;font-size:1.55rem;letter-spacing:-.01em;font-weight:400;white-space:nowrap}
.lm-word em{font-style:italic}
.lm-word b{color:var(--lav);font-weight:400}

/* header */
.topbar.lm-head{display:flex;position:sticky;top:0;z-index:40;gap:1rem;min-height:var(--top);padding:.7rem 1rem;padding-top:max(.7rem,env(safe-area-inset-top,0px));background:rgba(18,16,22,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:none;flex-wrap:wrap;contain:none}
.lm-nav{display:flex;gap:1.6rem;align-items:center;order:3;flex:1 1 100%;overflow-x:auto;scrollbar-width:none;margin:0 -1rem;padding:.15rem 1rem 0}
.lm-nav::-webkit-scrollbar{display:none}
.lm-nav a{position:relative;white-space:nowrap;color:var(--muted);font-size:.86rem;font-weight:500;padding:.45rem 0;display:inline-flex;align-items:center;gap:.4rem}
.lm-nav a:hover{color:var(--text)}
.lm-nav a.on{color:var(--text)}
.lm-nav a.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1.5px;background:var(--lav);border-radius:2px}
.lm-dot{width:5px;height:5px;border-radius:50%;background:var(--lav);display:inline-block}
.top-actions{margin-left:auto;display:flex;gap:.5rem;align-items:center}
.lm-18{display:inline-grid;place-items:center;height:30px;min-width:34px;padding:0 .45rem;border:1px solid rgba(255,255,255,.16);border-radius:7px;font-size:.72rem;font-weight:600;color:var(--text)}
.lm-lang{height:30px;padding:0 .6rem;font-size:.72rem;font-weight:600;color:var(--muted)}
.lm-login{padding:.55rem .85rem;font-size:.82rem;border-radius:9px}
.lm-pill-link{display:inline-flex;align-items:center;height:30px;max-width:9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
@media(min-width:760px){
  .topbar.lm-head{flex-wrap:nowrap;padding:.8rem 1.6rem}
  .lm-nav{order:0;flex:1 1 auto;justify-content:center;margin:0;padding:0;overflow:visible}
  .lm-nav a{padding:.6rem 0}
  .lm-nav a.on::after{bottom:-.15rem}
}
@media(min-width:900px){.topbar.lm-head{display:flex}.app-shell.member .topbar .top-brand{display:none}}

/* shell */
.app-shell.guest{grid-template-columns:minmax(0,1fr)}
.app-shell.guest .side{display:none!important}
@media(min-width:1100px){.app-shell.guest.has-rail{grid-template-columns:minmax(0,1fr) var(--railw)}}
@media(min-width:900px){.app-shell.guest:not(.has-rail) .main-wrap{max-width:none;padding-right:0}
  .app-shell.guest:not(.has-rail):not(.landing) .main{width:100%;max-width:920px;margin:0 auto}}
.app-shell.guest .main{padding-bottom:1.5rem}
.side{background:#100e14;border-right:1px solid var(--line);padding:1.3rem .9rem 1.4rem}
.side .lm-brand{padding:.3rem .6rem 1.4rem}
.side a.nav-item,.side button.nav-item{border-radius:10px;font-size:.9rem;padding:.7rem .8rem;color:var(--muted);width:100%;text-align:left;background:transparent;border:0;font:inherit;cursor:pointer}
.side a.nav-item:hover,.side button.nav-item:hover{background:rgba(255,255,255,.04);color:var(--text)}
.side a.nav-item.on{background:rgba(201,179,240,.1);box-shadow:inset 0 0 0 1px rgba(201,179,240,.28);color:#fff;font-weight:600}
.side .ico{filter:grayscale(1) brightness(1.4);opacity:.75}
.side .cta{border-radius:10px;justify-content:center}
.lang-switch button{border-radius:8px}
.lang-switch button.on{background:rgba(201,179,240,.16);color:#fff;border:1px solid rgba(201,179,240,.45);box-shadow:none}
.bottom-nav{background:rgba(18,16,22,.97);border-top:1px solid var(--line);box-shadow:none}
.bottom-nav a{color:var(--muted)}
.bottom-nav a.on{color:var(--lav);text-shadow:none;transform:none}
.bottom-nav .ico{filter:grayscale(1) brightness(1.4);opacity:.8}
.bottom-nav a.on .ico{filter:none;opacity:1}
.social-rail .card,.social-rail section{background:var(--card);border:1px solid var(--line);box-shadow:none}

/* footer */
.foot.lm-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.9rem 1.5rem;text-align:left;padding:1.8rem 1.2rem 2rem;margin:2rem 1rem 0;border-top:1px solid var(--line);color:var(--muted);font-size:.76rem}
.lm-foot .lm-word{font-size:1.35rem}
.lm-copy{margin:0}
.lm-foot-links{display:flex;gap:1.3rem}
.lm-foot-links a{color:var(--muted)}.lm-foot-links a:hover{color:var(--text)}
@media(max-width:640px){.foot.lm-foot{flex-direction:column;align-items:flex-start}}
.app-shell.member .foot.lm-foot{margin-bottom:var(--bottom-nav-h)}
@media(min-width:900px){.app-shell.member .foot.lm-foot{margin-bottom:0}}

/* age gate: bottom bar, page stays visible but media blurred and interaction blocked */
.age-gate{position:fixed;inset:auto 0 0 0;z-index:100;display:block;padding:0 .75rem calc(.75rem + env(safe-area-inset-bottom,0px));background:none;place-items:initial}
.age-pending::before{content:"";position:fixed;inset:0;z-index:99;background:linear-gradient(180deg,rgba(18,16,22,.15),rgba(18,16,22,.55) 70%,rgba(18,16,22,.8));pointer-events:auto}
.age-card{max-width:760px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:.85rem;align-items:center;background:rgba(28,25,34,.97);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:1rem 1.1rem;box-shadow:0 18px 50px rgba(0,0,0,.55)}
.age-h{margin:0 0 .3rem;font-size:.95rem;color:var(--text);display:flex;align-items:center;gap:.55rem}
.age-pill{font-size:.66rem;font-weight:700;color:var(--lav);border:1px solid rgba(201,179,240,.35);border-radius:6px;padding:.1rem .35rem}
.age-sub{margin:0;font-size:.78rem;color:var(--muted);line-height:1.45}
.age-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin:0}
.age-exit{color:var(--text);font-size:.85rem;font-weight:600;padding:.6rem .4rem}
.age-actions .btn{min-width:12rem}
.age-lang{display:flex;gap:.35rem;justify-content:flex-end}
.age-lang .lang-btn{background:transparent;border:1px solid rgba(255,255,255,.12);color:var(--muted);border-radius:6px;font-size:.66rem;padding:.2rem .45rem;cursor:pointer}
.age-lang .lang-btn.on{color:var(--text);border-color:rgba(201,179,240,.45)}
@media(min-width:760px){.age-card{grid-template-columns:1fr auto;padding:1rem 1.2rem 1rem 1.4rem}.age-lang{grid-column:1 / -1;justify-content:flex-start;margin-top:-.4rem}}
.blurred-by-age{filter:none;pointer-events:none;user-select:none}
.blurred-by-age img,.blurred-by-age video,.blurred-by-age .post-media,.blurred-by-age .cover-img-el{filter:blur(18px) brightness(.8)}

/* modal */
.lm-modal{border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#1c1922;color:var(--text);padding:1.6rem 1.6rem 1.4rem;max-width:min(520px,calc(100vw - 2rem));width:100%;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.lm-modal::backdrop{background:rgba(8,7,10,.72)}
.lm-modal h2{font-size:1.9rem;margin:.6rem 0 .8rem}
.lm-modal-body{color:#cfc9d8;font-size:.92rem;line-height:1.65}
.lm-modal-ico{color:var(--lav);display:inline-flex}
.lm-modal-x{position:absolute;top:.9rem;right:.9rem;background:none;border:0;color:var(--muted);font-size:1rem;cursor:pointer;width:2rem;height:2rem;border-radius:8px}
.lm-modal-x:hover{color:var(--text);background:rgba(255,255,255,.06)}
.lm-modal > .btn.primary{margin-top:.6rem;min-width:8.5rem;padding:.85rem 1.3rem}
.lm-modal-links{margin:.9rem 0 .2rem}
.composer-modal,.composer-sheet,.ppv-modal,.ppv-sheet,.modal-card,.sheet{background:#1c1922!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:16px!important;box-shadow:0 30px 80px rgba(0,0,0,.6)!important}

/* landing */
.app-shell.landing .main-wrap{max-width:none!important;padding:0!important}
.app-shell.landing .main{padding:0}
.lm-landing{max-width:1180px;margin:0 auto;padding:0 1.1rem}
.lm-hero{display:grid;gap:2rem;padding:2rem 0 2.2rem;align-items:center}
.lm-display{font-family:var(--serif),serif;font-weight:400;font-size:clamp(2.5rem,9vw,4.4rem);line-height:1.04;letter-spacing:-.02em;margin:0 0 1.4rem}
.lm-display em{display:block;font-style:italic;color:var(--lav)}
.lm-display.sm{font-size:clamp(2rem,5.5vw,2.6rem)}
.lm-lead{color:#c9c3d2;font-size:1rem;line-height:1.65;max-width:26rem;margin:0 0 1.8rem}
.lm-cta{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:1.4rem}
.lm-cta .btn{padding:.85rem 1.2rem}
.lm-micro{display:flex;align-items:center;gap:.55rem;color:var(--muted);font-size:.74rem;margin:0}
.lm-micro svg{color:var(--lav)}
.lm-portrait{position:relative;margin:0;border-radius:18px;overflow:hidden;aspect-ratio:4 / 5;background:#1b1822;border:1px solid var(--line);isolation:isolate}
.lm-portrait-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 16%;z-index:-1}
.lm-portrait::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,16,22,.55) 0%,rgba(18,16,22,0) 22%,rgba(18,16,22,0) 52%,rgba(18,16,22,.88) 100%)}
.lm-portrait-top{position:absolute;top:1.1rem;left:1.2rem;right:1.2rem;display:flex;justify-content:space-between;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:#ece6f4}
.lm-portrait-bottom{position:absolute;left:1.1rem;right:1.1rem;bottom:2.2rem;display:flex;align-items:center;gap:.85rem}
.lm-ring{width:46px;height:46px;flex:0 0 46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;color:#fff}
.lm-pb-text{display:grid;gap:.2rem;flex:1;min-width:0}
.lm-pb-text strong{font-family:var(--serif),serif;font-weight:400;font-size:1.35rem;color:#fff}
.lm-pb-text small{font-size:.72rem;color:#d6d0de}
.lm-circle{width:38px;height:38px;flex:0 0 38px;border-radius:50%;display:grid;place-items:center;color:#fff!important;background:rgba(18,16,22,.55);border:1px solid rgba(255,255,255,.22)}
.lm-ai-cap{position:absolute;right:1.2rem;bottom:.8rem;margin:0;font-size:.56rem;letter-spacing:.18em;text-transform:uppercase;color:#cfc9d8}
.lm-img-ph{display:block;width:100%;height:100%;background:radial-gradient(circle at 60% 30%,rgba(201,179,240,.25),transparent 60%),#1b1822}
.lm-strip{list-style:none;margin:0;padding:1.1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem}
.lm-strip li{display:flex;align-items:center;gap:.6rem;font-size:.78rem;color:#d4cedc}
.lm-strip svg{color:var(--lav);flex:0 0 auto}
.lm-section{padding:3.2rem 0 1rem}
.lm-sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.2rem;margin-bottom:1.8rem}
.lm-h2{font-family:var(--serif),serif;font-weight:400;font-size:clamp(1.8rem,5vw,2.4rem);line-height:1.12;margin:0 0 .5rem}
.lm-sub{color:var(--muted);font-size:.85rem;margin:0}
.lm-seg{display:inline-flex;padding:.3rem;border:1px solid var(--line);border-radius:11px;background:#16131b;gap:.2rem}
.lm-seg a{color:var(--muted);font-size:.78rem;font-weight:600;padding:.55rem .95rem;border-radius:8px}
.lm-seg a.on{background:rgba(201,179,240,.16);color:var(--text)}
.lm-cards{display:grid;gap:1.6rem 1.2rem;grid-template-columns:1fr}
.lm-card{display:block;color:var(--text)!important}
.lm-card:hover h3{color:var(--lav-3)}
.lm-card-media{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3 / 2;background:#1b1822;border:1px solid var(--line)}
.lm-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.lm-card:hover .lm-card-media img{transform:scale(1.03)}
.lm-card.is-locked .lm-card-media img{filter:blur(16px) brightness(.55) saturate(.8);transform:scale(1.12)}
.lm-card-lock{position:absolute;inset:0;display:grid;place-items:center;color:var(--lav)}
.lm-card-lock svg{width:34px;height:34px}
.lm-chip{position:absolute;top:.75rem;left:.75rem;display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .55rem;font-size:.66rem;font-weight:600;border-radius:7px;background:rgba(18,16,22,.72);border:1px solid rgba(255,255,255,.18);color:#fff}
.lm-chip svg{width:13px;height:13px}
.lm-card-media .lm-circle{position:absolute;right:.75rem;bottom:.75rem;width:34px;height:34px;flex-basis:34px}
.lm-card h3{font-size:1.45rem;margin:0 0 .3rem;font-weight:400}
.lm-card-sub{margin:0;color:var(--muted);font-size:.8rem}
.lm-note{color:#8d8897;font-size:.7rem;margin:1.4rem 0 0}
.lm-private{margin:3rem 0 0;display:grid;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#17141c}
.lm-private-art{display:grid;place-items:center;gap:1rem;padding:2.4rem 1rem;background:radial-gradient(circle at 50% 45%,rgba(201,179,240,.14),transparent 62%);border-bottom:1px solid var(--line);text-align:center}
.lm-moonlock{color:var(--violet)}
.lm-private-art p{margin:0;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--violet)}
.lm-private-copy{padding:2rem 1.4rem 2rem}
.lm-private-copy .btn{margin:1.4rem 0 0}
.lm-about{display:grid;gap:1.3rem;padding:3.6rem 0 1rem;position:relative}
.lm-about-t p{color:#cfc9d8;font-size:.9rem;line-height:1.7;margin:0 0 .8rem}
.lm-tags{display:flex;gap:1.4rem;font-size:.74rem}
.lm-tags span{color:var(--lav)}
.lm-heart{color:#d8d2e0;opacity:.85}
@media(min-width:760px){
  .lm-landing{padding:0 2rem}
  .lm-hero{grid-template-columns:1fr 1fr;gap:3rem;padding:3.6rem 0 3.2rem}
  .lm-portrait{aspect-ratio:auto;min-height:440px;height:100%}
  .lm-strip{grid-template-columns:repeat(4,auto);justify-content:space-between}
  .lm-cards{grid-template-columns:repeat(3,1fr)}
  .lm-private{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
  .lm-private-art{border-bottom:0;border-right:1px solid var(--line)}
  .lm-private-copy{padding:2.6rem 2.4rem}
  .lm-about{grid-template-columns:1fr 1.4fr auto;align-items:center;gap:2.5rem}
}
@media(min-width:1100px){.lm-hero{grid-template-columns:1fr 1.05fr}.lm-portrait{min-height:500px}}

/* existing pages restyled */
.profile-card{background:transparent;border-bottom:1px solid var(--line)}
.cover{background:#1b1822}
.cover::before,.cover::after{display:none}
.avatar-halo{display:none}
.avatar-lg{border:1px solid rgba(255,255,255,.2);box-shadow:0 0 0 4px #121016,0 14px 34px rgba(0,0,0,.5);background:#1b1822}
.crown-badge{display:none}
.name-glow{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--text)!important;text-shadow:none!important;filter:none!important}
.tagline .accent{color:var(--lav);font-family:var(--serif),serif;font-style:italic;text-decoration:none;border:0;background:none;-webkit-text-fill-color:currentColor;text-shadow:none}
.star-chip,.ai-chip,.tag,.verified-badge{background:transparent!important;border:1px solid rgba(201,179,240,.35)!important;color:var(--lav)!important;box-shadow:none!important;text-shadow:none!important}
.ai-chip{color:var(--text)!important}
.stats-row strong{font-family:var(--serif),serif;font-weight:400;font-size:1.25rem;color:var(--text)}
.tabs{border-bottom:1px solid var(--line)}
.tabs a{color:var(--muted);font-size:.86rem}
.tabs a.on{color:var(--text);text-shadow:none}
.tabs-indicator{background:var(--lav)!important;box-shadow:none!important;height:1.5px!important}
.media-subtabs a,.media-subtabs button{border-radius:8px;border:1px solid var(--line);background:#16131b;color:var(--muted);box-shadow:none}
.media-subtabs a.on,.media-subtabs button.on{background:rgba(201,179,240,.16);color:var(--text);border-color:rgba(201,179,240,.4);box-shadow:none}
.post{background:var(--card);border:1px solid var(--line)}
.lock-overlay{background:rgba(18,16,22,.55)}
.post-actions button:hover{background:rgba(201,179,240,.08);color:var(--lav)}
.chat-shell{border:1px solid var(--line);background:#16131b;box-shadow:none;border-radius:16px}
.chat-head{background:#18151e;border-bottom:1px solid var(--line)}
.auth-hero .moon{background:none!important;box-shadow:none!important;border:1px solid rgba(201,179,240,.4);border-radius:50%}
.nav-unread{background:var(--lav)!important;color:var(--ink)!important;box-shadow:none!important}
.a2hs-bar{background:#1c1922;border-bottom:1px solid var(--line)}
.story-cap{color:#e5def0}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}body .bottom-nav a{position:relative}body .bottom-nav .nav-unread{position:absolute;top:2px;left:calc(50% + 6px);margin:0;min-width:1.05rem;height:1.05rem;line-height:1.05rem;font-size:.62rem;padding:0 .28rem;vertical-align:baseline}body .chat-form textarea,body main form textarea{line-height:1.35}@media(max-width:899px){body .app-shell.page-chat .main-wrap{height:calc(100dvh - var(--bottom-nav-h))}}.lm-strip{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.9rem 0}.lm-strip-a{display:flex;align-items:center;gap:.6rem;min-height:3.1rem;padding:.55rem .7rem;border:1px solid transparent;border-radius:12px;color:#ece6f4;text-decoration:none;transition:background .18s,border-color .18s,transform .18s}.lm-strip-a:hover{background:rgba(201,179,240,.07);border-color:rgba(201,179,240,.35);transform:translateY(-1px)}.lm-strip-a:focus-visible{outline:2px solid var(--lav);outline-offset:2px}.lm-strip-ico{display:inline-flex;color:var(--lav);flex:0 0 auto}.lm-strip-ico svg{width:18px;height:18px}.lm-strip-t{display:flex;flex-direction:column;min-width:0;line-height:1.2}.lm-strip-t strong{font-size:.82rem;font-weight:600;color:#f1ecf7}.lm-strip-t small{font-size:.68rem;color:#a39cae;letter-spacing:.02em}.lm-strip-go{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:50%;border:1px solid rgba(201,179,240,.3);color:var(--lav);flex:0 0 auto;transition:background .18s,color .18s}.lm-strip-go svg{width:12px;height:12px}.lm-strip-a:hover .lm-strip-go{background:var(--lav);color:#1a1420}@media(max-width:559px){.lm-strip{grid-template-columns:minmax(0,1fr);gap:.15rem}.lm-strip-a{min-height:2.7rem;padding:.45rem .6rem}}@media(min-width:1100px){.lm-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}}.lm-strip-a:hover .lm-strip-go svg{stroke:#1a1420}@media(prefers-reduced-motion:reduce){.lm-strip-a{transition:none}.lm-strip-a:hover{transform:none}}.pw-wrap{position:relative;display:block}.pw-wrap input{padding-right:5.2rem;width:100%}.pw-toggle{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);background:transparent;border:1px solid var(--line);color:var(--lav);border-radius:8px;padding:.3rem .55rem;font-size:.75rem;cursor:pointer;min-height:2rem}.pw-toggle:hover{border-color:var(--lav)}.pw-toggle:focus-visible{outline:2px solid var(--lav);outline-offset:1px}.pw-caps{display:block;font-size:.78rem;color:#ffd08a;margin-top:.25rem}.pw-caps[hidden]{display:none}.owner-pw summary{cursor:pointer;list-style:none;display:flex;flex-direction:column;gap:.15rem}.owner-pw summary::-webkit-details-marker{display:none}.owner-pw summary strong{font-size:1.05rem}.owner-pw summary:after{content:'Otevřít';font-size:.75rem;color:var(--lav)}.owner-pw[open] summary:after{content:''}.forgot-link{margin:.1rem 0 0;text-align:center;font-size:.86rem}.forgot-link a{color:var(--lav);text-decoration:none}.forgot-link a:hover,.forgot-link a:focus-visible{text-decoration:underline}/* p36 social-batch / misc overrides */
body.is-guest .sb-bell{display:none!important}
body .sb-bell{border:1px solid rgba(255,255,255,.14);border-radius:8px;height:30px;padding:0 .5rem;filter:grayscale(1) brightness(1.5);font-size:.85rem}
body .sb-bell .badge{background:var(--lav);color:var(--ink);filter:none}
body .sb-bell .badge[hidden]{display:none!important}
body .sb-notif-panel{background:#1c1922;border-color:rgba(255,255,255,.12);border-radius:14px}
body .sb-story-ring .av{border-color:var(--lav)}
body .sb-pin{color:var(--lav)}
body .sb-mood{background:rgba(201,179,240,.12)}
body .sb-fan-badge{background:rgba(201,179,240,.16);border:1px solid rgba(201,179,240,.4);color:var(--lav-3)}
body .sb-chips button{border-color:rgba(201,179,240,.4);background:rgba(201,179,240,.08);border-radius:8px}
body .sb-filters button{border-radius:8px}
body .sb-filters button.active{background:rgba(201,179,240,.18);border-color:var(--lav)}
body .sb-search{border-radius:10px}
@media(min-width:1100px){.lm-hero{grid-template-columns:1.08fr 1fr}}
.lm-display{font-size:clamp(2.5rem,8.6vw,4.2rem)}.auth-hero .moon{width:52px!important;height:52px!important;border:0!important;border-radius:50%;background:transparent!important;box-shadow:inset 10px -6px 0 0 #c9b3f0!important;transform:rotate(-20deg);animation:none!important}
.auth-hero .moon::before,.auth-hero .moon::after{display:none!important}
@media(min-width:1100px){.app-shell.guest.has-rail .social-rail{padding-top:calc(var(--top) + .4rem)}}.chat-head .ava{background:#1b1822;border:1px solid rgba(201,179,240,.45);box-shadow:none;color:var(--lav);font-weight:400}
.bubble.lily{background:#221d2b;border:1px solid rgba(201,179,240,.22);box-shadow:none}
.bubble.fan{background:rgba(201,179,240,.12);border:1px solid rgba(201,179,240,.22);box-shadow:none;color:#f2eef7}
.bubble.lily .who{color:var(--lav)}
.chat-day{color:var(--violet);background:transparent;border-color:var(--line)}
.chat-empty .moon{background:transparent;box-shadow:inset 12px -8px 0 0 #c9b3f0;transform:rotate(-20deg)}
.chat-composer{background:#16131b}
.chat-composer textarea{border-radius:10px;background:#0f0d13;border-color:rgba(255,255,255,.12)}
.chat-composer .btn{border-radius:10px}
@media(max-width:759px){
  .app-shell.member .lm-nav{display:none}
  .app-shell.member .lm-18{display:none}
  .app-shell.member .lm-pill-link{max-width:6.5rem}
  .top-actions{gap:.35rem}
  .topbar.lm-head{flex-wrap:nowrap;min-height:56px;padding-top:max(.55rem,env(safe-area-inset-top,0px));padding-bottom:.55rem}
  .app-shell.guest .topbar.lm-head{flex-wrap:wrap}
  .lm-word{font-size:1.4rem}
  .chat-composer .btn{min-width:0;padding:.7rem .85rem}
  .chat-composer .row{gap:.35rem}
}


/* SOCIAL_BATCH_V1 */
.sb-typing{font-size:.85rem;opacity:.75;font-style:italic;padding:.25rem .5rem;color:var(--accent,#e8a0bf)}
.sb-online{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;background:#3ddc97;margin-right:.35rem;box-shadow:0 0 6px #3ddc97}
.sb-offline{background:#888;box-shadow:none}
.sb-receipt{font-size:.7rem;opacity:.65;margin-left:.35rem}
.sb-reply-quote{border-left:3px solid var(--accent,#e8a0bf);padding:.25rem .5rem;margin:.25rem 0;opacity:.85;font-size:.85rem;background:rgba(255,255,255,.04);border-radius:0 8px 8px 0}
.sb-msg-menu{display:flex;gap:.35rem;flex-wrap:wrap;font-size:.75rem;margin-top:.25rem}
.sb-msg-menu button{background:transparent;border:1px solid rgba(255,255,255,.15);color:inherit;border-radius:999px;padding:.15rem .5rem;cursor:pointer}
.sb-super{font-size:1.6rem;filter:drop-shadow(0 0 6px #e8a0bf);animation:sbPulse 1.2s ease infinite alternate}
@keyframes sbPulse{from{transform:scale(1)}to{transform:scale(1.15)}}
.sb-stickers{display:flex;flex-wrap:wrap;gap:.4rem;padding:.5rem;max-height:140px;overflow:auto}
.sb-stickers button{font-size:1.5rem;background:rgba(255,255,255,.06);border:none;border-radius:10px;padding:.35rem;cursor:pointer}
.sb-voice-seek{width:100%;margin:.35rem 0}
.sb-stories{display:flex;gap:.6rem;overflow-x:auto;padding:.5rem 0;margin-bottom:.75rem}
.sb-story-ring{flex:0 0 auto;width:64px;text-align:center;cursor:pointer}
.sb-story-ring .av{width:56px;height:56px;border-radius:50%;border:2px solid #c9b3f0;box-shadow:0 0 0 3px #0f0d13,0 0 14px rgba(201,179,240,.35);object-fit:cover;background:#17141c}
.sb-pin{color:#c9b3f0;font-size:.8rem;margin-right:.35rem}
.sb-bookmark{cursor:pointer}
.sb-poll{border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:.75rem;margin:.5rem 0}
.sb-poll button{display:block;width:100%;text-align:left;margin:.3rem 0;padding:.45rem .6rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:inherit;cursor:pointer}
.sb-mood{font-size:.95rem;opacity:.9;padding:.35rem .6rem;border-radius:999px;background:rgba(232,160,191,.12);display:inline-block}
.sb-fan-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;border-radius:999px;background:linear-gradient(135deg,#7b5cff,#e8a0bf);font-size:.75rem;font-weight:600}
.sb-countdown{font-variant-numeric:tabular-nums;font-size:1.1rem;letter-spacing:.04em}
.sb-bell{position:relative;cursor:pointer;z-index:55;flex-shrink:0;line-height:1;padding:.25rem .45rem;border-radius:999px;border:1px solid transparent;background:transparent;color:inherit;font:inherit}
.sb-bell .badge{position:absolute;top:-4px;right:-6px;background:#e85a7a;color:#fff;border-radius:999px;font-size:.65rem;padding:0 .35rem;min-width:1rem;text-align:center}
/* Desktop: dropdown under bell. Mobile: fixed sheet BETWEEN topbar and bottom-nav (never bottom-anchored only). */
.sb-notif-panel{position:fixed;right:.75rem;top:calc(env(safe-area-inset-top,0px) + var(--top,58px) + .35rem);width:min(320px,90vw);max-height:min(360px,70vh);overflow:auto;overscroll-behavior:contain;background:#1a1220;border:1px solid rgba(255,255,255,.12);border-radius:12px;z-index:70;box-shadow:0 12px 40px rgba(0,0,0,.45);-webkit-overflow-scrolling:touch}
.sb-notif-panel .item{padding:.6rem .75rem;border-bottom:1px solid rgba(255,255,255,.06);font-size:.85rem}
.sb-notif-panel .item:last-child{border-bottom:0}
@media(max-width:899px){
  .sb-notif-panel{
    position:fixed!important;
    left:.75rem;right:.75rem;width:auto;
    top:calc(env(safe-area-inset-top,0px) + var(--top,58px) + .35rem);
    bottom:calc(var(--bottom-nav-h,4.5rem));
    max-height:none;
    overflow-x:hidden;overflow-y:auto;
    z-index:70;
  }
}
.sb-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0}
.sb-chips button{border-radius:999px;border:1px solid rgba(232,160,191,.4);background:rgba(232,160,191,.1);color:inherit;padding:.3rem .7rem;cursor:pointer;font-size:.85rem}
.sb-turnstile{margin:0.75rem 0}
.sb-warn{border:1px solid #e8a05a;background:rgba(232,160,90,.12);padding:.5rem .75rem;border-radius:8px;font-size:.85rem;margin:.5rem 0}
.sb-search{width:100%;padding:.55rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.25);color:inherit}
.sb-filters{display:flex;gap:.4rem;flex-wrap:wrap;margin:.5rem 0}
.sb-filters button{border-radius:999px;padding:.3rem .7rem;border:1px solid rgba(255,255,255,.15);background:transparent;color:inherit;cursor:pointer}
.sb-filters button.active{background:rgba(232,160,191,.25);border-color:#e8a0bf}


.ppv-card{position:relative;width:min(260px,70vw);aspect-ratio:3/4;border-radius:16px;overflow:hidden;margin:.15rem 0;background:#1b1822;border:1px solid rgba(255,255,255,.1);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.ppv-card .ppv-img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.ppv-blur{position:absolute;inset:0;overflow:hidden}
.ppv-blur img{width:100%;height:100%;object-fit:cover;filter:blur(18px) saturate(1.2);transform:scale(1.25)}
.ppv-over{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;padding:.8rem;text-align:center;background:linear-gradient(180deg,rgba(18,16,22,.2),rgba(18,16,22,.7));color:#fff}
.ppv-lock-ico{font-size:1.7rem}
.ppv-title{font-weight:600;font-size:.9rem;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.ppv-price{font-size:1.25rem;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.ppv-unlock{margin-top:.25rem;font-size:.85rem;padding:.45rem .8rem}
.ppv-badge{position:absolute;left:.45rem;bottom:.45rem;background:rgba(0,0,0,.55);color:#fff;font-size:.72rem;padding:.15rem .45rem;border-radius:999px}
.ppv-gone{aspect-ratio:auto;padding:.8rem;color:#ccc;font-size:.85rem}
.ppv-msg{font-size:.78rem;margin-top:.3rem;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.wallet-chip{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--line,rgba(255,255,255,.15));background:transparent;color:inherit;border-radius:999px;padding:.25rem .6rem;font-size:.8rem;cursor:pointer;white-space:nowrap}
.topup-sheet{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.55)}
.topup-sheet[hidden]{display:none}
.topup-sheet .sheet{background:#1c1922;border:1px solid rgba(255,255,255,.12);color:var(--text,#fff);width:min(480px,100%);border-radius:18px 18px 0 0;padding:1.1rem 1.1rem 1.4rem;max-height:85vh;overflow:auto}
.topup-sheet h2{margin:.1rem 0 .5rem;font-size:1.2rem}
.topup-sheet ol{padding-left:1.2rem;margin:.4rem 0 .8rem}
.topup-sheet li{margin:.3rem 0}
.ppv-adm-table{width:100%;border-collapse:collapse;font-size:.8rem}
.ppv-adm-table td,.ppv-adm-table th{border-bottom:1px solid var(--line,rgba(255,255,255,.08));padding:.35rem .3rem;text-align:left;vertical-align:middle}
.ppv-adm-table img{width:44px;height:58px;object-fit:cover;border-radius:6px}
.wallet-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.3rem .8rem;font-size:.78rem;border-bottom:1px solid var(--line,rgba(255,255,255,.08))}
.wallet-bar .btn{padding:.2rem .55rem;font-size:.75rem}
.ppv-panel{padding:.6rem .8rem;border-bottom:1px solid var(--line,rgba(255,255,255,.08));font-size:.82rem}
.ppv-panel[hidden]{display:none}
.ppv-panel .form label{font-size:.78rem}


.sc-editor{margin:.4rem 0 1.4rem}
.sc-fx{font-size:.8rem;color:var(--muted);margin:.2rem 0 .9rem}
.sc-list{display:grid;gap:1rem}
.sc-card{display:grid;grid-template-columns:1fr;gap:.9rem;padding:.9rem;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(184,164,255,.06),rgba(184,164,255,.02))}
.sc-card.is-excl{border-color:rgba(184,164,255,.38)}
.sc-media{position:relative;aspect-ratio:3/2;border-radius:12px;overflow:hidden;background:#1b1822;border:1px solid var(--line)}
.sc-media img,.sc-media video{width:100%;height:100%;object-fit:cover;display:block}
.sc-card.is-excl .sc-media img{filter:blur(10px) brightness(.6);transform:scale(1.08)}
.sc-ph{display:block;width:100%;height:100%;background:radial-gradient(circle at 30% 30%,#2a2238,#141118)}
.sc-chip{position:absolute;left:.6rem;top:.6rem;font-size:.7rem;padding:.2rem .55rem;border-radius:999px;background:rgba(14,12,18,.72);color:var(--text);border:1px solid var(--line)}
.sc-pos{position:absolute;right:.6rem;top:.6rem;font-size:.7rem;padding:.2rem .5rem;border-radius:999px;background:rgba(14,12,18,.72);color:var(--muted)}
.sc-fields{display:grid;gap:.55rem;min-width:0}
.sc-fields label{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--muted);min-width:0}
.sc-fields input:not([type=checkbox]),.sc-fields select{width:100%;min-width:0;background:rgba(10,9,14,.6);color:var(--text);border:1px solid var(--line-strong,rgba(255,255,255,.16));border-radius:10px;padding:.5rem .6rem;font:inherit;font-size:.88rem}
.sc-fields input[type=file]{padding:.35rem .4rem;font-size:.78rem}
.sc-fields label[hidden]{display:none}
.sc-row2{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.sc-file-w{display:flex;flex-direction:column;gap:.3rem;min-width:0}.sc-file-t{font-size:.82rem;color:var(--muted,#a9a3b8)}
.sc-file{position:relative;display:flex!important;flex-direction:row!important;align-items:center;gap:.6rem!important;min-width:0;padding:.45rem;border:1px dashed rgba(255,255,255,.18);border-radius:12px;cursor:pointer}
.sc-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.sc-file-b{flex:none;padding:.42rem .8rem;border-radius:999px;background:rgba(201,180,255,.16);color:#e6dcff;font-weight:600;font-size:.86rem}
.sc-file-n{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;color:var(--muted,#a9a3b8)}
.sc-file:focus-within{outline:2px solid rgba(201,180,255,.6);outline-offset:2px}
.sc-check{flex-direction:row!important;align-items:center;gap:.45rem!important}
.sc-check input{width:auto}
.sc-czk{font-size:.75rem;color:var(--lav,#b8a4ff)}
.sc-en summary,.sc-add summary{cursor:pointer;font-size:.8rem;color:var(--lav,#b8a4ff)}
.sc-en{display:grid;gap:.45rem}
.sc-en[open]{padding-bottom:.2rem}
.sc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.2rem}
.sc-actions .btn{padding:.42rem .8rem;font-size:.82rem}
.sc-actions .btn[disabled]{opacity:.4;cursor:default}
.sc-msg{font-size:.78rem;color:var(--muted)}
.sc-msg.err{color:#ff9fb4}
.sc-msg.ok{color:#9be3b8}
.sc-add{margin-top:1rem;padding:.8rem;border:1px dashed var(--line-strong,rgba(255,255,255,.16));border-radius:16px}
.sc-add[open] summary{margin-bottom:.7rem}
.sc-note{font-size:.76rem;color:var(--muted);margin-top:.9rem}
.lm-count{position:absolute;left:.75rem;bottom:.75rem;display:inline-flex;align-items:center;gap:.55rem;padding:.3rem .55rem;border-radius:7px;background:rgba(18,16,22,.72);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:.68rem;line-height:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1}
.lm-count-i{display:inline-flex;align-items:center;gap:.28rem}
.lm-count-i b{font-weight:600;font-variant-numeric:tabular-nums}
.lm-count svg{width:13px;height:13px;flex:none;opacity:.92}
.sc-media .lm-count{left:.6rem;bottom:.6rem}
.sc-coll{display:grid;gap:.4rem;min-width:0}
.sc-xs{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:.4rem}
.sc-x{position:relative;display:block!important;aspect-ratio:1;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:#1b1822;cursor:pointer}
.sc-x img,.sc-x video{width:100%;height:100%;object-fit:cover;display:block}
.sc-x input{position:absolute;opacity:0;width:1px;height:1px}
.sc-x-v{position:absolute;left:.25rem;bottom:.25rem;color:#fff;display:flex}
.sc-x-rm{position:absolute;right:.25rem;top:.25rem;width:20px;height:20px;border-radius:999px;display:grid;place-items:center;font-size:.7rem;background:rgba(14,12,18,.75);color:var(--muted)}
.sc-x:has(input:checked){outline:2px solid #ff9fb4;outline-offset:-2px}
.sc-x:has(input:checked) img,.sc-x:has(input:checked) video{opacity:.35}
.sc-x:has(input:checked) .sc-x-rm{background:#ff9fb4;color:#1b1822}
.sc-x:focus-within{outline:2px solid rgba(201,180,255,.6)}
.sc-x-hint{margin:0;font-size:.72rem;color:var(--muted)}
.kol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem;margin:1rem 0 1.4rem}
.kol-grid figure{margin:0;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#1b1822;aspect-ratio:3/4}
.kol-grid img,.kol-grid video{width:100%;height:100%;object-fit:cover;display:block}
.kol-head{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}
.kol-head .lm-count{position:static}
@media (min-width:760px){.kol-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}}
.lm-card-price{margin:.25rem 0 0;font-size:.8rem;color:var(--lav,#b8a4ff);font-weight:600}
.lm-card-media video{width:100%;height:100%;object-fit:cover;display:block}
.pf-sc-edit{display:inline-flex;align-items:center;gap:.35rem}
.pf-sc-editline{margin:.1rem 0 1rem}
.pf-sc-cards{margin-bottom:1.6rem}
@media (min-width:760px){.sc-card{grid-template-columns:minmax(0,300px) minmax(0,1fr)}}
@media (max-width:420px){.sc-row2{grid-template-columns:1fr}}


/* p41 profile info */
.pi-card{position:relative;margin:1.2rem 0;padding:1.6rem 1.3rem;border:1px solid var(--line);border-radius:18px;background:#17141c}
.pi-card .lm-h2 em{font-style:italic;color:var(--lav)}
.pi-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}
.pi-head .lm-h2{margin:0}
.pi-edit{flex:0 0 auto}
.pi-about p{color:#cfc9d8;font-size:.9rem;line-height:1.7;margin:0 0 .8rem}
.pi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border-top:1px solid var(--line)}
.pi-item{padding:.85rem .2rem;border-bottom:1px solid var(--line);min-width:0}
.pi-item dt{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--violet);margin:0 0 .3rem}
.pi-item dd{margin:0;color:var(--text);font-size:.92rem;line-height:1.45;overflow-wrap:anywhere}
.pi-vis{display:inline-block;margin-left:.35rem;padding:.08rem .4rem;font-size:.62rem;border-radius:6px;border:1px solid var(--line);color:var(--muted);vertical-align:middle}
.pi-chips{display:flex;flex-wrap:wrap;gap:.35rem .9rem;align-items:center;color:#d4cedc;font-size:.78rem}
.pi-chips span+span::before{content:"·";margin-right:.9rem;color:var(--violet)}
.pi-form .pi-rows{display:grid;gap:0;border-top:1px solid var(--line)}
.pi-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1rem;align-items:end;padding:.85rem 0;border-bottom:1px solid var(--line)}
.pi-lab{display:grid;gap:.35rem;min-width:0;font-size:.82rem;color:var(--muted)}
.pi-lab>span{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--violet)}
.pi-lab input,.pi-lab textarea{width:100%;box-sizing:border-box}
.pi-num{display:flex;align-items:center;gap:.5rem}.pi-num input{max-width:8rem}
.pi-derived{display:block;padding:.55rem 0;color:var(--text);font-size:.95rem}
.pi-derived.bad{color:#f0a3b5}
.pi-hint{color:#8d8897;font-size:.72rem}
.pi-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--muted);white-space:nowrap;padding-bottom:.55rem}
.pi-toggle input{width:auto;margin:0;accent-color:var(--lav)}
.pi-visel select{min-width:9.5rem;font-size:.8rem}
.pi-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:1.2rem}
.pi-msg{font-size:.82rem;color:var(--muted)}.pi-msg.ok{color:var(--lav)}.pi-msg.err{color:#f0a3b5}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pi-page{max-width:760px;margin:1.2rem auto;padding:0 1rem}
@media(max-width:560px){
  .pi-card{padding:1.3rem 1rem}
  .pi-grid{grid-template-columns:1fr}
  .pi-row{grid-template-columns:1fr;align-items:start}
  .pi-toggle{padding-bottom:0}
  .pi-visel select{width:100%}
}


/* p41 checkmarks + profile badges */
.ucheck{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;vertical-align:-2px;margin-left:.3rem;flex:0 0 16px;color:#121016;line-height:1}
.ucheck svg{display:block}
.ucheck-gold{background:linear-gradient(135deg,#f3dc9b,#d4a94f);box-shadow:0 0 0 1px rgba(243,220,155,.35)}
.ucheck-blue{background:#4c9bf0;color:#fff;box-shadow:0 0 0 1px rgba(76,155,240,.35)}
.ucheck-purple{background:linear-gradient(135deg,#d9c6f7,#a68ce0);box-shadow:0 0 0 1px rgba(201,179,240,.4)}
h1 .ucheck,h2 .ucheck{width:20px;height:20px;flex-basis:20px;vertical-align:2px}
h1 .ucheck svg,h2 .ucheck svg{width:12px;height:12px}
.name-row .verified-badge{background:linear-gradient(135deg,#f3dc9b,#d4a94f)!important;border:0!important;color:#121016!important;box-shadow:0 0 0 1px rgba(243,220,155,.35)!important}
.star-chip,.ai-chip{text-transform:none!important;letter-spacing:.02em!important;font-size:.72rem!important;font-weight:600!important;padding:.26rem .62rem!important;border-radius:999px}
.name-row .star-chip,.star-chip{color:#e8cf8a!important;border-color:rgba(232,207,138,.45)!important;background:rgba(232,207,138,.06)!important}
.star-chip::before{content:none!important}
.name-row .ai-chip,.ai-chip{color:var(--lav)!important;border-color:rgba(201,179,240,.45)!important;background:rgba(201,179,240,.07)!important}
.ai-chip::before{content:none!important}


.name-row .ucheck{width:22px;height:22px;flex-basis:22px;margin-left:.1rem}
.name-row .ucheck svg{width:13px;height:13px}
.ck-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ck-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem 1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}
.ck-who{display:flex;align-items:center;gap:.7rem;min-width:0;color:var(--text)!important;flex:1 1 14rem}
.ck-who > span{display:flex;flex-direction:column;min-width:0;flex:1}
.ck-who strong{display:flex;align-items:center;gap:.35rem;font-weight:600;font-size:.92rem;overflow-wrap:anywhere}
.ck-who small{color:var(--muted);font-size:.74rem}
.ck-form{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.ck-form select{min-width:13rem;font-size:.82rem}
.ck-search{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;margin:1.4rem 0 0}
.ck-search input[type=search]{flex:1 1 14rem;min-width:0}
.ck-legend{white-space:nowrap;display:inline-flex;align-items:center;gap:.35rem;margin-right:.6rem}
.ck-inline{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:.9rem 0;padding:.8rem 1rem;border:1px solid var(--line);border-radius:14px;background:#17141c}
@media(max-width:560px){.ck-form{width:100%}.ck-form select{flex:1;min-width:0}}


[data-lmtip]{cursor:help;outline-offset:3px}
.lm-tip{position:fixed;z-index:9999;max-width:min(280px,calc(100vw - 20px));padding:.7rem .85rem;border-radius:12px;background:#1b1822;border:1px solid rgba(201,179,240,.32);color:#e9e4f0;font:500 .78rem/1.5 var(--sans),sans-serif;letter-spacing:0;text-transform:none;box-shadow:0 18px 44px rgba(0,0,0,.45);opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .16s ease,transform .16s ease}
.lm-tip.on{opacity:1;transform:none}
.lm-tip::before{content:"";position:absolute;top:-6px;left:var(--ax,50%);width:10px;height:10px;margin-left:-5px;background:#1b1822;border-left:1px solid rgba(201,179,240,.32);border-top:1px solid rgba(201,179,240,.32);transform:rotate(45deg)}
.lm-tip.up::before{top:auto;bottom:-6px;transform:rotate(225deg)}
@media (prefers-reduced-motion:reduce){.lm-tip{transition:none}}


/* ---- wide shell (profile) ---- */
.app-shell.wide .main-wrap{max-width:none!important;padding:0!important}
.app-shell.wide .main{padding:0;width:100%!important;max-width:none!important}
.pf .feed{align-content:start;align-items:start}
.app-shell.wide .social-rail{display:none!important}

/* ---- profile hero ---- */
.pf .pf-hero{padding-top:1.6rem}
.pf-name{margin:0 0 1rem}
.pf-name-t{display:inline}
.pf-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .7rem;margin:0 0 1.3rem}
.pf-badges .ucheck{width:22px!important;height:22px!important}
.pf-handle{color:var(--muted);font-size:.82rem}
.pf-online{display:inline-flex;align-items:center;gap:.4rem;color:#8fe3b4;font-size:.78rem;font-weight:600}
.pf-online .online-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.16)}
.pf-bio{font-size:1.05rem;margin-bottom:1.6rem}
.pf-bio em{font-family:var(--serif),serif;font-style:italic;color:var(--lav);font-size:1.12em}
.pf-cta{align-items:center}
.pf-cta form{display:contents}
.pf-cta .btn{display:inline-flex;align-items:center;gap:.5rem}
.pf-cta .btn.is-on{color:var(--lav);border-color:rgba(201,179,240,.4);cursor:default}
.pf-facts{color:var(--muted)!important;text-decoration:none;max-width:30rem;line-height:1.45;margin-bottom:.9rem}
.pf-facts:hover span{color:var(--text)}
.pf-tags{flex-wrap:wrap;gap:.5rem 1.2rem;margin:0}
.pf-portrait{min-height:380px}
.pf-ring{overflow:visible;position:relative;padding:2px}
.pf-ring img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 20%;display:block}
.pf-ring.is-online::after{content:"";position:absolute;right:0;bottom:1px;width:11px;height:11px;border-radius:50%;background:#4ade80;border:2px solid #121016}
.pf-edit{position:absolute;top:2.6rem;right:1rem;display:flex;flex-direction:column;align-items:flex-end;gap:.45rem;z-index:2}
.pf-edit .media-edit{position:static!important;display:flex;gap:.35rem;opacity:1!important;inset:auto!important;background:none!important}
.pf-edit-btn{display:inline-flex;align-items:center;gap:.4rem;font:inherit;font-size:.72rem;font-weight:600;color:#fff;background:rgba(18,16,22,.7);border:1px solid rgba(255,255,255,.22);border-radius:9px;padding:.42rem .65rem;cursor:pointer;backdrop-filter:blur(6px)}
.pf-edit-btn svg{width:15px;height:15px}
.pf-edit-btn.danger{color:#ffb4b4}
.pf-edit-btn:hover{border-color:var(--lav);color:var(--lav-3)}
.pf .media-edit-msg:empty,.pf #follow-form-msg:empty{display:none}
.pf .media-edit-msg,.pf #follow-form-msg{margin:.6rem 0}

/* ---- stats ---- */
.pf-stats{margin:0;padding:1.1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.pf-stat{display:flex;flex-direction:column-reverse;gap:.25rem;min-width:0}
.pf-stat dd{margin:0;font-family:var(--serif),serif;font-size:1.7rem;line-height:1;color:var(--text)}
.pf-stat dt{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--violet);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---- tabs ---- */
.pf .pf-tabs{position:relative;display:flex;gap:1.6rem;overflow-x:auto;scrollbar-width:none;margin:0;padding:0;border:0!important;border-bottom:1px solid var(--line)!important;background:transparent!important;box-shadow:none!important;position:sticky;top:0;z-index:5;background:rgba(18,16,22,.92)!important;backdrop-filter:blur(10px)}
.pf .pf-tabs::-webkit-scrollbar{display:none}
.pf .pf-tabs a{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;padding:1rem 0 .9rem!important;margin:0!important;font-size:.84rem!important;font-weight:500!important;color:var(--muted)!important;background:none!important;border:0!important;border-radius:0!important;letter-spacing:0!important;text-transform:none!important}
.pf .pf-tabs a svg{width:14px;height:14px;color:var(--violet)}
.pf .pf-tabs a:hover{color:var(--text)!important}
.pf .pf-tabs a.on{color:var(--text)!important;font-weight:600!important}
.pf .pf-tabs .tabs-indicator{bottom:-1px}

/* ---- body + sections ---- */
.pf-body{display:block;padding:0 0 2.5rem}
.pf-main{min-width:0}
.pf-aside{display:none}
.pf-sec-head{margin:2.2rem 0 1.4rem}
.pf-sec-head .btn{display:inline-flex;align-items:center;gap:.45rem}
.pf-seg-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}
.pf .media-subtabs{margin:0!important}
.pf-empty{display:grid;justify-items:center;gap:.7rem;text-align:center;padding:2.6rem 1rem;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:.86rem;background:rgba(255,255,255,.012)}
.pf-empty svg{color:var(--violet);width:26px;height:26px}
.pf-empty p{margin:0}
.pf-private{margin-top:2.2rem}
.pf-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.3rem 1rem!important}
.pf-teaser .lm-card-media{aspect-ratio:4 / 5}
.pf-teaser .lm-img-ph{background:radial-gradient(circle at 50% 38%,rgba(201,179,240,.22),transparent 62%),linear-gradient(160deg,#221d2b,#16131b)}
.pf-teaser h3{font-size:1.15rem!important}
.pf-price{color:var(--lav);font-weight:600}
.pf .lm-note{margin-top:1.2rem}
.pf .pi-wrap{padding:2rem 0 0}
.pf .mobile-rail{margin:1.6rem 0 0}

/* ---- story strip in profile ---- */
.pf .stories-strip,.pf .story-strip{margin:0 0 1.2rem!important;padding:0!important}

/* ---- post cards (landing card language) ---- */
.pf .feed,.feed{display:grid;gap:1.1rem;padding:0!important}
.card.post{background:#17141c!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:none!important;overflow:hidden;margin:0!important}
.card.post .post-head{padding:1rem 1.1rem .4rem!important}
.card.post .post-meta strong{font-family:var(--serif),serif;font-weight:400;font-size:1.05rem;display:inline-flex;align-items:center;gap:.3rem}
.card.post .post-meta .sub{font-size:.72rem;color:var(--muted)}
.card.post .post-text{padding:.2rem 1.1rem .8rem!important}
.card.post .post-text strong{display:block;font-family:var(--serif),serif;font-weight:400;font-size:1.3rem;line-height:1.25;margin-top:.55rem}
.card.post .post-text .muted{color:#c9c3d2!important;font-size:.92rem;line-height:1.6}
.card.post .post-text .badge{font-size:.6rem!important;letter-spacing:.18em!important;text-transform:uppercase!important;font-weight:600!important;padding:0!important;background:none!important;border:0!important;color:var(--violet)!important}
.card.post .post-media{margin:0!important;border-radius:0!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#1b1822}
.card.post .post-media img{display:block;width:100%;max-height:640px;object-fit:cover}
.card.post .post-actions{display:flex;gap:.3rem;padding:.55rem .7rem .7rem!important;border:0!important}
.card.post .post-actions button{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .65rem!important;border-radius:9px!important;background:none!important;border:1px solid transparent!important;color:var(--muted)!important;font-size:.8rem!important}
.card.post .post-actions button:hover{border-color:var(--line)!important;color:var(--text)!important}
.card.post .post-actions .is-liked{color:#f0a8c8!important}
.card.post .post-menu{color:var(--muted)!important;background:none!important;border:1px solid transparent!important;border-radius:9px!important}
.card.post .post-menu:hover{border-color:var(--line)!important;color:var(--text)!important}
.post-menu-pop{background:#1c1922!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:12px!important;box-shadow:0 20px 50px rgba(0,0,0,.55)!important}
.card.post .lock-overlay{background:rgba(18,16,22,.55)!important;backdrop-filter:blur(14px);color:#fff}
.card.post .lock-overlay .lock-ico{color:var(--lav);font-size:0}
.card.post .lock-overlay .lock-ico svg{width:30px;height:30px}
.card.post .lock-overlay strong{font-family:var(--serif),serif;font-weight:400;font-size:1.2rem}
.card.post .lock-overlay .sparkles{display:none}
.card.post .comments-panel{border-top:1px solid var(--line);padding:.8rem 1.1rem 1rem!important;background:transparent!important}
.card.post .comments-title{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--violet);font-weight:600}

/* ---- gallery grid (landing cards) ---- */
.pf .gallery-grid,.gallery-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.9rem!important;padding:0!important}
.gallery-item{position:relative;display:block;border-radius:14px!important;overflow:hidden;aspect-ratio:4 / 5;background:#1b1822;border:1px solid var(--line)!important}
.gallery-item img,.gallery-item .ph{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.gallery-item:hover img{transform:scale(1.03)}
.gallery-item .g-badge{position:absolute!important;top:.65rem!important;left:.65rem!important;z-index:2;display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .5rem!important;font-size:.64rem!important;font-weight:600!important;border-radius:7px!important;background:rgba(18,16,22,.72)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;letter-spacing:0!important;text-transform:none!important}
.gallery-item .g-lock{position:absolute;inset:0;display:grid!important;place-content:center;justify-items:center;gap:.4rem;background:rgba(18,16,22,.45)!important;color:var(--lav)}
.gallery-item .g-lock svg{width:30px;height:30px}
.gallery-item .g-lock em{font-style:normal;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#e6def2}

/* ---- rail cards (profile aside + mobile) ---- */
.pf-aside .rail-card,.pf .mobile-rail .rail-card,.social-rail .rail-card{background:#17141c!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:none!important;padding:1.1rem 1.1rem 1rem!important}
.pf-aside .rail-card h3,.pf .mobile-rail .rail-card h3,.social-rail .rail-card h3{font-family:inherit!important;font-size:.62rem!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:var(--violet)!important;font-weight:600!important;margin:0 0 .8rem!important}
.pf-aside .rail-hint,.pf-aside .rail-empty{font-size:.8rem;color:var(--muted)}
.pf-aside .rail-card .btn{width:100%;justify-content:center}

@media(min-width:760px){
  .pf .pf-hero{padding-top:2.6rem}
  .pf-portrait{min-height:460px}
  .pf-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .gallery-grid,.pf .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .pf-stat dd{font-size:2rem}
}
@media(min-width:1100px){
  .pf-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:2.4rem;align-items:start}
  .pf-aside{display:grid;gap:1rem;position:sticky;top:4.2rem;padding-top:2.2rem}
  .pf .mobile-rail{display:none}
  .pf-portrait{min-height:520px}
}
@media(max-width:759px){
  .pf .pf-hero{display:flex;flex-direction:column-reverse;gap:1.6rem;padding-top:1rem}
  .pf-portrait{aspect-ratio:4 / 4.4;min-height:0;width:100%;align-self:stretch}
  .pf .pf-hero>*{width:100%;min-width:0}
  .pf-name{font-size:clamp(2.4rem,11vw,3rem)}
  .pf-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}
  .pf-stat dd{font-size:1.4rem}
  .pf-stat dt{font-size:.54rem;letter-spacing:.12em}
  .pf .pf-tabs{gap:1.25rem}
  .pf-sec-head{margin:1.7rem 0 1.1rem}
  .pf-cta .btn{flex:1 1 auto;justify-content:center}
}


/* ---------- nav icons (side + bottom bar) */
body .side .nav-item .ico{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:0;color:var(--muted);transition:color .18s}
body .side .nav-item .ico svg{width:19px;height:19px}
body .side .nav-item:hover .ico,body .side .nav-item.on .ico{color:var(--lav)}
body .bottom-nav .ico{display:inline-flex;align-items:center;justify-content:center;height:22px;font-size:0;color:var(--muted)}
body .bottom-nav .ico svg{width:21px;height:21px}
body .bottom-nav a.on .ico{color:var(--lav)}

/* ---------- shared page primitives */
.lm-page{width:100%;max-width:880px;margin:0 auto;padding:2.2rem 1.5rem 3rem;box-sizing:border-box}
.lm-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;padding-bottom:1.4rem;margin-bottom:1.4rem;border-bottom:1px solid var(--line)}
.lm-page-head .lm-eyebrow{margin-bottom:.7rem}
.lm-page-h{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,4vw,2.7rem);line-height:1.05;margin:0;color:var(--text);letter-spacing:-.01em}
.lm-page-h em{font-style:italic;color:var(--lav)}
.lm-page-head .lm-sub{margin:.55rem 0 0;color:var(--muted);font-size:.9rem}
.lm-page-acts{display:flex;gap:.5rem;flex-wrap:wrap}
.lm-page-acts .btn{display:inline-flex;align-items:center;gap:.45rem}
.lm-page-acts .btn svg{width:15px;height:15px}
.lm-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;padding:3rem 1rem;border:1px dashed rgba(201,179,240,.22);border-radius:16px;background:rgba(23,20,28,.5)}
.lm-empty h2{font-family:var(--serif);font-weight:400;font-size:1.5rem;margin:.4rem 0 0;color:var(--text)}
.lm-empty .lm-sub{margin:0 0 .6rem;color:var(--muted);font-size:.88rem;max-width:34ch}
.lm-empty .btn{display:inline-flex;align-items:center;gap:.45rem}
.lm-empty .btn svg{width:14px;height:14px}
.lm-empty-ico{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;border:1px solid rgba(201,179,240,.35);color:var(--lav);background:rgba(201,179,240,.06)}
.lm-empty-ico svg{width:22px;height:22px}
.lm-skel-row{height:68px;border-radius:14px;margin-bottom:.6rem;background:linear-gradient(90deg,#17141c 0%,#1f1b26 50%,#17141c 100%);background-size:200% 100%;animation:lmSkel 1.3s ease-in-out infinite}
@keyframes lmSkel{0%{background-position:100% 0}100%{background-position:-100% 0}}

/* ---------- gate cards (guest chat / verify) */
.lm-gate{display:flex;align-items:center;justify-content:center;min-height:calc(100dvh - 12rem)}
.lm-gate-card{width:100%;max-width:520px;background:#17141c;border:1px solid var(--line);border-radius:20px;padding:2.4rem 2.2rem 2.2rem;box-sizing:border-box;position:relative;overflow:hidden}
.lm-gate-card::before{content:"";position:absolute;inset:-40% -30% auto auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(166,140,224,.16),transparent 65%);pointer-events:none}
.lm-gate-ico{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid rgba(201,179,240,.35);color:var(--lav);margin-bottom:1.3rem;background:rgba(201,179,240,.05)}
.lm-gate-ico svg{width:21px;height:21px}
.lm-gate-h{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,5vw,2.6rem);line-height:1.05;margin:0 0 .7rem;color:var(--text)}
.lm-gate .lm-lead{color:var(--muted);font-size:.95rem;line-height:1.6;margin:0 0 1.5rem;max-width:40ch}
.lm-gate-cta{display:flex;gap:.6rem;flex-wrap:wrap}
.lm-gate-cta .btn{display:inline-flex;align-items:center;gap:.5rem}
.lm-gate-cta .btn svg{width:14px;height:14px}
.lm-gate-card .form{margin-top:.4rem}
.lm-gate-card .actions{margin-top:1rem!important}

/* ---------- chat shell (fan) */
body .chat-shell.lm-chat{border:1px solid var(--line);border-radius:20px;background:#121016;overflow:hidden}
body .lm-chat-head{display:flex;align-items:center;gap:.95rem;padding:1rem 1.25rem;background:rgba(23,20,28,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.chat-ava{position:relative;flex:0 0 52px;width:52px;height:52px;border-radius:50%;padding:2px;border:1px solid rgba(201,179,240,.5);box-sizing:border-box;display:block}
.chat-ava img,.chat-ava .lm-ring-ph{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 20%;display:grid;place-items:center;background:#1b1822;color:var(--lav)}
.chat-ava .lm-ring-ph svg{width:20px;height:20px}
.chat-ava-dot{position:absolute;right:1px;bottom:2px;width:11px;height:11px;border-radius:50%;background:#7ed6a2;border:2px solid #17141c}
.chat-who{min-width:0;flex:1}
.chat-eyebrow{margin:0 0 .15rem;font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--violet)}
body .lm-chat-head .chat-name{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:0;font-family:var(--serif);font-weight:400;font-size:1.45rem;line-height:1.1;color:var(--text)}
.lm-chat-head .chat-name em{font-style:italic;color:var(--lav)}
.lm-chat-head .chat-name .ucheck{width:17px;height:17px}
.lm-chat-head .chat-name .ai-chip{font-family:inherit;font-size:.56rem}
body .lm-chat-head .sub{display:flex;align-items:center;gap:.4rem;margin-top:.25rem;color:var(--muted);font-size:.76rem}
body .lm-chat-head .online-dot{display:none}
.chat-head-r{margin-left:auto;flex:0 0 auto}

/* ---------- thread */
body .chat-thread{background:radial-gradient(1200px 600px at 100% 0,rgba(166,140,224,.06),transparent 60%),#121016;padding:1.4rem 1.4rem 1rem;gap:.85rem}
body .chat-day{display:flex;align-items:center;gap:.9rem;align-self:stretch;margin:.4rem 0;background:none!important;border:0!important;padding:0!important;font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--violet)}
body .chat-day::before,body .chat-day::after{content:"";flex:1;height:1px;background:var(--line)}
body .bubble{max-width:min(72%,520px);border-radius:18px;padding:.75rem .95rem .6rem;box-shadow:none;font-size:.93rem;line-height:1.5}
body .bubble.lily,body .bubble.theirs{background:#17141c;border:1px solid var(--line)}
body .bubble.fan,body .bubble.mine{background:rgba(201,179,240,.1);border:1px solid rgba(201,179,240,.2);color:#f2eef7}
body .bubble.mine{border-bottom-right-radius:6px}
body .bubble.theirs{border-bottom-left-radius:6px}
body .bubble .who{display:flex;align-items:center;gap:.3rem;font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:.4rem}
body .bubble.lily .who{color:var(--violet)}
body .bubble .who .ucheck{width:12px;height:12px}
body .bubble .txt{white-space:pre-wrap;word-break:break-word}
body .bubble .time{font-size:.6rem;letter-spacing:.06em;color:var(--muted);opacity:.85;margin-top:.4rem}
body .bubble-media{margin:.1rem 0 .5rem}
body .bubble-media img{max-width:min(260px,64vw);max-height:300px;border-radius:12px;border:1px solid var(--line)}
body .bubble-voice{display:flex;flex-direction:column;gap:.25rem;margin:.1rem 0 .35rem}
body .bubble-voice audio{width:min(260px,62vw);height:38px;border-radius:999px;filter:invert(.92) hue-rotate(200deg) saturate(.6)}
html body .bubble-voice audio.sb-voice-native{display:none}
body .sb-voice{display:flex;align-items:center;gap:.65rem;width:min(250px,60vw);padding:.15rem 0}
body .sb-voice-play{display:inline-grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border-radius:50%;border:0;background:var(--lav);color:#1a1420;cursor:pointer;transition:transform .15s,box-shadow .18s}
body .sb-voice-play:hover,body .sb-voice-play:focus-visible{transform:scale(1.05);box-shadow:0 0 0 5px rgba(201,179,240,.15)}
body .sb-voice-play svg{width:15px;height:15px}
body .bubble.fan .sb-voice-play,body .bubble.mine .sb-voice-play{background:#f2eef7}
html body .sb-voice .sb-voice-seek{flex:1;min-width:0;margin:0;height:18px;background:transparent;-webkit-appearance:none;appearance:none;cursor:pointer;--p:0%}
html body .sb-voice .sb-voice-seek::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:linear-gradient(90deg,var(--lav) var(--p),rgba(255,255,255,.14) var(--p))}
html body .sb-voice .sb-voice-seek::-moz-range-track{height:3px;border-radius:3px;background:rgba(255,255,255,.14)}
html body .sb-voice .sb-voice-seek::-moz-range-progress{height:3px;border-radius:3px;background:var(--lav)}
html body .sb-voice .sb-voice-seek::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;margin-top:-4px;border-radius:50%;background:var(--lav);border:0}
html body .sb-voice .sb-voice-seek::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:var(--lav);border:0}
body .sb-voice-time{flex:0 0 auto;font-size:.7rem;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--muted)}
body .sb-voice.on .sb-voice-time{color:var(--lav)}
body .bubble-voice .voice-label{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--violet)}
body .bubble .tr-note{font-size:.7rem;color:var(--muted);font-style:italic}

/* reactions */
body .bubble-reacts{gap:.3rem;margin-top:.45rem}
body .react-chip{display:inline-flex;align-items:center;gap:.2rem;padding:.12rem .48rem;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03);font-size:.75rem;color:var(--text);cursor:pointer;transition:border-color .18s,background .18s}
body .react-chip.on{border-color:rgba(201,179,240,.55);background:rgba(201,179,240,.14)}
body .react-chip:hover{border-color:rgba(201,179,240,.45)}
body .react-add{display:inline-grid;place-items:center;width:26px;height:26px;padding:0;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;transition:color .18s,border-color .18s,opacity .18s}
body .react-add:hover,body .react-add:focus-visible{color:var(--lav);border-color:rgba(201,179,240,.5)}
body .react-picker{background:#1b1822;border:1px solid rgba(201,179,240,.25);border-radius:999px;padding:.25rem .35rem;box-shadow:0 12px 30px rgba(0,0,0,.45)}
body .react-pick{border-radius:50%;transition:transform .15s,background .15s}
body .react-pick:hover{background:rgba(201,179,240,.14);transform:translateY(-2px)}

/* message action row */
body .sb-msg-menu{gap:.3rem;margin-top:.45rem}
body .sb-msg-menu button{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);transition:color .18s,border-color .18s,background .18s}
body .sb-msg-menu button:hover,body .sb-msg-menu button:focus-visible{color:var(--lav);border-color:rgba(201,179,240,.45);background:rgba(201,179,240,.07)}
body .sb-msg-menu .sb-mm-delete:hover{color:#f0a3b4;border-color:rgba(240,163,180,.45)}
/* actions stay out of the way: hover (desktop), focus (keyboard) or tap (touch) reveals them */
html body .bubble .sb-msg-menu{display:none}
html body .bubble .react-add{display:none}
html body .bubble:focus-within .sb-msg-menu,html body .bubble.sb-open .sb-msg-menu{display:flex}
html body .bubble:focus-within .react-add,html body .bubble.sb-open .react-add{display:inline-grid}
@media (hover:hover) and (pointer:fine){
  html body .bubble:hover .sb-msg-menu{display:flex}
  html body .bubble:hover .react-add{display:inline-grid}
}
html body .bubble.theirs .sb-mm-edit{display:none}
body .bubble .react-chips:empty{display:none}
body .bubble[data-msg-id]{cursor:default}
@media (hover:none){ body .bubble[data-msg-id]{-webkit-tap-highlight-color:transparent} body .bubble.sb-open{border-color:rgba(201,179,240,.35)} }
body .ai-tag{font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;border:1px solid rgba(201,179,240,.3);color:var(--lav);border-radius:999px;padding:.05rem .4rem;background:transparent}

/* composer */
body .chat-composer{background:rgba(23,20,28,.96);border-top:1px solid var(--line);padding:.8rem 1rem .7rem}
body .chat-composer .row{gap:.45rem;align-items:flex-end}
body .chat-attach,body .chat-voice,body .chat-composer .emo-btn{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:1.05rem;cursor:pointer;flex-shrink:0;transition:color .18s,border-color .18s,background .18s}
html body .chat-composer .emo-btn:hover,html body .chat-composer .emo-btn[aria-expanded="true"],body .chat-attach:hover,body .chat-voice:hover,body .chat-attach:focus-within,body .chat-voice:focus-visible{color:var(--lav);border-color:rgba(201,179,240,.5);background:rgba(201,179,240,.06)}
body .chat-attach svg,body .chat-voice svg,body .emo-btn svg{width:19px;height:19px}
body .chat-voice.rec{color:#1a1420;background:var(--lav);border-color:var(--lav);box-shadow:0 0 0 6px rgba(201,179,240,.15)}
body .chat-composer textarea{border-radius:22px;background:#0f0d13;border:1px solid rgba(255,255,255,.1);padding:.68rem 1rem;min-height:42px;font-size:.93rem;transition:border-color .18s}
body .chat-composer textarea:focus{border-color:rgba(201,179,240,.5);outline:none;box-shadow:0 0 0 3px rgba(201,179,240,.12)}
body .chat-composer .chat-send{display:inline-flex;align-items:center;gap:.45rem;height:42px;min-width:0;padding:0 1.1rem;border-radius:999px;font-weight:600}
body .chat-composer .chat-send svg{width:16px;height:16px}
body .chat-voice-status{font-size:.7rem;letter-spacing:.06em;color:var(--lav)}
body .chat-composer .lm-safety{margin:.55rem 0 0;font-size:.68rem;padding:.35rem .7rem;border-radius:999px;background:transparent;border-color:var(--line);color:var(--muted)}
body .chat-attach-preview{font-size:.72rem;color:var(--lav)}

/* empty thread */
body .chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.45rem;padding:3rem 1rem;color:var(--muted)}
body .chat-empty h2{font-family:var(--serif);font-weight:400;font-size:1.6rem;margin:.5rem 0 0;color:var(--text)}
body .chat-empty p{max-width:36ch;margin:0 auto;font-size:.88rem}

/* ---------- owner inbox */
body .dm-shell{border:1px solid var(--line);border-radius:20px;background:#121016;overflow:hidden}
body .dm-list{background:#141118;border-right:1px solid var(--line)}
body .dm-list-head{padding:1.3rem 1.1rem .9rem;border-bottom:1px solid var(--line)}
body .dm-list-head .lm-eyebrow{margin:0 0 .5rem}
body .dm-list-head h1{font-family:var(--serif);font-weight:400;font-size:1.6rem;line-height:1.1;margin:0}
body .dm-list-head .muted{font-size:.76rem;margin:.4rem 0 0;line-height:1.45}
body .dm-search input,body .dm-search{border-radius:999px}
body .dm-search input{background:#0f0d13;border:1px solid rgba(255,255,255,.1);padding:.6rem 1rem;font-size:.85rem}
body .dm-item{border-radius:14px;border:1px solid transparent;margin:.2rem .45rem;padding:.7rem .75rem;transition:background .18s,border-color .18s}
body .dm-item:hover{background:rgba(201,179,240,.05)}
body .dm-item.on{background:rgba(201,179,240,.09);border-color:rgba(201,179,240,.28)}
body .dm-item .handle{color:var(--violet);font-size:.7rem}
body .dm-item .preview{color:var(--muted);font-size:.78rem}
body .dm-badge{background:var(--lav);color:#1a1420;font-weight:700}
body .dm-pane .chat-head{background:rgba(23,20,28,.92);border-bottom:1px solid var(--line);padding:.9rem 1.2rem}
body .dm-pane .chat-head h2{font-family:var(--serif);font-weight:400;font-size:1.35rem}
body .ai-pause-btn{border-radius:999px;font-size:.78rem}
body .ai-gender-bar,body .ppv-bar,body .dm-pane .wallet-bar{background:#141118;border-bottom:1px solid var(--line);font-size:.78rem;color:var(--muted)}
body .ppv-bar .btn,body .wallet-bar .btn,body .dm-pane .chat-head .btn{border-radius:999px}
body [data-ppv-panel] svg{width:14px;height:14px;vertical-align:-2px;margin-right:.3rem}
body .dm-empty{color:var(--muted)}
body .dm-empty h2{font-family:var(--serif);font-weight:400;font-size:1.6rem;margin:.6rem 0 .3rem}

/* ---------- PPV */
body .ppv-card{border-radius:16px;border:1px solid rgba(201,179,240,.22);background:#17141c}
body .ppv-over{gap:.35rem;background:linear-gradient(180deg,rgba(15,13,19,.25),rgba(15,13,19,.78))}
body .ppv-lock-ico{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.4);color:#fff;background:rgba(15,13,19,.35);backdrop-filter:blur(6px);margin-bottom:.35rem;font-size:0}
body .ppv-lock-ico svg{width:20px;height:20px}
body .ppv-title{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:#e6dff2}
body .ppv-price{font-family:var(--serif);font-weight:400;font-size:1.9rem;color:#fff}
body .ppv-unlock{border-radius:999px;margin-top:.45rem}
body .ppv-badge{display:inline-flex;align-items:center;gap:.3rem;left:.55rem;bottom:.55rem;font-size:.62rem;letter-spacing:.08em;background:rgba(15,13,19,.72);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(6px);padding:.22rem .6rem}
body .ppv-badge svg{width:12px;height:12px}
body .ppv-gone{display:flex;align-items:center;color:var(--muted);font-size:.8rem}
body .ppv-gone-in{display:inline-flex;align-items:center;gap:.4rem}
body .ppv-gone-in svg{width:15px;height:15px}

/* ---------- wallet + top-up */
html body .wallet-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(201,179,240,.3);background:rgba(201,179,240,.05);color:var(--text);border-radius:999px;padding:.42rem .85rem;font-size:.76rem;cursor:pointer;transition:border-color .18s,background .18s}
html body .wallet-chip:hover{border-color:var(--lav);background:rgba(201,179,240,.1)}
html body .wallet-chip svg{color:var(--lav)}
html body .wallet-chip .wc-l{color:var(--muted)}
html body .wallet-chip strong{color:var(--text);font-weight:600}
html body .topup-sheet{background:rgba(8,7,10,.68);backdrop-filter:blur(6px)}
html body .topup-sheet .sheet{background:#17141c;border:1px solid var(--line);border-radius:22px 22px 0 0;padding:1.6rem 1.5rem 1.4rem;box-shadow:0 -20px 60px rgba(0,0,0,.5)}
html body .topup-sheet .sheet .lm-eyebrow{margin:0 0 .5rem}
html body .topup-sheet .sheet h2{font-family:var(--serif);font-weight:400;font-size:1.9rem;margin:0 0 .3rem}
html body .topup-pkgs{gap:.55rem;margin:.6rem 0}
html body .topup-pkg{border-radius:14px;border:1px solid var(--line);background:#121016;padding:.8rem .5rem;transition:border-color .18s,background .18s}
html body .topup-pkg:hover{border-color:rgba(201,179,240,.5);background:rgba(201,179,240,.06)}
html body .topup-pkg strong,html body .topup-pkg b{font-family:var(--serif);font-weight:400;font-size:1.3rem}
html body .topup-sheet .actions .btn{border-radius:999px}
@media(min-width:760px){html body .topup-sheet .sheet{border-radius:22px}}

/* ---------- notifications */
.notif-page .notif-list{display:flex;flex-direction:column;gap:.55rem}
body .notif-page .notif-item{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:.9rem 1.05rem;border-radius:16px;background:#17141c;border:1px solid var(--line);color:var(--text);text-decoration:none;position:relative;transition:border-color .18s,transform .18s}
body .notif-page .notif-item:hover{border-color:rgba(201,179,240,.35);transform:translateY(-1px)}
body .notif-page .notif-item.unread{border-color:rgba(201,179,240,.3);background:linear-gradient(90deg,rgba(201,179,240,.07),#17141c 55%)}
body .notif-page .notif-item.unread::after{content:"";position:absolute;left:-1px;top:50%;width:3px;height:22px;transform:translateY(-50%);border-radius:3px;background:var(--lav)}
.notif-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(201,179,240,.3);color:var(--lav)}
.notif-body{display:flex;flex-direction:column;min-width:0;gap:.15rem}
.notif-body strong{font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.notif-txt{font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.notif-time{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
body .notif-page .notif-support{border-left:1px solid var(--line)}
body .notif-page .sup-official{font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:#9ec5ff;border:1px solid rgba(120,170,255,.45);border-radius:999px;padding:.05rem .45rem}

/* bell dropdown */
body .sb-notif-panel{background:#17141c;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.5)}

/* ---------- mobile */
@media(max-width:759px){
  .lm-page{padding:1.4rem 1rem 2rem}
  .lm-page-head{align-items:flex-start;gap:1rem}
  .lm-gate{min-height:calc(100dvh - 14rem);padding:1.2rem 1rem}
  .lm-gate-card{padding:1.9rem 1.4rem 1.6rem}
  body .chat-shell.lm-chat{border-radius:0;border-left:0;border-right:0}
  body .lm-chat-head{padding:.7rem .85rem;gap:.7rem}
  .chat-ava{flex-basis:44px;width:44px;height:44px}
  body .lm-chat-head .chat-name{font-size:1.2rem;gap:.35rem}
  .lm-chat-head .chat-eyebrow{display:none}
  .lm-chat-head .chat-name .ai-chip{display:none}
  body .lm-chat-head .sub{font-size:.7rem}
  html body .lm-chat-head .wallet-chip{padding:.36rem .65rem;font-size:.72rem}
  html body .lm-chat-head .wallet-chip .wc-l{display:none}
  body .chat-thread{padding:1rem .8rem .8rem}
  body .bubble{max-width:84%}
  body .chat-composer{padding:.6rem .6rem .55rem}
  body .chat-composer .row{gap:.35rem}
  body .chat-attach,body .chat-voice,body .chat-composer .emo-btn{width:38px;height:38px}
  body .chat-composer .chat-send{width:42px;padding:0;justify-content:center}
  body .chat-composer .chat-send .chat-send-t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  body .dm-shell{border-radius:0;border-left:0;border-right:0}
  body .notif-page .notif-item{grid-template-columns:36px minmax(0,1fr);padding:.8rem .85rem}
  body .notif-page .notif-time{grid-column:2;margin-top:-.2rem}
  .notif-ico{width:36px;height:36px}
  /* profile tabs: everything fits on 390px, "Šeptat" never cut */
  html body .pf .pf-tabs{gap:0;justify-content:space-between;padding:0 .9rem;overflow-x:auto}
  html body .pf .pf-tabs a{font-size:.74rem!important;padding:.95rem .1rem .85rem!important}
  html body .pf .pf-tabs a svg{display:none}
}
@media(max-width:359px){html body .pf .pf-tabs{justify-content:flex-start;gap:.9rem}}
@media(prefers-reduced-motion:reduce){.lm-skel-row{animation:none}body .notif-page .notif-item:hover{transform:none}}

/* p43a: voice range reset + owner AI tools in chat */
html body .sb-voice input.sb-voice-seek{border:0;padding:0;box-shadow:none;border-radius:0;outline-offset:3px}
html body .ai-pause-btn{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--text);font-size:.74rem;font-weight:500;padding:.5rem .95rem}
html body .ai-pause-btn::before{content:"";width:7px;height:7px;border-radius:50%;background:#7fd6a3;box-shadow:0 0 0 3px rgba(127,214,163,.15)}
html body .ai-pause-btn[data-paused="1"]::before{background:var(--muted);box-shadow:none}
html body .ai-pause-btn:hover{border-color:rgba(201,179,240,.45);color:var(--lav)}
html body .ai-gender-bar{background:transparent;color:var(--muted);font-size:.74rem!important;padding:.45rem 1rem!important}
html body .ai-gender-bar select{border-radius:999px;background:#0f0d13;border:1px solid var(--line);color:var(--text);padding:.22rem .7rem!important}
html body .bubble .ai-del{display:inline-grid;place-items:center;width:24px;height:24px;padding:0;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;vertical-align:middle;transition:color .18s,border-color .18s}
html body .bubble .ai-del:hover{color:var(--lav);border-color:rgba(201,179,240,.45)}
html body .bubble .ai-del[data-ai-del]:hover{color:#f0a3b4;border-color:rgba(240,163,180,.45)}
html body .ai-off-dot{font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.02rem .4rem;vertical-align:middle}

/* p43a: top-up sheet polish */
html body .topup-sheet{z-index:1300}
html body .topup-sheet .sheet{max-height:calc(100dvh - 1rem);overflow-y:auto;padding-bottom:calc(1.4rem + env(safe-area-inset-bottom,0px))}
html body .topup-pkg{color:var(--text)}
html body .topup-pkg.btn.primary,html body .topup-pkg.btn.primary:hover{background:rgba(201,179,240,.1)!important;border-color:rgba(201,179,240,.55);color:var(--text)!important;box-shadow:none;font-weight:400}
html body .topup-pkg span{color:var(--muted)}
html body .topup-sheet{padding-bottom:0}
html body .topup-pkg.primary strong{color:var(--lav)}
html body .topup-pkg span{color:var(--muted)}
html body .topup-pkg[disabled]{opacity:.55}
html body .topup-pkg[disabled]:hover{border-color:var(--line);background:#121016}
html body .topup-pkg.primary[disabled]:hover{background:rgba(201,179,240,.1);border-color:rgba(201,179,240,.55)}
html body .topup-flash{border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--text);font-size:.8rem;padding:.6rem .85rem}
html body .topup-flash.warn{background:rgba(201,179,240,.06);border-color:rgba(201,179,240,.25);color:var(--lav)}
html body .topup-flash.ok{background:rgba(127,214,163,.08);border-color:rgba(127,214,163,.3);color:#cdeedb}
html body .topup-howto summary{color:var(--text);font-weight:500}
html body .topup-howto summary::marker{color:var(--violet)}
html body .topup-howto{color:var(--muted)}
/* bell + notif panel + narrow tabs */
html body .sb-bell{filter:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:30px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:var(--muted);background:transparent;font-size:inherit}
html body .sb-bell:hover,html body .sb-bell[aria-expanded="true"]{color:var(--lav);border-color:rgba(201,179,240,.45)}
html body .sb-bell .badge{top:-5px;right:-5px;background:var(--lav);color:#16121b;font-weight:600;font-size:.6rem;line-height:1rem;height:1rem;min-width:1rem;padding:0 .28rem}
html body .sb-notif-panel{padding:0;z-index:1200;background:#17141c;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.55)}
html body .sb-notif-panel .sbn-head{position:sticky;top:0;display:flex;align-items:baseline;justify-content:space-between;padding:.8rem 1rem .7rem;background:#17141c;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.05rem;color:var(--text)}
html body .sb-notif-panel .sbn-head a{font-family:inherit;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--lav);text-decoration:none;font-family:system-ui,sans-serif}
html body .sb-notif-panel .item{display:block;padding:.7rem 1rem;border-bottom:1px solid rgba(255,255,255,.05);font-size:.84rem;color:var(--muted);text-decoration:none;border-left:0}
html body .sb-notif-panel a.item:hover{background:rgba(201,179,240,.05)}
html body .sb-notif-panel .item strong{display:block;color:var(--text);font-weight:500;font-size:.86rem;margin-bottom:.15rem}
html body .sb-notif-panel .item.sup strong{color:#cfe0ff}
html body .sb-notif-panel .item.sup{box-shadow:inset 2px 0 0 #5b8def}
html body .sb-notif-panel .sbn-chip{display:inline-block;margin-left:.35rem;padding:0 .45rem;border:1px solid rgba(120,170,255,.5);background:rgba(28,126,214,.16);border-radius:999px;font-size:.64rem;font-weight:500;color:#9ec5ff;vertical-align:1px}
html body .sb-notif-panel .sbn-body{display:block;line-height:1.45}
@media(max-width:899px){html body .sb-notif-panel{bottom:auto!important;max-height:min(72vh,560px)!important}}
html body .sb-notif-panel .sbn-empty{text-align:center;padding:1.4rem 1rem}
@media(max-width:379px){
  html body .pf .pf-tabs{padding:0 .6rem}
  html body .pf .pf-tabs a{font-size:.68rem!important;letter-spacing:0!important}
  html body .top-actions{gap:.35rem}
  html body .top-actions .lm-pill-link{box-sizing:border-box;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}
}
@media(max-width:339px){
  html body .pf .pf-tabs a[href="/feed"]{display:none}
  html body .pf .pf-tabs{justify-content:space-between;gap:0}
  html body .top-actions .lm-18{display:none}
  html body .top-actions .lm-pill-link{max-width:78px;padding-left:.6rem!important;padding-right:.6rem!important}
  html body .topbar.lm-head{gap:.5rem}
}
html body .lm-safety .lm-safety-ico{display:inline-block;vertical-align:-2px;margin-right:.3rem;color:#9ec5ff}
html body:has(.topup-sheet:not([hidden])) .bottom-nav,html body:has(.ppv-viewer:not([hidden])) .bottom-nav{display:none!important}


/* ---------- utilities */
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lm-page-acts{display:flex;flex-wrap:wrap;gap:.5rem}
.lm-sec-t{display:flex;align-items:center;gap:.55rem;margin:0 0 .9rem;font-family:var(--serif);font-weight:400;font-size:1.35rem;color:var(--text);letter-spacing:-.005em}
.lm-sec-t svg{width:17px;height:17px;color:var(--lav);flex:0 0 auto}
.lm-sec-t em{font-style:italic;color:var(--lav)}
.lm-skel-row.sm{height:44px}
html body .btn svg{flex:0 0 auto}
html body .btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}

/* ---------- form controls (select, file, date, checkbox) */
html body select:not([multiple]){-webkit-appearance:none;appearance:none;background-color:#0f0d13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9b3f0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:15px 15px;padding-right:2.3rem!important;border:1px solid var(--line);border-radius:12px;color:var(--text);min-height:44px;cursor:pointer;transition:border-color .18s,box-shadow .18s}
html body select:not([multiple]):hover{border-color:rgba(201,179,240,.38)}
html body select:not([multiple]):focus-visible{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(166,140,224,.2)}
html body select option{background:#17141c;color:var(--text)}
html body input[type=file]{font:inherit;font-size:.82rem;color:var(--muted);width:100%;box-sizing:border-box;padding:.5rem!important;border:1px dashed rgba(201,179,240,.32)!important;border-radius:12px!important;background:rgba(201,179,240,.04)!important;cursor:pointer}
html body input[type=file]:hover{border-color:rgba(201,179,240,.6)!important}
html body input[type=file]::file-selector-button{font:inherit;font-size:.8rem;font-weight:600;color:var(--ink,#0f0d13);background:var(--lav);border:0;border-radius:999px;padding:.5rem 1rem;margin-right:.8rem;cursor:pointer;transition:background .18s}
html body input[type=file]::file-selector-button:hover{background:#d9c8f7}
html body input[type=date],html body input[type=datetime-local]{color-scheme:dark}
html body input[type=checkbox]:not(.sw):not([role=switch]){-webkit-appearance:none;appearance:none;width:18px!important;height:18px!important;min-width:18px;min-height:0!important;padding:0!important;flex:0 0 18px;box-sizing:border-box;margin:0;box-shadow:none;border:1.5px solid rgba(201,179,240,.5);border-radius:5px;background:#0f0d13;display:inline-grid;place-items:center;cursor:pointer;vertical-align:-3px;transition:background .15s,border-color .15s}
html body input[type=checkbox]:not(.sw):not([role=switch])::after{content:"";width:9px;height:5px;border:2px solid var(--ink,#0f0d13);border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px);opacity:0}
html body input[type=checkbox]:not(.sw):not([role=switch]):checked{background:var(--lav);border-color:var(--lav)}
html body input[type=checkbox]:not(.sw):not([role=switch]):checked::after{opacity:1}
html body input[type=checkbox]:not(.sw):not([role=switch]):focus-visible{outline:none;box-shadow:0 0 0 3px rgba(166,140,224,.3)}
html body input[type=radio]{accent-color:var(--lav)}

/* ---------- search */
.lm-search{display:flex;align-items:center;gap:.5rem;background:#17141c;border:1px solid var(--line);border-radius:999px;padding:.35rem .35rem .35rem 1.1rem;margin:0 0 1.6rem;transition:border-color .18s,box-shadow .18s}
.lm-search:focus-within{border-color:var(--violet);box-shadow:0 0 0 3px rgba(166,140,224,.16)}
.lm-search-ico{display:inline-flex;color:var(--muted)}
.lm-search input{flex:1 1 auto;min-width:0;background:none!important;border:0!important;box-shadow:none!important;outline:none;color:var(--text);font:inherit;font-size:.95rem;padding:.55rem .2rem!important}
.lm-search input::-webkit-search-cancel-button{filter:invert(.7)}
.lm-search .btn{border-radius:999px!important;padding:.6rem 1.25rem!important}

/* ---------- explore */
.lm-page.lm-x{max-width:1040px}
.lm-x-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.6rem;align-items:start}
.lm-x-posts{display:grid;gap:.75rem}
.lm-xp{display:flex;gap:1rem;align-items:stretch;padding:1rem 1.1rem;background:#17141c;border:1px solid var(--line);border-radius:16px;color:var(--text);text-decoration:none;transition:border-color .2s,transform .2s,background .2s}
.lm-xp:hover{border-color:rgba(201,179,240,.38);background:#1b1721;transform:translateY(-1px)}
.lm-xp:focus-visible{outline:2px solid var(--violet);outline-offset:2px}
.lm-xp-media{flex:0 0 112px;height:112px;border-radius:12px;overflow:hidden;background:#0f0d13;border:1px solid var(--line)}
.lm-xp-media img{width:100%;height:100%;object-fit:cover;display:block}
.lm-xp-lock{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;color:var(--lav);background:radial-gradient(circle at 50% 30%,rgba(201,179,240,.16),transparent 70%),#120f17}
.lm-xp-lock em{font-style:normal;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}
.lm-xp-body{display:flex;flex-direction:column;gap:.3rem;min-width:0;justify-content:center}
.lm-xp-body strong{font-family:var(--serif);font-weight:400;font-size:1.15rem;line-height:1.2;color:var(--text)}
.lm-xp-text{color:var(--muted);font-size:.88rem;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.lm-xp-meta{font-size:.72rem;letter-spacing:.06em;color:var(--violet);margin-top:.15rem}
.lm-x-side{display:grid;gap:.9rem;position:sticky;top:76px}
.lm-x-card{background:#17141c;border:1px solid var(--line);border-radius:16px;padding:1rem 1.05rem}
.lm-x-card[hidden]{display:none}
.lm-x-card h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--lav)}
.lm-x-card h3 svg{width:15px;height:15px}
.lm-x-none{margin:.2rem 0;color:var(--muted);font-size:.85rem}
.lm-x-none a{color:var(--lav)}
.lm-chips{display:flex;flex-wrap:wrap;gap:.4rem}
.lm-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.32rem .75rem;border:1px solid rgba(201,179,240,.28);border-radius:999px;color:var(--text);font-size:.8rem;text-decoration:none;background:rgba(201,179,240,.05);transition:border-color .18s,background .18s}
a.lm-chip:hover{border-color:var(--lav);background:rgba(201,179,240,.12)}
.lm-chip small{color:var(--muted)}
.lm-people{display:grid;gap:.15rem}
.lm-people-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem;margin-bottom:1.2rem}
.lm-people-grid .lm-person{background:#17141c;border:1px solid var(--line)}
.lm-person{display:flex;align-items:center;gap:.7rem;padding:.5rem .55rem;border-radius:12px;color:var(--text);text-decoration:none;transition:background .18s}
.lm-person:hover{background:rgba(201,179,240,.07)}
.lm-person-ava{flex:0 0 36px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:1rem;color:var(--lav);background:radial-gradient(circle at 30% 25%,rgba(201,179,240,.28),rgba(166,140,224,.08));border:1px solid rgba(201,179,240,.35)}
.lm-person-n{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}
.lm-person-n b{font-weight:600;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.25rem}
.lm-person-n small{color:var(--muted);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lm-rank{font-family:var(--serif);font-style:italic;color:var(--violet);font-size:1rem;min-width:1.2rem;text-align:right}
.lm-go{color:var(--muted);display:inline-flex;transition:color .18s,transform .18s}
.lm-person:hover .lm-go{color:var(--lav);transform:translateX(2px)}
.lm-x-results{margin:-.4rem 0 2rem;padding-bottom:1.6rem;border-bottom:1px solid var(--line)}
.lm-x-res-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.6rem}
.lm-x-res-head .lm-sec-t{margin:0}
.lm-x-sub{font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:.9rem 0 .6rem}
@media(max-width:900px){.lm-x-grid{grid-template-columns:1fr}.lm-x-side{position:static;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}
@media(max-width:560px){.lm-xp{padding:.85rem;gap:.8rem}.lm-xp-media{flex-basis:84px;height:84px}.lm-xp-body strong{font-size:1.05rem}.lm-search{padding-left:.9rem}.lm-search .btn{padding:.55rem 1rem!important}}

/* ---------- write box (guestbook, Q&A) */
.lm-page.lm-gb,.lm-page.lm-qa{max-width:760px}
.lm-write{background:#17141c;border:1px solid var(--line);border-radius:18px;padding:.4rem;margin:0 0 1.8rem;transition:border-color .18s,box-shadow .18s}
.lm-write:focus-within{border-color:rgba(166,140,224,.6);box-shadow:0 0 0 3px rgba(166,140,224,.14)}
.lm-write textarea{display:block;width:100%;box-sizing:border-box;min-height:96px;resize:vertical;background:none!important;border:0!important;box-shadow:none!important;outline:none;color:var(--text);font:inherit;font-size:.95rem;line-height:1.55;padding:.8rem .85rem!important}
.lm-write-foot{display:flex;align-items:center;gap:.8rem;padding:.4rem .4rem .3rem .85rem;border-top:1px solid var(--line)}
.lm-count{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums}
.lm-write-msg{flex:1 1 auto;margin:0;font-size:.82rem;color:var(--muted)}
.lm-write-msg.ok{color:#b7e4c7}.lm-write-msg.err{color:#ffb3c1}
.lm-write .btn{border-radius:999px!important}
.lm-entries{display:grid;gap:.7rem}
.lm-entry{display:flex;gap:.85rem;padding:1rem 1.1rem;background:#17141c;border:1px solid var(--line);border-radius:16px}
.lm-entry>div{min-width:0;flex:1 1 auto}
.lm-entry-h{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;margin:0 0 .25rem}
.lm-entry-h b{font-weight:600;font-size:.9rem;color:var(--text)}
.lm-entry-h time{font-size:.72rem;color:var(--muted);white-space:nowrap}
.lm-entry-t{margin:0;color:#ddd6e8;font-size:.92rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.lm-qa-item{padding:1.1rem 1.2rem;background:#17141c;border:1px solid var(--line);border-radius:16px}
.lm-qa-q{display:flex;gap:.7rem;margin:0;font-family:var(--serif);font-size:1.12rem;line-height:1.4;color:var(--text);overflow-wrap:anywhere}
.lm-qa-k{flex:0 0 auto;font-family:var(--serif);font-style:italic;color:var(--lav);font-size:1.12rem}
.lm-qa-a{display:flex;gap:.7rem;margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--line)}
.lm-qa-a b{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--lav);font-weight:600}
.lm-qa-a p{margin:.2rem 0 0;color:#ddd6e8;font-size:.92rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.lm-qa-ava{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:var(--lav);border:1px solid rgba(201,179,240,.35);background:rgba(201,179,240,.07)}
.lm-qa-ava svg{width:15px;height:15px}
.lm-qa-wait{margin:.6rem 0 0 1.6rem;font-size:.75rem;letter-spacing:.06em;color:var(--muted)}
.lm-qa-item.is-hidden{opacity:.72;border-style:dashed}
.lm-qa-flags{display:flex;gap:.4rem;margin:0 0 .55rem}
.lm-qa-flag{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.15rem .55rem}
.lm-qa-flag.new{color:var(--lav);border-color:rgba(201,179,240,.4)}
.lm-qa-own{margin:.95rem 0 0}
.lm-qa-own-l{display:block;padding:.45rem .85rem 0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--lav)}
.lm-qa-own .lm-write-foot{flex-wrap:wrap}
.lm-qa-own .btn{font-size:.8rem}
.lm-qa-own .lm-qa-del{color:#ffb3c1}

/* ---------- 404 / 500 */
.lm-page.lm-err{display:grid;place-items:center;min-height:min(70vh,640px);max-width:none}
.lm-err-card{max-width:520px;width:100%;text-align:center;padding:2.6rem 2rem 2.2rem;background:radial-gradient(circle at 50% 0,rgba(201,179,240,.1),transparent 60%),#17141c;border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.35);box-sizing:border-box}
.lm-err-ico{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;border:1px solid rgba(201,179,240,.35);color:var(--lav);background:rgba(201,179,240,.06);margin-bottom:1.1rem}
.lm-err-ico svg{width:26px;height:26px}
.lm-err-card .lm-eyebrow{margin:0 0 .7rem}
.lm-err-card .lm-page-h{font-size:clamp(1.8rem,4.5vw,2.4rem)}
.lm-err-card .lm-sub{margin:.8rem auto 1.5rem;color:var(--muted);max-width:36ch;line-height:1.6;font-size:.92rem}
.lm-err-acts{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}
.lm-err-acts .btn{border-radius:999px!important;padding:.7rem 1.3rem!important}
.lm-err-acts .btn svg{width:15px;height:15px}
body.lm-err-body{min-height:100vh;margin:0;background:var(--bg,#0f0d13);color:var(--text)}
.lm-err-top{display:flex;justify-content:center;padding:1.4rem 1rem 0}

/* ---------- legal */
.lm-page.lm-legal{max-width:1060px}
.lm-legal-sw{display:inline-flex;padding:.25rem;border:1px solid var(--line);border-radius:999px;background:#17141c}
.lm-legal-sw a{padding:.45rem 1rem;border-radius:999px;font-size:.82rem;color:var(--muted);text-decoration:none;transition:color .18s,background .18s}
.lm-legal-sw a:hover{color:var(--text)}
.lm-legal-sw a[aria-current=page]{background:var(--lav);color:var(--ink,#0f0d13);font-weight:600}
.lm-legal-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:2.2rem;align-items:start}
.lm-legal-toc{position:sticky;top:76px;max-height:calc(100vh - 100px);overflow:auto;padding-right:.4rem}
.lm-legal-toc .lm-eyebrow{margin:0 0 .7rem}
.lm-legal-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
.lm-legal-toc a{display:block;padding:.32rem 0 .32rem .9rem;margin-left:-1px;border-left:1px solid transparent;font-size:.8rem;line-height:1.35;color:var(--muted);text-decoration:none;transition:color .18s,border-color .18s}
.lm-legal-toc a:hover{color:var(--lav);border-left-color:var(--lav)}
html body .lm-legal-body{max-width:68ch;background:none;border:0;padding:0;margin:0;font-size:.95rem;line-height:1.75;color:#ddd6e8}
html body .lm-legal-body .lm-safety{margin:0 0 1.4rem}
html body .lm-legal-body .legal-meta{font-size:.75rem;letter-spacing:.06em;color:var(--violet);margin:0 0 1.6rem}
html body .lm-legal-body h2{font-family:var(--serif);font-weight:400;font-size:1.45rem;line-height:1.25;color:var(--text);margin:2.4rem 0 .8rem;padding-top:1.4rem;border-top:1px solid var(--line);scroll-margin-top:80px}
html body .lm-legal-body h2:first-of-type{border-top:0;padding-top:0;margin-top:0}
html body .lm-legal-body h3{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lav);margin:1.6rem 0 .5rem}
html body .lm-legal-body p{margin:0 0 .95rem}
html body .lm-legal-body ul,html body .lm-legal-body ol{margin:0 0 1.1rem;padding-left:1.2rem}
html body .lm-legal-body li{margin:.35rem 0;padding-left:.25rem}
html body .lm-legal-body li::marker{color:var(--violet)}
html body .lm-legal-body strong{color:var(--text);font-weight:600}
html body .lm-legal-body a{color:var(--lav);text-decoration:underline;text-decoration-color:rgba(201,179,240,.4);text-underline-offset:3px}
html body .lm-legal-body a:hover{text-decoration-color:var(--lav)}
.lm-legal-foot{margin-top:2.6rem!important;padding-top:1.2rem;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.sup-name{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap}
.sup-name .sup-shield{color:#74c0fc;flex:0 0 auto}
@media(max-width:900px){.lm-legal-grid{grid-template-columns:1fr}.lm-legal-toc{position:static;max-height:none;padding:1rem 1.1rem;background:#17141c;border:1px solid var(--line);border-radius:16px}.lm-legal-toc ol{columns:2;column-gap:1.2rem;border-left:0}.lm-legal-toc a{padding-left:0;border-left:0}}
@media(max-width:560px){.lm-legal-toc ol{columns:1}html body .lm-legal-body{font-size:.92rem}html body .lm-legal-body h2{font-size:1.25rem}}

/* ---------- support (fan side) — keeps the blue verified identity */
html body .sup-wrap{max-width:760px;margin:0 auto;padding:2.2rem 1.5rem 3rem;box-sizing:border-box}
html body .sup-head{display:flex;align-items:flex-start;gap:1rem;background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 1.4rem;margin:0 0 1.2rem;color:var(--text)}
html body .sup-head .sup-ava{width:52px;height:52px;margin-top:.15rem;box-shadow:0 0 0 4px rgba(116,192,252,.12)}
html body .sup-head-t{flex:1 1 auto;min-width:0}
html body .sup-head-t .lm-eyebrow{margin:0 0 .6rem;color:#a5d8ff}
html body .sup-head-t .lm-eyebrow.line::before{background:#74c0fc}
html body .sup-head h1.lm-page-h{font-size:clamp(1.9rem,4vw,2.5rem);margin:0}
html body .sup-head h1.lm-page-h em{color:var(--lav)}
html body .sup-head .lm-sub{margin:.5rem 0 0;font-size:.88rem;color:var(--muted);opacity:1}
html body .sup-head-b{margin-top:.75rem}
html body .sup-official{display:inline-flex;align-items:center;gap:.3rem;background:rgba(116,192,252,.14);border:1px solid rgba(116,192,252,.5);color:#d0ebff;font-weight:600;font-size:.72rem;padding:.24rem .65rem;border-radius:999px;letter-spacing:.02em;white-space:nowrap}
html body .sup-official svg{color:#74c0fc}
html body .sup-card{background:#17141c;border:1px solid var(--line);border-radius:18px;padding:1.4rem 1.5rem;margin:1rem 0}
html body .sup-card-h{font-family:var(--serif);font-weight:400;font-size:1.55rem;line-height:1.15;margin:0 0 .5rem;color:var(--text)}
html body .sup-card-h em{font-style:italic;color:var(--lav)}
html body .sup-lead{margin:0 0 1.2rem;font-size:.9rem;line-height:1.6;color:var(--muted)}
html body .sup-form{display:grid;gap:1rem}
html body .sup-form label{display:grid;gap:.45rem;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
html body .sup-form input:not([type=file]):not([type=hidden]),html body .sup-form textarea{font:inherit;font-size:.95rem;letter-spacing:0;text-transform:none;padding:.75rem .9rem;border-radius:12px;border:1px solid var(--line);background:#0f0d13;color:var(--text);transition:border-color .18s,box-shadow .18s}
html body .sup-form select{font:inherit;font-size:.95rem;letter-spacing:0;text-transform:none;padding:.65rem .9rem}
html body .sup-form input:focus,html body .sup-form textarea:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(166,140,224,.18)}
html body .sup-form .muted{font-size:.78rem!important;line-height:1.55;margin:0}
html body .sup-form .muted a{color:var(--lav)}
html body .sup-form .btn.primary{justify-self:start;border-radius:999px!important;padding:.75rem 1.5rem!important}
html body .sup-list li{align-items:center;padding:.85rem 0;border-bottom:1px solid var(--line)}
html body .sup-list li:last-child{border-bottom:0}
html body .sup-list a{color:var(--text);text-decoration:none;font-weight:500}
html body .sup-list a:hover{color:var(--lav)}
html body .sup-badge{font-size:.7rem;font-weight:600;letter-spacing:.04em;padding:.2rem .6rem;border:1px solid transparent}
html body .sup-badge.new{background:rgba(116,192,252,.12);border-color:rgba(116,192,252,.35);color:#a5d8ff}
html body .sup-badge.open{background:rgba(245,159,0,.1);border-color:rgba(245,159,0,.35);color:#ffd8a8}
html body .sup-badge.waiting{background:rgba(201,179,240,.1);border-color:rgba(201,179,240,.35);color:var(--lav)}
html body .sup-badge.resolved,html body .sup-badge.closed{background:rgba(47,158,68,.1);border-color:rgba(47,158,68,.35);color:#b2f2bb}
html body .sup-back{margin:0 0 .8rem}
html body .sup-back a{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--muted);text-decoration:none}
html body .sup-back a:hover{color:var(--lav)}
html body .sup-msg{border-radius:16px;padding:.9rem 1rem;background:#1c1922;border:1px solid var(--line)}
html body .sup-msg.staff{background:rgba(116,192,252,.07);border-color:rgba(116,192,252,.45)}
html body .sup-msg .who{font-size:.78rem;color:var(--muted);opacity:1;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
html body .sup-msg.staff .who b{color:#d0ebff}
html body .sup-msg .sup-ava{width:28px;height:28px}
html body .sup-msg p{color:#e6e0ef;line-height:1.6}
html body .sup-att img{border:1px solid var(--line)}
html body .sup-dot{background:var(--lav);box-shadow:0 0 8px rgba(201,179,240,.6)}
@media(max-width:560px){html body .sup-wrap{padding:1.4rem 1rem 2rem}html body .sup-head{gap:.75rem}html body .sup-head .sup-ava{width:40px;height:40px;flex:0 0 40px}html body .sup-card{padding:1.15rem 1.1rem}html body .sup-list li{flex-direction:column;align-items:flex-start;gap:.35rem}}

/* ---------- fan profile (/u/...) */
html body .fan-strip{height:150px;margin:1rem 1.5rem 0;border-radius:20px;border:1px solid var(--line);background:radial-gradient(circle at 18% 0,color-mix(in srgb,var(--fan-hue,#a68ce0) 42%,transparent),transparent 62%),radial-gradient(circle at 85% 110%,rgba(201,179,240,.12),transparent 55%),#17141c!important}
html body .fan-profile{padding:0 2.4rem 1.5rem;margin-top:-52px}
html body .fan-profile .avatar-fan{width:104px;height:104px;box-shadow:0 0 0 4px #0f0d13,0 0 0 5px rgba(201,179,240,.4),0 14px 30px rgba(0,0,0,.45)}
html body .fan-profile h1{font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,3.6vw,2.3rem);line-height:1.1;margin:.9rem 0 .2rem;display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}
html body .fan-profile .handle .username{color:var(--lav)}
html body .fan-facts span{display:inline-flex;align-items:center;gap:.35rem}
html body .fan-facts svg{width:14px;height:14px;color:var(--violet)}
html body .fan-stats{gap:0;margin:1rem 0;border:1px solid var(--line);border-radius:14px;display:inline-flex;background:#17141c}
html body .fan-stats div{padding:.6rem 1.2rem;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}
html body .fan-stats div+div{border-left:1px solid var(--line)}
html body .fan-stats strong{font-family:var(--serif);font-weight:400;font-size:1.35rem;letter-spacing:0;text-transform:none}
html body .fan-about{background:#17141c;border:1px solid var(--line);border-radius:16px;padding:1rem 1.1rem}
html body .fan-profile .eyebrow{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--lav);font-weight:600}
html body .friend-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
html body .friend-actions .btn{border-radius:999px!important}
html body .gallery-toolbar .btn svg{width:15px;height:15px}
.fan-posts{padding:1.4rem 2.4rem 2rem;border-top:1px solid var(--line);margin:0 0 0}
.fan-posts-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.fan-posts-head .lm-sec-t{margin:0}
.fan-posts-head .btn{border-radius:999px!important}
.fan-posts-head .btn svg{width:15px;height:15px}
.fan-posts .feed{padding:0!important;margin:0!important}
@media(max-width:560px){html body .fan-strip{height:110px;margin:.75rem .75rem 0;border-radius:16px}html body .fan-profile{padding:0 1.1rem 1rem;margin-top:-44px}html body .fan-profile .avatar-fan{width:86px;height:86px}.fan-posts{padding:1.2rem 1.1rem 1.6rem}html body .fan-stats div{padding:.5rem .9rem}}

/* ---------- subscribe / unlock */
.lm-page.lm-sub-page{max-width:760px}
html body .lm-sub-page .price-card{text-align:center;padding:2.4rem 2rem 2.2rem;background:radial-gradient(circle at 50% 0,rgba(201,179,240,.12),transparent 60%),#17141c;border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.3)}
html body .lm-sub-page .price-card .lm-err-ico{display:grid;margin:0 auto 1.1rem}
html body .lm-sub-page .price-card .eyebrow{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--lav);font-weight:600;margin:0 0 .5rem}
html body .lm-sub-page .price-card .price{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(2rem,4.5vw,2.6rem);color:var(--lav);margin:0 0 .6rem;line-height:1.1}
html body .lm-sub-page .price-card .muted{max-width:44ch;margin:0 auto;line-height:1.6}
html body .lm-sub-page .price-card .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}
html body .lm-sub-page .actions .btn{border-radius:999px!important;padding:.7rem 1.3rem!important}
html body .lm-sub-page .flash{border-radius:14px}
html body .lm-sub-page>.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}

/* ---------- feed head */
html body .feed-head{margin:1.6rem 1.25rem 1.2rem;padding-bottom:1.3rem}
html body .feed-head .lm-page-acts .btn{border-radius:999px!important;padding:.65rem 1.2rem!important}
html body .feed-head .lm-page-acts .btn svg{width:15px;height:15px}
@media(max-width:560px){html body .feed-head{margin:1.1rem .9rem 1rem}}

/* ---------- post cards: SVG action icons */
html body .post-actions button .pa-ico{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;font-size:0;opacity:1}
html body .post-actions button .pa-ico svg{width:18px;height:18px}
html body .post-actions button:hover{color:var(--lav)!important;background:rgba(201,179,240,.07)!important}
html body .post-actions .like-btn.is-liked{color:var(--lav)!important}
html body .post-actions button.like-btn.is-liked .hf{fill:var(--lav);stroke:var(--lav)}
html body .post-actions .like-btn.is-liked .pa-ico{filter:drop-shadow(0 0 8px rgba(201,179,240,.55))}
html body .post-actions .like-btn:active .pa-ico{transform:scale(.88)}
html body .post-actions .like-btn .pa-ico{transition:transform .15s}
html body .post-menu{display:inline-flex!important;align-items:center;justify-content:center;width:34px;height:34px;padding:0!important;font-size:0!important}
html body .post-menu svg{width:18px;height:18px}
html body .post-menu:hover{color:var(--lav)!important;background:rgba(201,179,240,.07)!important}
html body .post-menu-pop{background:#1c1922!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:14px!important;box-shadow:0 18px 50px rgba(0,0,0,.5)!important;padding:.35rem!important}
html body .post-menu-pop button,html body .post-menu-pop a{border-radius:9px!important;font-size:.85rem!important}
html body .post-menu-pop button:hover,html body .post-menu-pop a:hover{background:rgba(201,179,240,.1)!important;color:var(--text)!important}
html body .comments-panel{border-top:1px solid var(--line)}
html body .comments-title{font-size:.68rem!important;letter-spacing:.16em;text-transform:uppercase;color:var(--lav)!important;font-weight:600}
html body .comment-form{display:flex;gap:.5rem}
html body .comment-form input{flex:1 1 auto;min-width:0;border-radius:999px!important;padding:.6rem 1rem!important}
html body .comment-form .btn{border-radius:999px!important}

html body .post-actions .sb-bookmark{margin-left:auto}
html body .post-actions button.sb-bookmark.is-saved{color:var(--lav)!important}
html body .post-actions button.sb-bookmark.is-saved .hf{fill:var(--lav)}
html body .composer-drop-ico{display:inline-grid!important;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid rgba(201,179,240,.35);background:rgba(201,179,240,.06);color:var(--lav);font-size:0!important}
html body .composer-drop-ico svg{width:20px;height:20px}

/* ---------- close buttons, modals, toasts */
html body .composer-modal{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
html body .composer-modal-backdrop{background:rgba(8,6,11,.74);backdrop-filter:blur(6px)}
html body .composer-modal-panel{background:#1c1922;border:1px solid rgba(255,255,255,.1);border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
html body .composer-modal-panel .composer-card{padding:1.5rem 1.5rem 1.4rem}
html body .composer-modal-x{background:transparent;border:1px solid var(--line)}
html body .composer-modal-x svg{width:16px;height:16px}
html body .composer-modal-x,html body .lm-modal-x,html body .story-close,html body #a2hs-dismiss-btn,html body #composer-clear-img{display:inline-grid!important;place-items:center;font-size:0!important;line-height:0;color:var(--muted);transition:color .18s,background .18s}
html body .composer-modal-x:hover,html body .lm-modal-x:hover,html body #a2hs-dismiss-btn:hover,html body #composer-clear-img:hover{color:var(--text);background:rgba(201,179,240,.1)}
html body .story-close{color:#fff;background:rgba(15,13,19,.6);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px)}
html body .story-close svg{width:18px;height:18px}
html body .report-modal{background:rgba(8,6,11,.7);backdrop-filter:blur(6px)}
html body .report-modal .box{background:#1c1922;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:1.4rem;box-shadow:0 30px 80px rgba(0,0,0,.6)}
html body .report-modal .box .eyebrow{font-family:var(--serif);font-size:1.35rem;letter-spacing:0;text-transform:none;color:var(--text);font-weight:400;margin:0}
html body .report-modal textarea,html body .report-modal select{width:100%;box-sizing:border-box}
html body .lm-toast{background:rgba(28,25,34,.96);border:1px solid rgba(201,179,240,.35);color:var(--text);box-shadow:0 16px 40px rgba(0,0,0,.45);backdrop-filter:blur(10px);font-size:.85rem;padding:.7rem 1.2rem;max-width:calc(100vw - 2rem);box-sizing:border-box;text-align:center}
@media(max-width:760px){html body .lm-toast{bottom:calc(84px + env(safe-area-inset-bottom))}}
body:has(.report-modal:not([hidden])) .bottom-nav,body:has(.story-lightbox:not([hidden])) .bottom-nav,body:has(.composer-modal:not([hidden])) .bottom-nav{display:none!important}

/* ---------- admin (p43c) */
html body .admin-head{margin:1.6rem .75rem 1.4rem}
html body .admin-page{margin-top:0!important;padding:0 .75rem!important;gap:1rem}
html body .admin-page .card.page-pad{background:#17141c;border:1px solid var(--line);border-radius:18px;padding:1.35rem 1.45rem;box-shadow:none}
html body .admin-page .eyebrow{display:flex;align-items:center;gap:.7rem;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--lav);font-weight:600;margin:0 0 .55rem}
html body .admin-page .eyebrow::before{content:"";width:22px;height:1px;background:var(--violet);opacity:.8}
html body .admin-page h1{font-family:var(--serif);font-weight:400;font-size:1.6rem;line-height:1.15;margin:0 0 .7rem;letter-spacing:-.005em}
html body .admin-page h2{font-family:var(--serif);font-weight:400}
html body .admin-page .flash{border-radius:12px}
html body .admin-page .ai-tag{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.08em;padding:.05rem .4rem;border-radius:999px;border:1px solid rgba(201,179,240,.45);color:var(--lav);vertical-align:1px}
html body .btn-support-mode svg,html body [data-admin-mod] svg{width:14px;height:14px;color:#74c0fc}
@media(max-width:560px){html body .admin-head{margin:1.1rem .5rem 1rem}html body .admin-page{padding:0 .5rem!important}html body .admin-page .card.page-pad{padding:1.1rem}}

/* ---------- auth + account polish */
html body .auth-hero h1 em{font-style:italic;color:var(--lav)}
html body .auth-card .check,html body .auth-card label:has(input[type=checkbox]){display:flex;align-items:flex-start;gap:.6rem;line-height:1.45}
html body .lm-err-card .btn.primary,html body .lm-empty .btn.primary{color:var(--ink,#0f0d13)!important}
@media(max-width:560px){.lm-page-head .lm-page-acts{width:100%}}


.kol-item{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in;color:inherit;border-radius:inherit;overflow:hidden}
.kol-item img,.kol-item video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.kol-item:focus-visible,.gallery-item[data-lb]:focus-visible{outline:2px solid #c9b3f0;outline-offset:2px}
.kol-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(15,13,19,.62);border:1px solid rgba(255,255,255,.28);color:#fff;pointer-events:none}
.kol-play svg{width:22px;height:22px;margin-left:3px}
.gallery-item[data-lb]{cursor:zoom-in}
html.lmlb-open,html.lmlb-open body{overflow:hidden!important}
html.lmlb-open .bottom-nav{display:none!important}
.lmlb{position:fixed;inset:0;z-index:2147483000;display:flex;flex-direction:column;background:rgba(8,6,12,.97);color:#f3eefa;overscroll-behavior:contain;touch-action:pan-y;animation:lmlbIn .18s ease-out}
@keyframes lmlbIn{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.lmlb{animation:none}}
.lmlb-top{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:max(.6rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) .4rem max(.9rem,env(safe-area-inset-left))}
.lmlb-count{font-size:.82rem;letter-spacing:.06em;color:#cfc6dc;font-variant-numeric:tabular-nums}
.lmlb-btn{appearance:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(28,24,36,.72);color:#fff;cursor:pointer;padding:0;flex:0 0 auto}
.lmlb-btn:hover{background:rgba(201,179,240,.22);border-color:rgba(201,179,240,.55)}
.lmlb-btn:focus-visible{outline:2px solid #c9b3f0;outline-offset:2px}
.lmlb-btn svg{width:22px;height:22px}
.lmlb-stage{position:relative;flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 .5rem}
.lmlb-media{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0}
.lmlb-media img,.lmlb-media video{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 24px 60px rgba(0,0,0,.55);user-select:none;-webkit-user-drag:none}
.lmlb-media video{background:#000}
.lmlb-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2}
.lmlb-prev{left:max(.5rem,env(safe-area-inset-left))}
.lmlb-next{right:max(.5rem,env(safe-area-inset-right))}
.lmlb-nav[hidden]{display:none}
.lmlb-info{flex:0 0 auto;max-width:720px;width:100%;margin:0 auto;padding:.7rem max(1rem,env(safe-area-inset-left)) max(.9rem,env(safe-area-inset-bottom));box-sizing:border-box;overflow-wrap:anywhere}
.lmlb-label{margin:0 0 .2rem;font-size:.7rem;font-weight:650;letter-spacing:.18em;text-transform:uppercase;color:#c9b3f0}
.lmlb-title{margin:0;font-family:var(--serif,Georgia,serif);font-weight:400;font-size:1.35rem;line-height:1.2;color:#fff}
.lmlb-sub{margin:.25rem 0 0;font-size:.9rem;color:#cfc6dc;line-height:1.4;max-height:4.2em;overflow:hidden}
.lmlb-meta{margin:.4rem 0 0;display:flex;flex-wrap:wrap;gap:.35rem 1rem;font-size:.8rem;color:#a99fb8}
.lmlb-meta span{display:inline-flex;align-items:center;gap:.3rem}
.lmlb-meta svg{width:14px;height:14px}
.lmlb [hidden]{display:none!important}
@media (max-width:640px){.lmlb-stage{padding:0}.lmlb-media img,.lmlb-media video{border-radius:0}.lmlb-nav{width:40px;height:40px;background:rgba(15,13,19,.55)}.lmlb-title{font-size:1.15rem}}
@media (min-width:900px){.lmlb-stage{padding:0 4.5rem}.lmlb-prev{left:1.25rem}.lmlb-next{right:1.25rem}}


.lm-pres{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--muted,#a99fb8);font-weight:500;white-space:nowrap}
.lm-pres>i{width:7px;height:7px;border-radius:50%;background:#5d566b;flex:none}
.lm-pres.is-on{color:#8fe3b4;font-weight:600}
.lm-pres.is-on>i{background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.16)}
.lm-pdot{display:none;width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 2px rgba(18,16,22,.9);margin-left:.35rem;vertical-align:middle}
.lm-pdot.is-on{display:inline-block}
.chat-ava-dot:not(.is-on){display:none!important}

.tr-meta{display:flex;align-items:center;gap:.35rem;margin-top:.22rem;font-size:.68rem;line-height:1.2;color:rgba(236,228,240,.55)}
.tr-badge{display:inline-flex;align-items:center;gap:.22rem;letter-spacing:.02em}
.tr-toggle{background:none;border:0;padding:0;margin:0;font:inherit;color:rgba(214,178,255,.85);cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-decoration-color:rgba(214,178,255,.35)}
.tr-toggle:hover,.tr-toggle:focus-visible{color:#e9d2ff;text-decoration-color:currentColor;outline:none}
.tr-orig{opacity:.92}
[data-tr-main][hidden],[data-tr-orig][hidden]{display:none!important}
.tr-inline{display:inline-flex;font-size:.62rem;font-weight:400;vertical-align:middle;margin:0 0 0 .45rem;letter-spacing:0}
.bubble.mine .tr-meta{justify-content:flex-end}

/* ===== hub + creators (all widths) */
.hub{max-width:880px;margin:0 auto;padding:1rem 1rem 1.25rem}
.hub-head{margin:.1rem 0 .9rem}
.hub-h{font-size:1.55rem;line-height:1.15;margin:0 0 .2rem}
.hub-tag{color:var(--muted);margin:0;font-size:.95rem;line-height:1.4}
.hub-models{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.hub-card{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.hub-img{display:block;aspect-ratio:4/5;background:#221d2b;overflow:hidden}
.hub-img img{width:100%;height:100%;object-fit:cover;display:block}
.hub-ph{display:grid;place-items:center;height:100%;font-family:var(--serif),serif;font-size:3rem;color:var(--lav)}
.hub-meta{padding:.65rem .65rem .75rem;display:flex;flex-direction:column;gap:.35rem;flex:1;min-width:0}
.hub-name{font-size:1.15rem;margin:0;line-height:1.2}.hub-name a{color:var(--text);text-decoration:none}
.hub-sub{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;font-size:.85rem;color:var(--muted)}
.hub-handle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.hub-bio{margin:0;color:var(--muted);font-size:.95rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hub-acts{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-top:auto;padding-top:.2rem}
.hub-acts .btn{min-height:44px;padding:.45rem .35rem;font-size:.92rem;width:100%}
.hub-cta{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:1rem 0 .4rem}
.hub-cta .btn{min-height:48px}
.hub-more{margin:1rem 0 .2rem;font-size:1rem}
.hub-note{color:var(--muted);font-size:.85rem;margin:.9rem 0 0;text-align:center}
@media(max-width:359px){.hub-models{grid-template-columns:1fr}.hub-img{aspect-ratio:16/11}}
@media(min-width:900px){.hub{padding:2rem 1.25rem}.hub-h{font-size:2.2rem}.hub-models{gap:1.25rem}.hub-meta{padding:1rem}.hub-name{font-size:1.4rem}}

.cr-page{max-width:680px;margin:0 auto;padding:1rem 1rem 1.5rem}
.cr-head{display:flex;align-items:center;gap:.9rem}
.cr-ava{width:84px;height:84px;border-radius:50%;overflow:hidden;flex:0 0 84px;background:#221d2b;border:2px solid rgba(201,179,240,.35);display:grid;place-items:center;font-family:var(--serif),serif;font-size:2rem;color:var(--lav)}
.cr-ava img{width:100%;height:100%;object-fit:cover}
.cr-id{min-width:0}
.cr-name{font-size:1.6rem;margin:0;line-height:1.15}
.cr-sub{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:.3rem 0 0;color:var(--muted);font-size:.9rem}
.cr-bio{margin:.8rem 0 .2rem;font-size:1rem;line-height:1.45}
.cr-stats{display:flex;gap:1.4rem;margin:.6rem 0;padding:0}
.cr-stats div{display:flex;gap:.35rem;align-items:baseline}
.cr-stats dd{margin:0;font-weight:700;font-size:1.05rem}.cr-stats dt{color:var(--muted);font-size:.9rem}
.cr-acts{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:.6rem 0 1rem}
.cr-acts .btn{min-height:46px;width:100%}
.cr-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:.85rem;margin:0 0 .75rem}
.cr-form{display:flex;flex-direction:column;gap:.55rem}
.cr-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.92rem;color:var(--muted)}
.cr-form textarea,.cr-form input:not([type=checkbox]):not([type=file]),.cr-cform input{width:100%;box-sizing:border-box;font:inherit;font-size:1rem;color:var(--text);background:#0f0d13;border:1px solid var(--line);border-radius:12px;padding:.65rem .75rem;min-height:44px}
.cr-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.cr-row>*{flex:1 1 140px}
.cr-row .btn{min-height:44px;flex:0 0 auto}
.cr-switch{flex-direction:row!important;align-items:center;gap:.6rem!important;color:var(--text)!important;min-height:44px}
.cr-msg{margin:0;font-size:.9rem;color:var(--muted);min-height:1em}.cr-msg.bad{color:#ff9db0}
.cr-empty{color:var(--muted);text-align:center;padding:1.4rem .5rem;font-size:.95rem}
.cr-post{padding:.8rem}
.cr-post-h{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}
.cr-post-h>span:nth-child(2){display:flex;flex-direction:column;flex:1;min-width:0}
.cr-post-h small{color:var(--muted);font-size:.82rem}
.cr-mini{width:36px;height:36px;border-radius:50%;overflow:hidden;background:#221d2b;flex:0 0 36px;display:block}
.cr-mini.lg{width:44px;height:44px;flex-basis:44px}
.cr-mini img{width:100%;height:100%;object-fit:cover;display:block}
.cr-post-t{margin:0 0 .55rem;font-size:1rem;line-height:1.45;white-space:pre-wrap}
.cr-post-img{width:100%;border-radius:12px;display:block;max-height:70vh;object-fit:cover}
.cr-locked{padding:1.6rem .8rem;text-align:center;color:var(--muted);background:rgba(201,179,240,.06);border-radius:12px}
.cr-comments{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.3rem;font-size:.95rem}
.cr-comments li.is-cr b{color:var(--lav)}
.cr-cform{display:flex;gap:.4rem;margin-top:.5rem}.cr-cform .btn{min-height:44px}
.cr-x{background:none;border:0;color:var(--muted);font-size:1.3rem;min-width:44px;min-height:44px;cursor:pointer;margin-left:auto}
.cr-as{display:flex;align-items:center;gap:.3rem;background:rgba(201,179,240,.06);border:1px solid var(--line);border-radius:999px;padding:.25rem;margin:0 0 .8rem;width:max-content;max-width:100%}
.cr-as-l{font-size:.85rem;color:var(--muted);padding:0 .5rem 0 .6rem}
.cr-as a{display:inline-flex;align-items:center;gap:.35rem;min-height:40px;min-width:64px;justify-content:center;padding:0 .9rem;border-radius:999px;color:var(--text);text-decoration:none;font-weight:600;font-size:.95rem}
.cr-as a.on{background:var(--lav);color:var(--ink)}
.cr-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#ff5c8a;color:#fff;font-size:.72rem;font-style:normal}
.page-pad>.cr-as,.main>.cr-as{margin:.75rem auto .5rem}
.cr-chat{display:flex;flex-direction:column;gap:.5rem}
.cr-chat-h{display:flex;align-items:center;gap:.65rem;padding:.2rem 0 .5rem;border-bottom:1px solid var(--line)}
.cr-chat-h>div{display:flex;flex-direction:column;gap:.15rem}.cr-chat-h small{color:var(--muted);font-size:.85rem}
.cr-back{font-size:1.8rem;line-height:1;min-width:44px;min-height:44px;display:grid;place-items:center;color:var(--text);text-decoration:none}
.cr-thread{display:flex;flex-direction:column;gap:.45rem;overflow-y:auto;height:calc(100dvh - 350px);min-height:220px;padding:.3rem .1rem;overscroll-behavior:contain}
.cr-b{max-width:82%;padding:.55rem .75rem;border-radius:16px;background:var(--panel);border:1px solid var(--line)}
.cr-b.mine{align-self:flex-end;background:rgba(201,179,240,.16)}
.cr-b p{margin:0;font-size:1rem;line-height:1.4;white-space:pre-wrap;word-break:break-word}
.cr-b img{max-width:100%;border-radius:12px;display:block;margin-bottom:.35rem}
.cr-b time{display:block;font-size:.72rem;color:var(--muted);margin-top:.2rem;text-align:right}
.cr-send{display:flex;gap:.4rem;align-items:flex-end;flex-wrap:wrap;padding:.4rem 0 0;border-top:1px solid var(--line)}
.cr-send textarea{flex:1;min-height:44px;font:inherit;font-size:1rem;color:var(--text);background:#0f0d13;border:1px solid var(--line);border-radius:22px;padding:.6rem .9rem;resize:none}
.cr-send .btn{min-height:44px}.cr-send .cr-msg{flex-basis:100%}
.cr-attach{min-width:44px;min-height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;cursor:pointer;font-size:1.2rem}
.cr-attach input{position:absolute;width:1px;height:1px;opacity:0}
.cr-h1{font-size:1.45rem;margin:.2rem 0 .3rem}.cr-h2{font-size:1.1rem;margin:0 0 .6rem}
.cr-note{color:var(--muted);font-size:.95rem;margin:0 0 .9rem}
.cr-convs{display:flex;flex-direction:column}
.cr-conv{display:flex;align-items:center;gap:.6rem;min-height:52px;padding:.4rem .2rem;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}
.cr-conv small{color:var(--muted);margin-left:auto;font-size:.85rem}
@media(min-width:900px){.cr-thread{height:calc(100vh - 320px)}}
.cr-page.cr-chatpage{padding-top:.5rem;padding-bottom:.5rem}

/* ===== compact mobile (bottom-nav breakpoint) */
@media(max-width:899px){
  html,body{overflow-x:hidden}
  /* header: one slim row, no duplicate nav (bottom nav handles it) */
  .lm-head{min-height:52px;padding:.4rem .8rem!important;gap:.5rem}
  .lm-head .lm-nav{display:none!important}
  .lm-head .lm-word{font-size:1.2rem}
  .lm-head .top-actions{gap:.35rem;flex-wrap:nowrap;min-width:0}
  .is-member .lm-head .lm-18{display:none}
  .lm-head .lm-lang,.lm-head .lm-18{min-height:36px;min-width:40px;font-size:.78rem;padding:0 .5rem}
  .lm-head .lm-pill-link{max-width:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:36px;line-height:34px;font-size:.85rem;padding:0 .7rem;display:inline-block!important;box-sizing:border-box}
  .lm-head .lm-login{min-height:40px;padding:0 .8rem;font-size:.9rem}
  /* bottom nav: flat, readable, ≥44px targets */
  .bottom-nav{padding:.25rem .15rem calc(.3rem + env(safe-area-inset-bottom,0px))!important;box-shadow:none!important;background:#121016!important}
  .bottom-nav a{min-height:48px;justify-content:center;font-size:.72rem!important;gap:.1rem;transform:none!important;text-shadow:none!important}
  .bottom-nav a.on{color:var(--lav)!important}
  .bottom-nav.guest-nav{grid-template-columns:repeat(4,1fr)}
  .app-shell.guest .main{padding-bottom:calc(4.6rem + env(safe-area-inset-bottom,0px))!important}
  .foot.lm-foot{padding:1rem 1rem calc(4.8rem + env(safe-area-inset-bottom,0px))!important;gap:.4rem}
  .foot.lm-foot .foot-brand{display:none}
  /* cards: flat, less chrome */
  .main .card,.main .card.post{border-radius:14px!important;box-shadow:none!important}
  .main .card.post{margin:0 .75rem .6rem!important;padding:.8rem!important}
  .page-pad{padding:.85rem .85rem!important}
  .main h1{font-size:1.6rem!important;line-height:1.15!important}
  .main h2{font-size:1.25rem!important}
  .lm-eyebrow{font-size:.7rem!important;margin-bottom:.35rem!important;letter-spacing:.14em!important}
  .post-text,.post-text .muted,.lm-lead,.lm-sub{font-size:1rem!important;line-height:1.45!important}
  .post-meta .sub{font-size:.82rem!important}
  /* Lily profile: smaller hero, tighter copy */
  .pf-hero{gap:.8rem!important;padding:.75rem .85rem 0!important}
  .pf-portrait{aspect-ratio:16/10!important;max-height:230px!important;min-height:0!important;border-radius:16px!important;margin:0!important}
  .pf-portrait .lm-portrait-top{display:none!important}
  .pf-portrait .lm-pb-text strong{font-size:1rem!important}
  .pf-portrait .lm-pb-text small{display:none}
  .pf-copy>.lm-eyebrow{display:none!important}
  .pf-name{font-size:1.75rem!important;margin:0 0 .35rem!important}
  .pf-name em{display:block;font-size:1.1rem!important;margin-top:.15rem}
  .pf-bio{margin:.4rem 0 .6rem!important}
  .pf-cta{display:grid!important;grid-template-columns:1fr 1fr;gap:.5rem!important;margin:.4rem 0 .4rem!important}
  .pf-cta .btn,.pf-cta form .btn{width:100%;min-height:46px}
  .pf-tags{display:none!important}
  .pf-facts{font-size:.9rem!important;margin:.3rem 0 0!important}
  .pf-stats{margin:.6rem .85rem!important;padding:.55rem 0!important;gap:.25rem!important}
  .pf-stats dd{font-size:1.1rem!important}.pf-stats dt{font-size:.78rem!important;text-transform:none!important;letter-spacing:0!important;color:var(--muted)!important;white-space:nowrap;overflow:visible!important;font-size:.74rem!important}
  .pf-tabs{overflow-x:auto;flex-wrap:nowrap!important;scrollbar-width:none;padding:0 .6rem!important;gap:.2rem!important}
  .pf-tabs::-webkit-scrollbar{display:none}
  html body .pf-tabs a{white-space:nowrap;min-height:44px;display:inline-flex!important;align-items:center;padding:0 .7rem!important;font-size:.95rem!important;flex:0 0 auto}
  .pf-sec-head,.lm-sec-head{padding:.4rem .85rem!important;margin:.4rem 0!important;align-items:center!important}
  .pf-sec-head .lm-eyebrow,.pf-sec-head .lm-sub{display:none!important}
  .pf-sec-head .lm-h2{font-size:1.25rem!important;margin:0!important}
  .stories-strip{padding:.2rem .85rem .4rem!important;margin:0!important}
  .stories-label{font-size:.75rem!important;margin:0 0 .3rem!important}
  .story-ring{width:58px!important;height:58px!important}
  /* chat: one tidy header row */
  .lm-chat-head{padding:.5rem .7rem!important;gap:.55rem!important;align-items:center!important}
  .lm-chat-head .chat-eyebrow,.lm-chat-head .chat-reply-hint{display:none!important}
  .lm-chat-head .chat-name{font-size:1.05rem!important;flex-wrap:wrap;gap:.3rem;margin:0!important}
  .lm-chat-head .chat-ava{width:42px!important;height:42px!important;flex:0 0 42px}
  .lm-chat-head .chat-who{min-width:0;flex:1}
  .lm-chat-head .sub{font-size:.8rem!important}
  .lm-chat-head .wallet-chip{min-height:36px;padding:0 .6rem!important;font-size:.82rem!important}
  .lm-chat-head .wallet-chip .wc-l{display:none}
  .chat-composer{padding:.4rem .55rem calc(.4rem + env(safe-area-inset-bottom,0px))!important}
  .chat-composer .lm-safety.compact{font-size:.72rem!important;padding:.25rem .5rem!important;margin:.3rem 0 0!important;border:0!important;background:none!important;opacity:.75}
  .bubble .txt{font-size:1rem!important}
  .page-chat .cr-chat-sw{margin:.5rem auto .35rem!important}
  /* feed page header */
  .feed-head,.lm-page-head{padding:.75rem .85rem .4rem!important;margin:0!important}
  .lm-page-head .lm-sub{font-size:.95rem!important}
  /* admin */
  .admin-head{padding:.6rem .85rem!important}
}

.lm-safety{font-size:.78rem;line-height:1.4;background:rgba(201,179,240,.07);border:1px solid rgba(201,179,240,.28);color:inherit;border-radius:10px;padding:.45rem .7rem;margin:.5rem 0}.lm-safety a{color:#c9b3f0;text-decoration:underline}.lm-safety.compact{font-size:.7rem;padding:.3rem .55rem;margin:.35rem 0 0;opacity:.92}.notif-support{border-left:3px solid #c9b3f0}