/* Preserved source: /_build/ember-home-style-20260920.css */
/* Selected September 20 Home. Keep real content, canonical navigation and
   the founder's upright wordmark. Scope geometry to Home, not profiles/chat. */
:root .shell--home-art .home-title { margin: 0 6px 8px; font: 800 44px/1.2 var(--display); letter-spacing: -.04em; }
:root .shell--home-art .fdtabs--feed { height: 46px; margin: 0 0 14px; }
:root .shell--home-art .home-tab-pair--companions { flex: 0 1 390px; }
:root .shell--home-art .home-tab { font-size: 15px; }
:root .shell--home-art .home-stories { --story-size: 78px; gap: 23px; padding: 0 6px 18px; }
/* One status ring only; no additional portrait border. */
:root .home-stories__portrait { border: 0; box-shadow: none; outline: none; }
/* Reference cutouts already contain a painted ring: crop that artwork edge,
   without zooming or otherwise changing real uploaded profile photos. */
:root .home-stories__portrait > img[src*='/.improve/ember-home-selected-'] { transform: scale(1.18); }
:root .shell--home-art .home-compose { min-height: 74px; gap: 14px; padding: 10px; margin-bottom: 16px; border: 1px solid var(--line); border-radius: 16px; background: var(--ink); }
:root .shell--home-art .home-compose .account-link { width: 48px; height: 48px; }
:root .shell--home-art .home-compose__field { min-height: 46px; }
:root .shell--home-art .home-compose__prompt { min-height: 44px; font-size: 15px; }
:root .shell--home-art .home-compose__new { min-height: 48px; padding-left: 22px; padding-right: 8px; }
:root .shell--home-art .post { padding: 14px 14px 6px; margin-bottom: 16px; border-radius: 14px; }
:root .shell--home-art .post__head { margin-inline: 0; gap: 14px; }
:root .shell--home-art .post__text { padding-inline: 0; font-size: 16px; }
:root .shell--home-art .post .posta { margin-inline: 0; min-height: 48px; }
:root .shell--home-art .home-aside .home-corner { aspect-ratio: 388 / 504; height: auto; }
:root .shell--home-art .home-discover { margin-top: 16px; padding: 12px 14px 2px; border: 1px solid var(--line); border-radius: 14px; }
:root .shell--home-art .home-discover header { border: 0; min-height: 36px; }
:root .shell--home-art .home-discover h2 { font-size: 23px; }
:root .shell--home-art .home-discover header > .canvas-see-all { min-height: 44px; border: 0; padding-inline: 0; background: transparent; }
:root .shell--home-art .home-discover__row { padding-block: 14px; }
:root .shell--home-art .home-discover__avatar { width: 60px; height: 60px; }
:root .shell--home-art .home-discover__words strong { font-size: 15px; }
:root .shell--home-art .home-discover .post__relationship { min-width: 96px; }
:root .shell--home-art .home-aside__links { padding: 14px 0; }
.home-resume { margin: 20px 0; color: var(--fg2); }
.home-resume > summary { cursor: pointer; min-height: 44px; padding: 12px 0; font: 600 14px/1.4 var(--sans); }
.home-resume > summary:focus-visible { outline: 2px solid var(--fg); outline-offset: 3px; border-radius: 6px; }
@media (min-width: 1241px) {
  :root:has(.shell--home-art) { --railw: clamp(264px, 21.38vw, 318px); }
  :root .shell--home-art { max-width: 1680px; padding: 80px 18px 0 var(--railw); }
  :root .shell--home-art .shell__grid { display: grid; grid-template-columns: minmax(0, 1.83fr) minmax(320px, 1fr); gap: 34px; }
  :root .shell--home-art .shell__main { width: auto; min-width: 0; padding: 14px 0 0 20px; }
  :root .shell--home-art .home-aside { padding: 16px 0 0; width: auto; }
  :root .shell--home-art .post__who { display: flex; align-items: center; flex-wrap: wrap; column-gap: 12px; }
  :root .shell--home-art .post__metadata { margin: 0; }
  :root .shell--home-art .home-discover h2 { font-size: clamp(19px, 1.55vw, 23px); }
}
@media (max-width: 1240px) {
  :root .shell--home-art .home-title { font-size: 32px; margin-top: 12px; }
  :root .shell--home-art .home-stories { --story-size: 62px; gap: 14px; padding-inline: 0; }
  :root .shell--home-art .home-tab { font-size: 14px; padding-inline: 4px; }
  :root .shell--home-art .home-tab-pair--companions { flex: 1; }
  :root .shell--home-art .home-compose { min-height: 64px; gap: 8px; padding: 8px; }
  :root .shell--home-art .home-compose__new { min-height: 44px; padding-left: 14px; }
  :root .shell--home-art .home-compose__prompt { padding-left: 12px; font-size: 14px; }
  :root .shell--home-art .home-aside .home-corner { aspect-ratio: auto; height: 78px; }
  :root .shell--home-art .post { padding: 12px 10px 4px; }
}

/* Preserved source: /_build/finished-panels-20260920.css */
/* Narrow overlay for the existing live panels. No routing or state changes. */
:root:root .chat2col .chat-action-tray { background: var(--sheet-ground); color: var(--fg); border: 1px solid var(--line); border-radius: 24px; padding: 16px; max-height: min(60dvh,600px); overflow-y: auto; overscroll-behavior: contain; }
:root:root .chat2col .chat-action-tray__head b { font: 600 18px/1.3 var(--sans); }
:root:root .chat2col .chat-action-tray__actions { grid-template-columns: minmax(0,1fr); gap: 10px; }
:root:root .chat2col .chat-action-tray__action { grid-template-columns: 24px minmax(0,1fr) auto; gap: 10px; padding: 14px; min-height: 68px; border: 1px solid var(--line); border-radius: 16px; background: var(--ink); color: var(--fg); }
:root:root .chat2col .chat-action-tray__action b { font: 600 14px/1.4 var(--sans); }
:root:root .chat2col .chat-action-tray__action small { font: 400 12px/1.5 var(--sans); color: var(--fg2); }
:root:root .chat2col .chat-action-tray__state { grid-column: 3; grid-row: 1; max-width: 90px; overflow-wrap: anywhere; text-align: right; font: 500 11px/1.4 var(--sans); color: var(--fg2); }
:root:root .chat2col .chat-action-tray__close { width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--fg); }
:root:root .chat2col .chat-action-tray__note { font-size: 12px; line-height: 1.5; color: var(--fg2); }
:root:root .w19p { background: var(--sheet-ground); color: var(--fg); }
:root:root .w19h { padding: 14px; }
:root:root .w19t { font: 600 18px/1.3 var(--sans); }
:root:root .w19gh { font: 600 13px/1.4 var(--sans); letter-spacing: 0; text-transform: none; color: var(--fg2); }
:root:root .w19x, :root:root .w19r { border: 1px solid var(--line); color: var(--fg); }
:root:root .w19si { border-radius: 999px; font-size: 16px; }
:root:root .w19si:focus { border-color: var(--fg); }
:root:root .w19foot { background: var(--sheet-ground); }
:root:root .w19p button:focus-visible, :root:root .chat-action-tray button:focus-visible { outline: 2px solid var(--fg); outline-offset: 2px; }
@media (max-width:740px) {
  :root:root .chat2col .chat-action-tray { padding: 12px; }
  :root:root .chat2col .chat-action-tray__action { padding: 10px; }
}

/* Preserved source: /_build/model-portrait-rectangle-20260921.css */
/* Model portrait restoration, 2026-09-21. Own-account framing is unchanged. */
:root:root:root .profile-page.plimit > .psplit.profile-portrait-header > .pim {
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 2;
  border-radius: 20px;
  overflow: hidden;
}
:root:root:root .profile-portrait-header > .pim > img.profile-hero-media {
  object-fit: contain;
  object-position: center;
}
:root:root:root .profile-portrait-header .profile-cover-avatar {
  display: none;
}

/* Preserved source: /_build/discover-single-feature-20260921.css */
/* Retire the duplicate legacy conversation banner; keep the current featured companion. */
.flai-continue { display: none !important; }

/* Preserved source: /_build/original-model-frame-20260921.css */
/* September 10 model portrait: inset image, soft corners, no account frame. */
:root:root:root .profile-page.plimit > .psplit.profile-portrait-header > .pim {
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 2;
  border-radius: 16px;
  overflow: hidden;
}
:root:root:root .profile-portrait-header > .pim > img.profile-hero-media {
  object-fit: contain;
  object-position: center;
}
:root:root:root .profile-portrait-header .profile-cover-avatar { display: none; }
@media (max-width: 760px) {
  :root:root:root .profile-page.plimit > .psplit.profile-portrait-header > .pim {
    min-width: 0;
    width: calc(100vw - 76px);
    max-width: calc(100% - 40px);
    margin: 0 auto;
    justify-self: center;
    flex: none;
  }
}

/* Preserved source: /_build/profile-hero-frame-20260921.css */
/* Match the original landscape photo crop inside the rounded model frame. */
:root:root:root:root .profile-portrait-header > .pim > img.profile-hero-media {
  object-fit: cover;
  object-position: center 20%;
}

/* Preserved source: /_build/corner-lines-20260921.css */
/* Remove the separators above and below the Your corner artwork. */
:root:root .profile-editorial-about:has(+ .home-corner) { border-bottom: 0; }
:root:root .home-corner + .home-aside__links { border-top: 0; }

/* Preserved source: /_build/remove-flare-20260921.css */
/* Post composer no longer offers flare creation. */
#pmflbar { display: none !important; }

/* Preserved source: /_build/platform-release-20260922-v2.css */
/* Approved September 21 refinement of the existing site, not the Slushy lab.
   Shared rhythm and controls; media, permissions and transaction state stay
   with their existing owners. Keep this after the historical canvas layers. */
:root:root {
  --em1: #ff2d6f;
  --em2: #ff2d6f;
  --ember: linear-gradient(118deg, #ff2d6f 0%, #ff2d6f 55%, #ff2d6f 100%);
  --em1-pressed: #e31b5c;
  --em2-pressed: #e31b5c;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --page-gutter: 24px;
  --panel-radius: 16px;
  --sans: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', Arial, sans-serif;
  --text: var(--sans);
  --display: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Helvetica Neue', Arial, sans-serif;
  --serif: var(--sans);
  --house-press-duration: 160ms;
  --house-panel-duration: 220ms;
  --house-exit-duration: 160ms;
}
:root:root:not([data-mode='paper']):not([data-mode='grey']) {
  --fg2: #b7b5bc;
  --fg3: #a19ea7;
  --line: #28262b;
}
:root:root[data-mode='grey'] { --fg2: #d0cdd4; --fg3: #b4b0bb; }
:root:root[data-mode='paper'] { --fg2: #514c56; --fg3: #655f69; }

/* One readable hierarchy on feed, directory, account, creator and legal pages. */
:root:root :is(.home-title, .headline, .profile-name, .conversation-pane-title) {
  font-family: var(--display);
  font-weight: 800;
  letter-spacing: -.035em;
  line-height: 1.15;
}
:root:root :is(.home-title, .headline:not(.headline--detail, .headline--prompt)) {
  font-size: clamp(32px, 3.2vw, 44px);
}
:root:root :is(.home-discover h2, .home-corner__top > span, .sheet h2, .flsettings .cap) {
  font-family: var(--display);
  font-weight: 750;
  letter-spacing: -.025em;
  line-height: 1.25;
}
:root:root :is(.post__text, .profile-bio, .profile-editorial-about p) {
  font-family: var(--sans) !important;
  font-size: 16px !important;
  font-style: normal !important;
  line-height: 1.55 !important;
}
:root:root :is(.post__handle, .post__time, .post__metadata, .home-discover__words > span) {
  color: var(--fg2);
  font-size: 13px;
  line-height: 1.45;
}
:root:root :is(.headline, .achead, .nd-intro, .sthead) { margin-bottom: var(--space-6); }
:root:root .headline--prompt { margin-bottom: var(--space-3); }
:root:root :is(.acsec, .account-records__section) { padding-block: var(--space-6); }
:root:root :is(.flsettings .orow, .sheet__actions, .inline-profile-editor__actions) { gap: var(--space-4); }
:root:root :is(.ndgrid, .flai-grid) { gap: var(--space-4); }
:root:root .flsettings .pbd > .cap { margin-top: var(--space-6); }
:root:root :is(.nd-intro, .flai-intro) { padding-bottom: 0; }
:root:root :is(.nd-intro, .flai-intro) p { margin: 0 0 24px; font: 400 16px/1.55 var(--sans); color: var(--fg2); }
:root:root :is(.ndmode, .flai-mode) { box-sizing: border-box; min-height: 52px; padding: 3px; gap: 4px; }
:root:root :is(.ndmode, .flai-mode) > button { min-height: 44px; font: 600 14px/1.3 var(--sans); }
:root:root :is(.flai-tools, .ndmode-wrap) { margin-top: 0; }
:root:root :is(.flai-search, .nd__srch) { min-height: 48px; }

/* Capsule arrows have real inset. No negative margins or hover travel can
   push the signature outside its parent's hit target. */
:root:root .pill:has(> .pill__signature) {
  box-sizing: border-box;
  min-height: 48px;
  height: auto;
  padding: 7px 7px 7px 20px;
  gap: 12px;
}
:root:root .pill > .pill__signature {
  display: inline-grid;
  position: static;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  min-width: 32px;
  margin: 0;
  border-radius: 50%;
  background: var(--ember);
  color: #121014;
  -webkit-text-fill-color: #121014;
  place-items: center;
  overflow: hidden;
}
:root:root .pill > .pill__signature :is(.ti, svg) {
  width: 18px;
  height: 18px;
  font-size: 18px;
  line-height: 18px;
  transform: none;
}
:root:root .rail__post > .pill__signature { margin-left: auto; }
:root:root .pill[aria-disabled='true'] > .pill__signature { background: var(--g08); color: var(--fg2); -webkit-text-fill-color: currentColor; }
:root:root .home-compose .home-compose__new {
  min-width: 108px;
  background: var(--cap-on-bg);
  color: var(--on-action-ink);
  -webkit-text-fill-color: currentColor;
}
:root:root :is(.pill, .w19pill, .w19open, .home-tab) { min-height: 44px; }
:root:root .topbar__create { background: var(--ember); color: #121014; }
:root:root :is(button, a, input, textarea, select, summary):focus-visible {
  outline: 2px solid var(--fg);
  outline-offset: 3px;
}

/* Same story geometry; seen state is both thinner and quieter. */
:root:root .home-stories { gap: 16px; padding-block: 8px 24px; }
:root:root .home-stories__item { gap: 8px; min-width: 64px; }
:root:root .home-stories__label { font: 500 13px/1.4 var(--sans); color: var(--fg2); }
:root:root .home-stories__ring { background: var(--ember); }
:root:root .home-stories__item--read .home-stories__ring { background: var(--fg3); padding: 1px; }
:root:root .home-stories__portrait > img { object-fit: cover; object-position: center 25%; }
:root:root .home-stories__self .home-stories__ring { background: var(--line); }

/* Keep feed, composer and supporting column on one rhythm. */
:root:root .shell--home-art .home-compose { padding: 12px; gap: 12px; margin-bottom: 24px; border-radius: var(--panel-radius); }
:root:root .shell--home-art .post { padding: 16px 16px 8px; margin-bottom: 24px; border-radius: var(--panel-radius); }
:root:root .shell--home-art .post__head { gap: 12px; }
:root:root .shell--home-art .home-discover { margin-top: 24px; padding: 16px; border: 0; }
:root:root .home-discover__row { padding-block: 16px; }
:root:root .home-aside__links, :root:root .home-aside__brand,
:root:root .profile-editorial-about:has(+ .home-corner) { border-block: 0; }

/* The old release pinned this tray open, even on phones. Its existing state
   owner now controls disclosure again; requests stay behind the + button. */
:root:root:root .chat2col .chat-action-plus { display: grid; margin: 0; }
:root:root:root .chat2col .tdockin { position: relative; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 8px; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) textarea { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) .tsendb { grid-column: 3; grid-row: 1; }
:root:root:root .chat2col .tbar:has(.chat-action-plus):has(.tcost) { grid-template-columns: 44px minmax(0, 1fr) auto 44px; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) .tcost { grid-column: 3; grid-row: 1; }
:root:root:root .chat2col .tbar:has(.chat-action-plus):has(.tcost) .tsendb { grid-column: 4; }
:root:root:root .chat2col .chat-action-tray {
  position: absolute; inset: auto 0 calc(100% + 8px);
  width: 100%; height: auto; max-height: min(60dvh, 480px);
  margin: 0; padding: 16px; overflow-y: auto; overscroll-behavior: contain;
  border: 1px solid var(--line); border-radius: 16px;
  background: var(--rise); box-shadow: 0 12px 36px #0005; z-index: 30;
}
:root:root:root .chat2col .chat-action-tray[hidden] { display: none !important; }
:root:root:root .chat2col .chat-action-tray__head { display: flex; }
:root:root:root .chat2col .chat-action-tray__close { display: grid; place-items: center; min-width: 44px; min-height: 44px; }
:root:root:root .chat2col .chat-action-tray__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
:root:root:root .chat2col .chat-action-tray__action { min-width: 0; min-height: 64px; }
@media (min-width: 1280px) {
  :root:root:root .chat2col:has(.chat-action-tray) { padding-right: 0; }
}

@media (min-width: 1241px) {
  /* Shared rail width: no route-specific jump when leaving Home. */
  :root:root { --railw: 248px; --midgap: 32px; }
  :root:root .shell--home-art { padding-left: var(--railw); padding-right: 24px; }
  :root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0, 1fr) minmax(260px, 320px); gap: 32px; }
  :root:root .shell--home-art .shell__main { padding-left: 24px; padding-top: 24px; }
  :root:root .shell--home-art .home-aside { padding-top: 24px; }
  :root:root .rail .rail__item--on { background: linear-gradient(118deg, #ff2d6f2b, #ff2d6f1a 60%, #ff2d6f10); color: var(--fg); }
  :root:root .rail .rail__item--on :is(b, .rail__ico) { color: var(--fg); }
  :root:root .rail__group + .rail__group { border-top-color: transparent; }
  :root:root :is(.nd-creators, .flai-inner) { padding-inline: var(--page-gutter); }
}
@media (max-width: 1240px) {
  :root:root { --page-gutter: 16px; }
  :root:root .shell--home-art .home-title { margin-inline: 0; }
  :root:root .shell--home-art .home-compose { margin-inline: 0; padding: 8px; gap: 8px; }
  :root:root .home-compose .home-compose__new { min-width: 88px; padding-left: 12px; gap: 8px; }
  :root:root .shell--home-art .home-compose .account-link { width: 36px; height: 36px; flex: 0 0 36px; }
  :root:root .shell--home-art .home-stories { padding-inline: 0; }
  :root:root .shell--home-art .post { padding: 16px 12px 8px; margin-bottom: 16px; }
  :root:root :is(.sheet, .chat-action-tray) { border-radius: 16px; }
  :root:root :is(.sheet, .flsettings, .chat-request) :is(input:not([type='checkbox'],[type='radio'],[type='range']), textarea, select) { font-size: 16px; }
  :root:root .fltoast { bottom: calc(88px + env(safe-area-inset-bottom) + var(--kb, 0px)); }
}

/* Interaction-only motion. Existing owners manage presence, focus and real
   success; these rules never manufacture a success or replay an entire feed. */
@media (prefers-reduced-motion: no-preference) {
  :root:root :is(.pill, .home-compose__media, .topbar__create, .home-stories__item) {
    transition: scale 160ms cubic-bezier(.2,.8,.2,1), background-color 160ms ease, border-color 160ms ease;
  }
  :root:root :is(.pill, .home-compose__media, .topbar__create, .home-stories__item):not([aria-disabled='true'],[aria-busy='true'],:disabled):active { scale: .97; }
  :root:root [data-motion-panel='menu'] { transform-origin: top right; }
  :root:root .fltoast { translate: 0 8px; transition: translate 220ms cubic-bezier(.2,.8,.2,1), opacity 160ms ease; }
  :root:root .fltoast.on { translate: 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  :root:root :is(.pill, .home-compose__media, .topbar__create, .home-stories__item, .fltoast, [data-motion-panel]) {
    transition: none !important;
    animation: none !important;
    scale: none !important;
    translate: none !important;
  }
}

/* Approved mockup fidelity: the application shell is one shared component,
   including selected, pressed, short-screen and authenticated create states. */
:root:root .pill:has(> .pill__signature) { overflow: hidden; max-width: 100%; }
:root:root .pill > .pill__signature { rotate: none !important; translate: none; transform: none; }
:root:root .rail__post.pill {
  display: grid; grid-template-columns: minmax(0, 1fr) 40px;
  width: 100%; min-width: 0; min-height: 58px; padding: 8px 8px 8px 22px;
  gap: 12px; text-align: left; font-size: 20px;
  background: var(--cap-on-bg); color: var(--on-action-ink);
}
:root:root .rail__post.pill > .navigation-icon { display: none; }
:root:root .rail__post.pill > .pill__signature {
  width: 40px; height: 40px; min-width: 40px; margin: 0; justify-self: end;
}
:root:root .rail__post.pill > .pill__signature .ti { font-size: 22px; width: 22px; height: 22px; line-height: 22px; }
:root:root :is(.post__relationship, .home-discover__row .post__relationship) {
  gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid var(--line);
  background: var(--s0); color: var(--fg); font-weight: 500;
}
:root:root .post__relationship .relationship-mark {
  width: 22px; height: 22px; color: var(--em1); stroke-width: 2.5;
}
:root:root .post__relationship[aria-pressed='true'] {
  border-color: color-mix(in srgb, var(--em1) 45%, var(--line));
  background: color-mix(in srgb, var(--em1) 10%, var(--s0));
}
:root:root .post__relationship[aria-disabled='true'] .relationship-mark { color: var(--fg2); }

@media (min-width: 1241px) {
  :root:root { --railw: clamp(300px, 24.74vw, 380px); --navh: 110px; --midgap: 28px; }
  :root:root .topbar { height: var(--navh); padding: 24px 28px 24px 40px; }
  :root:root .topbar__mark { width: 244px; flex-basis: 244px; }
  :root:root .topbar__mark .wordmark { width: 244px !important; max-width: 100%; }
  :root:root .topbar .quick-search { max-width: 734px; }
  :root:root .topbar .quick-search__field { height: 54px; padding-inline: 18px; background: linear-gradient(125deg, #ffffff07, #ffffff02); }
  :root:root .topbar .quick-search__field input { height: 52px; font-size: 18px; }
  :root:root .topbar__create { width: 54px; height: 54px; color: #fff; font-size: 30px; }
  :root:root .rail {
    display: flex; flex-direction: column; padding: 124px 26px 24px 30px;
    width: var(--railw); height: 100dvh; gap: 18px; border-right: 1px solid var(--line);
  }
  :root:root .rail.rail--suppressed { display: none; }
  :root:root .rail__scroll {
    position: static; inset: auto; flex: 1 1 auto; width: 100%; max-width: none;
    min-height: 0; padding: 0; overflow-x: hidden; overflow-y: auto; scrollbar-width: thin;
  }
  :root:root .rail__list { width: 100%; }
  :root:root .rail .rail__item {
    height: clamp(38px, calc((100dvh - 266px) / 13), 58px);
    padding: 0 20px; gap: 20px; border: 1px solid transparent; border-radius: 999px;
    background: transparent; box-shadow: none; color: var(--fg);
  }
  :root:root .rail .rail__item > b { font: 500 20px/1.2 var(--sans); color: inherit; -webkit-text-fill-color: currentColor; }
  :root:root .rail .rail__item .rail__ico,
  :root:root .rail .rail__item .rail__ico svg { width: 28px; height: 28px; color: var(--fg); }
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) {
    background: linear-gradient(110deg, #a5445ab3 0%, #282024 40%, #4b252f 100%);
    border-color: #b9516a; box-shadow: inset 0 1px 0 #ffb0c424;
    color: #fff;
  }
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) > b { color: #fff; font-weight: 650; }
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico,
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico svg { color: #ff6497; }
  :root:root .rail__group + .rail__group { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
  :root:root .rail__anchor {
    position: static; inset: auto; width: 100%; flex: 0 0 auto;
    margin: 0; padding: 0; border: 0; background: transparent;
  }
  :root:root .shell--home-art { padding-top: var(--navh); }
  :root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0, 1fr) clamp(270px, 17.58vw, 320px); gap: 28px; }
  :root:root .shell--home-art .shell__main { padding-top: 12px; }
  :root:root .shell--home-art .home-title { font-size: 56px; line-height: 1.15; margin: 0 6px 12px; }
  :root:root .shell--home-art .home-tab { height: 56px; font-size: 20px; }
  :root:root .home-stories { --story-size: 100px; gap: 16px; padding: 16px 10px 28px; }
  :root:root .home-stories__label { font-size: 16px; color: var(--fg); }
  :root:root .shell--home-art .home-compose { min-height: 92px; padding: 12px; border-radius: 28px; }
  :root:root .shell--home-art .home-compose .account-link { width: 64px; height: 64px; flex: 0 0 64px; }
  :root:root .home-compose__field { min-height: 64px; background: linear-gradient(140deg, #ffffff06, #ffffff02); }
  :root:root .home-compose__field .home-compose__prompt { font-size: 18px; }
  :root:root .home-compose .home-compose__new { justify-content: space-between; min-height: 58px; padding: 8px 8px 8px 26px; min-width: 150px; font-size: 20px; gap: 20px; }
  :root:root .home-compose .home-compose__new > .pill__signature { width: 40px; height: 40px; min-width: 40px; flex-basis: 40px; }
  :root:root .shell--home-art .post { padding: 20px 16px 8px; border-radius: 24px; }
  :root:root .post__head { gap: 18px; }
  :root:root .post__head > :is(.account-link, .post__av) { width: 72px; height: 72px; flex: 0 0 72px; }
  :root:root .post__head .post__av { border-radius: 50%; overflow: hidden; }
  :root:root .post__head .post__who { display: block; }
  :root:root .post__nm { display: block; }
  :root:root .post__name { font-size: 20px; }
  :root:root .post__chan { display: block; font-size: 16px; color: var(--fg2); }
  :root:root .post__metadata { display: flex; margin-top: 5px; }
  :root:root .shell--home-art .post__text { font-size: 20px !important; }
  :root:root .post__relationship { min-height: 52px; font-size: 18px; }
  :root:root .shell--home-art .home-aside { padding-top: 0; }
  :root:root .home-aside > .home-corner { height: 710px; aspect-ratio: auto; border-radius: 24px; }
  :root:root .home-corner__top { top: 24px; left: 22px; right: 12px; }
  :root:root .home-corner__top > span { font-size: 30px; white-space: nowrap; }
  :root:root .home-corner__art { top: 74px; }
  :root:root .home-corner__poem { bottom: 28px; left: 22px; font-size: 20px; }
  :root:root .shell--home-art .home-discover { border: 1px solid var(--line); border-radius: 24px; padding: 22px; }
  :root:root .home-discover > header { flex-wrap: wrap; gap: 4px; }
  :root:root .home-discover h2 { flex: 0 0 100%; font-size: 28px; white-space: nowrap; }
  :root:root .home-discover__row { flex-wrap: wrap; gap: 12px; }
  :root:root .home-discover__words { min-width: 0; }
}
@media (min-width: 1241px) and (max-height: 800px) {
  :root:root .rail { padding-top: 116px; padding-bottom: 16px; gap: 12px; }
  :root:root .rail .rail__item { height: 38px; }
  :root:root .rail .rail__item > b { font-size: 18px; }
  :root:root .rail__group + .rail__group { margin-top: 6px; padding-top: 6px; }
}
@media (min-width: 1241px) and (max-width: 1399px) {
  :root:root .rail { padding-inline: 20px; }
  :root:root .rail .rail__item { gap: 14px; padding-inline: 16px; }
  :root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0, 1fr) 250px; gap: 20px; }
  :root:root .home-compose .home-compose__new { min-width: 122px; padding-left: 16px; gap: 12px; }
}
@media (max-width: 1240px) {
  :root:root .post__relationship { padding-inline: 12px; gap: 6px; }
  :root:root .post__relationship .relationship-mark { width: 20px; height: 20px; }
}

/* Phone creation, compact navigation and a predictable photographic rhythm. */
:root:root:root .post__relationship,
:root:root:root .post__relationship:is([aria-pressed='true'], :hover, :active) {
  background: #090909; background-image: none; color: #fff;
  border-color: #353238; -webkit-text-fill-color: #fff; box-shadow: none;
}
:root:root:root .post__relationship .relationship-mark { color: var(--em1); }
:root:root:root .post:not(.post--open) .post__media-open,
:root:root:root .post:not(.post--open) .post__locked {
  display: block; position: relative; width: 100%; max-width: none;
  height: auto; min-height: 0; max-height: none; aspect-ratio: 4 / 5;
  margin: 0; border-radius: 16px; overflow: hidden;
}
:root:root:root .post:not(.post--open) .post__locked { display: grid; }
:root:root:root .post:not(.post--open) .post__media-open > .post__pic {
  display: block; position: absolute; inset: 0; width: 100%; height: 100%;
  min-height: 0; max-height: none; margin: 0; aspect-ratio: auto;
  object-fit: cover; object-position: center; border-radius: inherit;
}
:root:root:root .post:not(.post--open) video.post__pic {
  width: 100%; height: auto; max-height: none; aspect-ratio: 4 / 5; object-fit: cover;
}
:root:root:root .post:not(.post--open) .post__media--gallery {
  display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 100%;
  gap: 12px; width: 100%; overflow-x: auto; scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain; scrollbar-width: thin;
}
:root:root:root .post:not(.post--open) .post__media--gallery .post__media-open {
  grid-column: auto; scroll-snap-align: start; aspect-ratio: 4 / 5;
}
@media (min-width: 1241px) {
  :root:root:root { --railw: 288px; --navh: 88px; }
  :root:root:root .topbar { padding: 16px 28px; }
  :root:root:root .topbar__mark { width: 218px; flex-basis: 218px; }
  :root:root:root .topbar__mark .wordmark { width: 218px !important; }
  :root:root:root .rail { padding: 104px 20px 20px; gap: 16px; }
  :root:root:root .rail .rail__item { height: clamp(36px, calc((100dvh - 242px) / 14), 46px); padding-inline: 14px; gap: 14px; }
  :root:root:root .rail .rail__item > b { font-size: 17px; }
  :root:root:root .rail .rail__item .rail__ico,
  :root:root:root .rail .rail__item .rail__ico svg { width: 24px; height: 24px; }
  :root:root:root .rail__group + .rail__group { margin-top: 8px; padding-top: 8px; }
  :root:root:root .rail__post.pill { min-height: 52px; font-size: 17px; padding: 7px 7px 7px 18px; grid-template-columns: minmax(0,1fr) 36px; }
  :root:root:root .rail__post.pill > .pill__signature { width: 36px; height: 36px; min-width: 36px; }
  :root:root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0,720px) minmax(250px,300px); justify-content: center; gap: 28px; }
  :root:root:root .shell--home-art .home-title { font-size: 48px; }
  :root:root:root .home-stories { --story-size: 80px; padding-block: 12px 24px; }
  :root:root:root .home-stories__label { font-size: 14px; }
  :root:root:root .home-aside > .home-corner { height: 560px; }
}
@media (max-width: 1240px) {
  :root:root:root .shell--home-art .home-compose,
  :root:root:root :is(.topbar, .phonetop) .topbar__create { display: none; }
  :root:root:root .chrome {
    left: max(12px, env(safe-area-inset-left)); right: max(12px, env(safe-area-inset-right));
    bottom: calc(10px + env(safe-area-inset-bottom) + var(--kb, 0px));
    width: auto; height: 64px; padding: 4px 6px; border: 1px solid var(--line);
    border-radius: 999px; background: var(--chrome-solid); box-shadow: 0 8px 28px #0004;
  }
  :root:root:root .chrome::before { display: none; }
  :root:root:root .chrome .chrome__i { min-width: 0; height: 54px; transform: none; }
  :root:root:root .chrome .chrome__i--bolt {
    flex: 0 0 48px; width: 48px; height: 48px; margin-inline: 4px;
    border-radius: 50%; background: var(--ember); color: #fff; padding: 0;
  }
  :root:root:root .chrome .chrome__i--bolt > svg { width: 28px; height: 28px; background: none; color: #fff; }
  :root:root:root .chrome .chrome__i--bolt .chrome__label { display: none; }
  :root:root:root .chrome .chrome__label { font-size: 10px; }
  :root:root:root .post:not(.post--open) .post__media-open { border-radius: 12px; }
}
@media (prefers-reduced-motion: no-preference) {
  :root:root:root :is(.rail__item, .chrome__i, .pill, .post__more, .pact, .topbar__create) {
    transition: transform var(--house-press-duration,160ms) cubic-bezier(.23,1,.32,1), background-color 160ms ease, border-color 160ms ease;
    transform: scale(1); scale: none;
  }
  :root:root:root :is(.rail__item, .chrome__i, .pill, .post__more, .pact, .topbar__create):not([aria-disabled='true'],[aria-busy='true'],:disabled):active:not(:focus-visible) {
    transform: scale(.96); scale: none;
  }
  :root:root:root .rail__item .rail__ico { transition: transform 160ms cubic-bezier(.23,1,.32,1), color 160ms ease; }
  :root:root:root .rail__item:active:not(:focus-visible) .rail__ico { transform: scale(.9); }
}
@media (prefers-reduced-motion: reduce) {
  :root:root:root :is(.rail__item, .chrome__i, .pill, .post__more, .pact, .topbar__create, .rail__ico) { transform: none !important; scale: none !important; transition: none !important; }
}

/* Identity signatures remain explicit, compact and distinct from actions. */
:root:root:root :is(.post__kind, .profile-related-kind, [data-identity-kind]) {
  display: inline-flex; align-items: center; gap: 5px; width: fit-content;
  min-height: 18px; max-width: 100%; padding: 1px 6px;
  border: 0; border-radius: 6px; background: var(--g06); color: var(--fg2);
  font: 500 10.5px/16px var(--sans); font-style: normal; letter-spacing: .01em;
  text-transform: none; white-space: normal;
}
:root:root:root :is(.post__kind, .profile-related-kind)::before {
  content: ''; flex: 0 0 4px; width: 4px; height: 4px; border-radius: 50%; background: currentColor;
}
:root:root:root [data-identity-kind] b { font: inherit; }
:root:root:root [data-identity-kind] svg { width: 11px; height: 11px; }
:root:root:root .post__metadata { gap: 4px 6px; }
:root:root:root .post__metadata .post__tm { font-size: 10.5px; }
@media (max-width: 600px) {
  :root:root:root .post__head { display: grid; grid-template-columns: 40px minmax(0,1fr) auto 24px; gap: 2px 8px; }
  :root:root:root .post__head > .post__av { grid-column: 1; grid-row: 1 / 3; width: 40px; height: 40px; }
  :root:root:root .post__head .post__who { display: contents; }
  :root:root:root .post__head .post__nm { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; min-height: 24px; }
  :root:root:root .post__head:not(:has(.post__relationship)) .post__nm { grid-column: 2 / 4; }
  :root:root:root .post__head .post__metadata { grid-column: 2 / -1; grid-row: 2; margin: 0; }
  :root:root:root .post__head .post__relationship { grid-column: 3; grid-row: 1; padding-inline: 10px; font-size: 12px; gap: 5px; }
  :root:root:root .post__head .post__more { grid-column: 4; grid-row: 1; width: 24px; min-width: 24px; height: 44px; margin: 0; }
}
:root:root:root:root .profile-page :is(.fwbtn, .profile-mini-action[aria-label='Follow'], .profile-mini-action[aria-label='Followed']) {
  background: #090909; background-image: none; color: #fff; -webkit-text-fill-color: #fff;
  border: 1px solid #353238; box-shadow: none;
}
:root:root:root .fwbtn::before { content: '+'; color: var(--em1); -webkit-text-fill-color: var(--em1); font: 600 22px/1 var(--sans); width: 18px; }
:root:root:root .fwbtn[aria-pressed='true']::before { content: '✓'; font-size: 18px; }
:root:root:root .profile-mini-action:is([aria-label='Follow'],[aria-label='Followed']) .ti { color: var(--em1); -webkit-text-fill-color: var(--em1); }
:root:root:root .profile-page .kick { width: fit-content; margin-block: 0 6px; font: 500 10.5px/16px var(--sans); letter-spacing: .04em; }
:root:root:root .profile-page .kick::before { width: 4px; height: 4px; border-radius: 50%; }

/* Phone Discover: one compact rhythm for people and companions. */
@media (max-width: 600px) {
  :root:root:root :is(.nd-creators, .flai) { padding: 0 0 calc(100px + env(safe-area-inset-bottom)); overflow-x: clip; }
  :root:root:root .flai-inner { padding: 18px 16px 24px; }
  :root:root:root .nd-creators > .cxhd { width: 100%; margin: 0; box-sizing: border-box; }
  :root:root:root .nd-intro { padding: 18px 16px 0; margin: 0; }
  :root:root:root :is(.nd-intro, .flai-intro) .headline { font-size: 30px; line-height: 1.1; letter-spacing: -.035em; margin: 0 0 10px; }
  :root:root:root :is(.nd-intro, .flai-intro) p { font-size: 14px; line-height: 1.45; margin: 0 0 16px; max-width: 34ch; }
  :root:root:root .flai-intro { margin: 0; }
  :root:root:root .ndmode-wrap { padding: 0 16px; margin: 0; }
  :root:root:root :is(.ndmode, .flai-mode) { width: 100%; min-height: 50px; height: 50px; margin: 0; padding: 4px; box-sizing: border-box; }
  :root:root:root :is(.ndmode, .flai-mode) button { min-width: 0; min-height: 42px; padding-inline: 8px; font-size: 13px; }
  :root:root:root .flai-tools { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; margin: 0 0 10px; }
  :root:root:root .flai-find { grid-template-columns: minmax(0,1fr) 100px; gap: 8px; }
  :root:root:root :is(.flai-search, .flai-sort-button) { height: 48px; min-height: 48px; }
  :root:root:root .flai-search { min-width: 0; padding-inline: 12px; }
  :root:root:root .flai-search input { min-width: 0; width: 100%; font-size: 16px; }
  :root:root:root .flai-sort-button { padding-inline: 10px; font-size: 12px; }
  :root:root:root .nd__srch { margin: 12px 16px 0; width: auto; }
  :root:root:root .nd__srch input { font-size: 16px; }
  :root:root:root .ndquickrow { padding: 10px 16px 0; margin: 0; }
  :root:root:root .ndstrip { gap: 8px; scroll-padding-inline: 16px; }
  :root:root:root .flai-categories { margin: 10px 0 16px; gap: 8px; }
  :root:root:root .flai-onboard { display: none; }
  :root:root:root .flai-hero { grid-template-columns: 42% minmax(0,1fr); height: auto; min-height: 210px; margin: 16px 0 22px; }
  :root:root:root .flai-hero-image { min-height: 210px; height: 100%; }
  :root:root:root .flai-hero-image img { height: 100%; min-height: 210px; object-fit: cover; object-position: center top; }
  :root:root:root .flai-hero-copy { min-width: 0; padding: 18px 12px 14px 8px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
  :root:root:root .flai-hero-copy h2 { font-size: 23px; line-height: 1.08; margin: 0; }
  :root:root:root .flai-hero-copy p { font-size: 13px; line-height: 1.4; margin: 0; }
  :root:root:root .flai-hero-copy .flai-traits { display: none; }
  :root:root:root .flai-verified { font-size: 10.5px; gap: 4px; margin: 0; }
  :root:root:root .flai-verified svg { width: 12px; height: 12px; }
  :root:root:root .flai-connect { position: static; width: 100%; min-width: 0; min-height: 44px; height: auto; margin-top: auto; padding: 7px 7px 7px 10px; display: flex; justify-content: space-between; gap: 5px; font-size: 11px; line-height: 1.25; }
  :root:root:root .flai-connect > span { min-width: 0; }
  :root:root:root .flai-connect .discover-command-arrow { width: 28px; height: 28px; flex: 0 0 28px; padding: 7px; box-sizing: border-box; }
  :root:root:root .flai-library-head { margin-bottom: 14px; gap: 8px; }
  :root:root:root .flai-library-head h2 { font-size: 24px; }
  :root:root:root .flai-match-trigger { min-height: 44px; padding-inline: 12px; font-size: 12px; }
  :root:root:root .flai-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  :root:root:root .flai-card { display: flex; flex-direction: column; min-height: 0; height: auto; aspect-ratio: auto; border-radius: 16px; overflow: hidden; }
  :root:root:root .flai-card-image { position: relative; inset: auto; width: 100%; height: auto; aspect-ratio: 3/4; flex: 0 0 auto; }
  :root:root:root .flai-card-image img { height: 100%; width: 100%; object-fit: cover; }
  :root:root:root .flai-card-copy { position: relative; inset: auto; min-height: 104px; padding: 10px 10px 4px; flex: 1; gap: 0; }
  :root:root:root .flai-card-badge { font-size: 10px; letter-spacing: 0; line-height: 16px; }
  :root:root:root .flai-card-badge svg { width: 11px; height: 11px; }
  :root:root:root .flai-card-copy strong { font-size: 16px; line-height: 1.2; margin-top: 5px; }
  :root:root:root .flai-card-copy em { font-size: 12px; font-weight: 400; line-height: 1.4; margin-top: 4px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  :root:root:root :is(.flai-card-reason, .flai-card-traits) { display: none; }
  :root:root:root .flai-card-actions { position: relative; inset: auto; padding: 4px 8px 8px; justify-content: space-between; width: auto; }
  :root:root:root .flai-card-actions button { width: 44px; height: 44px; box-shadow: none; }
  :root:root:root .ndgrid { padding: 16px 16px 24px; gap: 12px; grid-template-columns: repeat(2,minmax(0,1fr)); }
  :root:root:root .ndperson { border-radius: 16px; min-width: 0; overflow: hidden; }
  :root:root:root .ndportrait { width: 100%; height: auto; aspect-ratio: 3/4; min-height: 0; }
  :root:root:root .ndmeta { min-height: 74px; padding: 10px; gap: 4px; }
  :root:root:root .ndnm b { font-size: 14px; line-height: 1.3; }
  :root:root:root .ndvf { max-width: calc(100% - 16px); top: auto; bottom: 8px; left: 8px; padding: 3px 5px; }
  :root:root:root .ndvf b { font-size: 9px; }
  :root:root:root .ndperson-message { min-height: 44px; margin: 0 10px 10px; width: auto; }
}
@media (max-width: 600px) {
  :root:root:root .flai-find { grid-template-columns: minmax(0,1fr) 110px; }
  :root:root:root .flai-sort-button { white-space: nowrap; gap: 6px; }
  :root:root:root .flai-hero { min-height: 190px; }
  :root:root:root .flai-hero-image,
  :root:root:root .flai-hero-image img { min-height: 190px; }
  :root:root:root .flai-hero-copy { padding-top: 14px; gap: 6px; }
  :root:root:root .flai-card-image { aspect-ratio: 4/5; }
  :root:root:root .ndportrait { aspect-ratio: 4/5; }
  :root:root:root .flai-card-copy { min-height: 96px; }
  :root:root:root .ndmeta .ndup { font-size: 10px; line-height: 1.3; }
}
@media (max-width: 600px) {
  :root:root:root .flai-library-head h2 { font-size: 22px; }
  :root:root:root .flai-match-trigger { white-space: nowrap; flex-shrink: 0; padding-inline: 10px; }
  :root:root:root .flai-library-actions { flex-shrink: 0; }
}
@media (max-width: 600px) {
  :root:root:root .ndhandle { min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
  :root:root:root .ndwhy { font-size: 10px; line-height: 1.35; letter-spacing: .02em; }
}

/* Legacy chat sidebar styling must never keep a dismissed tray visible. */
:root:root:root .chat2col .chat-action-tray[data-motion-visible='false'] { opacity: 0; pointer-events: none; }
:root:root:root .chat2col .chat-action-tray[aria-hidden='true'] { visibility: hidden; pointer-events: none; }
:root:root:root .chat2col .chat-action-tray[data-motion-visible='true'] { opacity: 1; visibility: visible; }

/* Impeccable consistency pass. Shared presentation only: route access, factual
   copy, account state, portrait shape and transaction behavior stay local. */
:root:root:root {
  --ui-page-gap: 24px;
  --ui-section-gap: 32px;
  --ui-page-title: 44px;
  --ui-section-title: 22px;
  --ui-body: 16px;
  --ui-support: 14px;
  --ui-field-radius: 12px;
  --ui-card-radius: 16px;
  --ui-reading-width: 72ch;
}
::selection { background: var(--em1); color: #090909; }
:root :is(input,textarea) { caret-color: var(--em1); }
:root :is(main,.sheet,.pmbox,.drawer) { scrollbar-color: var(--fg3) transparent; scrollbar-width: thin; }
:root main a { text-underline-offset: .2em; }

/* Page titles and section labels share one hierarchy, including older account
   screens whose explicit font shorthand used to bypass the family tokens. */
:root:root:root :is(.headline:not(.headline--detail,.headline--prompt),.home-title,
  .reference-settings-body .headline,.acpick .headline,.me-account h1) {
  font-family: var(--display); font-size: var(--ui-page-title); font-weight: 800;
  line-height: 1.12; letter-spacing: -.035em; text-transform: none;
}
:root:root:root :is(.flsettings .cap,.reference-account-records .cap,.more22 .psech,
  .ref22 .psech,.ab .poh,.studio .st-sech,.passstate h2) {
  font-family: var(--display); font-size: var(--ui-section-title); font-weight: 750;
  line-height: 1.25; letter-spacing: -.025em; text-transform: none;
}
:root:root:root :is(.hero__lead,.passintro > p,.wallet-later__body,.ab .abp,.ab .geosub) {
  max-width: var(--ui-reading-width); margin-top: 12px;
  font: 400 var(--ui-body)/1.6 var(--sans); color: var(--fg2);
}
:root:root:root :is(.mut,.set__note,.wallet-later__note,.st-mut,.st-src,.sup-note) { line-height: 1.55; }

/* One title-to-controls interval and section rhythm. */
:root:root:root :is(.flsettings .achead,.acpick .achead) { padding-top: 0; margin: 0 0 var(--ui-page-gap); }
:root:root:root .flsettings .acsec { margin-top: var(--ui-section-gap); padding-block: 0; }
:root:root:root .flsettings .cap { margin: 0 0 12px; color: var(--fg); }
:root:root:root .flsettings > .psplit { padding-inline: 0; gap: var(--ui-page-gap); }
:root:root:root .flsettings :is(.mut,.xpc-hint,.trp-note) { font-size: var(--ui-support); }
:root:root:root .flsettings .orow { min-width: 0; gap: 12px; padding-block: 12px; }
:root:root:root .flsettings .olab { min-width: 0; font: 600 15px/1.4 var(--sans); letter-spacing: 0; }
:root:root:root .flsettings .oin { min-height: 48px; font: 400 16px/1.5 var(--sans); border-radius: var(--ui-field-radius); }
:root:root:root .flsettings .acsave { gap: 12px; padding-block: 16px; }
:root:root:root .more22 .pabout { margin-top: var(--ui-section-gap); }
:root:root:root .more22 .psech { margin-bottom: 12px; }
:root:root:root .more22 .morerow { min-height: 60px; padding: 12px 0; border-radius: var(--ui-field-radius); }
:root:root:root .more22 .morerow .n { font-size: 13px; line-height: 1.45; }
:root:root:root .more22 .moreseg { flex-wrap: wrap; overflow: visible; gap: 8px; }
:root:root:root .reference-settings-body .lead { font: 400 16px/1.6 var(--sans); margin: 12px 0 24px; }
:root:root:root .reference-settings-body .nvlrow { min-height: 48px; padding: 12px 16px; }
:root:root:root .reference-settings-body .nvlrow .nm { font: 500 15px/1.4 var(--sans); }
:root:root:root .acpick :is(.acc,.acfield input) { min-height: 48px; font: 400 16px/1.4 var(--sans); }
:root:root:root .acpick .accgrid { gap: 8px; }
:root:root:root .reference-account-records :is(.mut,.olab,.oval) { font-size: 14px; line-height: 1.5; }

/* Reading pages keep their content and hierarchy, without oversized empty gaps. */
:root:root:root .ab .abs { padding-block: var(--ui-section-gap); }
:root:root:root .ab > .abs:first-child { padding-top: var(--ui-page-gap) !important; }
:root:root:root .ab .posec { padding-block: var(--ui-section-gap); }
:root:root:root .ab .abk { font: 700 16px/1.4 var(--sans); letter-spacing: 0; color: var(--fg); }
:root:root:root .ab :is(.sfrow,.porow) { gap: 16px; padding-block: 16px; }
:root:root:root .ab :is(.sfrow,.porow) :is(.l,.r) { min-width: 0; overflow-wrap: anywhere; white-space: normal; }
:root:root:root .ab .sfrow .r { flex: 0 1 50%; }
:root:root:root .ab :is(.sfrow .r.no,.porow .r.hot,.burn) { background: none; color: var(--fg); -webkit-text-fill-color: currentColor; }
:root:root:root .ab .burn { text-decoration: underline; }
:root:root:root .ab .pocard { border-radius: var(--ui-card-radius); }
:root:root:root .passwrap { width: 100%; max-width: none; margin: 0; padding: 0; }
:root:root:root .passhero { padding: var(--ui-page-gap) 0; gap: 24px; }
:root:root:root .passshelf { padding: 24px 0 40px; }
:root:root:root .passstate { padding: 32px 16px; }
:root:root:root .passstate p { font: 400 15px/1.6 var(--sans); }
:root:root:root :is(.passcard,.mkc,.fwrow) { border-radius: var(--ui-card-radius); }

/* Controls share legible text, real touch areas, and visible keyboard focus. */
:root:root:root :is(.sup-areas button,.acpick .acc,.passprimary,.st-quick .pill,.fls-cat) { min-height: 44px; }
:root:root:root :is(.sup-areas button,.st-quick .pill,.fls-cat) { font: 600 14px/1.4 var(--sans); }
:root:root:root :is(.fls-field input,.sup-form input,.sup-form textarea) { font-family: var(--sans); font-size: 16px; }
:root:root:root :is(.st-now .label,.st-now__m span,.st-stats .c span,.st-src,.sup-body) { font-size: 13px; line-height: 1.45; }
:root:root:root .st-grid { gap: 24px; }
:root:root:root .st-quick { height: auto; min-height: 48px; flex-wrap: wrap; overflow: visible; gap: 8px; }
:root:root:root :is(.sheet,.pmbox) { max-width: calc(100vw - 24px); }
:root:root:root :is(.sheet,.pmbox) :is(input,textarea,select) { min-width: 0; max-width: 100%; }
:root:root:root .pmtop { position: sticky; top: 0; z-index: 10; background: var(--rise); padding-bottom: 12px; }
:root:root:root :is(.sheet,.pmbox,.chat-action-tray) :is(button,a):focus-visible { outline: 2px solid var(--fg); outline-offset: 2px; }

@media (min-width: 1241px) {
  :root:root:root .shell--rail:not(.shell--own,.shell--bare,.shell--centred,.shell--home-art) {
    padding-left: calc(var(--railw) + 24px); padding-right: 24px;
  }
  :root:root:root .shell--rail:not(.shell--own,.shell--bare,.shell--centred,.shell--home-art) > .shell__wide { margin-inline: 0; padding-inline: 0; }
  :root:root:root :is(.flsettings,.more22,.mk,.nf.inset,.fw,.mwrap,.studio,.ref22,.wallet-later) { padding-top: var(--ui-page-gap); }
  :root:root:root :is(.fw__head,.hero) { padding-top: 0; }
  :root:root:root .ab { width: 100%; max-width: none; padding-inline: 0; margin-inline: 0; }
  :root:root:root :is(.reference-settings-body,.acpick) { padding: 24px 0 48px; }
  :root:root:root .reference-account-records { padding: 24px 0 48px; }
  :root:root:root .flsearch { margin-left: 24px; padding-top: calc(var(--navh) + 24px); max-width: min(720px,calc(100% - 48px)); }
  :root:root:root .cxwrap:not(.cxwrap--pane) .hero { padding-top: 24px; }
}
@media (max-width: 1240px) {
  :root:root:root { --ui-page-title: 32px; }
  :root:root:root :is(.flsettings,.more22,.mk,.nf.inset,.fw,.mwrap,.studio,.ref22,.wallet-later,.ab) { padding-inline: var(--page-gutter); }
  :root:root:root :is(.flsettings,.more22,.mk,.nf.inset,.fw,.mwrap,.studio,.ref22,.wallet-later) { padding-top: var(--ui-page-gap); }
  :root:root:root .fw__head { padding-top: 0; }
  :root:root:root .passwrap { padding-inline: var(--page-gutter); }
  :root:root:root .passhero { margin-inline: 0; }
  :root:root:root .flsettings .acsave { bottom: calc(84px + env(safe-area-inset-bottom)); background: var(--ink); }
  :root:root:root :is(.reference-settings-body,.acpick) { padding-inline: var(--page-gutter); }
  :root:root:root .reference-account-records { padding: 24px var(--page-gutter) 40px; }
}
@media (max-width: 600px) {
  :root:root:root { --ui-page-title: 30px; --ui-section-title: 20px; --ui-page-gap: 20px; }
  :root:root:root .headline--detail { font: 700 20px/1.2 var(--display); }
  :root:root:root :is(.flsettings .orow,.account-records__row) { flex-wrap: wrap; }
  :root:root:root .flsettings .olab { flex: 1 1 120px; }
  :root:root:root .flsettings .oval { max-width: 100%; }
  :root:root:root .ab .sfrow { font-size: 14px; line-height: 1.55; gap: 12px; }
  :root:root:root .ab .porow { flex-wrap: wrap; }
  :root:root:root .ab .porow .r { text-align: start; }
  :root:root:root :is(.sheet,.pmbox) { max-height: calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); }
  :root:root:root .pmbox { overscroll-behavior: contain; }
  :root:root:root .fwrow { gap: 12px; padding: 12px 0; }
  :root:root:root .fwrow__who { gap: 10px; }
  :root:root:root .fwrow__av { width: 44px; height: 44px; }
  :root:root:root .fwrow__nm { font-size: 15px; }
  :root:root:root .fwrow__sb { font-size: 12px; }
  :root:root:root .fwrow__following { min-width: 96px; padding-inline: 10px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  :root:root:root .ab .abrv { opacity: 1; }
}

/* Final cross-page review: Studio uses the same section scale; selected
   navigation remains readable in the light appearance. */
:root:root:root .studio .hero { padding-top: 0; }
:root:root:root .studio .st-card .hd { font: 750 var(--ui-section-title)/1.25 var(--display); letter-spacing: -.025em; }
:root:root:root .studio .st-card .hd .st-mut { font: 400 13px/1.45 var(--sans); }
:root:root:root[data-mode='paper'] .rail .rail__item--on { background: #f6e1e8; border-color: #dfb5c4; color: #161217; }
:root:root:root[data-mode='paper'] .rail .rail__item--on :is(b,.rail__ico) { color: #161217; }

/* Sidebar selection: brand-colored text without a pill surface. */
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: var(--fg);
}
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) > b {
  color: var(--em1, #ff2d6f);
  -webkit-text-fill-color: currentColor;
  font-weight: 500;
}
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico,
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico svg {
  color: var(--fg);
}

/* Shared refinement of the retained platform. No route or transaction changes.
   Existing images, profile frames, Follow controls and chat layouts stay owned
   by their components. Appearance tokens remain mode-aware. */
:root:root:root:root {
  --ui-page-title: 40px;
  --ui-section-title: 22px;
  --ui-card-radius: 20px;
  --ui-page-gap: 24px;
  --ui-section-gap: 32px;
  --refined-panel: var(--s1);
  --refined-field: var(--s2);
}
:root:root:root:root :is(.home-title,.headline:not(.headline--detail,.headline--prompt),.studio .headline,.flai-intro h1,.nd-intro h1) {
  font-family:var(--display);font-size:var(--ui-page-title);font-weight:750;
  line-height:1.15;letter-spacing:-.035em;
}
:root:root:root:root :is(.hero__lead,.flai-intro p,.nd-intro p,.wallet-later__body) {
  font-size:15px;line-height:1.6;color:var(--fg2);max-width:65ch;
}
/* Quietly lift content off the stage, without putting decoration behind it. */
:root:root:root:root :is(.post:not(.post--open),.home-discover,.st-card,.stoday,.profile-membership-card,.passcard,.mkc) {
  background-color:var(--refined-panel);border-color:var(--line);border-radius:var(--ui-card-radius);
}
:root:root:root:root .post:not(.post--open) { margin-bottom:20px; }
:root:root:root:root .post__head { gap:12px;align-items:center; }
:root:root:root:root .post__who { min-width:0; }
:root:root:root:root .post__name { font-size:16px;line-height:1.35;font-weight:650; }
:root:root:root:root :is(.post__chan,.post__tm) { font-size:13px;line-height:1.45;color:var(--fg2); }
:root:root:root:root .post__metadata { gap:8px;align-items:center; }
:root:root:root:root .post__kind { font-size:11px;font-style:normal;line-height:1.4;letter-spacing:0; }
:root:root:root:root .post__text { line-height:1.6!important; }
:root:root:root:root .home-discover h2 { font-size:24px;line-height:1.2; }
:root:root:root:root .home-discover__row { gap:12px;padding-block:16px; }
/* Same section scale in creator tools and account pages. */
:root:root:root:root :is(.st-card .hd,.stoday h2,.flsettings .cap,.more22 .psech) {
  font:700 var(--ui-section-title)/1.3 var(--display);letter-spacing:-.025em;
}
:root:root:root:root .st-card { padding:20px; }
:root:root:root:root :is(.st-grid,.ndgrid,.flai-grid) { gap:20px; }
:root:root:root:root :is(.st-mut,.st-src,.set__note,.mut) { line-height:1.55; }
:root:root:root:root .st-quick { gap:8px;margin-block:20px; }
:root:root:root:root :is(.flsettings .oin,.flai-search,.nd__srch,.fls-field input,.sup-form input,.sup-form textarea) {
  background-color:var(--refined-field);border-color:var(--field-line);border-radius:12px;
  font-family:var(--sans);font-size:16px;min-height:48px;
}
:root:root:root:root .flsettings .orow { padding-block:14px;gap:16px; }
:root:root:root:root .flsettings .olab { font-weight:600;line-height:1.4; }
:root:root:root:root .flsettings .acsec + .acsec { margin-top:32px; }
:root:root:root:root :is(.more22 .morerow,.reference-settings-body .nvlrow) { min-height:60px; }
:root:root:root:root .reference-settings-body .lead { max-width:65ch; }
/* Interactive feedback is color-only; touch and keyboard keep their own cues. */
:root:root:root:root :is(.ndcat,.flai-categories button,.flai-quick button,.morerow,.nvlrow) {
  transition:background-color 150ms ease,border-color 150ms ease,color 150ms ease;
}
@media(hover:hover){
  :root:root:root:root :is(.morerow,.nvlrow):hover { background-color:var(--refined-panel); }
  :root:root:root:root :is(.ndcat,.flai-categories button,.flai-quick button):not([aria-pressed=true]):hover { border-color:var(--fg3); }
}
:root:root:root:root :is(main,.rail,.nav) :is(button,a,input,textarea,select,summary):focus-visible {
  outline:2px solid var(--em1);outline-offset:3px;
}
@media(min-width:1241px){
  :root:root:root:root .post:not(.post--open) { padding:20px 20px 12px; }
  :root:root:root:root :is(.flai-intro,.nd-intro) { padding-top:24px; }
  :root:root:root:root :is(.flai-intro h1,.nd-intro h1) { margin-bottom:16px; }
  :root:root:root:root .flai-tools { margin-top:20px; }
  :root:root:root:root .flsettings .pbd { max-width:760px; }
}
@media(max-width:1240px){
  :root:root:root:root { --ui-page-title:30px;--ui-section-title:20px;--ui-card-radius:16px; }
  :root:root:root:root :is(.ndgrid,.flai-grid) { gap:12px; }
  :root:root:root:root .post:not(.post--open) { padding:16px 12px 10px;margin-bottom:16px; }
  :root:root:root:root .st-card { padding:16px; }
  :root:root:root:root .st-grid { gap:16px; }
  :root:root:root:root :is(.flai-intro p,.nd-intro p) { margin-bottom:16px;font-size:14px; }
  :root:root:root:root .flsettings .orow { gap:10px; }
}
@media(prefers-reduced-motion:reduce){
  :root:root:root:root :is(.ndcat,.flai-categories button,.flai-quick button,.morerow,.nvlrow) { transition:none; }
}
/* Account hub: clearly grouped sections with a common row rhythm. */
:root:root:root:root .more22 .pabout {
  border:1px solid var(--line);border-radius:var(--ui-card-radius);
  padding:20px;background:var(--refined-panel);max-width:960px;
}
:root:root:root:root .more22 .psech { margin-bottom:16px; }
:root:root:root:root .more22 .morerow { padding-inline:8px;gap:12px; }
:root:root:root:root .more22 .morerow:last-child { border-bottom:0; }
:root:root:root:root .more22 .morerow .l { font-weight:600; }
:root:root:root:root .more22 .morerow .n { color:var(--fg2); }
:root:root:root:root .more22 .moreseg { gap:8px; }
:root:root:root:root .more22 .moretabs { gap:8px;min-height:48px; }
@media(max-width:640px){
  :root:root:root:root .more22 .pabout { padding:16px;margin-top:20px; }
  :root:root:root:root .more22 .morerow { flex-wrap:wrap;column-gap:10px;row-gap:4px; }
  :root:root:root:root .more22 .morerow .n { flex:1 1 100%;padding-left:30px;text-align:left; }
}
/* Settings sections stay in their original order with clear local grouping. */
:root:root:root:root .flsettings .acsec {
  padding:20px;border:1px solid var(--line);border-radius:var(--ui-card-radius);
  background:var(--refined-panel);margin-top:24px;
}
:root:root:root:root .flsettings .cap { color:var(--fg);font-size:18px;line-height:1.35;letter-spacing:0; }
:root:root:root:root .flsettings .oin { padding:10px 12px;border:1px solid var(--field-line);text-align:start;letter-spacing:0; }
:root:root:root:root .flsettings .orow:last-child { border-bottom:0; }
:root:root:root:root .flsettings :is(.mut,.set__note) { max-width:70ch; }
:root:root:root:root .flsettings :is(.oval,.oin) { min-width:0;overflow-wrap:anywhere; }
:root:root:root:root .fwrow { background:var(--refined-panel);border:1px solid var(--line);gap:16px; }
:root:root:root:root .fwlist { gap:12px; }
:root:root:root:root :is(.nf__tabs,.fw__tabs,.passfilters) { margin-top:24px; }
:root:root:root:root .passbody { padding:24px; }
:root:root:root:root .passbody h2 { font-family:var(--display);font-size:24px;line-height:1.25;letter-spacing:-.025em; }
:root:root:root:root :is(.flai-empty,.passstate,.wallet-later__body) { line-height:1.6; }
@media(max-width:640px){
  :root:root:root:root .flsettings .acsec { padding:16px;margin-top:20px; }
  :root:root:root:root .flsettings .orow:has(.oin) { flex-direction:column;align-items:stretch; }
  :root:root:root:root .flsettings .orow:has(.oin) .oin { width:100%; }
  :root:root:root:root .fwrow { padding:14px 12px;gap:10px; }
  :root:root:root:root .fwrow__who { gap:10px; }
  :root:root:root:root .passbody { padding:18px; }
}
/* Directory search and featured copy use the same readable control scale. */
:root:root:root:root .flai-search input { min-height:44px;min-width:0;font-size:16px;line-height:1.4; }
:root:root:root:root .flai-hero-copy > p { font:400 16px/1.5 var(--sans);color:var(--fg2);margin-top:10px; }
:root:root:root:root .flai-hero-copy h2 { line-height:1.15; }
:root:root:root:root .flai-card :is(strong,h2) { font-family:var(--display);line-height:1.3; }
@media(max-width:640px){
  :root:root:root:root .flai-hero-copy > p { font-size:14px;line-height:1.45; }
}
/* Section navigation replaces the need to search through the settings page. */
:root:root:root:root .settings-index {
 display:flex;gap:8px;overflow-x:auto;position:sticky;top:var(--navh,80px);z-index:12;
 padding:12px 0;margin:0 0 24px;background:var(--ink);border-bottom:1px solid var(--line);
 scrollbar-width:thin;
}
:root:root:root:root .settings-index a {
 display:inline-flex;align-items:center;justify-content:center;min-height:44px;
 padding:10px 16px;border:1px solid var(--line);border-radius:99px;white-space:nowrap;
 font:600 14px/1.4 var(--sans);color:var(--fg);text-decoration:none;background:var(--rise);
}
:root:root:root:root .settings-index a:hover { border-color:var(--em1);color:var(--em1); }
:root:root:root:root .flsettings :is(.psplit,.acsec)[id] { scroll-margin-top:calc(var(--navh,80px) + 84px); }
@media(max-width:640px){:root:root:root:root .settings-index{margin-bottom:16px;gap:6px}.settings-index a{padding-inline:12px}}
/* Home hierarchy: activity first, discovery second, editorial artwork last.
   Geometry follows the retained Home redesign; actual account/media data stays live. */
@media(min-width:1241px){
 :root:root:root:root .shell--home-art .home-aside { display:flex;flex-direction:column;gap:24px; }
 :root:root:root:root .shell--home-art .home-aside > .home-discover { order:0;margin-top:0; }
 :root:root:root:root .shell--home-art .home-aside > .home-corner { order:1;height:320px;flex:none; }
 :root:root:root:root .shell--home-art .home-aside > .home-corner .home-corner__top > span {font-size:22px}
 :root:root:root:root .shell--home-art .home-aside > .home-corner .home-corner__art {top:58px}
 :root:root:root:root .shell--home-art .home-aside > .home-corner .home-corner__poem {font-size:16px;bottom:18px}
 :root:root:root:root .shell--home-art .home-stories { --story-size:72px;gap:16px;padding:12px 4px 20px; }
 :root:root:root:root .shell--home-art .home-stories__label {font-size:12px}
 :root:root:root:root .shell--home-art .home-tab {height:48px;font-size:16px}
 :root:root:root:root .shell--home-art .home-compose { min-height:76px;padding:10px;border-radius:20px; }
 :root:root:root:root .shell--home-art .home-compose .account-link {width:44px;height:44px;flex-basis:44px}
 :root:root:root:root .shell--home-art .home-compose__field {min-height:48px}
 :root:root:root:root .shell--home-art .home-compose__field .home-compose__prompt {font-size:15px}
 :root:root:root:root .shell--home-art .home-compose .home-compose__new {min-height:48px;min-width:112px;font-size:16px;padding:6px 6px 6px 18px;gap:12px}
 :root:root:root:root .shell--home-art .home-compose .home-compose__new > .pill__signature {width:34px;height:34px;min-width:34px;flex-basis:34px}
 :root:root:root:root .shell--home-art .post__head > :is(.account-link,.post__av) {width:48px;height:48px;flex-basis:48px}
 :root:root:root:root .shell--home-art .post__text {font-size:16px!important}
 :root:root:root:root .shell--home-art .post__relationship {min-height:44px;font-size:15px}
}

/* Inner-page orientation and readable account metadata. */
:root:root:root:root .account-records-heading { margin-bottom:24px; }
:root:root:root:root .account-records-back {
 display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;
 color:var(--fg2);font:600 14px/1.4 var(--sans);text-underline-offset:4px;
}
:root:root:root:root .account-records-back:hover { color:var(--fg); }
:root:root:root:root .reference-account-records { max-width:840px; }
:root:root:root:root .passstatus { font-size:11px;line-height:1.5; }
:root:root:root:root .passfacts span { font-size:11px;line-height:1.5; }
:root:root:root:root .passfacts b { font-size:14px;line-height:1.5;font-variant-numeric:tabular-nums; }
:root:root:root:root .passhandle { font-size:13px;line-height:1.5; }
:root:root:root:root .flsettings .trp-inline { flex-wrap:wrap; }
:root:root:root:root .flsettings .trp-inline .trp-in { flex:1 1 160px; }
@media(max-width:640px){
 :root:root:root:root .settings-index { flex-wrap:wrap;position:static;overflow:visible; }
 :root:root:root:root .settings-index a { flex:1 0 auto; }
 :root:root:root:root .passbody { min-width:0;padding:16px 12px; }
 :root:root:root:root .passbody h2 { font-size:20px;overflow-wrap:anywhere; }
 :root:root:root:root .passfacts { gap:10px; }
 :root:root:root:root .passactions { grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); }
}
/* Consistent readable control and support-page scale at both breakpoints. */
:root:root:root:root :is(.ndmode,.flai-mode) button { min-height:44px; }
:root:root:root:root .st-stats .c span { font-size:12px;letter-spacing:.03em;line-height:1.5; }
:root:root:root:root .st-sec :is(.t,.m) { font-size:12px;letter-spacing:.035em;line-height:1.5; }
:root:root:root:root .st-now__m span { font-size:12px;letter-spacing:.04em;line-height:1.5; }
:root:root:root:root .sbz__posts span { font-size:13px;line-height:1.5; }
:root:root:root:root .mkgrid--media .mkc__ft { font-size:12px;line-height:1.5; }
:root:root:root:root .ab .abp { max-width:68ch;font-size:16px;line-height:1.7; }
:root:root:root:root .ab .abs { padding-block:56px; }
@media(max-width:640px){
 :root:root:root:root .ab .abs { padding-block:32px; }
 :root:root:root:root .ab :is(.sfrow,.porow) { flex-wrap:wrap;gap:8px 16px; }
 :root:root:root:root .ab :is(.sfrow,.porow) .r { white-space:normal;overflow-wrap:anywhere; }
}

:root:root:root:root .stoday__acts small { font-size:13px;line-height:1.45;color:var(--fg2); }
:root:root:root:root .stoday__acts b { font-size:17px;line-height:1.3;font-variant-numeric:tabular-nums; }
:root:root:root:root .stoday__acts > .stoday__act { min-height:88px; }
@media(max-width:640px){
 :root:root:root:root .stoday__acts > .stoday__act { grid-template-columns:20px minmax(0,1fr);gap:10px;padding:14px 10px; }
 :root:root:root:root .stoday__go { display:none; }
}

:root:root:root:root button:is([aria-label="Media only view"],[aria-label="Full post view"]) { min-height:44px;min-width:44px; }
:root:root:root:root .lab-duration button { min-height:44px;font-size:13px; }
:root:root:root:root .lab label small { font-size:12px; }
/* One content origin: constrained pages align to the shell, never recenter
   inside it. Their maximum reading/form widths remain intact. */
:root:root:root:root :is(.fw,.wallet-later,.reference-settings-body,.reference-account-records,.acpick) {
 margin-inline:0;
}
@media(min-width:1241px){
 :root:root:root:root .wallet-later { padding-inline:0; }
}
@media(max-width:1240px){
 :root:root:root:root .ab { width:100%;margin-inline:0;padding-inline:var(--page-gutter); }
 :root:root:root:root :is(.mk,.nf) > .hero { padding-top:0; }
}
/* Older retained language markup has no route wrapper; both forms use the
   same 24px space below the application header. */
:root:root:root:root .shell__wide:has(> .nvlangs) { padding-top:var(--ui-page-gap); }
@media(max-width:1240px){
 :root:root:root:root :is(.reference-settings-body,.acpick) { padding-top:var(--ui-page-gap); }
 :root:root:root:root .shell__wide:has(> .nvlangs) { padding-inline:var(--page-gutter); }
 :root:root:root:root .nd-intro { padding-top:var(--ui-page-gap); }
}
/* Phone content priority: shorten decoration, retain all real actions. */
@media(max-width:640px){
 :root:root:root:root .home-stories { --story-size:56px;gap:12px;padding-block:6px 14px; }
 :root:root:root:root .home-stories__item { min-width:56px;gap:6px; }
 :root:root:root:root .home-stories__label { font-size:12px;line-height:1.4; }
 :root:root:root:root .shell--home-art .home-title { margin-bottom:12px; }
 :root:root:root:root .shell--home-art .home-tab { min-height:44px;height:44px; }
 :root:root:root:root .post:not(.post--open) { margin-bottom:12px; }
 :root:root:root:root .profile-actions { gap:8px;align-items:stretch; }
 :root:root:root:root .profile-actions > .profile-message-pill { flex:1 0 100%;justify-content:space-between;min-height:48px; }
 :root:root:root:root .profile-extra-actions { position:relative; }
 :root:root:root:root .profile-extra-actions > summary { min-height:44px; }
 :root:root:root:root .profile-extra-actions > div { display:flex;flex-wrap:wrap;gap:8px;padding-block:12px; }
 :root:root:root:root .studio .st-quick--daily { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }
 :root:root:root:root .studio .st-quick--daily .pill { min-width:0;min-height:48px;padding:8px;gap:6px;font-size:13px;white-space:normal;justify-content:center; }
 :root:root:root:root .studio > .hero { padding-bottom:8px; }
 :root:root:root:root :is(.profile-page,.passpage,.mk,.nf,.fw,.more22,.studio) { padding-bottom:max(112px,calc(88px + env(safe-area-inset-bottom))); }
 :root:root:root:root .directory-refine__body { padding-bottom:calc(24px + env(safe-area-inset-bottom)); }
 :root:root:root:root .chat-action-tray { max-height: min(65dvh,520px);overflow-y:auto;overscroll-behavior:contain; }
 :root:root:root:root :is(.sheet,.pmbox) textarea { font-size:16px; }
}
@media(max-width:640px){
 :root:root:root:root .home-stories__label { white-space:nowrap; }
 :root:root:root:root .home-stories__item { min-width:64px; }
}
/* Real recent connections: a compact return path, never invented activity. */
.directory-continue { margin:20px 0 24px; }
.directory-continue header { display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px; }
.directory-continue h2 { margin:0;font:700 20px/1.3 var(--display);letter-spacing:-.025em; }
.directory-continue header a { display:inline-flex;align-items:center;min-height:44px;color:var(--fg2);font:600 14px/1.4 var(--sans); }
.directory-continue__list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
.directory-continue__list button { display:flex;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--s1);color:var(--fg);text-align:left; }
.directory-continue__list button > span:not(.directory-continue__portrait) { flex:1;min-width:0; }
.directory-continue__list strong { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:650 15px/1.4 var(--sans); }
.directory-continue__list small { display:block;color:var(--fg2);font:400 12px/1.5 var(--sans); }
.directory-continue__list :is(img,.directory-continue__portrait) { width:44px;height:44px;flex:none;border-radius:12px;object-fit:cover;background:var(--s2); }
.directory-continue__portrait { display:grid;place-items:center; }
.directory-continue__list svg { width:18px;height:18px;flex:none; }
.directory-continue__list button:hover { border-color:var(--fg3); }
:root:root:root:root .flai-card-copy strong { font-size:20px;line-height:1.25;letter-spacing:-.025em;overflow-wrap:anywhere; }
:root:root:root:root .flai-card-copy em { font-size:14px;font-weight:400;line-height:1.5; }
:root:root:root:root .flai-card-image img { filter:none; }
.media-viewer__retry { display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;margin-top:16px;border:1px solid #777;border-radius:99px;color:#fff;background:#242124;font:600 15px/1.4 var(--sans); }
.media-viewer__retry:focus-visible { outline:2px solid var(--em1);outline-offset:3px; }
@media(max-width:640px){
 .directory-continue__list { grid-template-columns:1fr; }
 .directory-continue h2 { font-size:18px; }
 :root:root:root:root .flai-card-copy strong { font-size:18px; }
 :root:root:root:root .flai-card-copy em { font-size:13px;line-height:1.45; }
 :root:root:root:root .media-viewer { padding:0; }
 :root:root:root:root .media-viewer__panel { width:100vw;height:100dvh;max-height:100dvh;padding:0;border:0;border-radius:0;box-shadow:none; }
 :root:root:root:root .media-viewer__image { max-width:100%;max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:0; }
 :root:root:root:root .media-viewer__close { top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right)); }
 :root:root:root:root .media-viewer__count { bottom:calc(16px + env(safe-area-inset-bottom)); }
}
:root:root:root:root .fl-comment-door { min-height:44px; }
@media(max-width:640px){
 :root:root:root:root .media-viewer__panel { transform:none!important;background:#080808; }
}
/* Creator workspace: readable hierarchy and grouped, predictable post actions. */
:root:root:root:root .studio .st-sec { gap:8px 20px;margin-bottom:16px; }
:root:root:root:root .studio .st-sec .t { font:700 20px/1.3 var(--sans);letter-spacing:-.025em;text-transform:none; }
:root:root:root:root .studio .st-sec .m { font:400 13px/1.5 var(--sans);letter-spacing:0;text-transform:none;color:var(--fg2); }
:root:root:root:root .sdk__perf { display:grid;gap:12px;margin-top:16px; }
:root:root:root:root .sdk__perf-row { padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--s1);gap:16px; }
:root:root:root:root .sdk__perf-main { gap:12px; }
:root:root:root:root .sdk__perf-main .who { font:600 15px/1.5 var(--sans);white-space:normal;overflow-wrap:anywhere; }
:root:root:root:root .sdk__metrics { gap:8px 16px;align-items:center;font-variant-numeric:tabular-nums; }
:root:root:root:root .sdk__metrics .st-mut { margin:0;padding:0;font:400 13px/1.5 var(--sans);color:var(--fg2); }
:root:root:root:root .sdk__post-acts .pill { min-height:44px;font-size:13px; }
:root:root:root:root .sdk__edit label { font:600 13px/1.5 var(--sans);letter-spacing:0;text-transform:none; }
:root:root:root:root .sdk__edit textarea { font-size:16px; }
/* Support retains real cases and status, with readable labels and controls. */
:root:root:root:root .sup { background:var(--s1); }
:root:root:root:root :is(.sup-head p,.sup-message p) { font-size:14px;line-height:1.6; }
:root:root:root:root :is(.sup-form label>span,.sup-case b,.sup-urgent b,.beta-open b) { font-size:14px;line-height:1.5; }
:root:root:root:root :is(.sup-send>span,.sup-urgent small,.sup-case span,.sup-closednote,.beta-open small,.sup-thread-loading) { font-size:12px;line-height:1.5;color:var(--fg2); }
:root:root:root:root :is(.sup-open,.sup-send button,.sup-reply button,.sup-areas button) { min-height:44px;font-size:14px; }
:root:root:root:root .sup-case { padding-block:12px;gap:12px; }
:root:root:root:root .sup-case em { font-size:11px;line-height:1.4; }
:root:root:root:root .sup-message small { font-size:11px;line-height:1.4; }
:root:root:root:root .sup-error button { min-height:44px;padding-inline:8px; }
@media(max-width:640px){
 :root:root:root:root .studio .st-sec { flex-direction:column;gap:4px;padding-top:20px; }
 :root:root:root:root .studio-posts-part > .st-tabs { flex-wrap:wrap;height:auto;overflow:visible;gap:8px; }
 :root:root:root:root .studio-posts-part > .st-tabs .pill { min-height:44px; }
 :root:root:root:root .sdk__perf-row { padding:16px; }
 :root:root:root:root .sdk__perf-main { flex-basis:100%; }
 :root:root:root:root .sdk__post-acts { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:12px;border-top:1px solid var(--line); }
 :root:root:root:root .sdk__post-acts .pill { justify-content:center;padding-inline:8px;white-space:normal; }
 :root:root:root:root .sup { padding:20px 16px;border-radius:18px; }
 :root:root:root:root .sup-case { flex-wrap:wrap; }
 :root:root:root:root .sup-case em { display:block;margin-left:19px; }
}
/* Signature finish: photography leads, supporting UI shares one rhythm. */
:root:root:root:root { --ui-press:140ms;--ui-settle:240ms;--ui-ease:cubic-bezier(.2,.8,.2,1); }
::selection { background:var(--em1);color:#fff; }
:root:root:root:root :is(input,textarea) { caret-color:var(--em1); }
:root:root:root:root .post__identity-line { gap:6px; }
:root:root:root:root .post__metadata { flex-wrap:wrap;row-gap:2px; }
:root:root:root:root .post__title { font:700 19px/1.35 var(--sans);letter-spacing:-.02em;margin-bottom:6px; }
:root:root:root:root .post__text { margin-block:12px;overflow-wrap:anywhere; }
:root:root:root:root .post:not(.post--open) .post__media { border-radius:12px;overflow:hidden; }
:root:root:root:root .post-actions:not(.reel-actions,.reply-actions) { gap:12px;padding-block:8px;align-items:center; }
:root:root:root:root .post-actions .pact { min-width:44px;min-height:44px;justify-content:center; }
:root:root:root:root .post-actions .pcount { font:600 13px/1.4 var(--sans);font-variant-numeric:tabular-nums; }
:root:root:root:root .home-tabs { gap:24px; }
:root:root:root:root .home-tab { position:relative; }
:root:root:root:root .home-discover__row:last-child { border-bottom:0; }
/* Card text remains compact, but no identity label needs magnification. */
:root:root:root:root .flai-card { border-radius:16px; }
:root:root:root:root .flai-card-image { overflow:hidden; }
:root:root:root:root .flai-card-copy { padding:18px;gap:0; }
:root:root:root:root .flai-card-badge { font:600 11px/1.4 var(--sans);letter-spacing:.02em; }
:root:root:root:root .flai-card-traits { font:400 12px/1.5 var(--sans);letter-spacing:0;text-transform:none; }
:root:root:root:root .flai-card-reason { font-size:12px;line-height:1.5; }
:root:root:root:root .flai-card-copy em { color:var(--flai-fg-2,var(--fg2)); }
:root:root:root:root :is(.flai-card-actions button,.flai-card-message) { min-width:44px;min-height:44px; }
:root:root:root:root .flai-tools { gap:12px; }
:root:root:root:root :is(.flai-quick,.flai-categories) { gap:8px; }
:root:root:root:root :is(.flai-empty,.profile-feed-empty,.route-error,.bookmarks-empty) { border:1px solid var(--line);border-radius:16px;background:var(--s1);padding:28px; }
:root:root:root:root .flai-empty { min-height:240px; }
:root:root:root:root .flai-empty p { color:var(--fg2);line-height:1.6; }
:root:root:root:root .flai-empty h3 { font:700 22px/1.3 var(--sans); }
:root:root:root:root .flai-empty button { background:var(--s2);color:var(--fg);border-color:var(--line); }
/* Preserve the existing portrait frame; improve the adjacent introduction. */
:root:root:root:root .profile-page .profile-name { font:750 clamp(28px,3vw,40px)/1.15 var(--sans);letter-spacing:-.03em;overflow-wrap:anywhere; }
:root:root:root:root .profile-page .profile-value { max-width:48ch;font:400 16px/1.65 var(--sans)!important;margin-block:18px; }
:root:root:root:root .profile-page .phandle { font-size:14px;line-height:1.5;color:var(--fg2); }
:root:root:root:root .profile-page .profile-facts { gap:10px;flex-wrap:wrap; }
:root:root:root:root .profile-page .profile-actions { gap:10px;align-items:center;margin-top:20px; }
:root:root:root:root .profile-page .profile-message-pill:not(:disabled) { background:var(--fg)!important;color:var(--ink)!important;-webkit-text-fill-color:currentColor;box-shadow:none;min-height:48px;font:650 15px/1.4 var(--sans);padding:8px 8px 8px 20px;gap:20px; }
:root:root:root:root .profile-page .profile-message-pill__arrow { display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:50%;background:linear-gradient(120deg,var(--em1),var(--em2));color:#fff; }
:root:root:root:root .profile-page .profile-message-pill__arrow svg { width:18px;height:18px; }
:root:root:root:root .profile-page .profile-feed-empty { min-height:0;margin-block:16px;font:400 15px/1.6 var(--sans); }
:root:root:root:root .profile-page .profile-related-kind { font-size:11px;line-height:1.5; }
:root:root:root:root .profile-page .pstat { gap:24px; }
:root:root:root:root .profile-page .pstat b { font-variant-numeric:tabular-nums;font-size:24px; }
/* The daily workspace leads with decisions; supporting details stay readable. */
:root:root:root:root .stoday header { align-items:center; }
:root:root:root:root .stoday header p { font-size:14px;line-height:1.5;max-width:55ch; }
:root:root:root:root .stoday__acts { margin-top:20px;gap:10px;background:transparent;border-radius:0; }
:root:root:root:root .stoday__acts > .stoday__act { border:1px solid var(--line);border-radius:12px;background:var(--s2);padding:16px; }
:root:root:root:root .stoday__acts small { white-space:normal;line-height:1.4; }
:root:root:root:root .stoday__bad { flex-wrap:wrap;gap:12px;font-size:14px;line-height:1.5; }
/* State feedback follows the existing handlers; never fabricate success. */
:root:root:root:root :is(.pact,.home-tab,.flai-card-image img,.stoday__act,.profile-message-pill__arrow) { transition:transform var(--ui-settle) var(--ui-ease),color var(--ui-press) ease,background-color var(--ui-press) ease; }
:root:root:root:root :is(.home-tab,.stoday__act,.post-actions .pact):not(:disabled,[aria-disabled=true]):active { transform:scale(.96); }
:root:root:root:root .post-actions .action-save[aria-pressed=true] svg { animation:refined-save 260ms var(--ui-ease); }
@keyframes refined-save { 0%{transform:translateY(2px) scale(.86)}60%{transform:translateY(-2px) scale(1.08)}100%{transform:none} }
:root:root:root:root .post-actions .pact[aria-busy=true] { cursor:progress; }
:root:root:root:root .post-actions .pact:focus-visible { outline:2px solid var(--em1);outline-offset:2px;border-radius:8px; }
:root:root:root:root .sheet { scrollbar-width:thin;scrollbar-color:var(--fg3) transparent; }
:root:root:root:root .sheet__drag-handle { min-height:44px; }
@media(hover:hover) and (pointer:fine){
 :root:root:root:root .flai-card:has(.flai-card-open:hover) .flai-card-image img { transform:scale(1.025); }
 :root:root:root:root .profile-message-pill:hover .profile-message-pill__arrow { transform:translateX(2px); }
 :root:root:root:root .stoday__act:hover { background:var(--s1);border-color:var(--fg3); }
}
@media(max-width:640px){
 :root:root:root:root .post__title { font-size:17px; }
 :root:root:root:root .post__head { gap:8px; }
 :root:root:root:root .post__name { font-size:15px; }
 :root:root:root:root .post-actions:not(.reel-actions,.reply-actions) { gap:6px;justify-content:space-between; }
 :root:root:root:root .flai-card-copy { padding:14px; }
 :root:root:root:root .flai-card-traits { font-size:11px; }
 :root:root:root:root :is(.flai-empty,.profile-feed-empty,.route-error,.bookmarks-empty) { padding:20px; }
 :root:root:root:root .profile-page .profile-value { font-size:15px!important;margin-block:14px; }
 :root:root:root:root .profile-page .profile-actions { margin-top:16px; }
 :root:root:root:root .stoday header { gap:12px;align-items:flex-start; }
 :root:root:root:root .stoday header p { display:block;font-size:13px; }
 :root:root:root:root .stoday__acts > .stoday__act { padding:12px; }
}
@media(prefers-reduced-motion:reduce){
 :root:root:root:root :is(.pact,.home-tab,.flai-card-image img,.stoday__act,.profile-message-pill__arrow) { transition:none;animation:none!important; }
 :root:root:root:root .post-actions .action-save svg { animation:none!important; }
 :root:root:root:root :is(.home-tab,.stoday__act,.post-actions .pact):active,
 :root:root:root:root .flai-card:has(.flai-card-open:hover) .flai-card-image img,
 :root:root:root:root .profile-message-pill:hover .profile-message-pill__arrow { transform:none; }
}
/* Loading occupies the incoming card geometry; no invented account content. */
:root:root:root:root .flai-card.flai-skeleton { min-height:360px;border:1px solid var(--line);background:var(--flai-placeholder,var(--s2)); }
:root:root:root:root .feed__state { margin-block:20px;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--s1);color:var(--fg2);font:400 15px/1.6 var(--sans); }
:root:root:root:root .feed__state p { margin:0 0 16px;max-width:55ch; }
:root:root:root:root .feed__state--bad { border-inline-start:3px solid var(--em1); }
:root:root:root:root :is(.feed__more,.flai-more button) { min-height:48px;margin-block:20px; }
@media(max-width:640px){
 :root:root:root:root .flai-card.flai-skeleton { min-height:300px; }
 :root:root:root:root .feed__state { padding:20px; }
}
/* Discover catalogue contract: identical frames, copy slots and action rows.
   Intrinsic image dimensions and different biography lengths cannot resize cards. */
:root:root:root:root :is(.flai-grid,.ndgrid) { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;grid-auto-rows:auto; }
:root:root:root:root :is(.flai-grid > .flai-card,.ndgrid > .ndperson) { position:relative;display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;height:auto;aspect-ratio:auto;padding:0 0 60px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--s1);color:var(--fg);box-sizing:border-box; }
:root:root:root:root .ndperson__link { display:block;position:static;height:auto;color:inherit;text-decoration:none; }
:root:root:root:root :is(.flai-card-image,.ndperson .ndportrait) { display:block;position:relative;inset:auto;flex:none;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:4/5;overflow:hidden;border:0;border-radius:0;box-sizing:border-box; }
:root:root:root:root :is(.flai-card-image img,.ndperson .ndportrait > img) { position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center 25%; }
:root:root:root:root :is(.flai-card-copy,.ndperson .ndmeta) { position:relative;inset:auto;flex:none;display:flex;flex-direction:column;justify-content:flex-start;gap:0;width:100%;height:174px;min-height:174px;padding:16px;box-sizing:border-box;background:var(--s1);color:var(--fg);border:0;text-shadow:none; }
:root:root:root:root .flai-card-badge { height:16px;min-height:16px;color:var(--fg2);white-space:nowrap;font:600 10px/16px var(--sans);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis; }
:root:root:root:root .flai-card-copy strong { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:46px;margin:8px 0 0;font:700 19px/23px var(--sans);color:var(--fg); }
:root:root:root:root .flai-card-copy em { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:40px;margin:6px 0 0;font:400 14px/20px var(--sans);color:var(--fg2); }
:root:root:root:root .flai-card-reason { display:block;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 12px/18px var(--sans);color:var(--fg2); }
:root:root:root:root .flai-card-traits { display:none; }
:root:root:root:root .flai-card-actions { position:absolute;inset:auto 12px 8px;display:flex;justify-content:space-between;width:auto;height:44px;padding:0;z-index:6;pointer-events:none; }
:root:root:root:root .flai-card-actions button { pointer-events:auto;flex:none;width:44px;height:44px;background:var(--s2);color:var(--fg);border:1px solid var(--line); }
:root:root:root:root .flai-card-message { position:absolute;inset:auto auto 8px calc(50% - 22px);z-index:7;display:grid;width:44px;height:44px;margin:0;background:var(--s2);color:var(--fg);border:1px solid var(--line);backdrop-filter:none; }
:root:root:root:root .ndperson .ndnm { min-height:46px;font:700 19px/23px var(--sans);color:var(--fg); }
:root:root:root:root .ndperson .ndnm b { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font:inherit; }
:root:root:root:root .ndperson :is(.ndhandle,.ndtg,.ndup,.ndwhy) { position:static;margin-top:6px;color:var(--fg2);font:400 13px/20px var(--sans);overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2; }
:root:root:root:root .ndperson-message { position:absolute;inset:auto 12px 8px;display:flex;align-items:center;justify-content:center;width:auto;height:44px;margin:0;border:1px solid var(--line);border-radius:99px;background:var(--s2);color:var(--fg); }
:root:root:root:root .ndperson .ndvf { inset:auto auto 12px 12px;max-width:calc(100% - 24px); }
:root:root:root:root .ndperson .ndvf b { font:600 10px/16px var(--sans);letter-spacing:0; }
:root:root:root:root .ndperson .ndhide { color:#fff; }
@media(min-width:1600px){ :root:root:root:root :is(.flai-grid,.ndgrid) { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:900px){
 :root:root:root:root :is(.flai-grid,.ndgrid) { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
 :root:root:root:root :is(.flai-card-copy,.ndperson .ndmeta) { height:162px;min-height:162px;padding:12px; }
 :root:root:root:root .flai-card-copy strong,:root:root:root:root .ndperson .ndnm { font-size:17px;line-height:21px;min-height:42px; }
 :root:root:root:root .flai-card-copy em { font-size:13px;line-height:19px;min-height:38px; }
 :root:root:root:root .flai-card-actions { left:6px;right:6px; }
 :root:root:root:root .ndperson .ndhide { opacity:1; }
}
/* Messages share the conversation header's column instead of starting at the shell edge. */
:root:root:root:root .chat2thread .tblk { width:100%;max-width:680px;min-width:0;box-sizing:border-box;margin-inline:auto;align-self:center; }
:root:root:root:root .chat2thread :is(.dmg,.ther,.tmine) { min-width:0;max-width:85%;box-sizing:border-box;overflow-wrap:anywhere; }
:root:root:root:root .chat2thread .dmg { align-self:flex-start;margin-right:auto;margin-left:0; }
:root:root:root:root .chat2thread .dmg.me { align-self:flex-end;margin-left:auto;margin-right:0; }
:root:root:root:root .chat2thread :is(.dmb,.dmq) { overflow-wrap:anywhere;word-break:normal; }
:root:root:root:root .chat2thread :is(.dm-shot,.dm-voice) { max-width:100%; }
/* Every collapsed feed preview uses the same 4:5 frame, including wide sources
   and gallery items. The expanded gallery and full-photo viewer stay uncropped. */
:root:root:root:root .post:not(.post--open) :is(.post__media,.inline-gallery) { width:100%;margin-inline:0; }
:root:root:root:root .post:not(.post--open) .post__media-open { display:block;position:relative;width:100%;height:auto;min-height:0;max-height:none;max-width:none;aspect-ratio:4/5;margin:0;border-radius:12px;overflow:hidden; }
:root:root:root:root .post:not(.post--open) .post__media-open .post__pic { position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;margin:0;object-fit:contain;object-position:center;border-radius:inherit; }
:root:root:root:root .post:not(.post--open) .inline-gallery__previews { display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:100%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin; }
:root:root:root:root .post:not(.post--open) .inline-gallery__previews > * { scroll-snap-align:start;min-width:0; }
@media(max-width:640px){
 :root:root:root:root .chat2thread .tblk { width:100%;max-width:100%; }
}
/* Popovers must escape the header; only identity text should be clipped. */
:root:root:root:root .chat2thread .conversation-head { position:relative;overflow:visible;z-index:50; }
:root:root:root:root .chat2thread .cm-safety-menu { max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain; }
:root:root:root:root .chat2thread .cm-safety-row { min-height:44px; }
/* Conversation utilities use the same column as header, history and composer. */
:root:root:root:root .chat2thread .chatfill > :is(.chat-library,.cmchips,.dm-find,.cintro) {
 width:100%;max-width:680px;min-width:0;box-sizing:border-box;margin-inline:auto;align-self:center;
}
:root:root:root:root .chat2thread .chat-library :is(input,form) { min-width:0;max-width:100%;box-sizing:border-box; }
:root:root:root:root .chat2thread .cmchips { flex-wrap:wrap;gap:8px; }
/* Opening Search must not remove the logo or account controls. */
@media(min-width:701px) and (max-width:1240px){
 :root:root:root:root .topbar--searching > .topbar__mark { display:flex; }
 :root:root:root:root .topbar--searching .topbar__right > :is(.topbar__bell,.topbar__account) { display:flex;flex:none; }
 :root:root:root:root .topbar--searching .topbar__right { min-width:0;gap:16px; }
 :root:root:root:root .topbar--searching .quick-search { position:relative;inset:auto;transform:none;width:auto;min-width:0;flex:1; }
}
@media(max-width:700px){
 :root:root:root:root .topbar.topbar--searching { display:flex;align-items:flex-start;justify-content:space-between;gap:12px;height:calc(124px + env(safe-area-inset-top));padding:calc(10px + env(safe-area-inset-top)) 16px 70px;box-sizing:border-box;background:var(--chrome-solid,var(--ink)); }
 :root:root:root:root .topbar--searching > .topbar__mark { display:flex;height:44px; }
 :root:root:root:root .topbar--searching .topbar__mark .wordmark { width:150px!important; }
 :root:root:root:root .topbar--searching .topbar__right { position:static;flex:1;min-width:0;height:44px;gap:10px;padding:0; }
 :root:root:root:root .topbar--searching .topbar__right > :is(.topbar__bell,.topbar__account) { display:flex;flex:none; }
 :root:root:root:root .topbar--searching .quick-search { position:absolute;inset:calc(64px + env(safe-area-inset-top)) 16px auto;width:auto;max-width:none;transform:none; }
 :root:root:root:root .topbar--searching .quick-search__results { max-height:calc(100dvh - 210px - env(safe-area-inset-top)); }
}

/* Precision sidebar set: custom 24px geometry, consistent 1.75px strokes. */
@media(min-width:769px){
:root:root:root:root .rail .rail__ico:not(:has(img)) { position:relative;width:24px;height:24px;flex:0 0 24px; }
:root:root:root:root .rail .rail__item[href="/"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m3%2010%209-7%209%207v9a2%202%200%200%201-2%202h-5v-7h-4v7H5a2%202%200%200%201-2-2z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/live"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/live"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/live"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%222%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3Cpath%20d%3D%22M7.8%207.8a6%206%200%200%200%200%208.4m8.4-8.4a6%206%200%200%201%200%208.4M4.6%204.6a10.5%2010.5%200%200%200%200%2014.8M19.4%204.6a10.5%2010.5%200%200%201%200%2014.8%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/discover"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/discover"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/discover"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22m16.5%207.5-3%206-6%203%203-6z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/stories"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/stories"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/stories"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%226%22%20width%3D%2214%22%20height%3D%2215%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M8%203h8M9%2011h6m-6%204h4%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/shorts"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/shorts"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/shorts"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%222.5%22%20width%3D%2214%22%20height%3D%2219%22%20rx%3D%224%22%2F%3E%3Cpath%20d%3D%22m10%208%205%204-5%204z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/chats"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/chats"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/chats"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20.5%2011a8.5%208.5%200%200%201-8.5%208.5H4l-1.5%202v-10a9%209%200%201%201%2018%200Z%22%2F%3E%3Cpath%20d%3D%22M7.5%209h9m-9%204h6%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/notifications"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/notifications"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/notifications"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2010a7%207%200%200%201%2014%200v4l2%203H3l2-3zm4%2010a3.5%203.5%200%200%200%206%200%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/following"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/following"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/following"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%227%22%20r%3D%223.5%22%2F%3E%3Cpath%20d%3D%22M2.5%2020v-2a6.5%206.5%200%200%201%2012-3.5m1.5.5%202%202%204-4%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/bookmarks"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/bookmarks"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/bookmarks"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h12a1%201%200%200%201%201%201v17l-7-4-7%204V4a1%201%200%200%201%201-1Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/wallet"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/wallet"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/wallet"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%207V4H5a2.5%202.5%200%200%200%200%205h15a1%201%200%200%201%201%201v10H5a2.5%202.5%200%200%201-2.5-2.5v-11%22%2F%3E%3Cpath%20d%3D%22M21%2012h-5v5h5%22%2F%3E%3Ccircle%20cx%3D%2217.8%22%20cy%3D%2214.5%22%20r%3D%22.8%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/subscriptions"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/subscriptions"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/subscriptions"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%202.8%205.6%206.2.9-4.5%204.4%201.1%206.1-5.6-2.9L6.4%2020l1.1-6.1L3%209.5l6.2-.9z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/studio"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/studio"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/studio"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%224%22%2F%3E%3Cpath%20d%3D%22M7%2016v-4m5%204V7m5%209v-6%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/more"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/more"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/more"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cg%20fill%3D%22black%22%20stroke%3D%22none%22%3E%3Ccircle%20cx%3D%227.5%22%20cy%3D%2212%22%20r%3D%221.2%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221.2%22%2F%3E%3Ccircle%20cx%3D%2216.5%22%20cy%3D%2212%22%20r%3D%221.2%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/posts"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/posts"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/posts"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%223%22%2F%3E%3Ccircle%20cx%3D%228%22%20cy%3D%228%22%20r%3D%221.2%22%2F%3E%3Cpath%20d%3D%22m3%2017%205-5%204%204%204-6%205%207%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/me"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/me"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/me"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%229%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M5.5%2018a7%207%200%200%201%2013%200%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
:root:root:root:root .rail .rail__item[href="/reels"] .rail__ico:not(:has(img))>svg{visibility:hidden}
:root:root:root:root .rail .rail__item[href="/reels"] .rail__ico:not(:has(img))::before{content:none}
:root:root:root:root .rail .rail__item[href="/reels"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0;pointer-events:none;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%222.5%22%20width%3D%2214%22%20height%3D%2219%22%20rx%3D%224%22%2F%3E%3Cpath%20d%3D%22m10%208%205%204-5%204z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;}
}
/* Desktop feed density: square previews; phone retains the 4:5 frame. */
@media(min-width:769px){
 :root:root:root:root .post:not(.post--open) :is(.post__media-open,.post__locked,video.post__pic) { aspect-ratio:1/1; }
 :root:root:root:root .post:not(.post--open) .post__head { margin-bottom:10px; }
 :root:root:root:root .post:not(.post--open) .post__text { margin-block:8px; }
 :root:root:root:root .post:not(.post--open) { margin-bottom:16px;padding-block:16px 8px; }
}
/* Compact desktop Home reading column; shared edge for tabs, composer and posts. */
@media(min-width:769px){
 :root:root:root:root .shell--home-art .shell__main { max-width:656px;box-sizing:border-box; }
 :root:root:root:root .shell--home-art .shell__main > :is(.feed,.home-compose,.home-stories,.home-tabs,.feed-tabs) { max-width:600px; }
}
/* Compact social timeline: content aligns beside the avatar on desktop. */
@media(min-width:769px){
 :root:root:root:root .shell--home-art .feed .post:not(.post--open) { padding:14px 16px 8px;margin-bottom:0;border-radius:0;border-width:0 0 1px;background:transparent; }
 :root:root:root:root .shell--home-art .feed .post:not(.post--open) .post__head { gap:10px;margin-bottom:6px; }
 :root:root:root:root .shell--home-art .feed .post:not(.post--open) .post__head > :is(.post__av,.account-link) { width:40px;height:40px;flex:0 0 40px; }
 :root:root:root:root .shell--home-art .feed .post:not(.post--open) .post__body { margin-left:50px;min-width:0; }
 :root:root:root:root .shell--home-art .feed .post:not(.post--open) .post__text { margin-block:4px 10px;font-size:15px!important;line-height:1.5!important; }
 :root:root:root:root .shell--home-art .feed .post:not(.post--open) .post__title { font-size:16px;line-height:1.4;margin-bottom:4px; }
 :root:root:root:root .shell--home-art .feed .post:not(.post--open) .post-actions { padding-block:4px; }
}
/* Discovery controls follow the same leading edge as its results. */
@media (min-width: 769px) and (max-width: 1240px) {
  :root:root:root:root :is(.flai-intro,.flai-tools,.flai-categories) {
    width: 100%;
    margin-inline: 0;
  }
}

/* Both discovery worlds share one canvas and control geometry, including the
   retained release markup. World-specific suggestions follow the directory. */
:root:root:root:root .shell__wide:has(> .flai) { padding-top:0;max-width:none; }
:root:root:root:root .flai { padding:0; }
:root:root:root:root :is(.nd-creators,.flai-inner) {
  box-sizing:border-box;width:100%;max-width:none;margin:0;padding:0 18px 96px;
}
:root:root:root:root .flai-inner.nd-creators { padding-top:0; }
:root:root:root:root :is(.nd-intro,.flai-intro) {
  box-sizing:border-box;min-height:140px;margin:0 0 24px;padding:24px 0 0;width:100%;
}
:root:root:root:root :is(.nd-intro,.flai-intro) h1 {
  margin:0 0 16px;font:750 30px/1.15 var(--display);letter-spacing:-.035em;
}
:root:root:root:root :is(.nd-intro,.flai-intro) h1 :is(em,span) { display:inline;font:inherit;color:inherit; }
:root:root:root:root :is(.nd-intro,.flai-intro) h1 br { display:none; }
:root:root:root:root :is(.nd-intro,.flai-intro) p { margin:0;font:400 14px/1.6 var(--sans);color:var(--fg2); }
:root:root:root:root .flai-tools { display:grid;grid-template-columns:1fr;gap:14px;width:100%;margin:0; }
:root:root:root:root .ndmode-wrap { padding:0;margin:0; }
:root:root:root:root :is(.ndmode,.flai-mode) {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));box-sizing:border-box;
  width:100%;height:54px;padding:4px;gap:4px;border:1px solid var(--line);border-radius:999px;background:var(--s1);
}
:root:root:root:root :is(.ndmode,.flai-mode) button {
  min-width:0;min-height:44px;border:0;border-radius:999px;background:transparent;
  color:var(--fg2);font:700 14px/1.2 var(--sans);padding:0 12px;
}
:root:root:root:root :is(.ndmode,.flai-mode) button[aria-selected=true] { background:var(--cap-on-bg);color:var(--on-tab-ink); }
:root:root:root:root :is(.nd__srch,.flai-search) {
  box-sizing:border-box;height:48px;min-height:48px;padding:0 14px;border:1px solid var(--field-line);
  border-radius:12px;background:var(--s2);margin:0;gap:10px;
}
:root:root:root:root .nd__srch { margin-top:14px; }
:root:root:root:root :is(.nd__srch,.flai-search) input { font:400 16px/1.4 var(--sans);color:var(--fg);min-width:0; }
:root:root:root:root :is(.ndquickrow,.flai-categories) { padding:12px 0 4px;margin:0;min-height:60px;gap:8px; }
:root:root:root:root :is(.ndquick,.flai-categories) { gap:8px; }
:root:root:root:root :is(.ndcat,.flai-categories button) {
  min-height:44px;border:1px solid var(--line);border-radius:999px;padding:0 16px;
  font:600 14px/1.2 var(--sans);background:transparent;color:var(--fg);
}
:root:root:root:root :is(.ndcat,.flai-categories button)[aria-pressed=true] { background:var(--cap-on-bg);color:var(--on-tab-ink); }
:root:root:root:root .flai-inner { display:flex;flex-direction:column; }
:root:root:root:root .flai-inner > :is(.flai-onboard,.flai-hero,.flai-continue) { order:2; }
:root:root:root:root .flai-library { margin-top:20px; }
@media(max-width:1240px) {
 :root:root:root:root .nd-creators > .cxhd { width:calc(100% + 36px);height:64px;box-sizing:border-box;margin:0 -18px;padding:10px 18px; }
 :root:root:root:root .nd-creators .cxhr { position:relative;width:100%;height:44px; }
 :root:root:root:root .nd-creators .cxt {
   position:absolute;left:50%;transform:translateX(-50%);width:150px;height:36px;font-size:0;
   background:url('/brand/filthylittle-reference-light.png') center/contain no-repeat;
 }
 :root:root:root:root[data-mode=paper] .nd-creators .cxt { background-image:url('/brand/filthylittle-reference-dark.png'); }
 :root:root:root:root .flai-mobile-head { height:64px;box-sizing:border-box;padding:10px 18px; }
 :root:root:root:root .flai-mobile-head > button:last-child { visibility:hidden; }
}
@media(min-width:1241px) {
 :root:root:root:root :is(.nd-creators,.flai-inner) { padding-inline:0; }
}
@media(max-width:600px) {
 :root:root:root:root :is(.nd-intro,.flai-intro) { min-height:164px; }
 :root:root:root:root :is(.ndmode,.flai-mode) button { font-size:13px;padding-inline:8px; }
 :root:root:root:root :is(.ndcat,.flai-categories button) { font-size:13px;padding-inline:12px; }
}
:root:root:root:root :is(.nd-intro,.flai-intro) h1 { max-width:none; }
:root:root:root:root :is(.nd-intro,.flai-intro) h1 em { display:block; }
@media(max-width:1240px) {
 :root:root:root:root .nd-creators > .cxhd { max-width:none; }
 :root:root:root:root .nd-creators .cxt {
   background-image:url('/brand/filthylittle-reference-dark.png');background-size:130% auto;mix-blend-mode:screen;
 }
 :root:root:root:root[data-mode=paper] .nd-creators .cxt {
   background-image:url('/brand/filthylittle-reference-light.png');mix-blend-mode:multiply;
 }
}
/* Search keeps its full width in either world; sorting belongs to browse tools. */
:root:root:root:root .flai-find { display:block;position:relative; }
:root:root:root:root .flai-search { width:100%; }
:root:root:root:root .flai-sort { position:absolute;right:0;top:60px;z-index:5; }
:root:root:root:root .flai-tools + .flai-categories { width:calc(100% - 132px); }

/* Profile messaging uses the same neutral action treatment as its neighbours. */
:root:root:root:root .profile-page .profile-actions > .profile-message-pill {
  background:transparent!important;color:var(--fg)!important;-webkit-text-fill-color:currentColor;
  border:1px solid var(--line)!important;box-shadow:none!important;
  border-radius:999px;min-height:44px;height:auto;padding:10px 16px!important;
  font:600 14px/1.4 var(--sans)!important;gap:8px;justify-content:center;
  flex:0 1 auto;
}
:root:root:root:root .profile-page .profile-message-pill__arrow { display:none; }
:root:root:root:root .profile-page .profile-actions > .profile-message-pill:disabled { opacity:.6; }
@media(hover:hover) {
 :root:root:root:root .profile-page .profile-actions > .profile-message-pill:not(:disabled):hover { background:var(--s2)!important;transform:none; }
}
/* Profile disclosures have the same comfortable hit area as nearby actions. */
:root:root:root:root .profile-page :is(.profile-availability-details,.profile-library-options) > summary {
  min-height:44px;display:flex;align-items:center;gap:8px;font:500 13px/1.4 var(--sans);cursor:pointer;
}
:root:root:root:root .profile-page :is(.profile-availability-details,.profile-library-options) > summary::before { content:'›';font-size:18px; }
:root:root:root:root .profile-page :is(.profile-availability-details,.profile-library-options)[open] > summary::before { transform:rotate(90deg); }
:root:root:root:root .profile-page :is(.profile-availability-details,.profile-library-options) > summary::-webkit-details-marker { display:none; }
/* Empty media rows retain their status without reserving a gallery's height. */
:root:root:root:root .profile-page .psec:has(> .prow2 > .mut):not(:has(> .prow2 > a, > .prow2 > button)) {
  min-height:0;padding:20px 0;margin-block:0;
}
:root:root:root:root .profile-page .psec:has(> .prow2 > .mut):not(:has(> .prow2 > a, > .prow2 > button)) > .prow2 {
  min-height:0;padding:0;display:block;
}
:root:root:root:root .profile-page .psec:has(> .prow2 > .mut):not(:has(> .prow2 > a, > .prow2 > button)) > .prow2 > .mut {
  padding:4px 0!important;font-size:14px!important;line-height:1.5;
}
:root:root:root:root .profile-page .profile-actions > .profile-message-pill { box-sizing:border-box;min-height:44px!important;height:44px!important; }
/* Saved-message filtering is a full touch row, not a tiny checkbox target. */
:root:root:root:root .chat-library__panel label:has(input[type=checkbox]) {
 display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 0;
 font:500 14px/1.4 var(--sans);cursor:pointer;
}
:root:root:root:root .chat-library__panel input[type=checkbox] {
 width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:0;accent-color:var(--em1);
}
/* Optional prompts stay secondary to the actual conversation. */
:root:root:root:root details.conversation-starters { display:block;margin:12px 0; }
:root:root:root:root details.conversation-starters > summary {
 min-height:44px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;
 color:var(--fg2);font:600 14px/1.4 var(--sans);cursor:pointer;list-style:none;
}
:root:root:root:root details.conversation-starters > summary span { font-weight:400;font-size:12px; }
:root:root:root:root details.conversation-starters > summary::after { content:'+';margin-left:auto;font-size:20px; }
:root:root:root:root details.conversation-starters[open] > summary::after { content:'−'; }
:root:root:root:root details.conversation-starters > summary::-webkit-details-marker { display:none; }
:root:root:root:root details.conversation-starters > .pill { display:block;width:fit-content;margin-top:8px;max-width:100%; }

/* Keep one visible explanation when an unavailable chat action is selected. */
:root:root:root:root .chat2col .chat-action-tray__note {
  display:block!important;min-height:0;margin:12px 2px 0;
  color:var(--fg2);font-size:12px;line-height:1.5;overflow-wrap:anywhere;
}

/* Follow the visible phone viewport when the software keyboard reduces it. */
@media (max-width:600px) {
  :root:root #pmwrap.pmwrap {
    top:var(--vvt,0px);bottom:auto;height:var(--vvh,100dvh);max-height:var(--vvh,100dvh);
    padding:10px;box-sizing:border-box;
  }
  :root:root #pmwrap .pmbox { max-height:calc(var(--vvh,100dvh) - 20px); }
  :root:root #pmwrap .pmbox.panel-open { height:calc(var(--vvh,100dvh) - 20px); }
  :root:root #pmwrap .pmbar { position:sticky;bottom:0;background:var(--sheet-ground);z-index:2; }
}

/* A library-wide error already explains these empty secondary shelves. */
:root:root .profile-page:has(.lead[role='alert']) .psec:has(> .prow2 > .mut):not(:has(> .prow2 > a, > .prow2 > button)) {
  display:none;
}
:root:root .profile-page .lead.profile-feed-empty { min-height:0;padding:20px 0;font-size:14px;line-height:1.5; }

/* Retained preview compatibility: the artwork no longer has a heading. */
:root:root .home-corner__top { display:none!important; }

/* Overall consistency pass: compact media, readable utility pages and phone reach. */
:root:root:root:root .post:not(.post--open) :is(.post__media-open,.post__locked,video.post__pic) {
  aspect-ratio:16/10;max-height:380px;
}
:root:root:root:root .post:not(.post--open) .post__media:has(> video) {
  display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:100%;grid-template-rows:minmax(0,1fr);
  gap:12px;aspect-ratio:16/10;max-height:380px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;
}
:root:root:root:root .post:not(.post--open) .post__media:has(> video) > :is(.post__media-open,video.post__pic) {
  width:100%;height:100%;min-height:0;aspect-ratio:auto;margin:0;object-fit:contain;border-radius:12px;grid-column:auto;grid-row:auto;scroll-snap-align:start;
}
:root:root:root:root .post:not(.post--open) .post__media:has(> video:only-child) { grid-template-columns:1fr; }
:root:root:root:root .nf .hero { grid-template-columns:1fr;gap:0; }
:root:root:root:root .nf-recent { display:none; }
:root:root:root:root .nf__tabs { margin-top:24px;gap:8px;flex-wrap:wrap; }
:root:root:root:root .nrow { gap:12px;padding-block:18px;align-items:center; }
:root:root:root:root .nrow__sub { font-size:11px;letter-spacing:.04em;line-height:1.5; }
:root:root:root:root .nrow__tm { font-size:12px;letter-spacing:0;white-space:nowrap; }
:root:root:root:root .flsettings .achead { margin-bottom:20px; }
:root:root:root:root .flsettings .settings-index { flex-wrap:nowrap;overflow-x:auto;gap:8px;scroll-padding-inline:8px; }
:root:root:root:root .flsettings .settings-index a { flex:0 0 auto; }
:root:root:root:root .flsettings :is(input,select,textarea) { max-width:100%;min-width:0; }
:root:root:root:root :is(.nf,.flsettings,.studio) :is(button,a,input,select,textarea) { -webkit-tap-highlight-color:transparent; }
:root:root:root:root :is(.nf,.flsettings,.studio) :is(button,a,input,select,textarea):focus-visible {
  outline:2px solid var(--em1);outline-offset:3px;
}
@media(max-width:640px) {
  :root:root:root:root .post:not(.post--open) :is(.post__media-open,.post__locked,video.post__pic) { aspect-ratio:1;max-height:360px; }
  :root:root:root:root .post:not(.post--open) .post__media:has(> video) { aspect-ratio:1;max-height:360px; }
  :root:root:root:root .post:not(.post--open) .post__media:has(> video) > :is(.post__media-open,video.post__pic) { aspect-ratio:auto; }
  :root:root:root:root :is(.nd-intro,.flai-intro) { min-height:132px;margin-bottom:16px;padding-top:16px; }
  :root:root:root:root :is(.nd-intro,.flai-intro) h1 { font-size:28px;margin-bottom:12px; }
  :root:root:root:root .flai-library { margin-top:12px; }
  :root:root:root:root .flsettings .settings-index { position:sticky;top:0;z-index:20;padding-block:10px; }
  :root:root:root:root .flsettings .pim { min-height:160px;height:160px;max-height:160px;aspect-ratio:auto; }
  :root:root:root:root .flsettings .pim-empty { padding-block:30px; }
  :root:root:root:root .flsettings .pbd { margin-top:0; }
  :root:root:root:root .nf__tabs { display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px; }
  :root:root:root:root .nf__tabs > * { flex:0 0 auto; }
  :root:root:root:root .nf__all { margin-inline-start:8px; }
  :root:root:root:root .nrow { display:grid;grid-template-columns:38px minmax(0,1fr);gap:4px 12px; }
  :root:root:root:root .nrow__ic { grid-row:1 / 3; }
  :root:root:root:root .nrow__tm { grid-column:2;color:var(--fg2); }
}
@media(prefers-reduced-motion:no-preference) and (hover:hover) {
  :root:root:root:root :is(.nrow,.settings-index a) { transition:background-color 140ms ease,color 140ms ease; }
  :root:root:root:root .nrow:hover { background:var(--s1); }
}

/* Profile and conversation controls follow the same spacing and focus rhythm. */
:root:root:root:root .chatfill > .cmchips { box-sizing:border-box;padding-inline:16px; }
:root:root:root:root .chat-library__panel { border-radius:16px;overscroll-behavior:contain;scrollbar-width:thin; }
:root:root:root:root .chat-library input[type=search] { font:400 16px/1.5 var(--sans); }
:root:root:root:root :is(.chatfill,.profile-page) :is(button,a,summary,input,textarea,[role=tab]):focus-visible {
  outline:2px solid var(--em1);outline-offset:3px;
}
:root:root:root:root .chatfill textarea { caret-color:var(--em1); }
:root:root:root:root .profile-actions > :is(button,details) { min-width:0; }
@media(max-width:640px) {
  :root:root:root:root .profile-page .profile-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start; }
  :root:root:root:root .profile-page .profile-actions > button,
  :root:root:root:root .profile-page .profile-extra-actions > summary {
    width:100%;box-sizing:border-box;min-height:44px;margin:0;justify-content:center;padding:10px 12px!important;
    font:600 14px/1.4 var(--sans);
  }
  :root:root:root:root .profile-page .profile-extra-actions > div { justify-content:flex-start; }
  :root:root:root:root .profile-page .profile-value { line-height:1.5!important;margin-block:12px; }
  :root:root:root:root .chat-library__panel { max-height:40dvh;padding:12px; }
}
@media(prefers-reduced-motion:no-preference) {
  :root:root:root:root .profile-actions > button:not(:disabled) { transition:background-color 140ms ease,transform 140ms ease; }
  :root:root:root:root .profile-actions > button:not(:disabled):active { transform:scale(.97); }
}

/* Creator publishing: visible format choices, compact supporting controls. */
:root:root:root:root #pmwrap .pm-kind-choice { display:flex;gap:8px;padding:12px 24px 0; }
:root:root:root:root #pmwrap .pm-kind-choice button { min-height:44px;padding:10px 24px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--fg2);font:600 14px/1.4 var(--sans);cursor:pointer; }
:root:root:root:root #pmwrap .pm-kind-choice button[aria-pressed=true] { background:var(--fg);color:var(--ink);border-color:var(--fg); }
:root:root:root:root #pmwrap .pmtop h2 { font-size:24px; }
:root:root:root:root #pmwrap .pm-publish-boundary { grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px; }
:root:root:root:root #pmwrap .pm-publish-boundary > i { display:none; }
:root:root:root:root #pmwrap .pm-publish-boundary > span { grid-column:1; }
:root:root:root:root #pmwrap .pm-access-choice { grid-column:2;grid-row:1;display:flex;gap:6px; }
:root:root:root:root #pmwrap .pm-publish-boundary > button { grid-column:1 / -1;background:transparent;color:var(--fg2);border-color:var(--line);min-height:44px;font-weight:500; }
:root:root:root:root #pmwrap :is(button,input,textarea):focus-visible { outline:2px solid var(--em1);outline-offset:3px; }
:root:root:root:root #pmwrap .pm-vault-grid button { min-width:0;overflow:hidden; }
:root:root:root:root #pmwrap .pm-vault-grid button > span:not(.pm-vault-thumb) { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
@media(max-width:640px) {
  :root:root:root:root #pmwrap .pm-kind-choice { padding-inline:18px; }
  :root:root:root:root #pmwrap .pm-publish-boundary { grid-template-columns:minmax(0,1fr); }
  :root:root:root:root #pmwrap .pm-access-choice { grid-column:1;grid-row:auto; }
  :root:root:root:root #pmwrap .pmrow textarea { font-size:17px;min-height:96px; }
}
@media(prefers-reduced-motion:no-preference) {
  :root:root:root:root #pmwrap .pm-kind-choice button { transition:background-color 140ms ease,color 140ms ease,transform 140ms ease; }
  :root:root:root:root #pmwrap .pm-kind-choice button:not(:disabled):active { transform:scale(.97); }
}

:root:root:root:root #pmwrap .pm-review-media { display:grid;grid-template-columns:minmax(0,1fr);gap:12px; }
:root:root:root:root #pmwrap .pm-review-thumb { width:100%;height:auto;min-width:0;aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--bg); }
:root:root:root:root #pmwrap .pm-review-thumb :is(img,video) { display:block;width:100%;height:100%;object-fit:contain; }
:root:root:root:root #pmwrap .pm-review-thumb:has(audio) { aspect-ratio:auto;padding:12px; }
:root:root:root:root #pmwrap .pm-review-thumb audio { width:100%; }
/* Keep publishing within reach even when a media review is taller than the screen. */
:root:root:root:root #pmwrap .pmbar { position:sticky;bottom:0;z-index:4;background:var(--sheet-ground); }
:root:root:root:root #pmwrap .pmbox { scroll-padding-block:80px 100px; }

/* Attachments stay visible while writing, rather than being reduced to file chips. */
:root:root:root:root #pmwrap .pmatt.on { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 24px 0; }
:root:root:root:root #pmwrap .pmatt .mea { display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;min-width:0;width:100%;overflow:hidden;border-radius:14px;background:var(--bg); }
:root:root:root:root #pmwrap .pmatt .mea:only-child { grid-column:1 / -1; }
:root:root:root:root #pmwrap .pm-attachment-preview { width:100%;height:160px;background:var(--bg);display:grid;place-items:center; }
:root:root:root:root #pmwrap .mea:only-child .pm-attachment-preview { height:220px; }
:root:root:root:root #pmwrap .pm-attachment-preview :is(img,video) { display:block;width:100%;height:100%;min-height:0;object-fit:contain; }
:root:root:root:root #pmwrap .pm-attachment-preview:has(audio) { height:auto;padding:12px; }
:root:root:root:root #pmwrap .pm-attachment-preview audio { width:100%;min-width:0; }
:root:root:root:root #pmwrap .pm-attachment-caption { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:8px;padding:6px 8px 6px 12px; }
:root:root:root:root #pmwrap .pm-attachment-caption .mn { max-width:100%;font-size:13px; }
:root:root:root:root #pmwrap .pm-attachment-caption .ms { grid-column:1;line-height:1.5;color:var(--fg2); }
:root:root:root:root #pmwrap .pm-attachment-remove { grid-column:2;grid-row:1 / 3;display:grid;place-items:center;min-width:44px;min-height:44px;background:transparent;border:0;color:var(--fg);cursor:pointer; }
:root:root:root:root #pmwrap .pm-attachment-remove svg { width:18px;height:18px; }
:root:root:root:root #pmwrap .pm-attachment-order { display:flex;align-items:center;flex-wrap:wrap;padding:0 8px 4px;border-top:1px solid var(--line); }
:root:root:root:root #pmwrap .pm-attachment-order button { min-height:44px;font-size:12px; }
:root:root:root:root #pmwrap #pmopts { justify-content:flex-start;gap:8px; }
@media(max-width:640px) {
 :root:root:root:root #pmwrap .pmatt.on { padding-inline:18px;gap:10px; }
 :root:root:root:root #pmwrap .pm-attachment-preview { height:120px; }
 :root:root:root:root #pmwrap .mea:only-child .pm-attachment-preview { height:180px; }
 :root:root:root:root #pmwrap .pmatt .mea:has(video) { grid-column:1 / -1; }
 :root:root:root:root #pmwrap .mea:has(video) .pm-attachment-preview { height:180px; }
}

/* Simple publishing controls match the same visual rhythm as the feed. */
:root:root:root:root #pmwrap .pmtop h2 { font-size:22px;line-height:1.25; }
:root:root:root:root #pmwrap .pmstate { font-size:12px; }
:root:root:root:root #pmwrap #pmopts .pm-simple-option { min-height:44px;font-size:13px;gap:7px; }
:root:root:root:root #pmwrap .pm-vault-grid button small { font-size:12px;letter-spacing:0; }
:root:root:root:root #pmwrap .pm-review-facts { gap:10px; }
:root:root:root:root #pmwrap .pm-review-facts dt { font-size:12px;line-height:1.5;letter-spacing:0; }
:root:root:root:root #pmwrap .pm-review-facts dd { font-size:14px;line-height:1.5; }
/* Visual stories retain their complete portrait composition, including edge text. */
:root:root:root:root .post--story .post__media-open img { object-fit:contain; }
:root:root:root:root .post--story.post--open .post__media-open {
  width:min(100%,360px);height:auto;aspect-ratio:9/16;max-height:none;margin-inline:auto;background:#111;
}
:root:root:root:root .post--story.post--open .post__media > video {
  width:min(100%,360px);height:auto;aspect-ratio:9/16;max-height:none;margin-inline:auto;object-fit:contain;background:#111;
}

/* Journey polish: keep work ahead of whitespace, and state changes readable. */
:root:root:root:root .post-checkout__details { margin-block:12px;border-block:1px solid var(--line); }
:root:root:root:root .post-checkout__details summary { cursor:pointer;min-height:44px;padding-block:12px;font:600 14px/1.5 var(--sans);color:var(--fg); }
:root:root:root:root .post-checkout__details summary:focus-visible { outline:2px solid var(--em1);outline-offset:2px; }
:root:root:root:root .post-checkout__details .memsub { overflow-wrap:anywhere;font-size:13px;line-height:1.5; }
:root:root:root:root .post-checkout .memh { text-transform:none;letter-spacing:-.025em; }
:root:root:root:root .studio .st-now .label { margin-bottom:0; }
:root:root:root:root .studio .st-quick--daily { margin-block:12px 16px;margin-inline:0; }
:root:root:root:root .studio .studio-workspace-nav { margin-block:8px 12px; }
:root:root:root:root .studio .stoday { margin-block:16px 24px; }
:root:root:root:root .studio :is(.studio-workspace-nav,.studio-content-nav) {
  scroll-padding-inline:4px;overscroll-behavior-x:contain;
}
:root:root:root:root .studio :is(.studio-workspace-nav,.studio-content-nav) a { scroll-margin-inline:8px; }
:root:root:root:root #pmwrap .pmupload { align-items:center;gap:12px; }
:root:root:root:root #pmwrap .pmupload-copy b { font-size:14px;line-height:1.45; }
:root:root:root:root #pmwrap .pmupload-copy small { font-size:13px;line-height:1.5;color:var(--fg2); }
:root:root:root:root #pmwrap .pmupload button { min-height:44px;flex-shrink:0; }
:root:root:root:root #pmwrap .pmupload-track { height:4px;margin-top:10px; }
:root:root:root:root :is(.studio,.flsettings,.more22,.wallet-later,.reference-account-records) :is(input,textarea,select) {
  scroll-margin-block:100px 120px;
}
:root:root:root:root :is(.studio,.flsettings,.more22,.wallet-later) :is(button,a):focus-visible {
  outline:2px solid var(--em1);outline-offset:3px;
}
@media(max-width:640px) {
  :root:root:root:root .studio > .hero { padding-block:8px 12px; }
  :root:root:root:root .studio > .hero .hero__lead { margin-block:8px 0;font-size:14px;line-height:1.5; }
  :root:root:root:root .studio .st-now { margin-top:12px;gap:8px 12px; }
  :root:root:root:root .studio .stoday { padding:12px;margin-top:12px; }
  :root:root:root:root .studio .stoday__acts { margin-top:12px;gap:8px; }
  :root:root:root:root .studio .stoday__acts > .stoday__act { min-height:76px;padding:10px; }
  :root:root:root:root #pmwrap .pmupload { flex-wrap:wrap; }
  :root:root:root:root #pmwrap .pmupload-copy { flex-basis:calc(100% - 48px); }
  :root:root:root:root #pmwrap .pmupload > button { margin-inline-start:auto; }
  :root:root:root:root :is(.flsettings,.studio,.wallet-later) :is(input,textarea,select) { font-size:16px; }
}
@media(prefers-reduced-motion:no-preference) {
  :root:root:root:root :is(.studio-workspace-nav,.studio-content-nav,.settings-index) a {
    transition:color 140ms ease,border-color 140ms ease,transform 140ms ease;
  }
  :root:root:root:root :is(.studio-workspace-nav,.studio-content-nav,.settings-index) a:active { transform:translateY(1px); }
  :root:root:root:root #pmwrap .pmupload-track > span { transition:transform 180ms ease-out; }
}

/* Full uploaded media, consistent frames: do not crop content to fill a card. */
:root:root:root:root .post :is(.post__pic,.inline-gallery__image,.inline-gallery__thumbs img) {
  object-fit:contain;object-position:center;background:var(--stage-media,#101010);
}
:root:root:root:root .post :is(.post__media-open,.inline-gallery__stage) {
  background:var(--stage-media,#101010);
}
:root:root:root:root .inline-gallery__thumbs button { min-width:64px;min-height:48px; }
:root:root:root:root .inline-gallery__footer { gap:12px; }
:root:root:root:root .inline-gallery__thumbs { padding:4px;scroll-padding-inline:4px; }
:root:root:root:root .inline-gallery__thumbs button:focus-visible { outline:2px solid var(--em1);outline-offset:1px; }
:root:root:root:root .mkc__im--shot { background-size:contain;background-repeat:no-repeat;background-position:center;background-color:var(--stage-media,#101010); }
@media(max-width:640px) {
  :root:root:root:root .inline-gallery__footer { align-items:center; }
  :root:root:root:root .inline-gallery__thumbs { flex:1 1 180px; }
  :root:root:root:root .inline-gallery__collapse { min-height:44px; }
}

/* Account tools and shared menus: readable hierarchy and reachable controls. */
:root:root:root:root .menu { max-height:min(520px,calc(100dvh - 16px));border-radius:16px;background:var(--sheet-ground); }
:root:root:root:root .menu__hd { padding:14px 16px 8px;font:600 13px/1.5 var(--sans);letter-spacing:0;color:var(--fg2); }
:root:root:root:root .menu__row { min-height:44px;padding:10px 16px; }
:root:root:root:root .menu__t { font:600 15px/1.45 var(--sans);letter-spacing:0;color:var(--fg2); }
:root:root:root:root .menu__row:is(:hover,.menu__row--active) { background:var(--s2); }
:root:root:root:root .menu__row:is(:hover,.menu__row--active) .menu__t { color:var(--fg); }
:root:root:root:root .menu__row--on .menu__t { color:var(--em1); }
:root:root:root:root .more22 .pabout { min-width:0; }
:root:root:root:root .more22 .morerow :is(.l,.n) { overflow-wrap:anywhere; }
:root:root:root:root .more22 .morerow > svg { flex:none;width:20px;height:20px; }
@media(min-width:1000px) {
 :root:root:root:root .more22:has(.moreseg) { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:20px;align-items:start; }
 :root:root:root:root .more22:has(.moreseg) > * { grid-column:1 / -1; }
 :root:root:root:root .more22:has(.moreseg) > section.pabout:nth-of-type(1) { grid-column:1; }
 :root:root:root:root .more22:has(.moreseg) > section.pabout:nth-of-type(2) { grid-column:2; }
 :root:root:root:root .more22:has(.moreseg) > section.pabout:nth-of-type(-n+2) { align-self:stretch;margin-top:24px; }
 :root:root:root:root .more22 .moreout { justify-self:start; }
}
@media(max-width:640px) {
 :root:root:root:root .more22 .morerow { display:grid;grid-template-columns:20px minmax(0,1fr) 20px;gap:4px 12px;padding-block:14px; }
 :root:root:root:root .more22 .morerow > svg:first-child { grid-column:1;grid-row:1;align-self:center; }
 :root:root:root:root .more22 .morerow .l { grid-column:2;grid-row:1; }
 :root:root:root:root .more22 .morerow .n { grid-column:2;grid-row:2;padding:0;text-align:start; }
 :root:root:root:root .more22 .morerow .c { grid-column:3;grid-row:1 / 3;align-self:center; }
}

/* Content-first rhythm across everyday social and creator surfaces. */
:root:root:root:root { --ui-page-title:32px; --ui-section-title:20px; }
:root:root:root:root :is(.home-title,.studio .headline,.more22 .headline,.mk .headline,.nf .headline,.fw .headline) {
 font-size:var(--ui-page-title);line-height:1.2;letter-spacing:-.03em;
}
:root:root:root:root :is(.studio,.mk,.nf,.fw,.more22) > .hero { margin-bottom:12px;gap:16px; }
:root:root:root:root .post:not(.post--open) { border-width:0 0 1px;border-style:solid;border-color:var(--line);border-radius:0;background:transparent;box-shadow:none;margin-bottom:0; }
:root:root:root:root .post:not(.post--open) .post__head { margin-bottom:8px; }
:root:root:root:root .post:not(.post--open) .posta { margin-top:8px; }
:root:root:root:root .fwrow { border-radius:0;border-bottom:1px solid var(--line);padding:16px 8px;gap:12px; }
:root:root:root:root .fwrow__av { width:44px;height:44px; }
:root:root:root:root .fwrow__nm { font-size:16px; }
:root:root:root:root .nrow { padding-block:16px;border-radius:0; }
:root:root:root:root .studio > .hero { padding-block:8px 12px; }
:root:root:root:root .studio .studio-workspace-nav { margin-block:0 8px; }
:root:root:root:root .studio .studio-content-nav { margin-bottom:12px; }
:root:root:root:root .studio .st-quick--daily { margin-block:4px 12px; }
:root:root:root:root .studio[data-workspace=content] .st-quick--daily a[href='#studio-publishing'] { display:none; }
:root:root:root:root .studio-posts-part > .st-sec { padding-top:12px;margin-top:0;margin-bottom:12px; }
:root:root:root:root .studio-posts-part > .st-tabs { gap:6px;margin-block:0 12px; }
:root:root:root:root .studio-posts-part > .st-tabs .pill:not([aria-selected=true]) { border-color:transparent;background:transparent; }
:root:root:root:root .sdk__post-search { position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:12px 0 16px; }
:root:root:root:root .sdk__post-search > label { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
:root:root:root:root .sdk__post-search > .st-mut { margin:0;padding:0;white-space:nowrap;font-size:13px; }
:root:root:root:root .sdk__perf { gap:0;margin-top:0; }
:root:root:root:root .sdk__perf-row { padding:16px 4px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;gap:12px; }
:root:root:root:root .sdk__perf-main { gap:6px; }
:root:root:root:root .sdk__perf-main .who { display:block;overflow:visible;-webkit-line-clamp:unset; }
:root:root:root:root .sdk__metrics { gap:4px 12px; }
:root:root:root:root .sdk__post-acts { gap:6px; }
:root:root:root:root .sdk__post-acts .pill { padding-inline:12px; }
:root:root:root:root :is(.sdk__perf-main,.fwrow__who):focus-visible { outline:2px solid var(--em1);outline-offset:4px;border-radius:4px; }
@media(hover:hover) {
 :root:root:root:root :is(.sdk__perf-row,.fwrow):hover { background:var(--s1); }
 :root:root:root:root .studio-posts-part > .st-tabs .pill:not([aria-selected=true]):hover { background:var(--s2); }
}
@media(max-width:640px) {
 :root:root:root:root { --ui-page-title:28px; }
 :root:root:root:root .studio .hero__lead { font-size:13px;line-height:1.5; }
 :root:root:root:root .studio .studio-workspace-nav { gap:14px; }
 :root:root:root:root .studio .studio-workspace-nav a { font-size:14px; }
 :root:root:root:root .studio .studio-content-nav { margin-bottom:8px; }
 :root:root:root:root .studio[data-workspace=content] .st-quick--daily { display:flex;justify-content:flex-start;gap:8px; }
 :root:root:root:root .studio[data-workspace=content] .st-quick--daily .pill { padding-inline:16px;min-height:44px; }
 :root:root:root:root .sdk__post-search { grid-template-columns:minmax(0,1fr);gap:6px; }
 :root:root:root:root .sdk__perf-row { padding-block:14px;gap:8px; }
 :root:root:root:root .sdk__post-acts { padding-top:4px;border-top:0; }
 :root:root:root:root .sdk__post-acts .pill { min-height:44px; }
}
@media(prefers-reduced-motion:no-preference) {
 :root:root:root:root :is(.sdk__perf-row,.fwrow) { transition:background-color 140ms ease; }
}

/* Social actions occupy the media width, with a predictable target per action. */
:root:root:root:root .post .posta:not(.reel-actions) {
 display:flex;justify-content:space-between;align-items:center;gap:4px;min-height:48px;
}
:root:root:root:root .post .posta:not(.reel-actions) > .pact {
 flex:0 1 auto;min-width:44px;min-height:44px;padding:8px;border-radius:12px;gap:6px;
}
:root:root:root:root .post .posta .pcount { font-size:12px;font-variant-numeric:tabular-nums; }
:root:root:root:root .post .posta > .pact:focus-visible {
 outline:2px solid var(--em1);outline-offset:2px;background:var(--s2);
}
:root:root:root:root .post .posta > .pact[aria-pressed=true] { color:var(--em1); }
:root:root:root:root .post .posta > .pact[aria-disabled=true] { cursor:not-allowed; }
:root:root:root:root :is(.home-tab,.fdtabs .pill,.studio-content-nav a):focus-visible {
 outline:2px solid var(--em1);outline-offset:-3px;border-radius:8px;
}
:root:root:root:root :is(.fdtabs,.studio-content-nav) { scroll-padding-inline:12px; }
@media(hover:hover) {
 :root:root:root:root .post .posta > .pact:not([aria-disabled=true]):hover { background:var(--s2);color:var(--em1); }
}
@media(prefers-reduced-motion:no-preference) {
 :root:root:root:root .post .posta > .pact { transition:background-color 140ms ease,color 140ms ease,transform 140ms ease-out; }
 :root:root:root:root .post .posta > .pact:not([aria-disabled=true]):active { transform:scale(.94); }
}

/* One task at a time: the publishing review replaces the editing preview. */
:root:root:root:root #pmwrap .pmbox:has(.pm-review) > :is(.pmrow,.pmatt,.pmchipwrap) { display:none; }
:root:root:root:root #pmwrap .pmbox:has(.pm-review) > .pm-publish-boundary:not(.legacy) { display:none; }
:root:root:root:root #pmwrap .pm-review { padding-block:8px; }
:root:root:root:root #pmwrap .pm-review-facts { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px;row-gap:8px; }
:root:root:root:root #pmwrap .pm-review-facts dd { text-align:end;margin:0;overflow-wrap:anywhere; }
:root:root:root:root #pmwrap .pm-access-choice { display:flex;gap:6px; }
:root:root:root:root #pmwrap .pm-access-choice button { min-height:44px;min-width:64px;font-size:14px; }
:root:root:root:root #pmwrap .pmbar { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
/* Matching action sizes and readable supporting states across profiles. */
:root:root:root:root .profile-actions { align-items:stretch;gap:8px; }
:root:root:root:root .profile-actions > :is(button,a) { min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1.3; }
:root:root:root:root :is(.ndempty,.flai-empty,.profile-feed-empty,.route-error,.bookmarks-empty) {
 box-sizing:border-box;max-width:100%;padding:28px 20px;border-radius:12px;overflow-wrap:anywhere;
}
:root:root:root:root :is(.ndempty__b,.flai-empty p,.profile-feed-empty p,.route-error p,.bookmarks-empty p) { max-width:48ch;margin-inline:auto;font-size:14px;line-height:1.6; }
:root:root:root:root :is(.ndretry,.flai-empty button,.profile-feed-empty button,.route-error button,.bookmarks-empty button) { min-height:44px;padding-inline:18px;margin-top:12px; }
:root:root:root:root .chat-action-tray { scrollbar-width:thin;scrollbar-color:var(--fg3) transparent; }
:root:root:root:root .chat-action-tray__head { position:sticky;top:-16px;z-index:2;padding-block:8px;background:var(--sheet-ground); }
@media(max-width:640px) {
 :root:root:root:root :is(.nd-intro,.flai-intro) { min-height:0;padding-top:12px;margin-bottom:16px; }
 :root:root:root:root :is(.nd-intro,.flai-intro) h1 { font-size:26px;line-height:1.2;margin-bottom:8px; }
 :root:root:root:root :is(.nd-intro,.flai-intro) p { font-size:13px;line-height:1.5; }
 :root:root:root:root :is(.ndcats,.flai-categories) { scroll-padding-inline:8px;overscroll-behavior-inline:contain; }
 :root:root:root:root .profile-actions > :is(button,a) { flex:1 1 auto; }
 :root:root:root:root .chat-action-tray { max-height:min(60dvh,440px); }
 :root:root:root:root #pmwrap .pm-review-facts { column-gap:12px; }
 :root:root:root:root :is(.nd-creators,.flai-inner) { padding-bottom:calc(88px + env(safe-area-inset-bottom)); }
}
:root:root:root:root #pmwrap .pmbox:has(.pm-review) #pmopts > :not(.pm-review-option),
:root:root:root:root #pmwrap .pmbox:has(.pm-review) #pm-more-options { display:none!important; }
:root:root:root:root #pmwrap .pm-review-thumb { max-height:240px; }
@media(max-width:640px) {
 :root:root:root:root #pmwrap .pm-review-thumb { max-height:190px; }
}
/* Reserve the same portrait and copy space while discovery is loading. */
:root:root:root:root .flai-grid > .flai-skeleton { min-height:0; }
:root:root:root:root .flai-grid > .flai-skeleton::before { content:'';display:block;flex:none;width:100%;aspect-ratio:4/5;background:var(--s2); }
:root:root:root:root .flai-grid > .flai-skeleton::after { content:'';display:block;position:static;flex:none;height:174px;border:0;opacity:1;background:var(--s1); }
@media(max-width:900px) { :root:root:root:root .flai-grid > .flai-skeleton::after { height:162px; } }
@media(min-width:1241px) {
 :root:root:root:root .chat2col .chat-action-tray { position:fixed;inset:100px 20px auto auto;width:320px;height:auto;max-height:calc(100dvh - 124px);z-index:60; }
}

/* Live: browse first; creator management is its own deliberate destination. */
:root:root:root:root .fllive { max-width:960px;margin-inline:auto;padding-bottom:32px; }
:root:root:root:root .fllive .mhero { display:block;padding-top:12px; }
:root:root:root:root .fllive .headline { font-size:36px;line-height:1.15;letter-spacing:-.03em; }
:root:root:root:root .fllive .fllv-lead { font-size:16px;line-height:1.6;margin-top:10px;max-width:48ch; }
:root:root:root:root .live-tabs { display:flex;gap:4px;width:fit-content;max-width:100%;margin:28px 0 0;padding:4px;border:1px solid var(--line);border-radius:99px; }
:root:root:root:root .live-tabs button { min-height:44px;padding:10px 22px;display:flex;gap:8px;align-items:center;justify-content:center;border:0;border-radius:99px;background:transparent;color:var(--fg2);font:600 14px/1.25 var(--sans);white-space:nowrap;cursor:pointer; }
:root:root:root:root .live-tabs button[aria-selected=true] { background:var(--cap-on-bg,#fff);color:var(--on-action-ink,#080808); }
:root:root:root:root .live-tabs button:focus-visible { outline:2px solid var(--em1);outline-offset:3px; }
:root:root:root:root .live-dot { flex:none;width:8px;height:8px;border-radius:50%;background:var(--em1); }
:root:root:root:root .fllive [data-lsec=air] { display:none; }
:root:root:root:root .live-welcome { min-height:330px;padding:32px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-sizing:border-box; }
:root:root:root:root .live-welcome__mark { width:96px;height:96px;margin-bottom:20px; }
:root:root:root:root .live-welcome__mark img { display:block;width:100%;height:100%;object-fit:contain; }
:root:root:root:root .live-welcome h2 { font:700 24px/1.3 var(--sans);letter-spacing:-.025em;margin:0 0 8px;color:var(--fg); }
:root:root:root:root .live-welcome p { max-width:43ch;font:400 15px/1.6 var(--sans);color:var(--fg2);margin:0; }
:root:root:root:root .live-welcome__actions { display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px; }
:root:root:root:root .live-welcome__actions .pill { min-height:44px;padding-inline:22px; }
:root:root:root:root .live-welcome__actions .pill--on { background:var(--ember);color:#fff;border-color:transparent; }
:root:root:root:root .live-create { width:100%;display:flex;align-items:center;gap:16px;padding:20px;text-align:left;background:var(--s1);color:var(--fg);border:1px solid var(--line);border-radius:16px;cursor:pointer; }
:root:root:root:root .live-create__icon { display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:50%;background:var(--ember);color:white;font:400 32px/1 var(--sans); }
:root:root:root:root .live-create > span:nth-child(2) { flex:1;min-width:0; }
:root:root:root:root .live-create b { display:block;font:700 18px/1.4 var(--sans); }
:root:root:root:root .live-create small { display:block;margin-top:3px;color:var(--fg2);font:400 13px/1.5 var(--sans); }
:root:root:root:root .live-create > svg { flex:none; }
:root:root:root:root .live-create:focus-visible { outline:2px solid var(--em1);outline-offset:4px; }
:root:root:root:root .fllive .psec2 { margin:20px 0 12px;padding-top:16px; }
:root:root:root:root .fllive .psec2 .t { font:600 16px/1.4 var(--sans);letter-spacing:0;text-transform:none; }
:root:root:root:root .fllive .fllv-note { padding:20px 0;font:400 15px/1.6 var(--sans); }
:root:root:root:root .fllive .fllv-card { width:100%;margin:0;padding:16px;gap:12px;min-height:88px;border-bottom:1px solid var(--line);border-radius:12px;animation:none; }
:root:root:root:root .fllive .fllv-bd { min-width:0; }
:root:root:root:root .fllive .fllv-bd b { font-size:16px;overflow-wrap:anywhere; }
:root:root:root:root .fllive .fllv-bd > span { font-size:13px; }
:root:root:root:root .fllive .fllv-blocker { margin-top:24px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--s1);font-size:14px; }
:root:root:root:root .live-loading { display:flex;align-items:center;justify-content:center;gap:12px;min-height:330px;color:var(--fg2); }
@media(max-width:640px) {
 :root:root:root:root .fllive { padding-bottom:calc(88px + env(safe-area-inset-bottom)); }
 :root:root:root:root .fllive .headline { font-size:30px; }
 :root:root:root:root .live-tabs { width:100%;box-sizing:border-box; }
 :root:root:root:root .live-tabs button { flex:1;padding-inline:10px;font-size:13px; }
 :root:root:root:root .live-welcome { min-height:340px;padding:28px 8px; }
 :root:root:root:root .live-welcome h2 { font-size:22px; }
 :root:root:root:root .live-welcome__mark { width:80px;height:80px; }
 :root:root:root:root .live-create { gap:12px;padding:16px; }
 :root:root:root:root .live-create__icon { width:44px;height:44px; }
}
@media(hover:hover) {
 :root:root:root:root :is(.live-create,.fllive button.fllv-card):hover { background:var(--s2); }
}
@media(prefers-reduced-motion:no-preference) {
 :root:root:root:root .live-create { transition:background-color 150ms ease,transform 150ms ease-out; }
 :root:root:root:root .live-create:active { transform:scale(.99); }
 :root:root:root:root .live-loading .live-dot { animation:live-dot-breathe 1s ease-in-out infinite alternate; }
 @keyframes live-dot-breathe { to { transform:scale(1.4); } }
}
:root:root:root:root .fllive .mhero { position:relative; }
:root:root:root:root .fllive .mhero::after { content:'';position:absolute;right:0;top:0;width:160px;height:110px;background:url('/brand/live/streak.png') center/contain no-repeat;pointer-events:none; }
:root:root:root:root .live-welcome__mark { position:relative; }
:root:root:root:root .live-welcome__mark::before { content:'';position:absolute;inset:-8px -44px;background:url('/brand/live/sparks.png') center/contain no-repeat;pointer-events:none; }
:root:root:root:root .live-welcome__mark img { position:relative; }
@media(max-width:640px) { :root:root:root:root .fllive .mhero::after { width:76px;height:58px;top:-4px; } }

/* Preserved source: /_build/discover-phone-20260921-v2.css */
/* Approved September 21 refinement of the existing site, not the Slushy lab.
   Shared rhythm and controls; media, permissions and transaction state stay
   with their existing owners. Keep this after the historical canvas layers. */
:root:root {
  --em1: #ff2d6f;
  --em2: #ff2d6f;
  --ember: linear-gradient(118deg, #ff2d6f 0%, #ff2d6f 55%, #ff2d6f 100%);
  --em1-pressed: #e31b5c;
  --em2-pressed: #e31b5c;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --page-gutter: 24px;
  --panel-radius: 16px;
  --sans: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', Arial, sans-serif;
  --text: var(--sans);
  --display: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Helvetica Neue', Arial, sans-serif;
  --serif: var(--sans);
  --house-press-duration: 160ms;
  --house-panel-duration: 220ms;
  --house-exit-duration: 160ms;
}
:root:root:not([data-mode='paper']):not([data-mode='grey']) {
  --fg2: #b7b5bc;
  --fg3: #a19ea7;
  --line: #28262b;
}
:root:root[data-mode='grey'] { --fg2: #d0cdd4; --fg3: #b4b0bb; }
:root:root[data-mode='paper'] { --fg2: #514c56; --fg3: #655f69; }

/* One readable hierarchy on feed, directory, account, creator and legal pages. */
:root:root :is(.home-title, .headline, .profile-name, .conversation-pane-title) {
  font-family: var(--display);
  font-weight: 800;
  letter-spacing: -.035em;
  line-height: 1.15;
}
:root:root :is(.home-title, .headline:not(.headline--detail, .headline--prompt)) {
  font-size: clamp(32px, 3.2vw, 44px);
}
:root:root :is(.home-discover h2, .home-corner__top > span, .sheet h2, .flsettings .cap) {
  font-family: var(--display);
  font-weight: 750;
  letter-spacing: -.025em;
  line-height: 1.25;
}
:root:root :is(.post__text, .profile-bio, .profile-editorial-about p) {
  font-family: var(--sans) !important;
  font-size: 16px !important;
  font-style: normal !important;
  line-height: 1.55 !important;
}
:root:root :is(.post__handle, .post__time, .post__metadata, .home-discover__words > span) {
  color: var(--fg2);
  font-size: 13px;
  line-height: 1.45;
}
:root:root :is(.headline, .achead, .nd-intro, .sthead) { margin-bottom: var(--space-6); }
:root:root .headline--prompt { margin-bottom: var(--space-3); }
:root:root :is(.acsec, .account-records__section) { padding-block: var(--space-6); }
:root:root :is(.flsettings .orow, .sheet__actions, .inline-profile-editor__actions) { gap: var(--space-4); }
:root:root :is(.ndgrid, .flai-grid) { gap: var(--space-4); }
:root:root .flsettings .pbd > .cap { margin-top: var(--space-6); }
:root:root :is(.nd-intro, .flai-intro) { padding-bottom: 0; }
:root:root :is(.nd-intro, .flai-intro) p { margin: 0 0 24px; font: 400 16px/1.55 var(--sans); color: var(--fg2); }
:root:root :is(.ndmode, .flai-mode) { box-sizing: border-box; min-height: 52px; padding: 3px; gap: 4px; }
:root:root :is(.ndmode, .flai-mode) > button { min-height: 44px; font: 600 14px/1.3 var(--sans); }
:root:root :is(.flai-tools, .ndmode-wrap) { margin-top: 0; }
:root:root :is(.flai-search, .nd__srch) { min-height: 48px; }

/* Capsule arrows have real inset. No negative margins or hover travel can
   push the signature outside its parent's hit target. */
:root:root .pill:has(> .pill__signature) {
  box-sizing: border-box;
  min-height: 48px;
  height: auto;
  padding: 7px 7px 7px 20px;
  gap: 12px;
}
:root:root .pill > .pill__signature {
  display: inline-grid;
  position: static;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  min-width: 32px;
  margin: 0;
  border-radius: 50%;
  background: var(--ember);
  color: #121014;
  -webkit-text-fill-color: #121014;
  place-items: center;
  overflow: hidden;
}
:root:root .pill > .pill__signature :is(.ti, svg) {
  width: 18px;
  height: 18px;
  font-size: 18px;
  line-height: 18px;
  transform: none;
}
:root:root .rail__post > .pill__signature { margin-left: auto; }
:root:root .pill[aria-disabled='true'] > .pill__signature { background: var(--g08); color: var(--fg2); -webkit-text-fill-color: currentColor; }
:root:root .home-compose .home-compose__new {
  min-width: 108px;
  background: var(--cap-on-bg);
  color: var(--on-action-ink);
  -webkit-text-fill-color: currentColor;
}
:root:root :is(.pill, .w19pill, .w19open, .home-tab) { min-height: 44px; }
:root:root .topbar__create { background: var(--ember); color: #121014; }
:root:root :is(button, a, input, textarea, select, summary):focus-visible {
  outline: 2px solid var(--fg);
  outline-offset: 3px;
}

/* Same story geometry; seen state is both thinner and quieter. */
:root:root .home-stories { gap: 16px; padding-block: 8px 24px; }
:root:root .home-stories__item { gap: 8px; min-width: 64px; }
:root:root .home-stories__label { font: 500 13px/1.4 var(--sans); color: var(--fg2); }
:root:root .home-stories__ring { background: var(--ember); }
:root:root .home-stories__item--read .home-stories__ring { background: var(--fg3); padding: 1px; }
:root:root .home-stories__portrait > img { object-fit: cover; object-position: center 25%; }
:root:root .home-stories__self .home-stories__ring { background: var(--line); }

/* Keep feed, composer and supporting column on one rhythm. */
:root:root .shell--home-art .home-compose { padding: 12px; gap: 12px; margin-bottom: 24px; border-radius: var(--panel-radius); }
:root:root .shell--home-art .post { padding: 16px 16px 8px; margin-bottom: 24px; border-radius: var(--panel-radius); }
:root:root .shell--home-art .post__head { gap: 12px; }
:root:root .shell--home-art .home-discover { margin-top: 24px; padding: 16px; border: 0; }
:root:root .home-discover__row { padding-block: 16px; }
:root:root .home-aside__links, :root:root .home-aside__brand,
:root:root .profile-editorial-about:has(+ .home-corner) { border-block: 0; }

/* The old release pinned this tray open, even on phones. Its existing state
   owner now controls disclosure again; requests stay behind the + button. */
:root:root:root .chat2col .chat-action-plus { display: grid; margin: 0; }
:root:root:root .chat2col .tdockin { position: relative; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 8px; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) textarea { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) .tsendb { grid-column: 3; grid-row: 1; }
:root:root:root .chat2col .tbar:has(.chat-action-plus):has(.tcost) { grid-template-columns: 44px minmax(0, 1fr) auto 44px; }
:root:root:root .chat2col .tbar:has(.chat-action-plus) .tcost { grid-column: 3; grid-row: 1; }
:root:root:root .chat2col .tbar:has(.chat-action-plus):has(.tcost) .tsendb { grid-column: 4; }
:root:root:root .chat2col .chat-action-tray {
  position: absolute; inset: auto 0 calc(100% + 8px);
  width: 100%; height: auto; max-height: min(60dvh, 480px);
  margin: 0; padding: 16px; overflow-y: auto; overscroll-behavior: contain;
  border: 1px solid var(--line); border-radius: 16px;
  background: var(--rise); box-shadow: 0 12px 36px #0005; z-index: 30;
}
:root:root:root .chat2col .chat-action-tray[hidden] { display: none !important; }
:root:root:root .chat2col .chat-action-tray__head { display: flex; }
:root:root:root .chat2col .chat-action-tray__close { display: grid; place-items: center; min-width: 44px; min-height: 44px; }
:root:root:root .chat2col .chat-action-tray__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
:root:root:root .chat2col .chat-action-tray__action { min-width: 0; min-height: 64px; }
@media (min-width: 1280px) {
  :root:root:root .chat2col:has(.chat-action-tray) { padding-right: 0; }
}

@media (min-width: 1241px) {
  /* Shared rail width: no route-specific jump when leaving Home. */
  :root:root { --railw: 248px; --midgap: 32px; }
  :root:root .shell--home-art { padding-left: var(--railw); padding-right: 24px; }
  :root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0, 1fr) minmax(260px, 320px); gap: 32px; }
  :root:root .shell--home-art .shell__main { padding-left: 24px; padding-top: 24px; }
  :root:root .shell--home-art .home-aside { padding-top: 24px; }
  :root:root .rail .rail__item--on { background: linear-gradient(118deg, #ff2d6f2b, #ff2d6f1a 60%, #ff2d6f10); color: var(--fg); }
  :root:root .rail .rail__item--on :is(b, .rail__ico) { color: var(--fg); }
  :root:root .rail__group + .rail__group { border-top-color: transparent; }
  :root:root :is(.nd-creators, .flai-inner) { padding-inline: var(--page-gutter); }
}
@media (max-width: 1240px) {
  :root:root { --page-gutter: 16px; }
  :root:root .shell--home-art .home-title { margin-inline: 0; }
  :root:root .shell--home-art .home-compose { margin-inline: 0; padding: 8px; gap: 8px; }
  :root:root .home-compose .home-compose__new { min-width: 88px; padding-left: 12px; gap: 8px; }
  :root:root .shell--home-art .home-compose .account-link { width: 36px; height: 36px; flex: 0 0 36px; }
  :root:root .shell--home-art .home-stories { padding-inline: 0; }
  :root:root .shell--home-art .post { padding: 16px 12px 8px; margin-bottom: 16px; }
  :root:root :is(.sheet, .chat-action-tray) { border-radius: 16px; }
  :root:root :is(.sheet, .flsettings, .chat-request) :is(input:not([type='checkbox'],[type='radio'],[type='range']), textarea, select) { font-size: 16px; }
  :root:root .fltoast { bottom: calc(88px + env(safe-area-inset-bottom) + var(--kb, 0px)); }
}

/* Interaction-only motion. Existing owners manage presence, focus and real
   success; these rules never manufacture a success or replay an entire feed. */
@media (prefers-reduced-motion: no-preference) {
  :root:root :is(.pill, .home-compose__media, .topbar__create, .home-stories__item) {
    transition: scale 160ms cubic-bezier(.2,.8,.2,1), background-color 160ms ease, border-color 160ms ease;
  }
  :root:root :is(.pill, .home-compose__media, .topbar__create, .home-stories__item):not([aria-disabled='true'],[aria-busy='true'],:disabled):active { scale: .97; }
  :root:root [data-motion-panel='menu'] { transform-origin: top right; }
  :root:root .fltoast { translate: 0 8px; transition: translate 220ms cubic-bezier(.2,.8,.2,1), opacity 160ms ease; }
  :root:root .fltoast.on { translate: 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  :root:root :is(.pill, .home-compose__media, .topbar__create, .home-stories__item, .fltoast, [data-motion-panel]) {
    transition: none !important;
    animation: none !important;
    scale: none !important;
    translate: none !important;
  }
}

/* Approved mockup fidelity: the application shell is one shared component,
   including selected, pressed, short-screen and authenticated create states. */
:root:root .pill:has(> .pill__signature) { overflow: hidden; max-width: 100%; }
:root:root .pill > .pill__signature { rotate: none !important; translate: none; transform: none; }
:root:root .rail__post.pill {
  display: grid; grid-template-columns: minmax(0, 1fr) 40px;
  width: 100%; min-width: 0; min-height: 58px; padding: 8px 8px 8px 22px;
  gap: 12px; text-align: left; font-size: 20px;
  background: var(--cap-on-bg); color: var(--on-action-ink);
}
:root:root .rail__post.pill > .navigation-icon { display: none; }
:root:root .rail__post.pill > .pill__signature {
  width: 40px; height: 40px; min-width: 40px; margin: 0; justify-self: end;
}
:root:root .rail__post.pill > .pill__signature .ti { font-size: 22px; width: 22px; height: 22px; line-height: 22px; }
:root:root :is(.post__relationship, .home-discover__row .post__relationship) {
  gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid var(--line);
  background: var(--s0); color: var(--fg); font-weight: 500;
}
:root:root .post__relationship .relationship-mark {
  width: 22px; height: 22px; color: var(--em1); stroke-width: 2.5;
}
:root:root .post__relationship[aria-pressed='true'] {
  border-color: color-mix(in srgb, var(--em1) 45%, var(--line));
  background: color-mix(in srgb, var(--em1) 10%, var(--s0));
}
:root:root .post__relationship[aria-disabled='true'] .relationship-mark { color: var(--fg2); }

@media (min-width: 1241px) {
  :root:root { --railw: clamp(300px, 24.74vw, 380px); --navh: 110px; --midgap: 28px; }
  :root:root .topbar { height: var(--navh); padding: 24px 28px 24px 40px; }
  :root:root .topbar__mark { width: 244px; flex-basis: 244px; }
  :root:root .topbar__mark .wordmark { width: 244px !important; max-width: 100%; }
  :root:root .topbar .quick-search { max-width: 734px; }
  :root:root .topbar .quick-search__field { height: 54px; padding-inline: 18px; background: linear-gradient(125deg, #ffffff07, #ffffff02); }
  :root:root .topbar .quick-search__field input { height: 52px; font-size: 18px; }
  :root:root .topbar__create { width: 54px; height: 54px; color: #fff; font-size: 30px; }
  :root:root .rail {
    display: flex; flex-direction: column; padding: 124px 26px 24px 30px;
    width: var(--railw); height: 100dvh; gap: 18px; border-right: 1px solid var(--line);
  }
  :root:root .rail.rail--suppressed { display: none; }
  :root:root .rail__scroll {
    position: static; inset: auto; flex: 1 1 auto; width: 100%; max-width: none;
    min-height: 0; padding: 0; overflow-x: hidden; overflow-y: auto; scrollbar-width: thin;
  }
  :root:root .rail__list { width: 100%; }
  :root:root .rail .rail__item {
    height: clamp(38px, calc((100dvh - 266px) / 13), 58px);
    padding: 0 20px; gap: 20px; border: 1px solid transparent; border-radius: 999px;
    background: transparent; box-shadow: none; color: var(--fg);
  }
  :root:root .rail .rail__item > b { font: 500 20px/1.2 var(--sans); color: inherit; -webkit-text-fill-color: currentColor; }
  :root:root .rail .rail__item .rail__ico,
  :root:root .rail .rail__item .rail__ico svg { width: 28px; height: 28px; color: var(--fg); }
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) {
    background: linear-gradient(110deg, #a5445ab3 0%, #282024 40%, #4b252f 100%);
    border-color: #b9516a; box-shadow: inset 0 1px 0 #ffb0c424;
    color: #fff;
  }
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) > b { color: #fff; font-weight: 650; }
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico,
  :root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico svg { color: #ff6497; }
  :root:root .rail__group + .rail__group { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
  :root:root .rail__anchor {
    position: static; inset: auto; width: 100%; flex: 0 0 auto;
    margin: 0; padding: 0; border: 0; background: transparent;
  }
  :root:root .shell--home-art { padding-top: var(--navh); }
  :root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0, 1fr) clamp(270px, 17.58vw, 320px); gap: 28px; }
  :root:root .shell--home-art .shell__main { padding-top: 12px; }
  :root:root .shell--home-art .home-title { font-size: 56px; line-height: 1.15; margin: 0 6px 12px; }
  :root:root .shell--home-art .home-tab { height: 56px; font-size: 20px; }
  :root:root .home-stories { --story-size: 100px; gap: 16px; padding: 16px 10px 28px; }
  :root:root .home-stories__label { font-size: 16px; color: var(--fg); }
  :root:root .shell--home-art .home-compose { min-height: 92px; padding: 12px; border-radius: 28px; }
  :root:root .shell--home-art .home-compose .account-link { width: 64px; height: 64px; flex: 0 0 64px; }
  :root:root .home-compose__field { min-height: 64px; background: linear-gradient(140deg, #ffffff06, #ffffff02); }
  :root:root .home-compose__field .home-compose__prompt { font-size: 18px; }
  :root:root .home-compose .home-compose__new { justify-content: space-between; min-height: 58px; padding: 8px 8px 8px 26px; min-width: 150px; font-size: 20px; gap: 20px; }
  :root:root .home-compose .home-compose__new > .pill__signature { width: 40px; height: 40px; min-width: 40px; flex-basis: 40px; }
  :root:root .shell--home-art .post { padding: 20px 16px 8px; border-radius: 24px; }
  :root:root .post__head { gap: 18px; }
  :root:root .post__head > :is(.account-link, .post__av) { width: 72px; height: 72px; flex: 0 0 72px; }
  :root:root .post__head .post__av { border-radius: 50%; overflow: hidden; }
  :root:root .post__head .post__who { display: block; }
  :root:root .post__nm { display: block; }
  :root:root .post__name { font-size: 20px; }
  :root:root .post__chan { display: block; font-size: 16px; color: var(--fg2); }
  :root:root .post__metadata { display: flex; margin-top: 5px; }
  :root:root .shell--home-art .post__text { font-size: 20px !important; }
  :root:root .post__relationship { min-height: 52px; font-size: 18px; }
  :root:root .shell--home-art .home-aside { padding-top: 0; }
  :root:root .home-aside > .home-corner { height: 710px; aspect-ratio: auto; border-radius: 24px; }
  :root:root .home-corner__top { top: 24px; left: 22px; right: 12px; }
  :root:root .home-corner__top > span { font-size: 30px; white-space: nowrap; }
  :root:root .home-corner__art { top: 74px; }
  :root:root .home-corner__poem { bottom: 28px; left: 22px; font-size: 20px; }
  :root:root .shell--home-art .home-discover { border: 1px solid var(--line); border-radius: 24px; padding: 22px; }
  :root:root .home-discover > header { flex-wrap: wrap; gap: 4px; }
  :root:root .home-discover h2 { flex: 0 0 100%; font-size: 28px; white-space: nowrap; }
  :root:root .home-discover__row { flex-wrap: wrap; gap: 12px; }
  :root:root .home-discover__words { min-width: 0; }
}
@media (min-width: 1241px) and (max-height: 800px) {
  :root:root .rail { padding-top: 116px; padding-bottom: 16px; gap: 12px; }
  :root:root .rail .rail__item { height: 38px; }
  :root:root .rail .rail__item > b { font-size: 18px; }
  :root:root .rail__group + .rail__group { margin-top: 6px; padding-top: 6px; }
}
@media (min-width: 1241px) and (max-width: 1399px) {
  :root:root .rail { padding-inline: 20px; }
  :root:root .rail .rail__item { gap: 14px; padding-inline: 16px; }
  :root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0, 1fr) 250px; gap: 20px; }
  :root:root .home-compose .home-compose__new { min-width: 122px; padding-left: 16px; gap: 12px; }
}
@media (max-width: 1240px) {
  :root:root .post__relationship { padding-inline: 12px; gap: 6px; }
  :root:root .post__relationship .relationship-mark { width: 20px; height: 20px; }
}

/* Phone creation, compact navigation and a predictable photographic rhythm. */
:root:root:root .post__relationship,
:root:root:root .post__relationship:is([aria-pressed='true'], :hover, :active) {
  background: #090909; background-image: none; color: #fff;
  border-color: #353238; -webkit-text-fill-color: #fff; box-shadow: none;
}
:root:root:root .post__relationship .relationship-mark { color: var(--em1); }
:root:root:root .post:not(.post--open) .post__media-open,
:root:root:root .post:not(.post--open) .post__locked {
  display: block; position: relative; width: 100%; max-width: none;
  height: auto; min-height: 0; max-height: none; aspect-ratio: 4 / 5;
  margin: 0; border-radius: 16px; overflow: hidden;
}
:root:root:root .post:not(.post--open) .post__locked { display: grid; }
:root:root:root .post:not(.post--open) .post__media-open > .post__pic {
  display: block; position: absolute; inset: 0; width: 100%; height: 100%;
  min-height: 0; max-height: none; margin: 0; aspect-ratio: auto;
  object-fit: cover; object-position: center; border-radius: inherit;
}
:root:root:root .post:not(.post--open) video.post__pic {
  width: 100%; height: auto; max-height: none; aspect-ratio: 4 / 5; object-fit: cover;
}
:root:root:root .post:not(.post--open) .post__media--gallery {
  display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 100%;
  gap: 12px; width: 100%; overflow-x: auto; scroll-snap-type: x mandatory;
  overscroll-behavior-x: contain; scrollbar-width: thin;
}
:root:root:root .post:not(.post--open) .post__media--gallery .post__media-open {
  grid-column: auto; scroll-snap-align: start; aspect-ratio: 4 / 5;
}
@media (min-width: 1241px) {
  :root:root:root { --railw: 288px; --navh: 88px; }
  :root:root:root .topbar { padding: 16px 28px; }
  :root:root:root .topbar__mark { width: 218px; flex-basis: 218px; }
  :root:root:root .topbar__mark .wordmark { width: 218px !important; }
  :root:root:root .rail { padding: 104px 20px 20px; gap: 16px; }
  :root:root:root .rail .rail__item { height: clamp(36px, calc((100dvh - 242px) / 14), 46px); padding-inline: 14px; gap: 14px; }
  :root:root:root .rail .rail__item > b { font-size: 17px; }
  :root:root:root .rail .rail__item .rail__ico,
  :root:root:root .rail .rail__item .rail__ico svg { width: 24px; height: 24px; }
  :root:root:root .rail__group + .rail__group { margin-top: 8px; padding-top: 8px; }
  :root:root:root .rail__post.pill { min-height: 52px; font-size: 17px; padding: 7px 7px 7px 18px; grid-template-columns: minmax(0,1fr) 36px; }
  :root:root:root .rail__post.pill > .pill__signature { width: 36px; height: 36px; min-width: 36px; }
  :root:root:root .shell--home-art .shell__grid { grid-template-columns: minmax(0,720px) minmax(250px,300px); justify-content: center; gap: 28px; }
  :root:root:root .shell--home-art .home-title { font-size: 48px; }
  :root:root:root .home-stories { --story-size: 80px; padding-block: 12px 24px; }
  :root:root:root .home-stories__label { font-size: 14px; }
  :root:root:root .home-aside > .home-corner { height: 560px; }
}
@media (max-width: 1240px) {
  :root:root:root .shell--home-art .home-compose,
  :root:root:root :is(.topbar, .phonetop) .topbar__create { display: none; }
  :root:root:root .chrome {
    left: max(12px, env(safe-area-inset-left)); right: max(12px, env(safe-area-inset-right));
    bottom: calc(10px + env(safe-area-inset-bottom) + var(--kb, 0px));
    width: auto; height: 64px; padding: 4px 6px; border: 1px solid var(--line);
    border-radius: 999px; background: var(--chrome-solid); box-shadow: 0 8px 28px #0004;
  }
  :root:root:root .chrome::before { display: none; }
  :root:root:root .chrome .chrome__i { min-width: 0; height: 54px; transform: none; }
  :root:root:root .chrome .chrome__i--bolt {
    flex: 0 0 48px; width: 48px; height: 48px; margin-inline: 4px;
    border-radius: 50%; background: var(--ember); color: #fff; padding: 0;
  }
  :root:root:root .chrome .chrome__i--bolt > svg { width: 28px; height: 28px; background: none; color: #fff; }
  :root:root:root .chrome .chrome__i--bolt .chrome__label { display: none; }
  :root:root:root .chrome .chrome__label { font-size: 10px; }
  :root:root:root .post:not(.post--open) .post__media-open { border-radius: 12px; }
}
@media (prefers-reduced-motion: no-preference) {
  :root:root:root :is(.rail__item, .chrome__i, .pill, .post__more, .pact, .topbar__create) {
    transition: transform var(--house-press-duration,160ms) cubic-bezier(.23,1,.32,1), background-color 160ms ease, border-color 160ms ease;
    transform: scale(1); scale: none;
  }
  :root:root:root :is(.rail__item, .chrome__i, .pill, .post__more, .pact, .topbar__create):not([aria-disabled='true'],[aria-busy='true'],:disabled):active:not(:focus-visible) {
    transform: scale(.96); scale: none;
  }
  :root:root:root .rail__item .rail__ico { transition: transform 160ms cubic-bezier(.23,1,.32,1), color 160ms ease; }
  :root:root:root .rail__item:active:not(:focus-visible) .rail__ico { transform: scale(.9); }
}
@media (prefers-reduced-motion: reduce) {
  :root:root:root :is(.rail__item, .chrome__i, .pill, .post__more, .pact, .topbar__create, .rail__ico) { transform: none !important; scale: none !important; transition: none !important; }
}

/* Identity signatures remain explicit, compact and distinct from actions. */
:root:root:root :is(.post__kind, .profile-related-kind, [data-identity-kind]) {
  display: inline-flex; align-items: center; gap: 5px; width: fit-content;
  min-height: 18px; max-width: 100%; padding: 1px 6px;
  border: 0; border-radius: 6px; background: var(--g06); color: var(--fg2);
  font: 500 10.5px/16px var(--sans); font-style: normal; letter-spacing: .01em;
  text-transform: none; white-space: normal;
}
:root:root:root :is(.post__kind, .profile-related-kind)::before {
  content: ''; flex: 0 0 4px; width: 4px; height: 4px; border-radius: 50%; background: currentColor;
}
:root:root:root [data-identity-kind] b { font: inherit; }
:root:root:root [data-identity-kind] svg { width: 11px; height: 11px; }
:root:root:root .post__metadata { gap: 4px 6px; }
:root:root:root .post__metadata .post__tm { font-size: 10.5px; }
@media (max-width: 600px) {
  :root:root:root .post__head { display: grid; grid-template-columns: 40px minmax(0,1fr) auto 24px; gap: 2px 8px; }
  :root:root:root .post__head > .post__av { grid-column: 1; grid-row: 1 / 3; width: 40px; height: 40px; }
  :root:root:root .post__head .post__who { display: contents; }
  :root:root:root .post__head .post__nm { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; min-height: 24px; }
  :root:root:root .post__head:not(:has(.post__relationship)) .post__nm { grid-column: 2 / 4; }
  :root:root:root .post__head .post__metadata { grid-column: 2 / -1; grid-row: 2; margin: 0; }
  :root:root:root .post__head .post__relationship { grid-column: 3; grid-row: 1; padding-inline: 10px; font-size: 12px; gap: 5px; }
  :root:root:root .post__head .post__more { grid-column: 4; grid-row: 1; width: 24px; min-width: 24px; height: 44px; margin: 0; }
}
:root:root:root:root .profile-page :is(.fwbtn, .profile-mini-action[aria-label='Follow'], .profile-mini-action[aria-label='Followed']) {
  background: #090909; background-image: none; color: #fff; -webkit-text-fill-color: #fff;
  border: 1px solid #353238; box-shadow: none;
}
:root:root:root .fwbtn::before { content: '+'; color: var(--em1); -webkit-text-fill-color: var(--em1); font: 600 22px/1 var(--sans); width: 18px; }
:root:root:root .fwbtn[aria-pressed='true']::before { content: '✓'; font-size: 18px; }
:root:root:root .profile-mini-action:is([aria-label='Follow'],[aria-label='Followed']) .ti { color: var(--em1); -webkit-text-fill-color: var(--em1); }
:root:root:root .profile-page .kick { width: fit-content; margin-block: 0 6px; font: 500 10.5px/16px var(--sans); letter-spacing: .04em; }
:root:root:root .profile-page .kick::before { width: 4px; height: 4px; border-radius: 50%; }

/* Phone Discover: one compact rhythm for people and companions. */
@media (max-width: 600px) {
  :root:root:root :is(.nd-creators, .flai) { padding: 0 0 calc(100px + env(safe-area-inset-bottom)); overflow-x: clip; }
  :root:root:root .flai-inner { padding: 18px 16px 24px; }
  :root:root:root .nd-creators > .cxhd { width: 100%; margin: 0; box-sizing: border-box; }
  :root:root:root .nd-intro { padding: 18px 16px 0; margin: 0; }
  :root:root:root :is(.nd-intro, .flai-intro) .headline { font-size: 30px; line-height: 1.1; letter-spacing: -.035em; margin: 0 0 10px; }
  :root:root:root :is(.nd-intro, .flai-intro) p { font-size: 14px; line-height: 1.45; margin: 0 0 16px; max-width: 34ch; }
  :root:root:root .flai-intro { margin: 0; }
  :root:root:root .ndmode-wrap { padding: 0 16px; margin: 0; }
  :root:root:root :is(.ndmode, .flai-mode) { width: 100%; min-height: 50px; height: 50px; margin: 0; padding: 4px; box-sizing: border-box; }
  :root:root:root :is(.ndmode, .flai-mode) button { min-width: 0; min-height: 42px; padding-inline: 8px; font-size: 13px; }
  :root:root:root .flai-tools { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; margin: 0 0 10px; }
  :root:root:root .flai-find { grid-template-columns: minmax(0,1fr) 100px; gap: 8px; }
  :root:root:root :is(.flai-search, .flai-sort-button) { height: 48px; min-height: 48px; }
  :root:root:root .flai-search { min-width: 0; padding-inline: 12px; }
  :root:root:root .flai-search input { min-width: 0; width: 100%; font-size: 16px; }
  :root:root:root .flai-sort-button { padding-inline: 10px; font-size: 12px; }
  :root:root:root .nd__srch { margin: 12px 16px 0; width: auto; }
  :root:root:root .nd__srch input { font-size: 16px; }
  :root:root:root .ndquickrow { padding: 10px 16px 0; margin: 0; }
  :root:root:root .ndstrip { gap: 8px; scroll-padding-inline: 16px; }
  :root:root:root .flai-categories { margin: 10px 0 16px; gap: 8px; }
  :root:root:root .flai-onboard { display: none; }
  :root:root:root .flai-hero { grid-template-columns: 42% minmax(0,1fr); height: auto; min-height: 210px; margin: 16px 0 22px; }
  :root:root:root .flai-hero-image { min-height: 210px; height: 100%; }
  :root:root:root .flai-hero-image img { height: 100%; min-height: 210px; object-fit: cover; object-position: center top; }
  :root:root:root .flai-hero-copy { min-width: 0; padding: 18px 12px 14px 8px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
  :root:root:root .flai-hero-copy h2 { font-size: 23px; line-height: 1.08; margin: 0; }
  :root:root:root .flai-hero-copy p { font-size: 13px; line-height: 1.4; margin: 0; }
  :root:root:root .flai-hero-copy .flai-traits { display: none; }
  :root:root:root .flai-verified { font-size: 10.5px; gap: 4px; margin: 0; }
  :root:root:root .flai-verified svg { width: 12px; height: 12px; }
  :root:root:root .flai-connect { position: static; width: 100%; min-width: 0; min-height: 44px; height: auto; margin-top: auto; padding: 7px 7px 7px 10px; display: flex; justify-content: space-between; gap: 5px; font-size: 11px; line-height: 1.25; }
  :root:root:root .flai-connect > span { min-width: 0; }
  :root:root:root .flai-connect .discover-command-arrow { width: 28px; height: 28px; flex: 0 0 28px; padding: 7px; box-sizing: border-box; }
  :root:root:root .flai-library-head { margin-bottom: 14px; gap: 8px; }
  :root:root:root .flai-library-head h2 { font-size: 24px; }
  :root:root:root .flai-match-trigger { min-height: 44px; padding-inline: 12px; font-size: 12px; }
  :root:root:root .flai-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  :root:root:root .flai-card { display: flex; flex-direction: column; min-height: 0; height: auto; aspect-ratio: auto; border-radius: 16px; overflow: hidden; }
  :root:root:root .flai-card-image { position: relative; inset: auto; width: 100%; height: auto; aspect-ratio: 3/4; flex: 0 0 auto; }
  :root:root:root .flai-card-image img { height: 100%; width: 100%; object-fit: cover; }
  :root:root:root .flai-card-copy { position: relative; inset: auto; min-height: 104px; padding: 10px 10px 4px; flex: 1; gap: 0; }
  :root:root:root .flai-card-badge { font-size: 10px; letter-spacing: 0; line-height: 16px; }
  :root:root:root .flai-card-badge svg { width: 11px; height: 11px; }
  :root:root:root .flai-card-copy strong { font-size: 16px; line-height: 1.2; margin-top: 5px; }
  :root:root:root .flai-card-copy em { font-size: 12px; font-weight: 400; line-height: 1.4; margin-top: 4px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  :root:root:root :is(.flai-card-reason, .flai-card-traits) { display: none; }
  :root:root:root .flai-card-actions { position: relative; inset: auto; padding: 4px 8px 8px; justify-content: space-between; width: auto; }
  :root:root:root .flai-card-actions button { width: 44px; height: 44px; box-shadow: none; }
  :root:root:root .ndgrid { padding: 16px 16px 24px; gap: 12px; grid-template-columns: repeat(2,minmax(0,1fr)); }
  :root:root:root .ndperson { border-radius: 16px; min-width: 0; overflow: hidden; }
  :root:root:root .ndportrait { width: 100%; height: auto; aspect-ratio: 3/4; min-height: 0; }
  :root:root:root .ndmeta { min-height: 74px; padding: 10px; gap: 4px; }
  :root:root:root .ndnm b { font-size: 14px; line-height: 1.3; }
  :root:root:root .ndvf { max-width: calc(100% - 16px); top: auto; bottom: 8px; left: 8px; padding: 3px 5px; }
  :root:root:root .ndvf b { font-size: 9px; }
  :root:root:root .ndperson-message { min-height: 44px; margin: 0 10px 10px; width: auto; }
}
@media (max-width: 600px) {
  :root:root:root .flai-find { grid-template-columns: minmax(0,1fr) 110px; }
  :root:root:root .flai-sort-button { white-space: nowrap; gap: 6px; }
  :root:root:root .flai-hero { min-height: 190px; }
  :root:root:root .flai-hero-image,
  :root:root:root .flai-hero-image img { min-height: 190px; }
  :root:root:root .flai-hero-copy { padding-top: 14px; gap: 6px; }
  :root:root:root .flai-card-image { aspect-ratio: 4/5; }
  :root:root:root .ndportrait { aspect-ratio: 4/5; }
  :root:root:root .flai-card-copy { min-height: 96px; }
  :root:root:root .ndmeta .ndup { font-size: 10px; line-height: 1.3; }
}
@media (max-width: 600px) {
  :root:root:root .flai-library-head h2 { font-size: 22px; }
  :root:root:root .flai-match-trigger { white-space: nowrap; flex-shrink: 0; padding-inline: 10px; }
  :root:root:root .flai-library-actions { flex-shrink: 0; }
}
@media (max-width: 600px) {
  :root:root:root .ndhandle { min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
  :root:root:root .ndwhy { font-size: 10px; line-height: 1.35; letter-spacing: .02em; }
}

/* Legacy chat sidebar styling must never keep a dismissed tray visible. */
:root:root:root .chat2col .chat-action-tray[data-motion-visible='false'] { opacity: 0; pointer-events: none; }
:root:root:root .chat2col .chat-action-tray[aria-hidden='true'] { visibility: hidden; pointer-events: none; }
:root:root:root .chat2col .chat-action-tray[data-motion-visible='true'] { opacity: 1; visibility: visible; }

/* Preserved source: /_build/site-consistency-20260921.css */
/* Impeccable consistency pass. Shared presentation only: route access, factual
   copy, account state, portrait shape and transaction behavior stay local. */
:root:root:root {
  --ui-page-gap: 24px;
  --ui-section-gap: 32px;
  --ui-page-title: 44px;
  --ui-section-title: 22px;
  --ui-body: 16px;
  --ui-support: 14px;
  --ui-field-radius: 12px;
  --ui-card-radius: 16px;
  --ui-reading-width: 72ch;
}
::selection { background: var(--em1); color: #090909; }
:root :is(input,textarea) { caret-color: var(--em1); }
:root :is(main,.sheet,.pmbox,.drawer) { scrollbar-color: var(--fg3) transparent; scrollbar-width: thin; }
:root main a { text-underline-offset: .2em; }

/* Page titles and section labels share one hierarchy, including older account
   screens whose explicit font shorthand used to bypass the family tokens. */
:root:root:root :is(.headline:not(.headline--detail,.headline--prompt),.home-title,
  .reference-settings-body .headline,.acpick .headline,.me-account h1) {
  font-family: var(--display); font-size: var(--ui-page-title); font-weight: 800;
  line-height: 1.12; letter-spacing: -.035em; text-transform: none;
}
:root:root:root :is(.flsettings .cap,.reference-account-records .cap,.more22 .psech,
  .ref22 .psech,.ab .poh,.studio .st-sech,.passstate h2) {
  font-family: var(--display); font-size: var(--ui-section-title); font-weight: 750;
  line-height: 1.25; letter-spacing: -.025em; text-transform: none;
}
:root:root:root :is(.hero__lead,.passintro > p,.wallet-later__body,.ab .abp,.ab .geosub) {
  max-width: var(--ui-reading-width); margin-top: 12px;
  font: 400 var(--ui-body)/1.6 var(--sans); color: var(--fg2);
}
:root:root:root :is(.mut,.set__note,.wallet-later__note,.st-mut,.st-src,.sup-note) { line-height: 1.55; }

/* One title-to-controls interval and section rhythm. */
:root:root:root :is(.flsettings .achead,.acpick .achead) { padding-top: 0; margin: 0 0 var(--ui-page-gap); }
:root:root:root .flsettings .acsec { margin-top: var(--ui-section-gap); padding-block: 0; }
:root:root:root .flsettings .cap { margin: 0 0 12px; color: var(--fg); }
:root:root:root .flsettings > .psplit { padding-inline: 0; gap: var(--ui-page-gap); }
:root:root:root .flsettings :is(.mut,.xpc-hint,.trp-note) { font-size: var(--ui-support); }
:root:root:root .flsettings .orow { min-width: 0; gap: 12px; padding-block: 12px; }
:root:root:root .flsettings .olab { min-width: 0; font: 600 15px/1.4 var(--sans); letter-spacing: 0; }
:root:root:root .flsettings .oin { min-height: 48px; font: 400 16px/1.5 var(--sans); border-radius: var(--ui-field-radius); }
:root:root:root .flsettings .acsave { gap: 12px; padding-block: 16px; }
:root:root:root .more22 .pabout { margin-top: var(--ui-section-gap); }
:root:root:root .more22 .psech { margin-bottom: 12px; }
:root:root:root .more22 .morerow { min-height: 60px; padding: 12px 0; border-radius: var(--ui-field-radius); }
:root:root:root .more22 .morerow .n { font-size: 13px; line-height: 1.45; }
:root:root:root .more22 .moreseg { flex-wrap: wrap; overflow: visible; gap: 8px; }
:root:root:root .reference-settings-body .lead { font: 400 16px/1.6 var(--sans); margin: 12px 0 24px; }
:root:root:root .reference-settings-body .nvlrow { min-height: 48px; padding: 12px 16px; }
:root:root:root .reference-settings-body .nvlrow .nm { font: 500 15px/1.4 var(--sans); }
:root:root:root .acpick :is(.acc,.acfield input) { min-height: 48px; font: 400 16px/1.4 var(--sans); }
:root:root:root .acpick .accgrid { gap: 8px; }
:root:root:root .reference-account-records :is(.mut,.olab,.oval) { font-size: 14px; line-height: 1.5; }

/* Reading pages keep their content and hierarchy, without oversized empty gaps. */
:root:root:root .ab .abs { padding-block: var(--ui-section-gap); }
:root:root:root .ab > .abs:first-child { padding-top: var(--ui-page-gap) !important; }
:root:root:root .ab .posec { padding-block: var(--ui-section-gap); }
:root:root:root .ab .abk { font: 700 16px/1.4 var(--sans); letter-spacing: 0; color: var(--fg); }
:root:root:root .ab :is(.sfrow,.porow) { gap: 16px; padding-block: 16px; }
:root:root:root .ab :is(.sfrow,.porow) :is(.l,.r) { min-width: 0; overflow-wrap: anywhere; white-space: normal; }
:root:root:root .ab .sfrow .r { flex: 0 1 50%; }
:root:root:root .ab :is(.sfrow .r.no,.porow .r.hot,.burn) { background: none; color: var(--fg); -webkit-text-fill-color: currentColor; }
:root:root:root .ab .burn { text-decoration: underline; }
:root:root:root .ab .pocard { border-radius: var(--ui-card-radius); }
:root:root:root .passwrap { width: 100%; max-width: none; margin: 0; padding: 0; }
:root:root:root .passhero { padding: var(--ui-page-gap) 0; gap: 24px; }
:root:root:root .passshelf { padding: 24px 0 40px; }
:root:root:root .passstate { padding: 32px 16px; }
:root:root:root .passstate p { font: 400 15px/1.6 var(--sans); }
:root:root:root :is(.passcard,.mkc,.fwrow) { border-radius: var(--ui-card-radius); }

/* Controls share legible text, real touch areas, and visible keyboard focus. */
:root:root:root :is(.sup-areas button,.acpick .acc,.passprimary,.st-quick .pill,.fls-cat) { min-height: 44px; }
:root:root:root :is(.sup-areas button,.st-quick .pill,.fls-cat) { font: 600 14px/1.4 var(--sans); }
:root:root:root :is(.fls-field input,.sup-form input,.sup-form textarea) { font-family: var(--sans); font-size: 16px; }
:root:root:root :is(.st-now .label,.st-now__m span,.st-stats .c span,.st-src,.sup-body) { font-size: 13px; line-height: 1.45; }
:root:root:root .st-grid { gap: 24px; }
:root:root:root .st-quick { height: auto; min-height: 48px; flex-wrap: wrap; overflow: visible; gap: 8px; }
:root:root:root :is(.sheet,.pmbox) { max-width: calc(100vw - 24px); }
:root:root:root :is(.sheet,.pmbox) :is(input,textarea,select) { min-width: 0; max-width: 100%; }
:root:root:root .pmtop { position: sticky; top: 0; z-index: 10; background: var(--rise); padding-bottom: 12px; }
:root:root:root :is(.sheet,.pmbox,.chat-action-tray) :is(button,a):focus-visible { outline: 2px solid var(--fg); outline-offset: 2px; }

@media (min-width: 1241px) {
  :root:root:root .shell--rail:not(.shell--own,.shell--bare,.shell--centred,.shell--home-art) {
    padding-left: calc(var(--railw) + 24px); padding-right: 24px;
  }
  :root:root:root .shell--rail:not(.shell--own,.shell--bare,.shell--centred,.shell--home-art) > .shell__wide { margin-inline: 0; padding-inline: 0; }
  :root:root:root :is(.flsettings,.more22,.mk,.nf.inset,.fw,.mwrap,.studio,.ref22,.wallet-later) { padding-top: var(--ui-page-gap); }
  :root:root:root :is(.fw__head,.hero) { padding-top: 0; }
  :root:root:root .ab { width: 100%; max-width: none; padding-inline: 0; margin-inline: 0; }
  :root:root:root :is(.reference-settings-body,.acpick) { padding: 24px 0 48px; }
  :root:root:root .reference-account-records { padding: 24px 0 48px; }
  :root:root:root .flsearch { margin-left: 24px; padding-top: calc(var(--navh) + 24px); max-width: min(720px,calc(100% - 48px)); }
  :root:root:root .cxwrap:not(.cxwrap--pane) .hero { padding-top: 24px; }
}
@media (max-width: 1240px) {
  :root:root:root { --ui-page-title: 32px; }
  :root:root:root :is(.flsettings,.more22,.mk,.nf.inset,.fw,.mwrap,.studio,.ref22,.wallet-later,.ab) { padding-inline: var(--page-gutter); }
  :root:root:root :is(.flsettings,.more22,.mk,.nf.inset,.fw,.mwrap,.studio,.ref22,.wallet-later) { padding-top: var(--ui-page-gap); }
  :root:root:root .fw__head { padding-top: 0; }
  :root:root:root .passwrap { padding-inline: var(--page-gutter); }
  :root:root:root .passhero { margin-inline: 0; }
  :root:root:root .flsettings .acsave { bottom: calc(84px + env(safe-area-inset-bottom)); background: var(--ink); }
  :root:root:root :is(.reference-settings-body,.acpick) { padding-inline: var(--page-gutter); }
  :root:root:root .reference-account-records { padding: 24px var(--page-gutter) 40px; }
}
@media (max-width: 600px) {
  :root:root:root { --ui-page-title: 30px; --ui-section-title: 20px; --ui-page-gap: 20px; }
  :root:root:root .headline--detail { font: 700 20px/1.2 var(--display); }
  :root:root:root :is(.flsettings .orow,.account-records__row) { flex-wrap: wrap; }
  :root:root:root .flsettings .olab { flex: 1 1 120px; }
  :root:root:root .flsettings .oval { max-width: 100%; }
  :root:root:root .ab .sfrow { font-size: 14px; line-height: 1.55; gap: 12px; }
  :root:root:root .ab .porow { flex-wrap: wrap; }
  :root:root:root .ab .porow .r { text-align: start; }
  :root:root:root :is(.sheet,.pmbox) { max-height: calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); }
  :root:root:root .pmbox { overscroll-behavior: contain; }
  :root:root:root .fwrow { gap: 12px; padding: 12px 0; }
  :root:root:root .fwrow__who { gap: 10px; }
  :root:root:root .fwrow__av { width: 44px; height: 44px; }
  :root:root:root .fwrow__nm { font-size: 15px; }
  :root:root:root .fwrow__sb { font-size: 12px; }
  :root:root:root .fwrow__following { min-width: 96px; padding-inline: 10px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  :root:root:root .ab .abrv { opacity: 1; }
}

/* Final cross-page review: Studio uses the same section scale; selected
   navigation remains readable in the light appearance. */
:root:root:root .studio .hero { padding-top: 0; }
:root:root:root .studio .st-card .hd { font: 750 var(--ui-section-title)/1.25 var(--display); letter-spacing: -.025em; }
:root:root:root .studio .st-card .hd .st-mut { font: 400 13px/1.45 var(--sans); }
:root:root:root[data-mode='paper'] .rail .rail__item--on { background: #f6e1e8; border-color: #dfb5c4; color: #161217; }
:root:root:root[data-mode='paper'] .rail .rail__item--on :is(b,.rail__ico) { color: #161217; }

/* Preserved source: /_build/sidebar-text-20260921.css */
/* Sidebar selection: brand-colored text without a pill surface. */
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: var(--fg);
}
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) > b {
  color: var(--em1, #ef4c88);
  -webkit-text-fill-color: currentColor;
  font-weight: 500;
}
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico,
:root:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, :active) .rail__ico svg {
  color: var(--fg);
}

/* Preserved source: /_build/studio-simple-20260921-v2.css */
/* Task-first Studio: daily work stays visible; specialist tools open on demand. */
.studio-area { border-top: 1px solid var(--line); margin: 0; }
.studio-area > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:88px; padding:20px 4px; cursor:pointer; list-style:none; }
.studio-area > summary::-webkit-details-marker { display:none; }
.studio-area > summary span { display:grid; gap:6px; min-width:0; }
.studio-area > summary strong { font:650 20px/1.25 var(--sans); color:var(--fg); }
.studio-area > summary small { font:400 14px/1.5 var(--sans); color:var(--fg2); }
.studio-area > summary > i { font-size:20px; color:var(--fg2); transition:transform 160ms ease; }
.studio-area[open] > summary > i { transform:rotate(180deg); }
.studio-area > summary:focus-visible { outline:2px solid var(--em1); outline-offset:-2px; border-radius:8px; }
.studio-area__body { padding:8px 4px 32px; }
.studio-area__body > :first-child { margin-top:0; }
.studio .stoday__new { display:none; }
@media(max-width:600px) { .studio-area > summary { gap:12px; padding-block:18px; } .studio-area > summary strong { font-size:18px; } .studio-area > summary small { font-size:14px; } }
@media(prefers-reduced-motion:reduce) { .studio-area > summary > i { transition:none; } }

/* Keep the creator's next action within the first phone screen. */
:root:root .studio > .hero { display:block; padding-block:20px 16px; margin-bottom:0; }
:root:root .studio > .hero .headline { font-size:32px; line-height:1.2; margin:0; }
:root:root .studio > .hero .headline br { display:none; }
:root:root .studio > .hero .headline em { margin-left:.24em; color:var(--fg); }
:root:root .studio > .hero .hero__lead { margin-top:12px; font-size:14px; line-height:1.5; max-width:65ch; }
:root:root .studio .st-now { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 16px; margin-top:16px; padding:0; border:0; }
:root:root .studio .st-now .label { font-size:12px; letter-spacing:0; }
:root:root .studio .st-now__v { font-size:24px; margin:0; line-height:1.2; }
:root:root .studio .st-now__m { margin:0; font-size:12px; letter-spacing:0; }
:root:root .studio .stoday { margin-block:20px; padding:16px; }
:root:root .studio .stoday h2 { font-size:22px; line-height:1.25; }
:root:root .studio .stoday small { white-space:normal; overflow:visible; text-overflow:clip; line-height:1.4; }
@media(max-width:600px) {
  :root:root .studio > .hero .headline { font-size:30px; }
  :root:root .studio .stoday { padding:12px; }
  :root:root .studio .st-quick--daily { gap:8px; }
  :root:root .studio .st-quick--daily .pill { padding-inline:12px; }
}

.studio .st-acts--page > button {display:none}

/* Preserved source: /_build/studio-workspaces-20260921-v2.css */
/* Creator tools are grouped by the job being done. URL state supports Back and sharing. */
.studio-workspace-nav,.studio-content-nav{display:flex;align-items:center;gap:24px;max-width:100%;overflow-x:auto;scrollbar-width:thin;border-bottom:1px solid var(--line);margin:8px 0 20px}
.studio-workspace-nav a,.studio-content-nav a{display:inline-flex;align-items:center;flex-shrink:0;min-height:48px;padding:8px 0;color:var(--fg2);text-decoration:none;font:600 16px/1.3 var(--sans);border-bottom:2px solid transparent}
.studio-workspace-nav a[aria-current=page],.studio-content-nav a[aria-current=page]{color:var(--em1);border-bottom-color:currentColor}
.studio-workspace-nav a:focus-visible,.studio-content-nav a:focus-visible{outline:2px solid var(--em1);outline-offset:-2px;border-radius:4px}
.studio-content-nav{display:none;gap:20px;margin-top:0}.studio-content-nav a{font-size:14px}
.studio[data-workspace] .studio-area{display:none}
.studio[data-workspace=overview] .studio-area[data-area="6"],
.studio[data-workspace=content] .studio-area[data-area="1"],
.studio[data-workspace=inbox] .studio-area[data-area="1"],
.studio[data-workspace=earnings] .studio-area[data-area="0"],
.studio[data-workspace=settings] .studio-area[data-area="2"],
.studio[data-workspace=settings] .studio-area[data-area="3"],
.studio[data-workspace=settings] .studio-area[data-area="4"],
.studio[data-workspace=settings] .studio-area[data-area="5"]{display:block}
.studio[data-workspace]:not([data-workspace=overview]) .stoday,
.studio[data-workspace]:not([data-workspace=overview]):not([data-workspace=earnings]) .st-now{display:none}
.studio[data-workspace=content] .studio-content-nav{display:flex}
.studio[data-workspace=content] .studio-area[data-area="1"],.studio[data-workspace=inbox] .studio-area[data-area="1"],.studio[data-workspace=earnings] .studio-area[data-area="0"]{border:0}
.studio[data-workspace=content] .studio-area[data-area="1"]>summary,.studio[data-workspace=inbox] .studio-area[data-area="1"]>summary,.studio[data-workspace=earnings] .studio-area[data-area="0"]>summary{display:none}
.studio[data-workspace=content] .studio-inbox-part,
.studio[data-workspace=content] .studio-shared-tools>:first-child,
.studio[data-workspace=inbox] .studio-posts-part,
.studio[data-workspace=inbox] .studio-media-part,
.studio[data-workspace=inbox] .studio-shared-tools>.sdk__calendar{display:none}
.studio[data-workspace=content]:not([data-content-section=posts]) .studio-posts-part,
.studio[data-workspace=content]:not([data-content-section=media]) .studio-media-part,
.studio[data-workspace=content]:not([data-content-section=calendar]) .studio-shared-tools{display:none}
.studio[data-workspace] .studio-shared-tools{grid-template-columns:minmax(0,1fr);margin-top:0}
.studio[data-workspace] .studio-area__body{padding-top:0}
.studio[data-workspace] .studio-posts-part>.st-sec:first-child,
.studio[data-workspace] .studio-inbox-part>.st-sec,
.studio[data-workspace] .studio-media-part>.st-sec:first-child{margin-top:0}
.studio[data-workspace] .sdk__perf-row{flex-wrap:wrap;gap:12px}.studio[data-workspace] .sdk__perf-main{min-width:0;flex:1 1 260px}.studio[data-workspace] .sdk__post-acts{flex-wrap:wrap}
.studio[data-workspace] .sdk__perf-main .who{overflow-wrap:anywhere}
@media(max-width:600px){.studio-workspace-nav{gap:20px;margin-bottom:16px}.studio-workspace-nav a{font-size:15px}.studio-content-nav{gap:18px}.studio[data-workspace] .st-quick{margin-top:12px}.studio[data-workspace] .sdk__post-acts{width:100%;justify-content:flex-start}}
@media(max-width:600px){.studio-workspace-nav{gap:12px}.studio-workspace-nav a{font-size:14px}.studio[data-workspace] .sdk__perf-main .who{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}}

/* Preserved source: /brand/navigation/sidebar-icons-v1.css */
/* Phosphor 2.1.1, MIT. Only sidebar icon artwork changes. */
@media(min-width:769px){
.rail .rail__item[href="/"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M224%2C120v96a8%2C8%2C0%2C0%2C1-8%2C8H160a8%2C8%2C0%2C0%2C1-8-8V164a4%2C4%2C0%2C0%2C0-4-4H108a4%2C4%2C0%2C0%2C0-4%2C4v52a8%2C8%2C0%2C0%2C1-8%2C8H40a8%2C8%2C0%2C0%2C1-8-8V120a16%2C16%2C0%2C0%2C1%2C4.69-11.31l80-80a16%2C16%2C0%2C0%2C1%2C22.62%2C0l80%2C80A16%2C16%2C0%2C0%2C1%2C224%2C120Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/live"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/live"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/live"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/live"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M168%2C128a40%2C40%2C0%2C1%2C1-40-40A40%2C40%2C0%2C0%2C1%2C168%2C128Zm40%2C0a79.74%2C79.74%2C0%2C0%2C0-20.37-53.33%2C8%2C8%2C0%2C1%2C0-11.92%2C10.67%2C64%2C64%2C0%2C0%2C1%2C0%2C85.33%2C8%2C8%2C0%2C0%2C0%2C11.92%2C10.67A79.79%2C79.79%2C0%2C0%2C0%2C208%2C128ZM80.29%2C85.34A8%2C8%2C0%2C1%2C0%2C68.37%2C74.67a79.94%2C79.94%2C0%2C0%2C0%2C0%2C106.67%2C8%2C8%2C0%2C0%2C0%2C11.92-10.67%2C63.95%2C63.95%2C0%2C0%2C1%2C0-85.33Zm158.28-4A119.48%2C119.48%2C0%2C0%2C0%2C213.71%2C44a8%2C8%2C0%2C1%2C0-11.42%2C11.2%2C103.9%2C103.9%2C0%2C0%2C1%2C0%2C145.56A8%2C8%2C0%2C1%2C0%2C213.71%2C212%2C120.12%2C120.12%2C0%2C0%2C0%2C238.57%2C81.29ZM32.17%2C168.48A103.9%2C103.9%2C0%2C0%2C1%2C53.71%2C55.22%2C8%2C8%2C0%2C1%2C0%2C42.29%2C44a119.87%2C119.87%2C0%2C0%2C0%2C0%2C168%2C8%2C8%2C0%2C1%2C0%2C11.42-11.2A103.61%2C103.61%2C0%2C0%2C1%2C32.17%2C168.48Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/discover"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/discover"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/discover"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/discover"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M128%2C24A104%2C104%2C0%2C1%2C0%2C232%2C128%2C104.11%2C104.11%2C0%2C0%2C0%2C128%2C24Zm51.58%2C57.79-32%2C64a4.08%2C4.08%2C0%2C0%2C1-1.79%2C1.79l-64%2C32a4%2C4%2C0%2C0%2C1-5.37-5.37l32-64a4.08%2C4.08%2C0%2C0%2C1%2C1.79-1.79l64-32A4%2C4%2C0%2C0%2C1%2C179.58%2C81.79Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/stories"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/stories"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/stories"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/stories"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M224%2C104v96a16%2C16%2C0%2C0%2C1-16%2C16H48a16%2C16%2C0%2C0%2C1-16-16V104A16%2C16%2C0%2C0%2C1%2C48%2C88H208A16%2C16%2C0%2C0%2C1%2C224%2C104ZM56%2C72H200a8%2C8%2C0%2C0%2C0%2C0-16H56a8%2C8%2C0%2C0%2C0%2C0%2C16ZM72%2C40H184a8%2C8%2C0%2C0%2C0%2C0-16H72a8%2C8%2C0%2C0%2C0%2C0%2C16Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/shorts"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/shorts"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/shorts"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/shorts"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M128%2C24A104%2C104%2C0%2C1%2C0%2C232%2C128%2C104.11%2C104.11%2C0%2C0%2C0%2C128%2C24Zm40.55%2C110.58-52%2C36A8%2C8%2C0%2C0%2C1%2C104%2C164V92a8%2C8%2C0%2C0%2C1%2C12.55-6.58l52%2C36a8%2C8%2C0%2C0%2C1%2C0%2C13.16Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/reels"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/reels"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/reels"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/reels"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M216%2C40H40A16%2C16%2C0%2C0%2C0%2C24%2C56V200a16%2C16%2C0%2C0%2C0%2C16%2C16H216a16%2C16%2C0%2C0%2C0%2C16-16V56A16%2C16%2C0%2C0%2C0%2C216%2C40ZM184%2C56h32V72H184ZM72%2C200H40V184H72ZM72%2C72H40V56H72Zm48%2C128H88V184h32Zm0-128H88V56h32Zm48%2C128H136V184h32Zm0-128H136V56h32Zm48%2C128H184V184h32v16Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/chats"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/chats"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/chats"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/chats"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M232.07%2C186.76a80%2C80%2C0%2C0%2C0-62.5-114.17A80%2C80%2C0%2C1%2C0%2C23.93%2C138.76l-7.27%2C24.71a16%2C16%2C0%2C0%2C0%2C19.87%2C19.87l24.71-7.27a80.39%2C80.39%2C0%2C0%2C0%2C25.18%2C7.35%2C80%2C80%2C0%2C0%2C0%2C108.34%2C40.65l24.71%2C7.27a16%2C16%2C0%2C0%2C0%2C19.87-19.86Zm-16.25%2C1.47L224%2C216l-27.76-8.17a8%2C8%2C0%2C0%2C0-6%2C.63%2C64.05%2C64.05%2C0%2C0%2C1-85.87-24.88A79.93%2C79.93%2C0%2C0%2C0%2C174.7%2C89.71a64%2C64%2C0%2C0%2C1%2C41.75%2C92.48A8%2C8%2C0%2C0%2C0%2C215.82%2C188.23Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/notifications"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/notifications"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/notifications"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/notifications"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M221.8%2C175.94C216.25%2C166.38%2C208%2C139.33%2C208%2C104a80%2C80%2C0%2C1%2C0-160%2C0c0%2C35.34-8.26%2C62.38-13.81%2C71.94A16%2C16%2C0%2C0%2C0%2C48%2C200H88.81a40%2C40%2C0%2C0%2C0%2C78.38%2C0H208a16%2C16%2C0%2C0%2C0%2C13.8-24.06ZM128%2C216a24%2C24%2C0%2C0%2C1-22.62-16h45.24A24%2C24%2C0%2C0%2C1%2C128%2C216Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/following"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/following"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/following"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/following"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M164.47%2C195.63a8%2C8%2C0%2C0%2C1-6.7%2C12.37H10.23a8%2C8%2C0%2C0%2C1-6.7-12.37%2C95.83%2C95.83%2C0%2C0%2C1%2C47.22-37.71%2C60%2C60%2C0%2C1%2C1%2C66.5%2C0A95.83%2C95.83%2C0%2C0%2C1%2C164.47%2C195.63Zm87.91-.15a95.87%2C95.87%2C0%2C0%2C0-47.13-37.56A60%2C60%2C0%2C0%2C0%2C144.7%2C54.59a4%2C4%2C0%2C0%2C0-1.33%2C6A75.83%2C75.83%2C0%2C0%2C1%2C147%2C150.53a4%2C4%2C0%2C0%2C0%2C1.07%2C5.53%2C112.32%2C112.32%2C0%2C0%2C1%2C29.85%2C30.83%2C23.92%2C23.92%2C0%2C0%2C1%2C3.65%2C16.47%2C4%2C4%2C0%2C0%2C0%2C3.95%2C4.64h60.3a8%2C8%2C0%2C0%2C0%2C7.73-5.93A8.22%2C8.22%2C0%2C0%2C0%2C252.38%2C195.48Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/bookmarks"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/bookmarks"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/bookmarks"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/bookmarks"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M184%2C32H72A16%2C16%2C0%2C0%2C0%2C56%2C48V224a8%2C8%2C0%2C0%2C0%2C12.24%2C6.78L128%2C193.43l59.77%2C37.35A8%2C8%2C0%2C0%2C0%2C200%2C224V48A16%2C16%2C0%2C0%2C0%2C184%2C32Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/wallet"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/wallet"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/wallet"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/wallet"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M216%2C64H56a8%2C8%2C0%2C0%2C1%2C0-16H192a8%2C8%2C0%2C0%2C0%2C0-16H56A24%2C24%2C0%2C0%2C0%2C32%2C56V184a24%2C24%2C0%2C0%2C0%2C24%2C24H216a16%2C16%2C0%2C0%2C0%2C16-16V80A16%2C16%2C0%2C0%2C0%2C216%2C64Zm-36%2C80a12%2C12%2C0%2C1%2C1%2C12-12A12%2C12%2C0%2C0%2C1%2C180%2C144Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/subscriptions"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/subscriptions"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/subscriptions"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/subscriptions"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M239.75%2C90.81c0%2C.11%2C0%2C.21-.07.32L217%2C195a16%2C16%2C0%2C0%2C1-15.72%2C13H54.71A16%2C16%2C0%2C0%2C1%2C39%2C195L16.32%2C91.13c0-.11-.05-.21-.07-.32A16%2C16%2C0%2C0%2C1%2C44%2C77.39l33.67%2C36.29%2C35.8-80.29a1%2C1%2C0%2C0%2C0%2C0-.1%2C16%2C16%2C0%2C0%2C1%2C29.06%2C0%2C1%2C1%2C0%2C0%2C0%2C0%2C.1l35.8%2C80.29L212%2C77.39a16%2C16%2C0%2C0%2C1%2C27.71%2C13.42Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/studio"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/studio"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/studio"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/studio"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M216%2C104H102.09L210%2C75.51a8%2C8%2C0%2C0%2C0%2C5.68-9.84l-8.16-30a15.93%2C15.93%2C0%2C0%2C0-19.42-11.13L35.81%2C64.74a15.75%2C15.75%2C0%2C0%2C0-9.7%2C7.4%2C15.51%2C15.51%2C0%2C0%2C0-1.55%2C12L32%2C111.56c0%2C.14%2C0%2C.29%2C0%2C.44v88a16%2C16%2C0%2C0%2C0%2C16%2C16H208a16%2C16%2C0%2C0%2C0%2C16-16V112A8%2C8%2C0%2C0%2C0%2C216%2C104ZM192.16%2C40l6%2C22.07L164.57%2C71%2C136.44%2C54.72ZM77.55%2C70.27l28.12%2C16.24-59.6%2C15.73-6-22.08Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/more"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/more"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/more"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/more"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M224%2C80H32A16%2C16%2C0%2C0%2C0%2C16%2C96v64a16%2C16%2C0%2C0%2C0%2C16%2C16H224a16%2C16%2C0%2C0%2C0%2C16-16V96A16%2C16%2C0%2C0%2C0%2C224%2C80ZM60%2C140a12%2C12%2C0%2C1%2C1%2C12-12A12%2C12%2C0%2C0%2C1%2C60%2C140Zm68%2C0a12%2C12%2C0%2C1%2C1%2C12-12A12%2C12%2C0%2C0%2C1%2C128%2C140Zm68%2C0a12%2C12%2C0%2C1%2C1%2C12-12A12%2C12%2C0%2C0%2C1%2C196%2C140Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/me"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/me"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/me"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/me"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M172%2C120a44%2C44%2C0%2C1%2C1-44-44A44.05%2C44.05%2C0%2C0%2C1%2C172%2C120Zm60%2C8A104%2C104%2C0%2C1%2C1%2C128%2C24%2C104.11%2C104.11%2C0%2C0%2C1%2C232%2C128Zm-16%2C0a88.09%2C88.09%2C0%2C0%2C0-91.47-87.93C77.43%2C41.89%2C39.87%2C81.12%2C40%2C128.25a87.65%2C87.65%2C0%2C0%2C0%2C22.24%2C58.16A79.71%2C79.71%2C0%2C0%2C1%2C84%2C165.1a4%2C4%2C0%2C0%2C1%2C4.83.32%2C59.83%2C59.83%2C0%2C0%2C0%2C78.28%2C0%2C4%2C4%2C0%2C0%2C1%2C4.83-.32%2C79.71%2C79.71%2C0%2C0%2C1%2C21.79%2C21.31A87.62%2C87.62%2C0%2C0%2C0%2C216%2C128Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.rail .rail__item[href="/posts"] .rail__ico:not(:has(img)){position:relative}
.rail .rail__item[href="/posts"] .rail__ico:not(:has(img))>svg{visibility:hidden}
.rail .rail__item[href="/posts"] .rail__ico:not(:has(img))::before{content:none}
.rail .rail__item[href="/posts"] .rail__ico:not(:has(img))::after{content:"";position:absolute;inset:0px;pointer-events:none;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M120%2C56v48a16%2C16%2C0%2C0%2C1-16%2C16H56a16%2C16%2C0%2C0%2C1-16-16V56A16%2C16%2C0%2C0%2C1%2C56%2C40h48A16%2C16%2C0%2C0%2C1%2C120%2C56Zm80-16H152a16%2C16%2C0%2C0%2C0-16%2C16v48a16%2C16%2C0%2C0%2C0%2C16%2C16h48a16%2C16%2C0%2C0%2C0%2C16-16V56A16%2C16%2C0%2C0%2C0%2C200%2C40Zm-96%2C96H56a16%2C16%2C0%2C0%2C0-16%2C16v48a16%2C16%2C0%2C0%2C0%2C16%2C16h48a16%2C16%2C0%2C0%2C0%2C16-16V152A16%2C16%2C0%2C0%2C0%2C104%2C136Zm96%2C0H152a16%2C16%2C0%2C0%2C0-16%2C16v48a16%2C16%2C0%2C0%2C0%2C16%2C16h48a16%2C16%2C0%2C0%2C0%2C16-16V152A16%2C16%2C0%2C0%2C0%2C200%2C136Z%22%2F%3E%3C%2Fsvg%3E");mask-size:contain;mask-position:center;mask-repeat:no-repeat}
@media(forced-colors:active){.rail .rail__ico::after{forced-color-adjust:none;background:CanvasText}}
}

/* Preserved source: /_build/assets/integrated-composer.solana1.css */
/* The "+ Post" sheet, measured against the reference at 1440 and 390.

   A veil, one glass card, and colour for state. The card arrives with the
   overlay entrance; the only ambient motion inside is the seam over the bar.
   Every capsule in here is the one pill. */

.pmwrap {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  height: 100dvh;
  max-height: 100dvh;
  background: rgba(0, 0, 0, .8);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  overflow-y: auto;
  animation: pmScrim .3s ease-out both;
}
.pmwrap.out { animation: pmScrimOut .24s var(--c-out, ease) both; }
@keyframes pmScrim { from { opacity: 0; } to { opacity: 1; } }
@keyframes pmScrimOut { from { opacity: 1; } to { opacity: 0; } }
.pm-simple-option, .pm-background-post button {
  min-height: 44px; padding: 8px 14px; border: 1px solid var(--line);
  border-radius: 999px; background: var(--rise); color: var(--fg);
  font: inherit; cursor: pointer;
}
.pm-simple-option { display: inline-flex; align-items: center; gap: 8px; max-width: 70%; }
.pm-simple-option:disabled { opacity: .5; cursor: default; }
.pm-background-post {
  position: fixed; z-index: 1800; bottom: calc(24px + env(safe-area-inset-bottom));
  right: 24px; width: min(440px, calc(100vw - 32px)); padding: 16px;
  box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
  border: 1px solid var(--line); border-radius: 18px; background: var(--rise); color: var(--fg);
  box-shadow: 0 12px 36px #0003; animation: pmScrim .2s ease-out both;
}
.pm-background-post > div { flex: 1 1 100%; }
.pm-background-post b, .pm-background-post small { display: block; overflow-wrap: anywhere; }
.pm-background-post small { margin-top: 5px; line-height: 1.5; }
#pm-more-options { animation: pmScrim .18s ease-out both; }
@media (max-width: 700px) {
  .pm-background-post { right: 16px; bottom: calc(84px + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .pm-background-post, #pm-more-options { animation: none; }
}
:root[data-mode='paper'] .pmwrap { background: rgba(255, 255, 255, .74); }
:root[data-mode='grey'] .pmwrap { background: rgba(26, 26, 28, .94); }

.pmbox {
  position: relative;
  width: 100%;
  max-width: 480px;
  max-height: calc(100dvh - 24px);
  border: 1px solid rgba(255, 255, 255, .11);
  border-radius: 22px;
  background: rgba(12, 12, 12, .78);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 0 30px 80px rgba(0, 0, 0, .5);
  -webkit-backdrop-filter: blur(30px) saturate(1.5);
  backdrop-filter: blur(30px) saturate(1.5);
  overflow: hidden auto;
  animation: w29in .34s cubic-bezier(.16, 1, .3, 1);
  /* The panel takes focus when it opens so a screen reader reads what has been
     raised before it reads the field inside it — but a ring around a whole
     sheet is noise, and the ring belongs to the control you are on. The same
     ruling as the anchored menu's (Menu.css), and the same as the reference,
     whose panel shows none. Every control inside it keeps its own — the house's
     one focus treatment lives in base.css and outranks a plain `outline: none`
     here, so the panel says so with the same weight. */
}
.pmbox:focus-visible { outline: none; outline-offset: 0; }
/* The panel leaves with its scrim and nothing of its own. The reference
   declares `pmOut` here — a fade that also slides the panel 12px down and
   shrinks it — and then a later sheet of its own sets `.pmbox { animation:
   w29in … !important }`, which outranks it: the box never plays the exit it
   asks for. Only colour animates in this house, so the exit it asks for is not
   one we would run either, and the scrim's fade is the whole departure. */
@keyframes w29in { from { opacity: 0; transform: scale(.965); } to { opacity: 1; transform: none; } }
:root[data-mode='paper'] .pmbox {
  border-color: rgba(0, 0, 0, .09);
  background: rgba(255, 255, 255, .86);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65), 0 26px 70px rgba(0, 0, 0, .16);
}
:root[data-mode='paper'] .pmrow textarea { color: #0A0A0B; }
:root[data-mode='paper'] .pmbar { border-top-color: #EAEAEA; }
:root[data-mode='paper'] .pmbar::before { background: linear-gradient(90deg, transparent, #FF2D6F 38%, #FF2D6F 62%, transparent); background-size: 200% 100%; }


/* The flare bar: the one pill, worn as a banner. Its mark draws nothing —
   the reference's flame renders at zero size, and the label carries it. */
#pmflbar {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 6px;
  box-sizing: border-box;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  margin: 0 0 14px;
  padding: 0 16px;
  border: 1px solid var(--cap-edge);
  border-radius: 999px;
  background: var(--cap-bg);
  color: var(--cap-ink);
  font-size: 11px;
  font-weight: var(--weight-ui, 700);
  line-height: 1;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  transition-property: var(--tp-control);
  transition-duration: var(--m-state);
  transition-timing-function: var(--curve);
}
#pmflbar { touch-action: manipulation; }
#pmflbar svg { width: 0; height: 0; }
#pmflbar :is(span, i, svg) { transition: color .18s ease, background-color .18s ease, border-color .18s ease; }
#pmflbar.on { border-color: var(--em1); color: var(--em1); background: rgba(255, 45, 111, .08); }
/* A flare cannot be armed on a story — it already goes in a day. The bar says
   so the way the reference says it, with a dashed edge, and dims as well: the
   reference leaves it at full strength and refuses the press in silence. */
#pmflbar[aria-disabled='true']:not(.on) { border-style: dashed; cursor: not-allowed; opacity: .6; }
#pmflbar:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }

.pmtop { display: flex; align-items: center; justify-content: space-between; padding: 19px 22px 0; }
button.pmx {
  min-width: 44px;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  line-height: 1;
  font-size: 25px;
  color: var(--fg3);
  cursor: pointer;
  transition: color .2s ease;
}
button.pmx:hover { color: var(--fg); }

.pmstate {
  min-height: 24px;
  padding: 0 24px 4px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  color: var(--fg3);
  font-size: 11px;
}
/* Discard is the quiet one. The reference asks for the ember here through a
   variable that holds a gradient — `color: var(--ember)` is not a colour, so
   the declaration is dropped and its button inherits this line's grey. What it
   paints is right whatever it meant: throwing away what you wrote is not the
   ember's job, and an ember Discard beside an ember Post is two invitations. */
.pmstate button,
.pm-vault-message button {
  min-height: 32px;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.pmoffline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-inline-end: auto;
  color: var(--fg2);
  font-weight: 700;
}

.pmttlw { display: flex; padding: 14px 24px 0; }
.pmttlw input {
  flex: 1;
  background: none;
  border: 0;
  outline: none;
  color: var(--fg);
  font-family: inherit;
  font-size: 19px;
  font-weight: var(--weight-ui, 700);
  letter-spacing: -.02em;
  /* A field does not inherit the page's leading unless it is told to, and the
     reference never tells it: its title line is the browser's own `normal`.
     Ours had the body's 1.5 and stood six and a half pixels taller. */
  line-height: normal;
  padding: 4px 0;
}
.pmttlw input::placeholder { color: var(--i-dim); opacity: 1; }
/* On paper the title takes the reference's own near-black rather than the
   page's ink — the one place a field is set darker than the words around it. */
:root[data-mode='paper'] .pmttlw input { color: #0A0A0B; }

.pmrow { display: flex; gap: 18px; padding: 12px 24px 0; }
.pmav { width: 54px; height: 54px; border-radius: 50%; background: #4A4A52; flex: none; }
:root[data-mode='paper'] .pmav { background: #DCD8DE; }
.pmrow textarea {
  flex: 1;
  background: none;
  border: 0;
  outline: none;
  color: var(--fg);
  resize: none;
  font-family: inherit;
  font-weight: var(--weight-copy, 600);
  font-size: 34px;
  line-height: 1.34;
  letter-spacing: -.015em;
  min-height: 96px;
  padding: 8px 0 0;
  background: 0;
  overflow: auto;
}
.pmrow textarea::placeholder { color: var(--i-dim); opacity: 1; transition: color .4s; }
.pmrow textarea:focus::placeholder { color: #4E4A4C; }

.pm-publish-boundary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  margin: 14px 24px 0;
  border: 1px solid color-mix(in srgb, currentColor 12%, transparent);
  border-radius: 14px;
  padding: 10px;
  color: var(--fg2);
  background: color-mix(in srgb, var(--fg) 2.5%, transparent);
}
.pm-publish-boundary > i {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--fg2);
  background: color-mix(in srgb, currentColor 8%, transparent);
}
.pm-publish-boundary > span { min-width: 0; }
.pm-publish-boundary b,
.pm-publish-boundary small { display: block; }
.pm-publish-boundary b { color: var(--fg); font-size: 11px; line-height: 1.35; }
.pm-publish-boundary small { margin-top: 3px; color: var(--fg3); font-size: 9px; line-height: 1.42; }
.pm-publish-boundary.legacy {
  border-color: color-mix(in srgb, var(--em1) 32%, transparent);
  background: color-mix(in srgb, var(--em1) 6%, transparent);
}
.pm-publish-boundary.legacy > i { color: var(--em1); background: color-mix(in srgb, var(--em1) 11%, transparent); }
.pm-publish-boundary button {
  grid-column: 2;
  justify-self: start;
  min-height: 44px;
  border: 1px solid var(--cap-on-edge);
  border-radius: 999px;
  padding: 0 14px;
  background: var(--cap-on-bg);
  color: var(--on-tab-ink);
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  touch-action: manipulation;
}
.pm-publish-boundary:focus-visible,
.pm-publish-boundary button:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
.pm-publish-boundary .pm-date-line { padding: 0; }
.pm-publish-boundary input { font-size: 16px; transition: border-color .18s ease, background-color .18s ease; }
.pm-publish-boundary input:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
.pm-publish-boundary button { transition: transform .18s ease, opacity .18s ease; }
.pm-publish-boundary button:active:not(:disabled) { transform: scale(.97); }
.pm-publish-boundary button:disabled { opacity: .55; cursor: default; }
.pm-publish-boundary > i .ico { width: 20px; height: 20px; }
@media (prefers-reduced-motion: reduce) {
  .pm-publish-boundary input, .pm-publish-boundary button { transition: none; }
  .pm-publish-boundary button:active:not(:disabled) { transform: none; }
}

.pmchipwrap {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  padding: 20px 24px 0;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
}
.pmchipwrap::-webkit-scrollbar { display: none; }
.pmchip {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
  box-sizing: border-box;
  height: 44px;
  padding: 0 8px 0 14px;
  border: 1px solid rgba(255, 45, 111, .4);
  border-radius: 999px;
  background: rgba(255, 45, 111, .08);
  color: var(--em1);
  font-size: 12px;
  font-weight: var(--weight-ui, 700);
  line-height: 1;
  white-space: nowrap;
}
.pmchip > span[role='button'] { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }
.pmchip i.ti { font-size: 14px; }
.pmchip .pmcx { padding: 4px; cursor: pointer; color: inherit; }

.pmatt { display: none; }
.pmatt.on { display: flex; flex-wrap: wrap; gap: 13px; padding: 20px 24px 0; }
.mea { display: flex; flex-wrap: wrap; max-width: 100%; box-sizing: border-box; align-items: center; gap: 9px; border: 1px solid var(--line); border-radius: 11px; padding: 7px 11px 7px 7px; }
.mea .th { width: 34px; height: 34px; border-radius: 7px; background: var(--rise); flex: none; display: flex; align-items: center; justify-content: center; }
.mea .th i { font-size: 15px; color: var(--fg3); }
.mea .mn { font-size: 12.5px; max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mea .ms { font-size: 11px; color: var(--fg3); font-variant-numeric: tabular-nums; }
/* Sunrise: the attachment's own edge, and a mark, a size and a way to remove
   it one step quieter than the paper's quiet grey — the reference's values. */
:root[data-mode='paper'] .mea { border-color: #E3E3E3; }
:root[data-mode='paper'] .mea .th { background: #F0F0F0; }
:root[data-mode='paper'] .mea .th i,
:root[data-mode='paper'] .mea .ms,
:root[data-mode='paper'] .mea .ti-x { color: #8A8A8A; }
.mea .ti-x { font-size: 15px; color: var(--fg3); cursor: pointer; margin-left: 2px; }
.mea .ti-x:hover { color: var(--fg); }
.pmcover {
  min-height: 32px;
  border: 0;
  padding: 0 8px;
  background: transparent;
  color: var(--em1);
  font: inherit;
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
}
.pmorder { min-width: 44px; min-height: 44px; font-size: 17px; }
.pmorder:disabled { opacity: .35; cursor: default; }
.pmadd-media {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  padding: 0 10px;
  border: 1px solid var(--cap-edge);
  border-radius: 999px;
  background: transparent;
  color: var(--fg);
  font: 700 12px/1.3 var(--sans);
  cursor: pointer;
  flex-shrink: 0;
}
.pmadd-media i { font-size: 19px; }
.pmadd-media:disabled { opacity: .5; cursor: not-allowed; }
.pmadd-media:focus-visible, .pmorder:focus-visible { outline: 2px solid var(--fg); outline-offset: 2px; }
@media (max-width: 560px) {
  .pmadd-media { width: 44px; padding: 0; justify-content: center; }
  .pmadd-media > span { display: none; }
}

.pmupload {
  margin: 14px 24px 0;
  min-height: 58px;
  border: 1px solid color-mix(in srgb, var(--em1) 24%, transparent);
  border-radius: 14px;
  padding: 9px 10px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 10px;
  background: color-mix(in srgb, var(--em1) 5%, transparent);
}
.pmupload.failed { border-color: color-mix(in srgb, currentColor 14%, transparent); background: transparent; }
.pmupload-icon {
  width: 34px;
  height: 34px;
  flex: none;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--em1);
  background: color-mix(in srgb, var(--em1) 12%, transparent);
}
.pmupload-copy { min-width: 0; flex: 1; display: block; }
.pmupload-copy b,
.pmupload-copy small { display: block; overflow-wrap: anywhere; }
.pmupload-copy b { color: var(--fg); font-size: 11px; line-height: 1.3; }
.pmupload-copy small { margin-top: 4px; color: var(--fg3); font-size: 12px; line-height: 1.45; }
.pmupload-availability { border-color: var(--line); background: transparent; align-items: flex-start; }
.pmupload-availability .pmupload-copy b { font-size: 13px; }
.pmupload button:disabled { cursor: wait; opacity: .6; }
.pmupload-track { display: block; height: 2px; margin-top: 7px; overflow: hidden; border-radius: 2px; background: color-mix(in srgb, currentColor 10%, transparent); }
.pmupload-track > span {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--em1), var(--em2));
  transform-origin: left center;
  transition: transform 120ms linear;
}
[dir='rtl'] .pmupload-track > span { transform-origin: right center; }
.pmupload button {
  min-width: 54px;
  min-height: 44px;
  border: 0;
  padding: 0 8px;
  background: transparent;
  color: var(--em1);
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}

.pmopts {
  display: flex;
  align-items: center;
  gap: clamp(3px, 2.4vw, 16px);
  padding: 18px 24px 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}
.pmopts::-webkit-scrollbar { display: none; }
.pmo,
.pm-native-option {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  flex: none;
  padding: 0;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  color: var(--cap-ink);
  cursor: pointer;
  transition-property: color, background-color, border-color;
  transition-duration: 180ms;
}
.pm-native-option { display: inline-grid; place-items: center; color: var(--fg2); }
.pmo:hover, .pm-native-option:hover { color: var(--fg); }
/* the paper quiet ink is the capsule family's #5F5A63, not the page's fg2 */
:root[data-mode='paper'] .pmo, :root[data-mode='paper'] .pm-native-option { color: #5F5A63; }
:root[data-mode='paper'] .pmo:hover, :root[data-mode='paper'] .pm-native-option:hover { color: #201C22; }
.pmo.on, .pm-native-option.on { color: #FF6B96; }
.pmo:focus-visible, .pm-native-option:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
.pmo.pmobag svg { height: 27px; width: 27px; display: block; overflow: visible; }
.pm-native-option i { font-size: 20px; }
.pm-native-option:disabled { color: var(--fg3); opacity: .45; }
.pm-review-option { margin-inline-start: auto; }
.pmo[aria-disabled='true'] { color: var(--fg3); opacity: .45; cursor: not-allowed; }

.pmmenu { max-height: 0; overflow: hidden; transition: max-height .34s cubic-bezier(.16, 1, .3, 1); }
.pmmenu.on { max-height: 420px; }
.pm-panel-nav { padding: 10px 18px 0; }
.pm-panel-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 6px;
  border: 0;
  background: transparent;
  color: var(--fg2);
  font: var(--weight-ui, 700) 13px/1.3 var(--sans);
  cursor: pointer;
}
.pm-panel-back .ti { font-size: 17px; }
.pm-panel-back:hover { color: var(--fg); }
.pm-panel-back:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; border-radius: 8px; }
.pmk { font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: #5C5C5C; padding: 20px 24px 11px; }
:root[data-mode='paper'] .pmk { color: #8A8A8A; }
.pmgrid {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  padding: 4px 24px 6px;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
}
.pmgrid::-webkit-scrollbar { display: none; }
.pmpill {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 6px;
  box-sizing: border-box;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  padding: 0 16px;
  touch-action: manipulation;
  border: 1px solid var(--cap-edge);
  border-radius: 999px;
  background: var(--cap-bg);
  color: var(--cap-ink);
  font-size: 13px;
  font-weight: var(--weight-ui, 700);
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition-property: var(--tp-control);
  transition-duration: var(--m-state);
  transition-timing-function: var(--curve);
}
.pmpill.on { border-color: var(--cap-on-edge); background: var(--cap-on-bg); color: var(--on-tab-ink); font-weight: 700; }
.pmnote { font-size: 12.5px; color: #5C5C5C; padding: 6px 24px 4px; line-height: 1.5; }
:root[data-mode='paper'] .pmnote { color: #8A8A8A; }

.pmbar {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 21px 24px;
  margin-top: 22px;
  position: relative;
}
.pmbar::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, #FF2D6F 38%, #FF2D6F 62%, transparent);
  background-size: 200% 100%;
  animation: pmSeam 4s ease-in-out infinite;
}
@keyframes pmSeam { 0%, 100% { background-position: 0% 50%; opacity: .5; } 50% { background-position: 100% 50%; opacity: 1; } }
.pmbar > i {
  font-size: 24px;
  color: var(--fg2);
  cursor: pointer;
  transition: color .25s, transform .25s;
}
.pmbar > i:hover { color: var(--fg); transform: translateY(-2px); }
.pmbar > i[aria-disabled='true'] { color: var(--fg3); opacity: .45; cursor: not-allowed; }
.pmdv2 { width: 1px; height: 20px; background: #1C1C1F; flex: none; }
.pmk2 {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  flex: none;
  padding: 0;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  color: var(--fg2);
  cursor: pointer;
  transition-property: color, background-color, border-color;
  transition-duration: 180ms;
}
.pmk2 svg { width: 27px; height: 27px; display: block; overflow: visible; }
.pmk2:hover { color: var(--fg); }
.pmk2.on { color: #FF6B96; }
.pmk2:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
:root[data-mode='paper'] .pmk2 { color: #5A5A5A; }

.pmpost {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 6px;
  box-sizing: border-box;
  height: 44px;
  min-width: var(--touch);
  padding: 0 16px;
  border: 1px dashed var(--cap-edge);
  border-radius: 999px;
  background: var(--cap-bg);
  color: var(--cap-ink);
  font-size: 13px;
  font-weight: var(--weight-ui, 700);
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
  touch-action: manipulation;
  transition-property: var(--tp-control);
  transition-duration: var(--m-state);
  transition-timing-function: var(--curve);
}
.pmpost { min-height: 44px; }
.pmpost:disabled { cursor: not-allowed; }
/* The reference files the two composers' send buttons with the active tabs,
   not with the primary commands — both inks are its own, and this is the one
   it chose for these two. */
.pmpost.on, .fcpost.on { border-style: solid; border-color: var(--cap-on-edge); background: var(--cap-on-bg); color: var(--on-tab-ink); font-weight: 700; }

/* ── the panels' insides ─────────────────────────────────────────────────── */
.pm-date-line { display: grid; gap: 7px; padding: 0 24px; color: var(--fg2); font-size: 11px; }
.pm-date-line input,
.pm-vault-search input {
  width: 100%;
  min-height: 44px;
  box-sizing: border-box;
  border: 1px solid color-mix(in srgb, currentColor 16%, transparent);
  border-radius: 12px;
  background: var(--rise);
  color: inherit;
  font: inherit;
  color-scheme: dark;
}
:root[data-mode='paper'] .pm-date-line input,
:root[data-mode='paper'] .pm-vault-search input { color-scheme: light; }
.pm-date-line input { padding: 0 12px; }
.pm-expiry-line { margin-top: 3px; }
.pm-audience { display: block; margin: 0 24px 12px; border-block: 1px solid color-mix(in srgb, currentColor 9%, transparent); }
.pm-audience-option {
  width: 100%;
  min-height: 64px;
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, currentColor 9%, transparent);
  padding: 10px 4px;
  background: transparent;
  color: var(--fg2);
  font: inherit;
  text-align: start;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 13px;
  transition: color 180ms ease, background-color 180ms ease;
}
.pm-audience-option:last-child { border-bottom: 0; }
.pm-audience-option:hover,
.pm-audience-option.on { color: var(--fg); background: color-mix(in srgb, var(--em1) 5%, transparent); }
.pm-audience-icon {
  width: 30px;
  flex: none;
  color: currentColor;
  font-size: 21px;
  text-align: center;
  transition: color 180ms ease, transform 220ms cubic-bezier(.16, 1, .3, 1);
}
.pm-audience-option.on .pm-audience-icon { color: var(--em1); transform: translateX(2px); }
[dir='rtl'] .pm-audience-option.on .pm-audience-icon { transform: translateX(-2px); }
.pm-audience-copy { min-width: 0; flex: 1; display: block; }
.pm-audience-copy b,
.pm-audience-copy small { display: block; }
.pm-audience-copy b { font-size: 13px; }
.pm-audience-copy small { margin-top: 4px; color: var(--fg3); font-size: 10px; line-height: 1.35; }
.pm-audience-check {
  flex: none;
  color: var(--em1);
  font-size: 17px;
  opacity: 0;
  transform: translateX(-5px);
  transition: opacity 160ms ease, transform 220ms cubic-bezier(.16, 1, .3, 1);
}
.pm-audience-option.on .pm-audience-check { opacity: 1; transform: none; }
.pm-tier-list { display: flex; flex-wrap: wrap; gap: 8px; margin: -3px 24px 12px; }
.pm-tier-list button {
  min-height: 40px;
  border: 1px solid color-mix(in srgb, currentColor 14%, transparent);
  border-radius: 999px;
  padding: 0 13px 0 9px;
  background: transparent;
  color: var(--fg2);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font: inherit;
  cursor: pointer;
}
.pm-tier-list button > span {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: color-mix(in srgb, currentColor 8%, transparent);
}
.pm-tier-list button.on { border-color: var(--em1); color: var(--fg); background: color-mix(in srgb, var(--em1) 9%, transparent); }
.pm-tier-list button.on > span { color: var(--em1); }

.pm-review {
  margin: 0 24px 10px;
  border: 1px solid color-mix(in srgb, currentColor 12%, transparent);
  border-radius: 18px;
  padding: 14px;
  background: color-mix(in srgb, var(--fg) 2.5%, transparent);
}
.pm-review-head,
.pm-review-note { display: flex; align-items: center; gap: 11px; }
.pm-review-head > span:last-child,
.pm-review-note > span { min-width: 0; flex: 1; }
.pm-review-head b,
.pm-review-head small,
.pm-review-note b,
.pm-review-note small { display: block; }
.pm-review-head b { color: var(--fg); font-size: 13px; }
.pm-review-head small,
.pm-review-note small { margin-top: 3px; color: var(--fg3); font-size: 10px; line-height: 1.35; }
.pm-review-state {
  width: 34px;
  height: 34px;
  flex: none;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--fg3);
  background: color-mix(in srgb, currentColor 9%, transparent);
}
.pm-review-state.ready { color: var(--em1); background: color-mix(in srgb, var(--em1) 10%, transparent); }
.pm-review-note {
  margin-top: 13px;
  border-radius: 12px;
  padding: 10px 11px;
  color: var(--em1);
  background: color-mix(in srgb, var(--em1) 7%, transparent);
}
.pm-review-note > i { font-size: 18px; }
.pm-review-note b { color: var(--fg); font-size: 11px; }
.pm-review h3 { margin: 15px 0 5px; color: var(--fg); font-size: 16px; line-height: 1.25; }
.pm-review p {
  margin: 14px 0 0;
  color: var(--fg2);
  font-size: 13px;
  line-height: 1.5;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
}
.pm-review p.empty { color: var(--fg3); font-style: normal; }
.pm-review-media { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin-top: 13px; }
.pm-review-thumb {
  position: relative;
  aspect-ratio: 1;
  border-radius: 9px;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: var(--em1);
  background: #151515 center / cover no-repeat;
}
.pm-review-thumb > b {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff;
  background: rgb(0 0 0 / .62);
  font-size: 13px;
}
.pm-review-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 14px 0 0; }
.pm-review-facts > div {
  min-width: 0;
  border-inline-start: 1px solid color-mix(in srgb, currentColor 11%, transparent);
  padding-inline-start: 9px;
}
.pm-review-facts dt { color: var(--fg3); font-size: 9px; }
.pm-review-facts dd { margin: 4px 0 0; color: var(--fg2); font-size: 10px; line-height: 1.3; overflow-wrap: anywhere; }

.pm-vault-search { position: relative; display: block; margin: 0 24px 10px; }
.pm-vault-search i {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 13px;
  transform: translateY(-50%);
  color: var(--fg3);
  pointer-events: none;
}
.pm-vault-search input { padding-block: 0; padding-inline: 38px 12px; }
.pm-vault-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0 24px 14px; }
.pm-vault-grid button {
  min-width: 0;
  border: 1px solid color-mix(in srgb, currentColor 12%, transparent);
  border-radius: 12px;
  padding: 6px;
  background: transparent;
  color: var(--fg2);
  font: inherit;
  font-size: 10px;
  text-align: start;
  cursor: pointer;
}
.pm-vault-grid button.on { border-color: var(--em1); color: var(--fg); }
.pm-vault-grid button > span:first-child { display: block; }
.pm-vault-grid button > span + span { display: block; margin-top: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-vault-grid button small { display: block; margin-top: 2px; color: var(--fg3); font-size: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pm-vault-thumb { aspect-ratio: 1; border-radius: 8px; background: #151515 center / cover no-repeat; }
.pm-vault-kind { display: grid; place-items: center; color: var(--em1); }
.pm-vault-grid button:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
.pm-vault-message { padding: 14px 26px; color: var(--fg3); font-size: 12px; }

/* An open panel owns the card: the chips row folds away when empty, the bar
   tucks up, and the panel is the one thing that scrolls. */
.pmbox.panel-open { overflow: hidden; }
.pmbox.panel-open .pmchipwrap:empty { display: none; }
.pmbox.panel-open .pmbar { margin-top: 12px; }

@media (max-width: 520px) {
  .pmwrap {
    padding: max(8px, env(safe-area-inset-top)) 10px max(8px, env(safe-area-inset-bottom));
    overflow: hidden;
  }
  .pmbox {
    max-height: calc(100dvh - max(16px, env(safe-area-inset-top) + env(safe-area-inset-bottom)));
    overscroll-behavior: contain;
  }
  .pmbox.panel-open {
    display: flex;
    flex-direction: column;
    height: calc(100dvh - max(16px, env(safe-area-inset-top) + env(safe-area-inset-bottom)));
  }
  .pmstate { padding-inline: 16px; }
  .pm-publish-boundary { margin-inline: 16px; }
  .pmupload { margin-inline: 16px; }
  .pmopts { gap: 3px; padding-inline: 14px; }
  .pm-vault-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 230px; }
  .pm-review { margin-inline: 16px; }
  .pm-review-facts { grid-template-columns: 1fr; }
  .pm-review-facts > div { display: flex; justify-content: space-between; gap: 12px; }
  .pm-review-facts dd { margin-top: 0; text-align: end; }
  .pmbox.panel-open .pmrow { align-items: center; padding-top: 4px; }
  /* The flare bar keeps its own width while a panel is up — the column would
     otherwise stretch it edge to edge, and the reference centres it on its own
     measure. */
  .pmbox.panel-open #pmflbar { margin-inline: auto; }
  .pmbox.panel-open #pmtxt {
    height: 64px !important;
    min-height: 64px;
    max-height: 64px;
    font-size: 22px;
    scrollbar-width: none;
  }
  .pmbox.panel-open #pmtxt::-webkit-scrollbar { display: none; }
  .pmmenu.on {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-color: var(--em1) transparent;
  }
  .pm-panel-nav {
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 8px 14px 0;
    background: var(--rise);
  }
  .pmbar { flex: none; gap: 10px; padding-inline: 14px; }
  .pmpost { min-width: 62px; padding-inline: 12px; }
  /* the phone reads the field at body size — the reference's own drop from
     the desktop's 26 */
  .pmrow textarea { font-size: 16px; line-height: 1.34; }
  /* And the story's title with it: iOS zooms any field under 16px the moment
     it takes focus, and moves the whole page under the thumb that pressed it.
     The reference guards every field this way at this width; the title is set
     at 19 on a desktop and belongs to the same rule here. */
  .pmttlw input { font-size: 16px; }
  .pmbox { border-bottom-style: none; }
}
@media (prefers-reduced-motion: reduce) {
  .pmwrap, .pmbox, .pmwrap.out, .pmwrap.out .pmbox { animation-duration: .01s; }
  .pmbar::before { animation: none; opacity: .75; }
  .pmmenu { transition: none; }
}
/* Visual story workspace follows the selected neutral canvas / text inspector direction. */
:root:root:root:root #pmwrap .pmbox.visual-story-composer { max-width:940px;width:min(940px,100%); }
:root:root:root:root #pmwrap .vs-editor { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(240px,.9fr);align-items:start;gap:28px;padding:20px 24px; }
:root:root:root:root #pmwrap .vs-stage { position:relative;width:100%;max-width:320px;aspect-ratio:9/16;margin:auto;overflow:hidden;border-radius:14px;background:#111;container-type:inline-size;border:1px solid var(--line); }
:root:root:root:root #pmwrap .vs-media { position:absolute;inset:0;width:100%;height:100%; }
:root:root:root:root #pmwrap .vs-text { position:absolute;z-index:2;transform:translate(-50%,-50%);width:max-content;max-width:80%;padding:1.667cqw;white-space:pre-wrap;overflow-wrap:anywhere;text-align:center;line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Arial,sans-serif;font-weight:700;letter-spacing:0;text-shadow:0 2px 6px #0008;cursor:grab;touch-action:none;user-select:none;outline:1px solid transparent; }
:root:root:root:root #pmwrap .vs-text.selected { outline-color:#ff9bac; }
:root:root:root:root #pmwrap .vs-text:active { cursor:grabbing; }
:root:root:root:root #pmwrap .vs-tools { display:grid;gap:18px;min-width:0; }
:root:root:root:root #pmwrap .vs-toolbar { display:flex;flex-wrap:wrap;gap:8px; }
:root:root:root:root #pmwrap .vs-editor button { min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:999px;background:var(--s2);color:var(--fg);font:600 13px/1.4 var(--sans);cursor:pointer; }
:root:root:root:root #pmwrap .vs-editor button[aria-pressed=true] { border-color:var(--em1); }
:root:root:root:root #pmwrap .vs-editor button:disabled { opacity:.45;cursor:default; }
:root:root:root:root #pmwrap .vs-label { display:grid;gap:8px;color:var(--fg2);font-size:13px; }
:root:root:root:root #pmwrap .vs-label textarea { width:100%;min-height:96px;resize:vertical;padding:12px;background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:12px;font:400 16px/1.5 var(--sans); }
:root:root:root:root #pmwrap .vs-label input { width:100%;min-height:44px;accent-color:var(--em1); }
:root:root:root:root #pmwrap .vs-colors { display:flex;flex-wrap:wrap;gap:6px; }
:root:root:root:root #pmwrap .vs-colors button { width:44px;padding:6px;border-radius:50%;background:var(--swatch);background-clip:content-box; }
:root:root:root:root #pmwrap .vs-layers { display:grid;gap:8px; }
:root:root:root:root #pmwrap .vs-layers button { text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
:root:root:root:root #pmwrap .vs-hint,:root:root:root:root #pmwrap .vs-tip { margin:12px 0 0;color:var(--fg2);font-size:12px;line-height:1.5; }
:root:root:root:root #pmwrap .vs-empty { height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;gap:12px; }
:root:root:root:root #pmwrap .vs-empty strong { font-size:22px;color:#fff; }
:root:root:root:root #pmwrap .vs-empty p { font-size:14px;line-height:1.5;color:#ccc; }
:root:root:root:root #pmwrap .vs-status { padding:12px 24px;color:var(--fg);font-size:14px; }
:root:root:root:root #pmwrap .visual-story-composer .pmatt.on { padding-top:0; }
:root:root:root:root #pmwrap .visual-story-composer .pmatt .pm-attachment-preview { display:none; }
@media(max-width:640px) {
 :root:root:root:root #pmwrap .vs-editor { grid-template-columns:minmax(0,1fr);padding:12px 18px;gap:16px; }
 :root:root:root:root #pmwrap .vs-stage { max-width:260px; }
 :root:root:root:root #pmwrap .vs-hint { text-align:center; }
 :root:root:root:root #pmwrap .vs-tools { gap:12px; }
}
/* The shared composer uses the approved canvas tokens. Draft, access and
   publishing behavior remain owned by Compose, including refusal states. */
/* Comments and replies use the same canvas, including the inline variant.
   Keep these selectors scoped: the post editor owns its own draft lifecycle. */
:root #flcmw.pmwrap { background: #0009; backdrop-filter: blur(8px); }
:root #flcmw #flcmbox.pmbox { width: min(600px, 100%); max-width: 600px; background: var(--sheet-ground); color: var(--fg); border: 1px solid var(--line); box-shadow: 0 24px 80px #0004; backdrop-filter: none; -webkit-backdrop-filter: none; }
:root #flcmw.inline-comment-writer #flcmbox.pmbox { width: 100%; box-shadow: none; background: var(--ink); }
:root #flcmw #flcmbox .pmtop { padding: 20px 24px 10px; gap: 12px; justify-content: space-between; }
:root #flcmw #flcmbox .pmtop h2 { margin: 0; font: 900 26px/1.2 var(--display); letter-spacing: -.035em; }
:root #flcmw #flcmbox .pmx { flex: none; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--fg); }
:root #flcmw #flcmbox .pmx svg { width: 20px; height: 20px; }
:root #flcmw #flcmbox .flav { display: grid; place-items: center; background-color: var(--cap-on-bg); color: var(--on-action-ink); font: 600 18px var(--sans); }
:root #flcmw #flcmbox :is(.flqm,.flqto,.pm-action-note) { color: var(--fg2); font: 400 13px/1.5 var(--sans); }
:root #flcmw #flcmbox .flqto em { background: none; color: var(--fg); -webkit-text-fill-color: currentColor; font-style: normal; }
:root #flcmw #flcmbox .flseam { background: var(--line); animation: none; }
:root #flcmw #flcmbox .flseam::after { display: none; }
:root #flcmw #flcmta { min-height: 100px; padding: 12px 14px; border: 1px solid var(--input-edge); border-radius: 16px; background: var(--input-bg); color: var(--fg); font: 400 18px/1.5 var(--sans); letter-spacing: 0; }
:root #flcmw #flcmta::placeholder { color: var(--fg2); }
:root #flcmw #flcmbox .pmin { background: var(--input-bg); color: var(--fg); border: 1px solid var(--input-edge); border-radius: 14px; font: 400 16px/1.5 var(--sans); }
:root #flcmw #flcmbox .pmin::placeholder { color: var(--fg2); }
:root #flcmw #flcmbox .pmadd { color: var(--fg); font: 600 13px/1.4 var(--sans); }
:root #flcmw #flcmbox .pmchip { color: var(--fg); background: var(--g06); border-color: var(--line); }
:root #flcmw #flcmtools { background: var(--sheet-ground); border-top: 1px solid var(--line); padding: 16px 24px; gap: 8px; border-radius: 0 0 21px 21px; }
:root #flcmw #flcmtools::before { display: none; }
:root #flcmw #flcmtools .pmtool { color: var(--fg); border: 1px solid var(--line); border-radius: 50%; cursor: pointer; }
:root #flcmw #flcmtools .pmtool:is(:hover,[aria-pressed='true']):not(:disabled) { background: var(--cap-on-bg); color: var(--on-action-ink); }
:root #flcmw #flcmgo { min-height: 48px; padding: 5px 6px 5px 18px; gap: 12px; border: 1px solid var(--cap-on-edge); background: var(--cap-on-bg); color: var(--on-action-ink); font: 600 14px/1 var(--sans); }
:root #flcmw .comment-send-arrow { display: grid; place-items: center; width: 34px; height: 34px; flex: none; border-radius: 50%; background: var(--ember); color: #080808; }
:root #flcmw .comment-send-arrow svg { width: 20px; height: 20px; }
:root #flcmw #flcmbox button:disabled { opacity: .5; cursor: not-allowed; }
:root #flcmw #flcmbox :is(button,input,textarea):focus-visible { outline: 2px solid var(--fg); outline-offset: 3px; }
@media (max-width: 700px) {
  :root #flcmw #flcmbox .pmtop { padding: 16px; }
  :root #flcmw #flcmbox .pmtop h2 { font-size: 23px; }
  :root #flcmw #flcmta { font-size: 16px; }
  :root #flcmw #flcmtools { padding: 12px; gap: 6px; }
  :root #flcmw #flcmgo { margin-left: auto; padding-left: 12px; gap: 8px; }
}
@media (prefers-reduced-motion: no-preference) {
  :root #flcmw #flcmbox button { transition: background-color 180ms ease, color 180ms ease, transform 180ms ease; }
  :root #flcmw #flcmbox button:not(:disabled):active { transform: scale(.96); }
}
@media (prefers-reduced-motion: reduce) {
  :root #flcmw, :root #flcmw #flcmbox, :root #flcmw #flcmbox * { animation: none !important; transition: none !important; }
}
#pmwrap.pmwrap { background: #0009; backdrop-filter: blur(8px); padding: 20px; }
#pmwrap .pmbox { max-width: 600px; max-height: calc(100dvh - 40px); background: var(--sheet-ground); color: var(--fg); border: 1px solid var(--line); border-radius: 24px; backdrop-filter: none; box-shadow: 0 24px 80px #0004; animation: canvasComposeIn 280ms cubic-bezier(.16,1,.3,1) both; }
#pmwrap.pmwrap.out .pmbox { animation: canvasComposeOut 220ms ease both; }
#pmwrap .pmtop { padding: 22px 24px 0; gap: 16px; }
#pmwrap .pmtop h2 { margin: 0; font: 900 28px/1.15 var(--display); letter-spacing: -.035em; }
#pmwrap .pmbox .pmx { display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--fg); background: transparent; }
#pmwrap .pmbox .pmx svg { width: 20px; height: 20px; }
#pmwrap .pmstate { justify-content: flex-start; font-size: 12px; min-height: 28px; padding-top: 6px; }
#pmwrap .pmstate button { margin-inline-start: auto; }
#pmwrap .pmrow { align-items: flex-start; gap: 14px; padding-top: 16px; }
#pmwrap .pmav { position: relative; display: grid; place-items: center; width: 44px; height: 44px; overflow: hidden; background: var(--cap-on-bg); color: var(--on-action-ink); font: 700 18px var(--sans); }
#pmwrap .pmav img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#pmwrap .pmav img[hidden] { display: none; }
#pmwrap .pmrow textarea { min-width: 0; min-height: 130px; font: 400 22px/1.5 var(--sans); color: var(--fg); letter-spacing: -.015em; padding-top: 6px; }
#pmwrap .pmrow textarea::placeholder, #pmwrap .pmrow textarea:focus::placeholder { color: var(--fg3); }
#pmwrap .pmttlw input { min-width: 0; width: 100%; color: var(--fg); font: 700 22px/1.3 var(--sans); }
#pmwrap .pm-publish-boundary, #pmwrap .pmupload { background: transparent; border-color: var(--line); border-radius: 16px; }
#pmwrap .pm-publish-boundary b, #pmwrap .pmupload-copy b { font-size: 13px; }
#pmwrap .pm-publish-boundary small, #pmwrap .pmupload-copy small { font-size: 12px; color: var(--fg2); line-height: 1.5; }
#pmwrap .pmopts { gap: 10px; flex-wrap: wrap; overflow: visible; }
#pmwrap .pm-simple-option { max-width: 100%; gap: 8px; background: transparent; border: 1px solid var(--line); font-size: 14px; }
#pmwrap .pm-simple-option svg { width: 18px; height: 18px; flex: none; transition: transform 200ms ease; }
#pmwrap .pm-simple-option[aria-expanded='true'] .pm-options-chevron { transform: rotate(180deg); }
#pmwrap .pm-native-option, #pmwrap .pmk2 { border: 1px solid var(--line); border-radius: 50%; color: var(--fg); }
#pmwrap .pm-native-option svg, #pmwrap .pmk2 svg { width: 22px; height: 22px; }
#pmwrap .pmbox :is(.pm-native-option.on,.pmk2.on,.pm-simple-option[aria-expanded='true']) { background: var(--cap-on-bg); color: var(--on-action-ink); border-color: var(--cap-on-edge); }
#pmwrap .pmbox.panel-open { overflow-y: auto; }
#pmwrap .pmmenu.on { max-height: 440px; overflow-y: auto; }
#pmwrap .pm-panel-nav { background: var(--sheet-ground); }
#pmwrap .pm-panel-back { padding: 0 12px; border-radius: 999px; }
#pmwrap .pm-panel-back svg { width: 18px; height: 18px; transform: rotate(180deg); }
#pmwrap .pmk { font: 700 18px/1.3 var(--sans); text-transform: none; letter-spacing: -.02em; color: var(--fg); padding-top: 16px; }
#pmwrap .pmnote { color: var(--fg2); font-size: 13px; line-height: 1.5; padding-bottom: 14px; }
#pmwrap .pm-date-line { font-size: 14px; gap: 8px; }
#pmwrap .pm-date-line input, #pmwrap .pm-vault-search input { min-height: 48px; background: var(--input-bg); border: 1px solid var(--input-edge); color: var(--fg); font-size: 16px; border-radius: 14px; }
#pmwrap .pm-expiry-line { margin-top: 16px; }
#pmwrap .pm-audience { border: 0; display: grid; gap: 8px; }
#pmwrap .pm-audience-option { border: 1px solid var(--line); border-radius: 16px; padding: 14px; color: var(--fg); background: transparent; }
#pmwrap .pm-audience-option:not(.on):hover { background: var(--g08); }
#pmwrap .pm-audience-copy b { font-size: 14px; }
#pmwrap .pm-audience-copy small { color: var(--fg2); font-size: 12px; line-height: 1.4; }
#pmwrap .pm-audience-option.on { background: var(--cap-on-bg); color: var(--on-action-ink); border-color: var(--cap-on-edge); }
#pmwrap .pm-audience-option.on :is(.pm-audience-icon,.pm-audience-copy small,.pm-audience-check) { color: inherit; }
#pmwrap .pmbar { flex-wrap: wrap; gap: 10px; padding: 18px 24px; border-top: 1px solid var(--line); background: var(--sheet-ground); }
#pmwrap .pmbar::before { display: none; }
#pmwrap .pmadd-media { color: var(--fg); font-size: 14px; border-color: var(--line); padding: 0 14px; }
#pmwrap .pmpost { height: 52px; min-width: 122px; padding: 6px 7px 6px 22px; gap: 16px; border: 1px solid var(--cap-on-edge); background: var(--cap-on-bg); color: var(--on-action-ink); font-size: 15px; }
#pmwrap .pmpost:disabled { opacity: .5; }
#pmwrap .pmpost__arrow { display: grid; place-items: center; width: 38px; height: 38px; flex: none; border-radius: 50%; background: linear-gradient(135deg,#ff2d6f,#ff2d6f); color: #fff; }
#pmwrap .pmpost__arrow svg { width: 20px; height: 20px; transition: transform 180ms ease; }
#pmwrap .pmpost:not(:disabled):hover .pmpost__arrow svg { transform: translateX(3px); }
#pmwrap .pmbox :is(button,[role='button']) { transition: transform 180ms ease, color 180ms ease, background-color 180ms ease, opacity 180ms ease; }
#pmwrap .pmbox :is(button,[role='button']):not(:disabled):not([aria-disabled='true']):active { transform: scale(.96); }
#pmwrap .pmbox :is(button,[role='button'],input,textarea):focus-visible { outline: 2px solid var(--fg); outline-offset: 3px; }
:root .pm-background-post { background: var(--sheet-ground); }
:root .pm-background-post button { background: var(--cap-on-bg); color: var(--on-action-ink); }
@keyframes canvasComposeIn { from { opacity: 0; transform: translateY(18px) scale(.98); } to { opacity: 1; transform: none; } }
@keyframes canvasComposeOut { to { opacity: 0; transform: translateY(12px) scale(.98); } }
@media (max-width: 600px) {
  #pmwrap.pmwrap { padding: 10px; }
  #pmwrap .pmbox { max-height: calc(100dvh - 20px); border-bottom-style: solid; border-radius: 22px; }
  #pmwrap .pmtop { padding: 18px 18px 0; }
  #pmwrap .pmtop h2 { font-size: 25px; }
  #pmwrap .pmrow { padding-inline: 18px; gap: 12px; }
  #pmwrap .pmrow textarea { font-size: 18px; min-height: 110px; }
  #pmwrap .pmopts { padding-inline: 18px; gap: 8px; }
  #pmwrap .pm-simple-option { font-size: 13px; padding-inline: 12px; }
  #pmwrap .pmbar { padding: 16px 18px; }
  #pmwrap .pmadd-media { width: 44px; padding: 0; }
  #pmwrap .pmpost { min-width: 108px; height: 48px; padding-left: 18px; gap: 12px; }
  #pmwrap .pmpost__arrow { width: 34px; height: 34px; }
  #pmwrap .pmbox.panel-open { height: calc(100dvh - 20px); }
  #pmwrap .pmbox.panel-open .pmmenu.on { max-height: none; flex: 1 1 auto; min-height: 140px; }
}
@media (prefers-reduced-motion: reduce) {
  #pmwrap.pmwrap, #pmwrap .pmbox, #pmwrap.pmwrap.out, #pmwrap.pmwrap.out .pmbox { animation: none; }
  #pmwrap .pmbox *, :root .pm-background-post { transition: none !important; animation: none !important; }
}
#pmwrap .pm-access-choice { display:flex;gap:8px;grid-column:1 / -1; }
#pmwrap .pm-access-choice button { min-height:44px;padding:10px 22px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--fg);font:600 14px/1.3 var(--sans); }
#pmwrap .pm-access-choice button[aria-pressed=true] { background:var(--fg);color:var(--ink); }
#pmwrap .pm-access-choice button:disabled { opacity:.5;cursor:not-allowed; }
/*$vite$:1*/
/* Preserved source: /_build/assets/integrated-checkout.solana1.css */
/* What a raised relationship panel says. Shared by companion and question
   sheets because they are the same panel with different words in it. */
.memseam {
  display: block;
  height: 2px;
  margin: 0 -22px;
  background-image: linear-gradient(90deg, transparent, var(--em1) 28%, var(--em2) 62%, transparent);
  background-size: 100% 100%;
  background-position: 0 0;
  animation: seam var(--seam-period) ease-in-out infinite;
}
.memtop { display: flex; align-items: center; gap: 12px; }
.memh {
  flex: 1;
  margin: 0;
  padding: 18px 0 6px;
  color: var(--fg3);
  /* an <h2>, at the weight the browser gives one */
  font: 700 10px/1.5 var(--mono);
  letter-spacing: .24em;
}
.memclose {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--touch);
  width: var(--touch);
  height: var(--touch);
  min-height: var(--touch);
  color: var(--fg2);
  cursor: pointer;
  transition: color .2s ease;
}
.memclose:hover { color: var(--fg); }

.rch-note { margin: 10px 0 12px; color: var(--fg2); font: 400 12.5px/1.5 var(--sans); }
.rch-error { color: var(--em1); }
:root[data-mode='paper'] .rch-error { color: var(--em1-print); }
.rch-said { color: var(--em2); }
/* The price, said once, at the size a price deserves. */
.rch-big { margin: 8px 0 6px; color: var(--fg); font: 700 32px/1.5 var(--sans); }
.rch-big span {
  display: block;
  margin-top: 8px;
  color: var(--fg2);
  font: 400 11px/1.5 var(--mono);
  font-style: normal;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.memempty { margin: 12px 0; color: var(--fg3); font: 400 13px/1.6 var(--sans); }
.memsub { margin: 8px 0 12px; color: var(--fg2); font: 400 12.5px/1.6 var(--sans); }
.memh3 { margin: 22px 0 8px; color: var(--fg); font: 650 13px/1.4 var(--sans); }

/* ── the tiers, as options ───────────────────────────────────────────────────
   A capsule row switches a view. This buys one of three different things, at
   three prices, with three promises — so it takes the house's option-row
   shape: a mark, a label with its price, and what it promises under it. No
   pill rule is written here; Pill.css stays the only file that styles a pill. */
.rch-opts { margin: 12px 0 4px; }
button.rch-opt {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: start;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
  transition: opacity .22s var(--curve);
}
.rch-opt:not(.on) { opacity: .62; }
.rch-opt:hover:not(.on) { opacity: .82; }
.rch-opt:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
/* the mark: an empty ring until it is chosen, then the ember, filled. It
   arrives at its size rather than growing into it — MOTION.md rule 1. */
.rch-mk {
  position: relative;
  flex: none;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  border: 1.5px solid var(--fg3);
  border-radius: 999px;
  transition: border-color .22s var(--curve);
}
.rch-mk::after {
  content: '';
  position: absolute;
  inset: 3px;
  border-radius: 999px;
  background: linear-gradient(118deg, var(--em1), var(--em2));
  transform: scale(0);
}
.rch-opt.on .rch-mk { border-color: var(--em1); }
.rch-opt.on .rch-mk::after { transform: scale(1); }
.rch-ot { flex: 1; min-width: 0; }
.rch-ot b {
  display: flex;
  gap: 10px;
  align-items: baseline;
  justify-content: space-between;
  color: var(--fg);
  font-size: 13.5px;
  font-weight: 500;
}
.rch-ot b em {
  flex: none;
  color: var(--fg2);
  font: 500 11.5px/1.5 var(--mono);
  font-style: normal;
}
.rch-opt.on .rch-ot b em { color: var(--em2); }
.rch-ot s {
  display: block;
  margin-top: 4px;
  color: var(--fg2);
  font-size: 11.5px;
  line-height: 1.45;
  text-decoration: none;
}
:root[data-mode='paper'] .rch-ot b { color: #101010; }
.sheet button.rch-submit { width: 100%; margin-top: 18px; letter-spacing: .05em; }

/* ── whether the name rides with the question ─────────────────────────────── */
.rch-switch-row {
  display: flex;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  padding: 11px 0;
  border-bottom: 1px solid var(--line);
}
.rch-switch-copy { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.rch-switch-copy b { color: var(--fg); font-size: 13.5px; font-weight: 500; }
.rch-switch-copy s { color: var(--fg2); font-size: 11.5px; text-decoration: none; }
:root[data-mode='paper'] .rch-switch-copy b { color: #101010; }
/* No text in it, so it keeps the plain type the reference's unstyled button
   has; what it draws is the track and the knob. */
button.rch-switch {
  font: 400 13.3333px/normal Arial;
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 54px;
  min-width: 54px;
  height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.rch-switch-track {
  font: 400 13.3333px/normal Arial;
  position: relative;
  display: block;
  width: 46px;
  height: 28px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  transition: background-color .2s ease, border-color .2s ease;
}
/* The knob does not travel: it is where the state is. Only its colour and the
   track's colour change, on the same 200ms the reference uses. */
.rch-switch-track i {
  position: absolute;
  inset-block-start: 3px;
  inset-inline-start: 3px;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: var(--fg3);
  box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
  transition: background-color .2s ease;
}
button.rch-switch[aria-checked='true'] .rch-switch-track { border-color: var(--em1); background: var(--em1); }
button.rch-switch[aria-checked='true'] .rch-switch-track i { inset-inline-start: 21px; background: #fff; }
button.rch-switch:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
button.rch-switch[aria-disabled='true'] { cursor: not-allowed; }
:root[data-mode='paper'] .rch-switch-track { border-color: rgba(0, 0, 0, .18); background: rgba(0, 0, 0, .07); }
:root[data-mode='paper'] button.rch-switch[aria-checked='true'] .rch-switch-track { border-color: #D51F58; background: #D51F58; }

/* The question's own field keeps a neutral edge while its caret carries focus.
   It stays scoped here because the companion sheet owns a separate field. */
.rch-line.flline,
.rch-line {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  align-self: stretch;
  max-width: 440px;
  margin-top: 26px;
  padding: 14px 15px;
  border: 1px solid var(--field-line);
  border-radius: 12px;
  transition: border-color .25s ease;
}
:root[data-mode='paper'] .rch-line { border-color: var(--line); }
.rch-line.flline input,
.rch-line input {
  width: 100%;
  min-height: 44px;
  padding: 0;
  border: 0;
  outline: 0;
  background: none;
  color: var(--fg);
  /* the reference's field keeps the browser's own 13.33px on a desktop and
     lifts it to 16px on a phone so that tapping it cannot zoom the page */
  font: 400 13.3333px/normal var(--sans);
}
.rch-line.flline input::placeholder,
.rch-line input::placeholder { color: var(--fg3); }
@media (max-width: 768px) {
  .rch-line.flline input,
.rch-line input { font-size: 16px; }
}

/* The reach sheets are the reference's own measure: 22px of side air, the seam
   reaching both edges of it, and — on a phone — a card that floats 20px in
   from the edges rather than standing against them. That inset is the
   reference's for these two sheets; every other sheet in the product keeps the
   house's bottom-edge geometry. */
.sheet:not(.sheet--tall):has(.memseam) { padding: 0 22px calc(26px + env(safe-area-inset-bottom)); }
@media (max-width: 900px) {
  /* On a phone these two stand in the middle of the window rather than against
     the bottom edge: they are a card the page is holding up, not a drawer, and
     that is where the reference puts them. */
  .sheet:not(.sheet--tall):has(.memseam), .sheet--tall {
    inset: 0;
    width: auto;
    max-width: calc(100vw - 40px);
    height: max-content;
    margin: auto 20px;
    border-radius: 22px;
  }
  /* the tall one keeps its own side air */
  .sheet--tall { padding-inline: 16px; }
}
.post-checkout { min-width: 0; }
.post-checkout .memtop { gap: 16px; }
.post-checkout .memh { font-size: 18px; line-height: 1.3; letter-spacing: -.025em; }
.post-checkout .memsub { font-size: 13px; line-height: 1.5; }
.post-checkout .rch-note { font-size: 14px; line-height: 1.5; }
.post-checkout__actions { display: grid; gap: 10px; margin-top: 18px; }
.post-checkout__actions > .pill { width: 100%; min-height: 44px; margin: 0; white-space: normal; }
.post-checkout .post-checkout__back { width: 100%; min-height: 44px; margin-top: 10px; }
/*$vite$:1*/
/* Preserved source: /_build/assets/integrated-desk.solana1.css */
/* The desk. Rows that hold a person, a message and a figure; then the grid of
   the two things she keeps beside the inbox. */
.sdk__anchor { scroll-margin-top: 96px; }
.sdk__h { margin-top: 34px; scroll-margin-top: 96px; }
.sdk__rows { margin-top: 12px; }
.sdk__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 14px; }
.sdk__row { align-items: center; }
.sdk__tick {
  flex: none;
  width: 20px;
  height: 20px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: transparent;
  cursor: pointer;
  transition: border-color var(--m-state) var(--curve), background var(--m-state) var(--curve);
}
.sdk__tick--on { border-color: transparent; background: var(--em1); }
.sdk__tick:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; }
.sdk__who {
  flex: 1;
  min-width: 0;
  color: var(--fg);
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sdk__who:hover { color: var(--em1); }
.sdk__last {
  flex: 2;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sdk__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}
.sdk__help { grid-template-columns: 1fr; margin-top: 16px; }
.sdk__calendar { scroll-margin-top: 96px; }
.sdk__week { display: flex; gap: 8px; margin: 4px 0 12px; }
.sdk__week span {
  flex: 1;
  display: grid;
  gap: 3px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  text-align: center;
}
.sdk__week b { font-size: 15px; font-variant-numeric: tabular-nums; }
.sdk__week small { color: var(--fg3); font-size: 9px; }
.sdk__scheduled { flex-wrap: wrap; align-items: center; }
.sdk__scheduled-copy { flex: 1; min-width: 0; display: grid; gap: 3px; }
.sdk__time input {
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--ink);
  color: var(--fg);
  font: inherit;
  font-size: 12px;
}

.sdk__vault-tools {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  height: 52px;
  margin-top: 14px;
}
.sdk__upload { position: relative; gap: 7px; overflow: hidden; letter-spacing: .65px; }
.sdk__upload input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.sdk__upload .ti { display: block; font-size: 13px; line-height: 13px; }
/* the label and the field share the line by flex shrink, as the reference's do */
.sdk__vault-lab { display: block; flex: 0 1 auto; }
.sdk__vault-tools .st-tabs { margin-top: 0; }
.st-line.sdk__vault-search { flex: 1; flex-basis: 0%; max-width: none; height: 52px; margin-top: 0; }
.sdk__vault {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 10px;
  margin-top: 14px;
}
.sdk__file {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 14px;
}
.sdk__thumb {
  display: block;
  aspect-ratio: 1;
  border-radius: 10px;
  background: var(--rise) center / cover no-repeat;
}
.sdk__thumb--kind {
  display: grid;
  place-items: center;
  color: var(--fg3);
  font-size: 20px;
}
.sdk__filename {
  color: var(--fg);
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sdk__file .st-mut, .sdk__file small { font-size: 10px; }

.sdk__perf { margin-top: 12px; }
.sdk__perf-row { flex-wrap: wrap; align-items: center; }
.sdk__perf-main {
  flex: 1;
  min-width: 0;
  display: grid;
  gap: 4px;
  color: inherit;
  text-decoration: none;
}
.sdk__metrics { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 11px; }
.sdk__post-acts { display: flex; flex-wrap: wrap; gap: 8px; }
.sdk__edit { flex: 1; min-width: 0; display: grid; gap: 8px; }
.sdk__edit label { color: var(--fg3); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; }
.sdk__edit textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--ink);
  color: var(--fg);
  font: inherit;
  font-size: 13px;
  line-height: 1.45;
  resize: vertical;
}

@media (max-width: 760px) {
  .sdk__grid { grid-template-columns: 1fr; }
  .sdk__last { flex-basis: 100%; }
}

@media (max-width: 680px) {
  .sdk__vault-tools { grid-template-columns: auto minmax(0, 1fr); height: auto; }
  /* The capsule keeps its mark and gives up its word — 354px does not hold
     both the word and the folder tabs. The label stays for a screen reader. */
  .sdk__upload-t { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .st-line.sdk__vault-search { grid-column: 1 / -1; grid-row: 1; height: 47px; }
  .sdk__upload { grid-row: 2; grid-column: 1; }
  .sdk__vault-tools .st-tabs { grid-row: 2; grid-column: 2; justify-self: end; width: 291px; max-width: 100%; }
}

/* On a phone the search line takes the whole first row; the upload and the
   type tabs share the second, the tabs scrolling in place if they must. */
@media (max-width: 700px) {
  .sdk__vault-tools { grid-template-columns: 1fr auto; }
  .sdk__vault-search { grid-column: 1 / -1; grid-row: 1; }
  .sdk__upload { grid-column: 1; grid-row: 2; justify-self: start; }
  .sdk__vault-tools .st-tabs { grid-column: 2; grid-row: 2; max-width: 100%; overflow-x: auto; }
}

.sdk__post-search { display:grid;gap:8px;margin:16px 0 20px; }
.sdk__post-search label { color:var(--fg);font:600 14px/1.5 var(--sans); }
.sdk__post-search > div { display:flex;align-items:center;gap:8px; }
.sdk__post-search input { flex:1;min-width:0;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--s2);color:var(--fg);font:400 16px/1.4 var(--sans); }
.sdk__post-search input:focus-visible { outline:2px solid var(--em1);outline-offset:2px; }
.sdk__post-search .pill { flex:none;min-height:44px; }
.sdk__post-identity { display:block;margin-top:4px;color:var(--fg2);font:400 13px/1.5 var(--sans); }
@media(max-width:480px) { .sdk__post-search > div { flex-wrap:wrap; } .sdk__post-search input { flex-basis:100%; } }
/*$vite$:1*/
/* Preserved source: /_build/assets/integrated-live.solana1.css */
/* The live room: a whole-screen dark stage. No video is drawn until transport
   exists — the stage says what is open instead. Only colour animates; the
   reference's floating reactions and gift banners keep their fades, and the
   travel they rode on is dropped by house law. */

.callwrap {
  position: fixed;
  inset: 0;
  z-index: 99996;
  width: 100dvw;
  height: 100dvh;
  min-height: 100dvh;
  overflow: hidden;
  background: #000;
  color: #fff;
}
.callwrap:focus { outline: none; }
.callvid {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.callmid { flex: 1; }

.event-room-stage {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 8px;
  padding: 90px 28px 260px;
  background: #000;
  color: #fff;
  text-align: center;
}
.event-room-mark {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  margin-bottom: 8px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 50%;
  color: var(--em1);
  font-size: 25px;
  /* the reference breathes this border and lifts it 2px; the lift is travel,
     so only the border's colour breathes here */
  animation: eventRoomBreathe 2.6s var(--curve) infinite;
}
@keyframes eventRoomBreathe { 50% { border-color: rgba(255, 45, 111, .58); } }
.event-room-stage b {
  max-width: 22ch;
  font-size: clamp(28px, 5vw, 48px);
  line-height: 1;
  letter-spacing: -.035em;
}
.event-room-stage > span:not(.event-room-mark) {
  color: var(--em1);
  font: 700 clamp(20px, 3vw, 28px)/1.2 var(--sans);
}
.event-room-stage small { max-width: 48ch; color: #9c9c9c; font-size: 12px; line-height: 1.5; }

/* ── the top line ─────────────────────────────────────────────────────────── */
.calltop {
  position: relative;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: calc(18px + env(safe-area-inset-top)) 22px 0;
}
.calltop-gap { flex: 1; }
.cspend {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 12px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 99px;
  background: rgba(0, 0, 0, .5);
  color: #fff;
  font-size: 12.5px;
  font-variant-numeric: tabular-nums;
}
.live-mode {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  padding: 0 14px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 99px;
  background: rgba(0, 0, 0, .5);
  color: #fff;
  font-size: 12px;
  text-transform: capitalize;
  cursor: pointer;
}

/* ── the goal ─────────────────────────────────────────────────────────────── */
.fllv-goal { position: relative; z-index: 3; margin: 12px 22px 0; }
.fllv-goal .gt {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #fff;
  font-size: 12.5px;
  font-weight: 600;
}
.fllv-goal .gt i { color: var(--em1); }
.fllv-goal .gt span { margin-left: auto; color: rgba(255, 255, 255, .62); font-weight: 400; }
.fllv-goal .gb {
  height: 5px;
  margin-top: 7px;
  border-radius: 99px;
  background: rgba(255, 255, 255, .12);
  overflow: hidden;
}
.fllv-goal .gb i {
  display: block;
  height: 100%;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--em1), var(--em2));
  transition: width .6s var(--curve);
}

/* ── milestones and the latest supporter ──────────────────────────────────── */
.live-support-rail {
  position: relative;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 10px 22px 0;
}
.live-support-rail span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 11px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 99px;
  background: rgba(0, 0, 0, .5);
  color: rgba(255, 255, 255, .8);
  font-size: 11.5px;
}
.live-support-rail span i { color: var(--em1); }
.live-support-rail span.reached { border-color: rgba(255, 45, 111, .4); color: #fff; }
.live-support-rail span b { font-variant-numeric: tabular-nums; }

/* ── the pin ──────────────────────────────────────────────────────────────── */
.fllv-pin {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: baseline;
  gap: 7px;
  margin: 10px 22px 0;
  padding: 9px 13px;
  border: 1px solid rgba(255, 45, 111, .3);
  border-radius: 12px;
  background: rgba(0, 0, 0, .55);
  font-size: 12.5px;
}
.fllv-pin i { color: var(--em1); }
.fllv-pin .x {
  margin-left: auto;
  min-width: 44px;
  min-height: 44px;
  margin-block: -12px;
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, .6);
  font-size: 17px;
  cursor: pointer;
}

/* ── reactions and gift banners ───────────────────────────────────────────── */
#fllvfloats { position: absolute; inset: 0; z-index: 5; overflow: hidden; pointer-events: none; }
/* the reference floats these up 46vh; colour is what moves here */
.fllv-float { position: absolute; bottom: 130px; font-size: 26px; animation: fllvFloatFade 2.5s var(--curve) forwards; }
@keyframes fllvFloatFade { 0% { opacity: 0; } 12% { opacity: 1; } 100% { opacity: 0; } }
.fllv-gift {
  position: absolute;
  left: 50%;
  bottom: 150px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  border: 1px solid rgba(255, 45, 111, .4);
  border-radius: 99px;
  background: rgba(0, 0, 0, .6);
  color: #fff;
  font-size: 14px;
  opacity: 0;
  transition: opacity .5s var(--curve);
}
.fllv-gift.on { opacity: 1; }
.fllv-gift.big { padding: 12px 24px; font-size: 17px; box-shadow: 0 0 34px rgba(255, 45, 111, .35); }
.fllv-gift i, .fllv-gift em { color: var(--em1); font-style: normal; font-weight: 700; }

/* ── the chat and controls ────────────────────────────────────────────────── */
.callbot {
  position: relative;
  z-index: 3;
  width: min(920px, calc(100% - 48px));
  margin-inline: auto;
  padding-bottom: calc(18px + env(safe-area-inset-bottom));
}
.fllv-chat {
  display: flex;
  flex-direction: column;
  gap: 7px;
  max-height: 32dvh;
  margin-bottom: 10px;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-mask-image: linear-gradient(180deg, transparent, #000 18%);
  mask-image: linear-gradient(180deg, transparent, #000 18%);
}
.fllv-line { display: flex; align-items: baseline; gap: 9px; }
.fllv-line.gone { opacity: .35; text-decoration: line-through; }
.fllv-line .a {
  flex: none;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .1);
  color: rgba(255, 255, 255, .75);
  font-size: 11px;
  font-weight: 700;
  align-self: flex-start;
}
.fllv-line .b { min-width: 0; color: #fff; font-size: 13.5px; line-height: 1.45; text-shadow: 0 1px 2px rgba(0, 0, 0, .6); }
.fllv-line .b b { margin-right: 4px; color: rgba(255, 255, 255, .85); }
.fllv-line .b .vip { color: var(--em2); font-style: normal; margin-left: 3px; }
.fllv-line .mod { display: inline-flex; gap: 2px; margin-left: auto; }
.fllv-line .mod button {
  min-width: 44px;
  min-height: 44px;
  margin-block: -12px;
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, .55);
  cursor: pointer;
}
.fllv-line .mod button:hover { color: #fff; }

.fllv-react { display: flex; gap: 6px; margin-bottom: 10px; }
.fllv-react button {
  min-width: 44px;
  min-height: 44px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 99px;
  background: rgba(0, 0, 0, .45);
  font-size: 17px;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease;
}
.fllv-react button:hover { border-color: rgba(255, 45, 111, .5); }

.event-end-review {
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
  padding: 14px 16px;
  border: 1px solid rgba(255, 45, 111, .38);
  border-radius: 16px;
  background: rgba(0, 0, 0, .82);
  color: #fff;
}
.event-end-review > b { font-size: 13px; }
.event-end-review p { margin: 0; color: rgba(255, 255, 255, .74); font-size: 12px; line-height: 1.5; }
.event-end-review .event-end-problem { color: #FF9AB8; }
.event-end-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.event-end-actions .pill { min-height: 44px; }

.cctl {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 6px 6px 16px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 99px;
  background: rgba(0, 0, 0, .55);
  -webkit-backdrop-filter: blur(18px) saturate(1.4);
  backdrop-filter: blur(18px) saturate(1.4);
}
.cctl input {
  flex: 1;
  min-width: 0;
  min-height: 44px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font-size: 16px;
}
.cctl input::placeholder { color: rgba(255, 255, 255, .48); }
.cbtn, .cend {
  flex: none;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 50%;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  font-size: 17px;
  cursor: pointer;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}
.cbtn:hover { border-color: rgba(255, 45, 111, .5); color: var(--em1); }
.cend { border-color: rgba(255, 45, 111, .4); color: #FF6B96; }

/* ── the private gate ─────────────────────────────────────────────────────── */
.live-private-gate {
  position: absolute;
  inset: 0;
  z-index: 8;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 11px;
  padding: 28px;
  background: radial-gradient(circle at 50% 44%, rgba(255, 45, 111, .18), transparent 34%), rgba(0, 0, 0, .94);
  text-align: center;
}
.live-private-gate i { color: var(--em1); font-size: 27px; }
.live-private-gate b { font-size: 19px; }
.live-private-gate span { max-width: 34ch; color: rgba(255, 255, 255, .72); font-size: 13px; }
.live-private-gate button {
  min-height: 44px;
  padding: 0 20px;
  border: 1px solid #fff;
  border-radius: 99px;
  background: #fff;
  color: #E60048;
  font-weight: 600;
  cursor: pointer;
}
.live-private-gate button.quiet { border-color: rgba(255, 255, 255, .2); background: transparent; color: rgba(255, 255, 255, .75); font-weight: 400; }

/* ── the recap ────────────────────────────────────────────────────────────── */
.callwrap .mwrap { max-width: 920px; margin: 0 auto; padding: 90px 28px 0; overflow-y: auto; height: 100%; }
.kick { color: var(--fg3); font: 700 10px/15px var(--mono, 'JetBrains Mono', monospace); letter-spacing: .24em; }
.recap-h1 { margin-top: 14px; font-size: clamp(28px, 4vw, 42px); font-weight: 760; letter-spacing: -.03em; line-height: 1; }
.recap-line { margin-top: 16px; padding: 0; }
.recap-tips { margin-top: 18px; font-size: clamp(34px, 5vw, 54px); font-weight: 760; letter-spacing: -.03em; }
.recap-tips .flembt { color: var(--em1); font: 700 .72em/1 var(--sans); letter-spacing: -.01em; }
.recap-done { margin-top: 24px; }

/* ── the sheet under everything live ──────────────────────────────────────── */
.fllv-sheet {
  position: fixed;
  inset: 0;
  z-index: 99997;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, .6);
  opacity: 0;
  transition: opacity .3s ease;
}
.fllv-sheet.on { opacity: 1; }
.fllv-scrim { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; padding: 0; background: transparent; }
.fllv-sc {
  position: relative;
  z-index: 1;
  width: min(440px, calc(100% - 32px));
  padding: 24px 22px calc(26px + env(safe-area-inset-bottom));
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #0E0E10;
}
:root[data-mode='grey'] .fllv-sc { background: #222225; }
:root[data-mode='paper'] .fllv-sc { background: #fff; border-color: rgba(0, 0, 0, .1); }
.fllv-sc:focus { outline: none; }
.fllv-close { display: flex; justify-content: flex-end; margin-bottom: 8px; }
.fllv-sh { margin-bottom: 14px; font: 700 22px/1.1 var(--sans); letter-spacing: -.015em; }
.fllv-l { display: block; margin: 14px 0 7px; color: var(--fg2); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.fllv-row { display: flex; align-items: center; gap: 8px; }
.fllv-row.wrap { flex-wrap: wrap; }
.fllv-row > b { color: var(--fg2); }
/* The room's own field. It was called .fllv-in, which is also the hub's
   «You're in» label — one name, two meanings, and the label wore the field's
   box on every card someone had a seat on. */
.lvr-field {
  min-height: 44px;
  width: 100%;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--ink);
  color: var(--fg);
  font: inherit;
  font-size: 14px;
}
.lvr-field:focus { border-color: var(--em1); outline: none; }
.lvr-field.sm { width: 110px; }
.lvr-field.grow { flex: 1; }
.fllv-pp {
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid var(--field-line, rgba(255, 255, 255, .14));
  border-radius: 999px;
  background: rgba(255, 255, 255, .06);
  color: var(--fg2);
  font: 600 13px/1 var(--sans);
  cursor: pointer;
  transition: color .18s var(--curve), background-color .18s var(--curve), border-color .18s var(--curve);
}
.fllv-pp.on { border-color: #fff; background: #fff; color: #AD0037; font-weight: 700; }
:root[data-mode='paper'] .fllv-pp { border-color: rgba(0, 0, 0, .15); background: rgba(0, 0, 0, .06); color: #5F5A63; }
:root[data-mode='paper'] .fllv-pp.on { border-color: #15110D; background: #15110D; color: #FF2D6F; }
.fllv-note2 { margin: 4px 0 0; padding: 0; font-size: 12px; }
.fllv-cta { width: 100%; margin-top: 16px; }

.room-mode-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.room-mode-grid button {
  min-height: 74px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: transparent;
  color: var(--fg);
  font: inherit;
  font-size: 13px;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease;
}
.room-mode-grid button.on { border-color: rgba(255, 45, 111, .55); background: rgba(255, 45, 111, .07); }
.room-mode-grid i { display: block; margin-bottom: 7px; color: var(--em1); font-size: 20px; }

@media (max-width: 768px) {
  .event-room-stage { padding: 116px 22px 286px; }
  .event-room-stage b { font-size: clamp(27px, 8vw, 36px); }
  .event-room-stage small { max-width: 32ch; }
  .callbot { width: auto; margin-inline: 0; padding-inline: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  .event-room-mark, .fllv-float { animation: none; }
  .fllv-sheet, .fllv-gift { transition: none; }
}
/* On air. The hub's cards, section rules and terms — the room itself lives in
   LiveRoom.css. Every number is the reference's; its hover lift and press
   scale are travel and are dropped, its colour transitions stay. */

.mwrap { max-width: 100%; }

.mhero {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: clamp(34px, 5vw, 80px);
  padding-top: clamp(20px, 3vh, 34px);
}
@media (max-width: 900px) {
  .mhero { grid-template-columns: minmax(0, 1fr); gap: 34px; }
}
.fllv-lead { margin: 18px 0 0; padding: 0; color: var(--fg2); }
.fllv-mine { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }

/* ── the section rules ────────────────────────────────────────────────────── */
.psec2 {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
  margin: 26px 0 20px;
  padding: 22px 0 0;
  border-top: 1px solid var(--line);
}
.psec2--later { margin-top: 30px; }
.psec2 .t { color: var(--fg); font-size: 10px; line-height: 15px; letter-spacing: .28em; text-transform: uppercase; }
.psec2 .m { color: var(--fg3); font-size: 10px; line-height: 15px; letter-spacing: .2em; text-transform: uppercase; }

/* ── the cards ────────────────────────────────────────────────────────────── */
.fllv-note { margin: 16px 0 0; padding: 24px 0; }
.fllv-fine { margin: 8px 0 0; padding: 0; font-size: 12px; }

.fllv-card {
  display: flex;
  align-items: center;
  gap: 14px;
  width: calc(100% + 32px);
  margin: 0 -16px;
  padding: 15px 16px;
  border: 0;
  border-radius: 16px;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  animation: arrive .5s var(--curve) backwards;
  transition: background .3s var(--curve);
}
/* No hover ground. The reference declares one in a stylesheet it does not load
   on this page, so nothing paints there; MOTION.md says the same thing for
   every card — the cards take no hover treatment rather than an invented one.
   The row still answers a press, and a keyboard still sees where it is. */
.fllv-card:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.fllv-card.soon {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 150px;
  border: 1px solid var(--line);
  cursor: default;
}

.fllv-av {
  position: relative;
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--rise);
}
.fllv-av i { color: var(--fg2); font-size: 17px; font-style: normal; font-weight: 700; }
.fllv-av.dim { opacity: .75; }
.fllv-av .rg { display: block; }

.fllv-bd { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.fllv-bd b { overflow: hidden; font-size: 15px; line-height: 1.5; letter-spacing: -.2px; text-overflow: ellipsis; white-space: nowrap; }
.fllv-bd span { color: var(--fg3); font-size: 12.5px; line-height: 1.5; }
button.fllv-open {
  border: 0;
  padding: 0;
  min-height: 44px;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
button.fllv-open:focus-visible { outline: 2px solid var(--em1); outline-offset: 2px; border-radius: 8px; }

.fllv-live {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border: 1px solid rgba(255, 45, 111, .4);
  border-radius: 99px;
  color: #FF6B96;
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .14em;
}
.fllv-live em {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--em1);
}
button.fllv-live--door { min-height: 44px; background: transparent; font: inherit; font-size: 10.5px; font-weight: 700; cursor: pointer; }
/* paper reads the mark in the print ember */
:root[data-mode='paper'] .fllv-live { color: #EA004A; }

.fllv-n { flex: none; display: inline-flex; align-items: center; gap: 5px; color: var(--fg2); font-size: 13px; line-height: 1.5; }
.fllv-cd {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--fg2);
  font-size: 12.5px;
  line-height: 1.5;
  font-variant-numeric: tabular-nums;
}
.fllv-cd i {
  background: linear-gradient(118deg, var(--em1), var(--em2));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
/* the seat you already hold: a quiet strip across the card, not a control */
.fllv-in {
  flex: none;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: var(--fg2);
  font-size: 11.5px;
  line-height: 1.5;
  transition: border-color .3s ease;
}
/* the reference keeps this strip's own hairline and ink in every appearance:
   the night line stays through Grey, and Sunrise reads it at full strength */
:root[data-mode='grey'] .fllv-in { border-color: #1C1C1C; }
:root[data-mode='paper'] .fllv-in { border-color: #DDD; color: #111; }
.fllv-tkt { flex: none; min-height: 44px; font-size: 12px; }

/* ── the exact terms ──────────────────────────────────────────────────────── */
.fllv-detail {
  flex-basis: 100%;
  width: 100%;
  display: grid;
  gap: 7px;
  margin-top: 10px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
}
.fllv-detail .row { display: flex; justify-content: space-between; gap: 14px; font-size: 12.5px; }
.fllv-detail .row span { color: var(--fg2); }
.fllv-detail .row b { font-weight: 600; text-align: right; }

/* ── announcing, and the creator's book ───────────────────────────────────── */
.fllv-announce { margin-top: 14px; }
.fllv-evform {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
}
.fllv-evform .row { display: flex; flex-wrap: wrap; gap: 8px; }
.fllv-evform input, .fllv-evform select {
  flex: 1;
  min-width: 130px;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--ink);
  color: var(--fg);
  font: inherit;
  font-size: 13px;
}
.fllv-evform input:focus, .fllv-evform select:focus { border-color: var(--em1); outline: none; }
.fllv-evform .chk { display: flex; align-items: center; gap: 8px; min-height: 44px; color: var(--fg2); font-size: 12px; cursor: pointer; }
.fllv-evform .chk input { flex: none; min-width: 0; min-height: 0; width: 16px; height: 16px; accent-color: var(--em1); }
.fllv-blocker { color: var(--fg2); font-size: 12px; line-height: 1.5; }
.fllv-blocker > b { color: var(--fg); font-size: 14px; }
.fllv-blocker .fllv-announce { justify-self: start; margin-top: 2px; }

.fllv-book { display: grid; gap: 10px; margin-top: 12px; }
.fllv-bookrow {
  display: grid;
  gap: 8px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
}
.bk-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.bk-head b { font-size: 14px; }
.bk-state { flex: none; color: var(--fg2); font-size: 11px; }
.bk-state.live { color: var(--em1); }
.bk-state.draft { padding: 2px 8px; border: 1px solid var(--line); border-radius: 999px; color: var(--fg); }
.bk-facts { display: flex; flex-wrap: wrap; gap: 6px 14px; color: var(--fg2); font-size: 11.5px; }
/* held and settled money burns; it is the reference's own mark for it */
.bk-held, .bk-settled {
  background-image: linear-gradient(118deg, var(--em1), var(--em2));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  font-weight: 650;
}
.bk-acts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.fllv-contract-note {
  flex-basis: 100%;
  margin: 4px 0 0;
  color: var(--fg3);
  font-size: 11px;
  line-height: 1.45;
}
.fllv-action-review {
  display: grid;
  gap: 9px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--em1) 42%, var(--line));
  border-radius: 13px;
  background: color-mix(in srgb, var(--em1) 5%, transparent);
}
.fllv-action-review > b { font-size: 13px; }
.fllv-action-review p { margin: 0; color: var(--fg2); font-size: 11.5px; line-height: 1.5; }
.fllv-action-review .fllv-action-problem { color: var(--em1); }
.bk-invite {
  width: 130px;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--ink);
  color: var(--fg);
  font: inherit;
  font-size: 13px;
}
.bk-invite:focus { border-color: var(--em1); outline: none; }

.fllv-tail { height: 50px; }

/* the phone's filter strip and the dock's held Home, as the reference has them */
.fltabs-inpage { margin: 34px 0 0; padding-block: 4px; }
@media (min-width: 1241px) { .fltabs-inpage { display: none; } }

/* Sidebar colours are owned by Rail.css, including hover and selection. */

/* the reference opens On-air as a pushed page: the floating way back, and the
   nav shifted right to clear it */

/* this page carries its own footer inside the column, where the reference
   sets it; the shell's copy after the main would be a second one */
body:has(.fllive) .shell > .ft { display: none; }

@media (max-width: 1240px) {
  .mwrap { padding-inline: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .fllv-card { animation: none; }
  .fllv-live em { animation: none; }
}
/*$vite$:1*/
/* Preserved source: /_build/settings-refinement-20260923.css */
/* September 23: compact page hierarchy and readable account controls. */
:root:root:root:root .home-title {
 position:absolute!important;width:1px!important;height:1px!important;padding:0!important;
 margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0!important;
}
:root:root:root:root .flsettings:not(.reference-notification-settings) { width:100%;max-width:960px;margin-inline:auto;box-sizing:border-box; }
:root:root:root:root .flsettings .achead { margin-bottom:16px;padding-top:8px; }
:root:root:root:root .flsettings .cap { text-transform:none;letter-spacing:0;font:650 17px/1.4 var(--sans);color:var(--fg);margin-bottom:14px; }
:root:root:root:root .flsettings .acsec { border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:24px 0;margin:0; }
:root:root:root:root .flsettings .acsec + .acsec { margin-top:0; }
:root:root:root:root .flsettings .settings-index { display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding:8px 2px 14px;scroll-padding-inline:4px; }
:root:root:root:root .flsettings .settings-index a { flex:none;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding-inline:16px; }
:root:root:root:root .flsettings .settings-index a[aria-current=location] { color:var(--em1);border-color:var(--em1); }
:root:root:root:root .flsettings :is(input,select,textarea) { font-size:16px; }
:root:root:root:root .flsettings .psplit { gap:24px;padding-inline:0; }
:root:root:root:root .flsettings .pbd { padding:0;min-width:0; }
:root:root:root:root .flsettings :is(.mut,.lead) { max-width:65ch;line-height:1.6; }
@media(min-width:761px) {
 :root:root:root:root .flsettings .psplit { display:grid;grid-template-columns:200px minmax(0,1fr);align-items:start; }
 :root:root:root:root .flsettings .pim { width:200px;min-width:0;min-height:200px;height:200px; }
}
@media(max-width:760px) {
 :root:root:root:root .flsettings .psplit { display:flex;flex-direction:column;gap:20px; }
 :root:root:root:root .flsettings .pim { width:100%;min-width:0;min-height:180px; }
 :root:root:root:root .flsettings .pbd { width:100%; }
 :root:root:root:root .flsettings .acsec { padding-block:20px; }
}

:root:root:root:root .flsettings .pbd .orow { padding:0;margin:0 0 16px;gap:8px; }
:root:root:root:root .flsettings .pbd { display:block; }

:root { --ui-page-title:28px; }
@media(max-width:640px){ :root { --ui-page-title:24px; } }

/* Preserved source: /_build/auth-refinement-20260923-v3.css */
/* Account entry: sunset direction, with existing live forms and theme controls. */
.authpage .signup-door {
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  grid-template-columns:minmax(0,46fr) minmax(0,54fr);
  grid-template-rows:96px 1fr 40px;
  padding-inline:clamp(24px,6.4vw,100px);
  gap:0 32px;
  min-height:max(850px,100svh);
}
:root[data-mode='paper'] .authpage .signup-door {
  background:#f2d9d1 url('/brand/signup/auth-sunset-20260923.webp') center top / cover no-repeat;
}
:root[data-mode='paper'] .signup-door__art { visibility:hidden; }
.authpage .signup-door__brand img { width:clamp(170px,17vw,245px); }
.authpage .signup-door__copy { max-width:626px;padding:38px 0 24px;align-self:start; }
.authpage .signup-door__copy h1 { font:780 clamp(40px,4.6vw,72px)/1.04 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.045em;margin:0 0 22px; }
.authpage .signup-door__intro { font-size:clamp(16px,1.55vw,23px);line-height:1.45;margin:0 0 30px; }
.authpage .signup-door__copy form { padding:24px;border-radius:24px;background:#171719;border:1px solid #303033;box-shadow:0 16px 30px #00000012; }
:root[data-mode='paper'] .authpage .signup-door__copy form { background:#fffcf9ed;border-color:#ffffff80; }
.authpage .signup-door__roles { gap:14px;margin:0 0 20px; }
.authpage .signup-door__role { min-height:84px;border-radius:19px;padding:14px;gap:12px;font:650 16px/1.25 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:transparent; }
.authpage .signup-door__role > svg { width:36px;height:42px; }
.authpage .signup-door__role[aria-pressed='true'] { border-color:var(--signup-link);background:color-mix(in srgb,var(--signup-link) 8%,transparent);color:var(--signup-fg); }
.authpage .signup-door__tick { width:26px;height:26px;background:var(--ember);color:#111; }
.authpage .signup-door__role:not([aria-pressed='true']) .signup-door__tick { display:none; }
.signup-door__label { display:block;font-size:13px;font-weight:650;line-height:1.5;margin:0 0 7px;color:var(--signup-fg); }
.authpage .signup-door__input { height:54px;padding-inline:18px;font:400 16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border-radius:16px; }
.authpage .signup-door__input:focus { box-shadow:0 0 0 3px color-mix(in srgb,var(--signup-link) 15%,transparent); }
.authpage .signup-door__password input { padding-right:78px; }
.authpage .signup-door__start { min-height:58px;margin-top:18px;padding:7px 9px 7px 24px;gap:16px;font:650 18px/1.25 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.authpage .signup-door__arrow { width:44px;height:44px; }
.authpage .signup-door__providers { gap:12px;margin-top:20px; }
.authpage .signup-door__providers .soc { min-height:48px;border-radius:99px;font:500 13px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.authpage .signup-door__providers .soc svg { order:-1; }
.authpage .signup-door__terms { font-size:12px;line-height:1.6; }
.authpage .signup-door__returning button { font-weight:650;text-underline-offset:4px; }
.authpage .signup-door__returning button:hover { text-decoration:underline; }
.authpage .signup-door__notice { padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--signup-link) 30%,transparent);background:color-mix(in srgb,var(--signup-link) 6%,transparent);overflow-wrap:anywhere; }
.authpage .signup-door__intro { overflow-wrap:anywhere; }
.authpage .ob--moon { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.authpage .ob--moon .ob__ask { font-family:inherit;font-size:clamp(32px,3.5vw,52px); }
.signup-progress-label { margin:0 0 10px;font-size:13px;font-weight:650;color:var(--flow-muted); }
.authpage .ob--moon .steps { margin-bottom:24px;gap:7px; }
.authpage .ob--moon .steps__tick { height:3px;border-radius:3px; }
.authpage .ob--moon .line__input { font-family:inherit;font-size:16px; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .authpage .signup-door :is(.signup-door__start,.signup-door__role,.soc) { transition:transform 160ms ease-out,border-color 160ms ease-out,background-color 160ms ease-out; }
 .authpage .signup-door :is(.signup-door__start,.signup-door__role,.soc):active { transform:scale(.98); }
}
@media(max-width:1100px) and (min-width:821px) {
 .authpage .signup-door { padding-inline:32px;grid-template-columns:minmax(0,49fr) minmax(0,51fr); }
 .authpage .signup-door__copy form { padding:20px; }
 .authpage .signup-door__role { padding:10px;gap:8px;font-size:14px; }
 .authpage .signup-door__role > svg { width:30px; }
}
@media(max-width:820px) {
 .authpage .signup-door { padding:0 20px;min-height:100svh;gap:0; }
 :root[data-mode='paper'] .authpage .signup-door { background:#fafafa; }
 .authpage .signup-door__header { min-height:112px;padding-top:20px; }
 .authpage .signup-door__tools { top:62px; }
 .authpage .signup-door__copy { padding:24px 0 0;max-width:560px; }
 .authpage .signup-door__copy h1 { font-size:clamp(36px,8.7vw,54px);margin-bottom:14px; }
 .authpage .signup-door__intro { margin-bottom:22px;font-size:16px; }
 .authpage .signup-door__copy form { padding:18px;border-radius:20px; }
 :root[data-mode='paper'] .authpage .signup-door__copy form { border-color:#e7e1df;background:#fff; }
 .authpage .signup-door__role { min-height:74px;padding:10px;gap:8px;font-size:14px; }
 .authpage .signup-door__role > svg { width:26px;height:32px; }
 .authpage .signup-door__tick { width:22px;height:22px; }
 .authpage .signup-door__roles { gap:8px;margin-bottom:18px; }
 .authpage .signup-door__providers { gap:8px; }
 .authpage .signup-door__providers .soc { padding:10px 6px;font-size:12px;gap:7px; }
 :root[data-mode='paper'] .signup-door__art { visibility:visible; }
 .authpage .signup-door__art { margin-top:20px; }
 .authpage .signup-door__terms { font-size:11px; }
}
@media(max-width:360px) {
 .authpage .signup-door { padding-inline:16px; }
 .authpage .signup-door__copy form { padding:14px; }
 .authpage .signup-door__role > svg { width:22px; }
 .authpage .signup-door__role { font-size:13px;gap:6px; }
}
:root[data-mode='paper'] .signup-door__brand { mix-blend-mode:multiply; }
:root[data-mode='paper'] .signup-door__brand img { mix-blend-mode:multiply; }
@media(min-width:821px) and (max-height:800px) {
 .authpage .signup-door { grid-template-rows:82px 1fr 32px; }
 .authpage .signup-door__copy { padding-top:24px; }
 .authpage .signup-door__copy h1 { font-size:clamp(40px,4.2vw,62px);margin-bottom:16px; }
 .authpage .signup-door__intro { margin-bottom:24px; }
}
.authpage .signup-door__brand .wordmark { width:clamp(170px,17vw,245px)!important; }
.authpage .signup-door__brand img { width:130%; }
:root[data-mode='paper'] .signup-door__header { mix-blend-mode:multiply; }

/* Shared account and creator steps: one reading rhythm and control system. */
.authpage .ob--moon .ob__left { width:100%;max-width:560px; }
.authpage .ob--moon .signup-flow-brand { margin-bottom:28px; }
.authpage .ob--moon .ob__ask { text-wrap:balance; }
.authpage .ob--moon :is(.ob__note,.crrow__n,.crprow__s) { line-height:1.6; }
.authpage .ob--moon .line { min-height:56px; }
.authpage .ob--moon .line__reveal { min-width:58px;min-height:44px;font-size:14px;font-weight:600;text-transform:none; }
.authpage .ob--moon :is(.crlbl,.crsec) { font:650 14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;text-transform:none;margin:20px 0 10px; }
.authpage .ob--moon :is(input,textarea,select) { font-size:16px; }
.authpage .ob--moon .roster { border:1px solid var(--flow-line);border-radius:16px;padding:4px;scroll-padding:8px; }
.authpage .ob--moon .roster__row { min-height:48px;padding:10px 14px;border-radius:11px; }
.authpage .ob--moon .roster__row--on { background:color-mix(in srgb,var(--em1) 10%,transparent); }
.authpage .ob--moon .signup-step-details { border-top:1px solid var(--flow-line);margin-top:24px; }
.authpage .ob--moon .signup-step-details summary { font-weight:600;line-height:1.5;padding-block:14px; }
.authpage .ob--moon .signup-step-details > div { padding-bottom:16px; }
.authpage .ob--moon .nextstep { gap:16px;min-height:56px; }
.authpage .ob--moon .nextstep .pill__go { flex-shrink:0;width:36px;height:36px;font-size:22px; }
.authpage .ob--moon .chips { display:flex;flex-wrap:wrap;gap:8px; }
.authpage .ob--moon .chips :is(button,.pill) { min-height:44px; }
.authpage .ob--moon .crrows { display:grid;gap:10px; }
.authpage .ob--moon .crrow { border-radius:14px;min-height:56px;padding:16px; }
.authpage .crpg__n { font:600 12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-transform:none;letter-spacing:0; }
.authpage .crpg__d { font:500 12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;text-align:right; }
.authpage .crpg__f { line-height:1.5; }
.authpage :is(button,a,input,textarea,select,summary):focus-visible { outline:2px solid var(--em1);outline-offset:4px; }
.authpage .ob--moon .line:has([aria-invalid='true']) { border-color:var(--flow-error); }
@media(max-width:820px) {
 .authpage .ob--moon { padding-inline:20px;gap:24px; }
 .authpage .ob--moon .ob__left { max-width:560px;margin-inline:auto; }
 .authpage .ob--moon .signup-flow-brand { margin-bottom:22px; }
 .authpage .ob--moon .ob__ask { font-size:clamp(30px,8vw,42px);margin-bottom:18px; }
 .authpage .ob--moon .line { margin-top:14px; }
 .authpage .ob--moon .signup-scene { width:min(100%,360px); }
 .authpage .ob--moon .signup-scene__window { max-height:360px;width:100%; }
 .authpage .crpg { padding-inline:20px; }
 .authpage .crpg__row { gap:12px;align-items:center; }
 .authpage .crpg__d { max-width:100px; }
 .authpage .ob--moon .crprow { gap:12px; }
 .authpage .ob--moon .crprow__v { flex-shrink:0; }
}
@media(max-width:820px) {
 .authpage.authpage--cinematic .ob--moon .ob__left { order:0; }
 .authpage.authpage--cinematic .ob--moon .signup-scene { order:1; }
}
.authpage .crsum { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:center; }
.authpage .crsum > span { overflow-wrap:anywhere; }
.authpage .crsum__edit { min-width:44px;min-height:44px;color:var(--em1);font:600 13px/1.4 var(--sans);text-decoration:underline;text-underline-offset:4px; }
.authpage .crsum__edit:disabled { opacity:.5;cursor:wait; }
@media(max-width:480px){.authpage .crsum { grid-template-columns:minmax(0,1fr) auto;gap:4px 12px; }.authpage .crsum > b { grid-column:1; }.authpage .crsum > span { grid-column:1; }.authpage .crsum__edit { grid-column:2;grid-row:span 2; }}

/* Preserved source: /_build/platform-motion-20260923.css */
/* Shared motion refinement: short feedback, stable content, accessible exits. */
:root:not(:has(.authpage)) {
 --house-page-duration:180ms;
 --house-panel-duration:180ms;
 --house-exit-duration:130ms;
 --house-press-duration:140ms;
}
@media(prefers-reduced-motion:no-preference) {
 :root [data-motion-panel='menu'] { scale:.985;transition-duration:130ms; }
 :root [data-motion-panel='menu'][data-motion-visible='true'] { scale:1;transition-duration:180ms; }
 :root [data-motion-panel='sheet'] { transition-duration:130ms; }
 :root [data-motion-panel='sheet'][data-motion-visible='true'] { transition-duration:180ms; }
 :root [data-motion-panel='drawer'] { translate:16px 0; }
 :root [data-motion-panel='drawer'][data-motion-visible='true'] { translate:0 0; }
 :root .menu__row { animation:none!important; }
 :root [data-press-surface='true'] { transition-duration:140ms; }
 :root [data-press-feedback='down'] { transition-duration:70ms;scale:.98; }
 :root .relationship-mark path { transition-duration:140ms; }
 :root .fltoast { transition-duration:180ms; }
}
@media(max-width:900px) and (prefers-reduced-motion:no-preference) {
 :root [data-motion-panel='sheet'] { translate:0 12px; }
 :root [data-motion-panel='sheet'][data-motion-visible='true'] { translate:0 0; }
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 :root .rail__item { transition:color 140ms var(--c-press),background-color 140ms var(--c-press),transform 140ms var(--c-press); }
 :root .rail__item:hover { transform:translateX(1px); }
}
/* Avoid a costly backdrop blur on small screens; keep the surface readable. */
@media(max-width:820px) {
 :root .menu { backdrop-filter:none;-webkit-backdrop-filter:none;background:#151515; }
 :root[data-mode='paper'] .menu { background:#fff; }
 :root[data-mode='grey'] .menu { background:#252528; }
}
:root[data-house-input='keyboard'] :is([data-motion-panel],[data-motion-backdrop],.rail__item,.relationship-mark path,.fltoast) { transition:none!important;animation:none!important; }
:root[data-house-input='keyboard'] .rail__item:hover { transform:none; }
@media(prefers-reduced-motion:reduce) {
 :root :is([data-motion-panel],[data-motion-backdrop],[data-press-surface],.menu,.menu__row,.rail__item,.relationship-mark path,.fltoast,.in-page,.in-post,.in-row,.in-card,.in-head,.ther) { animation:none!important;transition:none!important; }
 :root :is([data-motion-panel],[data-press-surface],.fltoast) { scale:none!important;translate:none!important; }
 :root .rail__item:hover { transform:none; }
}

/* Preserved source: /_build/feed-chat-refinement-20260923.css */
/* Reading rhythm: shared feed and conversation refinements. */
:root:root:root:root .post:not(.post--open) .post__nm { flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;text-align:left;gap:2px 8px;width:auto; }
:root:root:root:root .post:not(.post--open) .post__identity-line { min-width:0;max-width:100%; }
:root:root:root:root .post:not(.post--open) .post__name { font-size:15px;line-height:1.4;font-weight:650; }
:root:root:root:root .post:not(.post--open) .post__chan { font-size:13px;line-height:1.5;overflow:hidden;text-overflow:ellipsis; }
:root:root:root:root .post:not(.post--open) .post__metadata { margin-top:2px;gap:4px 8px; }
:root:root:root:root .post .post-actions { gap:4px;align-items:center; }
:root:root:root:root .post .post-actions [data-post-action] { min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;box-sizing:border-box; }
:root:root:root:root .post .post-actions [data-post-action]:focus-visible { outline:2px solid var(--em1);outline-offset:2px; }
:root:root:root:root .post:not(.post--open) .post__media { border:1px solid var(--line);border-radius:14px;overflow:hidden;box-sizing:border-box; }
:root:root:root:root .chat2thread .conversation-tabs { min-height:44px;border-bottom:1px solid var(--line); }
:root:root:root:root .chat2thread .chat-library { padding-block:8px 4px; }
:root:root:root:root .chat2thread .cmchips { margin-block:0;padding-block:4px 8px; }
:root:root:root:root .chat2thread .memchip { min-height:36px;padding:6px 12px;font:500 12px/1.4 var(--sans); }
:root:root:root:root .chat2thread .tspk { letter-spacing:0;font-size:12px;margin-block:12px 5px; }
:root:root:root:root .chat2thread :is(.ther,.tmine,.dmb) { font-size:15px;line-height:1.55;overflow-wrap:anywhere; }
:root:root:root:root .chat2thread .ther { padding:11px 15px;border-radius:18px 18px 18px 5px; }
:root:root:root:root .chat2thread .tdock__problem { font:400 12px/1.5 var(--sans);margin-block:8px; }
:root:root:root:root .chat2thread .tdock__funding { gap:12px;padding:10px 12px;border-radius:14px;font-size:13px;line-height:1.45; }
:root:root:root:root .chat2thread .tbar { align-items:flex-end; }
:root:root:root:root .chat2thread :is(.chat-action-plus,.tsendb) { flex-shrink:0;min-width:44px;min-height:44px; }
:root:root:root:root .cxwrap .conv { border-radius:12px;padding:14px 12px; }
:root:root:root:root .cxwrap .conv__handle { line-height:1.5; }
@media(hover:hover) and (pointer:fine) {
 :root:root:root:root .post .post-actions [data-post-action]:not([aria-disabled=true]):hover { background:var(--g05); }
}
@media(max-width:640px) {
 :root:root:root:root .post:not(.post--open) .post__head { gap:10px; }
 :root:root:root:root .post:not(.post--open) .post__text { font-size:15px;line-height:1.5; }
 :root:root:root:root .chat2thread :is(.ther,.tmine,.dmg) { max-width:90%; }
 :root:root:root:root .chat2thread .tdock__funding { flex-wrap:wrap; }
 :root:root:root:root .chat2thread .tbar { gap:6px; }
}

/* Preserved source: /_build/post-detail-refinement-20260923.css */
/* Compact post reading and an unmistakable reply entry. */
:root:root:root:root .shell__main:has(> .flonetop) { width:100%;max-width:632px;box-sizing:border-box;margin-inline:auto;padding-inline:16px; }
:root:root:root:root .flonetop { min-height:56px;padding:6px 0;gap:12px;border-bottom:1px solid var(--line);margin-bottom:16px; }
:root:root:root:root .flonetop__back { width:40px;min-width:40px;height:40px;min-height:40px;padding:0!important;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--fg);box-shadow:none; }
:root:root:root:root .flonetop__back span { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
:root:root:root:root .flonetop :is(.reference-post-title,.story-reading-label) { margin:0;font:650 19px/1.3 var(--sans);color:var(--fg); }
:root:root:root:root .post.post--open { padding:0;margin:0;border:0; }
:root:root:root:root .post.post--open .post__head { padding:0;margin:0 0 12px;border:0;gap:10px; }
:root:root:root:root .post.post--open .post__av { width:40px;height:40px;flex:0 0 40px; }
:root:root:root:root .post.post--open .post__body { margin:0;min-width:0; }
:root:root:root:root .post.post--open .post__name { font-size:15px; }
:root:root:root:root .post.post--open .post__chan { font-size:13px; }
:root:root:root:root .post.post--open .post__title { font:650 18px/1.4 var(--sans);margin:0 0 6px; }
:root:root:root:root .post.post--open .post__text { font:400 16px/1.5 var(--sans);margin:0 0 12px; }
:root:root:root:root .post.post--open .post__media { width:100%;margin:0;border:1px solid var(--line);border-radius:14px;box-sizing:border-box;overflow:hidden; }
:root:root:root:root .post.post--open .post__media-open { position:relative;display:block;width:100%;max-width:none;height:clamp(240px,48dvh,420px);min-height:0;max-height:420px;aspect-ratio:auto;margin:0;border-radius:0; }
:root:root:root:root .post.post--open .post__media-open .post__pic { position:absolute;inset:0;width:100%;height:100%;max-height:100%;margin:0;object-fit:contain;aspect-ratio:auto;border-radius:0; }
:root:root:root:root .post.post--open .post__media > video { width:100%;height:clamp(240px,48dvh,420px);max-height:420px;object-fit:contain;margin:0; }
:root:root:root:root .post.post--open .posta { padding:6px 0;margin:0;border-bottom:1px solid var(--line); }
:root:root:root:root .post.post--open .flthread { margin-top:12px; }
:root:root:root:root .post.post--open .cwrapx { padding-inline:0; }
:root:root:root:root .fl-comment-prompt { padding:4px 0 16px; }
:root:root:root:root .fl-comment-door { box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:14px 16px;border:1px solid var(--input-edge,var(--line));border-radius:14px;background:var(--g05);color:var(--fg2);font:400 16px/1.4 var(--sans);cursor:text; }
:root:root:root:root .fl-comment-door::after { content:none; }
:root:root:root:root .fl-comment-door__action { flex:none;border-radius:999px;padding:8px 14px;background:var(--ember);color:#080808;font:650 13px/1.4 var(--sans); }
:root:root:root:root .post.post--open .flthd .headline { font:650 16px/1.4 var(--sans); }
:root:root:root:root .post.post--open .flthr { display:none; }
@media(max-width:640px) {
 :root:root:root:root .shell__main:has(> .flonetop) { padding-inline:12px; }
 :root:root:root:root .post.post--open .post__media-open { height:clamp(220px,42dvh,340px); }
}

/* Preserved source: /_build/profile-editor-refinement-20260923.css */
/* A short essential form with optional sections, shared by account roles. */
:root:root:root:root .inline-profile-editor { box-sizing:border-box;max-width:600px;margin-inline:auto;padding:24px;border-radius:18px;display:flex;flex-direction:column;gap:0; }
:root:root:root:root .inline-profile-editor h2 { font:650 22px/1.3 var(--sans);letter-spacing:-.025em;margin:0 0 6px; }
:root:root:root:root .inline-profile-editor__intro { color:var(--fg2);margin:0 0 24px;font-size:14px; }
:root:root:root:root .inline-profile-editor label { font:600 13px/1.4 var(--sans);gap:7px;margin-bottom:16px; }
:root:root:root:root .inline-profile-editor :is(input:not([type=file]),textarea) { box-sizing:border-box;min-width:0;border-radius:12px;font:400 16px/1.5 var(--sans);padding:12px; }
:root:root:root:root .inline-profile-editor #profile-bio-count { margin:-10px 0 16px;color:var(--fg2);font-size:12px; }
:root:root:root:root .inline-profile-editor > details { order:1;border-top:1px solid var(--line);padding:0;margin-top:12px; }
:root:root:root:root .inline-profile-editor summary { cursor:pointer;padding:16px 2px;min-height:48px;box-sizing:border-box;font:600 14px/1.4 var(--sans);color:var(--fg); }
:root:root:root:root .inline-profile-editor summary small { font-weight:400;color:var(--fg2);margin-left:6px; }
:root:root:root:root .profile-edit-links__body { padding:4px 0 8px; }
:root:root:root:root .inline-profile-editor fieldset { min-width:0;border:0;border-bottom:1px solid var(--line);padding:12px 0;margin:0; }
:root:root:root:root .inline-profile-editor legend { font:600 13px/1.5 var(--sans); }
:root:root:root:root .inline-profile-editor > .pill { align-self:flex-start;min-height:44px; }
:root:root:root:root .inline-profile-editor > p:not(.inline-profile-editor__intro) { font-size:12px;line-height:1.5;color:var(--fg2); }
:root:root:root:root .inline-profile-editor > :is([role=alert],[role=status]) { order:2; }
:root:root:root:root .inline-profile-editor > [role=alert] { color:var(--em1); }
:root:root:root:root .inline-profile-editor__actions { order:3;display:flex;gap:8px;padding-top:16px;margin-top:12px;border-top:1px solid var(--line); }
:root:root:root:root .inline-profile-editor__actions .pill { min-height:44px; }
:root:root:root:root .inline-profile-editor__actions a { width:100%;border:0;background:transparent;justify-content:flex-start;padding:8px 0;font-size:13px;color:var(--fg2); }
:root:root:root:root .inline-profile-editor :is(summary,input,textarea,button,a):focus-visible { outline:2px solid var(--em1);outline-offset:3px; }
@media(max-width:640px) {
 :root:root:root:root .inline-profile-editor { padding:16px;border-radius:14px; }
 :root:root:root:root .inline-profile-editor__actions > button { flex:1; }
}

/* Preserved source: /_build/discover-spark-20260923.css */

/* Approved Discover direction: four-point outline spark, both navigation sizes. */
:root:root:root:root nav a[href="/discover"] .rail__ico::after,
:root:root:root:root nav a[href="/discover"] .rail__ico::before { content:none!important; }
:root:root:root:root nav a[href="/discover"] svg.navigation-icon { visibility:visible!important;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22black%22%20fill-rule%3D%22evenodd%22%20d%3D%22M12%201C13.5%207.5%2016.5%2010.5%2023%2012C16.5%2013.5%2013.5%2016.5%2012%2023C10.5%2016.5%207.5%2013.5%201%2012C7.5%2010.5%2010.5%207.5%2012%201ZM12%206C10.6%209%209%2010.6%206%2012C9%2013.4%2010.6%2015%2012%2018C13.4%2015%2015%2013.4%2018%2012C15%2010.6%2013.4%209%2012%206Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22black%22%20fill-rule%3D%22evenodd%22%20d%3D%22M12%201C13.5%207.5%2016.5%2010.5%2023%2012C16.5%2013.5%2013.5%2016.5%2012%2023C10.5%2016.5%207.5%2013.5%201%2012C7.5%2010.5%2010.5%207.5%2012%201ZM12%206C10.6%209%209%2010.6%206%2012C9%2013.4%2010.6%2015%2012%2018C13.4%2015%2015%2013.4%2018%2012C15%2010.6%2013.4%209%2012%206Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat; }
:root:root:root:root nav a[href="/discover"] svg.navigation-icon > * { visibility:hidden; }

/* Preserved source: /_build/usability-refinement-20260923.css */
/* Reading widths and controls follow the same rhythm across product areas. */
:root:root:root:root .cxwrap:not(.cxwrap--pane) .cxmw { width:100%;max-width:720px;margin-inline:auto;box-sizing:border-box; }
:root:root:root:root .cxwrap:not(.cxwrap--pane) .conv { min-height:88px;padding:14px 16px;border-radius:0; }
:root:root:root:root .cxwrap .conv__last { font-weight:400;margin-top:4px;line-height:1.45; }
:root:root:root:root .cxwrap .conv__last--hot { font-weight:650; }
:root:root:root:root .cxwrap .conv__tail { flex-shrink:0;font-variant-numeric:tabular-nums; }
:root:root:root:root .cxwrap :is(.cxfilteropen,.cxed) { min-width:44px;min-height:44px; }
:root:root:root:root .cxwrap .cxsrch { border-radius:12px; }
:root:root:root:root .cxwrap .cxsrch input { font-size:16px; }
:root:root:root:root .studio { width:100%;max-width:920px;margin-inline:auto;box-sizing:border-box; }
:root:root:root:root .studio .hero .lead { max-width:65ch;font-size:14px;line-height:1.6; }
:root:root:root:root .studio .sdk__perf-main { min-width:0; }
:root:root:root:root .studio .sdk__post-identity { font-size:12px;line-height:1.5; }
:root:root:root:root .studio .sdk__metrics { font-variant-numeric:tabular-nums;flex-wrap:wrap; }
:root:root:root:root .studio .sdk__post-acts { flex-wrap:wrap; }
:root:root:root:root .studio .sdk__post-acts .pill { min-height:44px;font-size:13px; }
:root:root:root:root .studio .sdk__post-search input { font-size:16px;border-radius:12px; }
:root:root:root:root :is(.studio-workspace-nav,.studio-content-nav) { scroll-padding-inline:12px; }
:root:root:root:root :is(.studio-workspace-nav,.studio-content-nav) a { min-height:44px;display:inline-flex;align-items:center;flex-shrink:0; }
:root:root:root:root .more22 { width:100%;max-width:720px;margin-inline:auto;box-sizing:border-box; }
:root:root:root:root .more22 .morerow { min-height:56px;padding-block:14px; }
:root:root:root:root .more22 .morerow .l { font-size:15px;line-height:1.4; }
:root:root:root:root .more22 .morerow .n { font-size:13px;font-variant-numeric:tabular-nums; }
:root:root:root:root .more22 .psech { font:650 17px/1.4 var(--sans);letter-spacing:0;text-transform:none; }
:root:root:root:root :is(.cxwrap,.studio,.more22) :is(a,button,input,summary,[role=tab]):focus-visible { outline:2px solid var(--em1);outline-offset:3px; }
/* The masked spark needs its own selected color, rather than dark ink on dark ground. */
:root:root:root:root .chrome__i--on[href='/discover'] svg.navigation-icon { color:var(--em1);border-radius:0; }
@media(max-width:1240px) {
 :root:root:root:root :is(.shell__main,.shell__wide):has(> :is(.cxwrap,.studio,.more22,.flsettings,.flai,.nd)) { padding-bottom:calc(112px + env(safe-area-inset-bottom)); }
}
@media(max-width:640px) {
 :root:root:root:root .studio { padding-inline:12px; }
 :root:root:root:root .studio .sdk__perf-row { display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:10px;padding-block:16px; }
 :root:root:root:root .studio .sdk__post-acts { justify-content:flex-start;gap:8px; }
 :root:root:root:root .studio .sdk__post-acts .pill { padding-inline:16px; }
 :root:root:root:root .studio .sdk__post-search { grid-template-columns:minmax(0,1fr);gap:6px; }
 :root:root:root:root .studio .sdk__post-search > .st-mut { text-align:left;font-size:12px; }
 :root:root:root:root .studio .st-sec { gap:8px;flex-wrap:wrap; }
 :root:root:root:root .studio .st-sec .sub { font-size:12px; }
 :root:root:root:root .cxwrap .conv { gap:12px; }
 :root:root:root:root .cxwrap .conv__name { font-size:15px; }
 :root:root:root:root .cxwrap .cxsrch { margin-inline:12px; }
 :root:root:root:root .flai-mode { gap:4px;padding:4px; }
 :root:root:root:root .flai-mode button { min-height:44px;font-size:13px;padding-inline:10px;white-space:normal;line-height:1.3; }
 :root:root:root:root .flai-search input { font-size:16px;min-width:0; }
}

@media(max-width:640px){:root:root:root:root .studio .sdk__perf-main {flex:0 0 auto;width:100%;}:root:root:root:root .studio .sdk__post-acts {width:100%;box-sizing:border-box;}}

/* Preserved source: /_build/keyboard-navigation-20260923.css */
/* Global navigation stays below the keyboard; only typing controls follow it. */
@media(max-width:1240px) {
 :root:root:root:root .chrome { bottom:calc(10px + env(safe-area-inset-bottom))!important; }
 :root:root:root:root[data-mobile-keyboard] :is(.chrome,.edgepull) { visibility:hidden!important;pointer-events:none!important;transition:none!important; }
}

/* Preserved source: /_build/chat-keyboard-layout-20260923.css */
/* Fit the conversation to the visible phone screen while the keyboard is open. */
@media(max-width:900px) {
 :root:root:root:root[data-mobile-keyboard] .chat2col {
  position:fixed;top:var(--vvt,0px);left:0;right:0;bottom:auto;
  width:100%;height:var(--vvh,100dvh);max-height:var(--vvh,100dvh);
  margin:0;padding:0;min-height:0;overflow:hidden;box-sizing:border-box;z-index:90;
 }
 :root:root:root:root[data-mobile-keyboard] .chat2thread {
  height:100%;min-height:0;max-height:100%;padding-top:0;overflow:hidden;
 }
 :root:root:root:root[data-mobile-keyboard] .chatfill {
  display:flex;flex-direction:column;height:100%;min-height:0;max-height:100%;overflow:hidden;
 }
 :root:root:root:root[data-mobile-keyboard] .chatfill > .conversation-head { position:relative;top:auto;flex:0 0 auto; }
 :root:root:root:root[data-mobile-keyboard] .chatfill > .tblk { flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-anchor:none; }
 :root:root:root:root[data-mobile-keyboard] .chatfill > .tdock { position:relative;inset:auto;flex:0 0 auto;transform:none;padding-bottom:0; }
 :root:root:root:root[data-mobile-keyboard] .chat2thread .tdockin { padding-block:6px; }
 :root:root:root:root[data-mobile-keyboard] .chat2thread .tdock__funding { margin-bottom:6px;padding-block:6px; }
 :root:root:root:root[data-mobile-keyboard] .chat2thread .tbar textarea { max-height:min(100px,22dvh); }
 /* Secondary shortcuts return as soon as typing ends. Never hide a focused search. */
 :root:root:root:root[data-mobile-keyboard] .chatfill > .cmchips:not(:focus-within) { display:none; }
 :root:root:root:root[data-mobile-keyboard] .chatfill > .chat-library:not(:focus-within):not(:has(.chat-library__panel)) { display:none; }
}

/* Preserved source: /_build/route-loading-20260923-v2.css */
/* A real loading state, removed by the router as soon as content is ready. */
:root:root:root:root .route-pending:has(.route-loading-brand) { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:62dvh;padding:32px 20px;box-sizing:border-box; }
:root:root:root:root .route-loading-brand { display:flex;flex-direction:column;align-items:center;gap:24px; }
:root:root:root:root .route-loading-brand b { color:var(--fg);font:800 30px/1.2 var(--sans);letter-spacing:-.035em; }
:root:root:root:root .route-loading-brand b span { color:var(--em1); }
:root:root:root:root .route-loading-brand i { display:block;width:22px;height:22px;background:var(--ember);clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%); }
:root:root:root:root .route-loading-copy { margin:0;color:var(--fg2);font:400 14px/1.5 var(--sans); }
:root:root:root:root .shell:has(.route-pending) .shell__geo-credit { visibility:hidden; }
@media(prefers-reduced-motion:no-preference){.route-loading-brand i { animation:route-spark-turn 1.6s ease-in-out infinite; }@keyframes route-spark-turn{0%,100%{transform:scale(.85) rotate(0deg)}50%{transform:scale(1) rotate(90deg)}}}

/* Keep the loading state visual-only, with its accessible status preserved. */
:root:root:root:root .route-loading-copy { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }

/* Preserved source: /_build/chat-viewport-20260923-v2.css */
/* Keep the entire phone conversation inside the visible viewport at all times. */
@media(max-width:900px) {
 :root:root:root:root:root:has(.shell--conversation),
 :root:root:root:root:root:has(.shell--conversation) body { overflow:hidden;overscroll-behavior:none; }
 :root:root:root:root:root .shell--conversation { position:fixed;inset:auto 0 auto 0;top:var(--chat-viewport-top,0px);height:var(--chat-viewport-height,100dvh);min-height:0;max-height:var(--chat-viewport-height,100dvh);overflow:hidden;transform:none; }
 :root:root:root:root:root .shell--conversation > :is(.shell__wide,.shell__main,.shell__grid) { height:100%;min-height:0;padding-block:0;margin-block:0;overflow:hidden; }
 :root:root:root:root:root .shell--conversation .chat2col { position:relative;inset:auto;width:100%;height:100%;max-height:100%;min-height:0;margin:0;padding:0;overflow:hidden;animation:none; }
 :root:root:root:root:root .shell--conversation .chat2thread { height:100%;max-height:100%;min-height:0;padding-top:0;overflow:hidden; }
 :root:root:root:root:root .shell--conversation .chatfill { display:flex;flex-direction:column;height:100%;min-height:0;max-height:100%;padding-top:0;overflow:hidden; }
 :root:root:root:root:root .shell--conversation .conversation-head { flex:0 0 auto;position:relative;top:auto; }
 :root:root:root:root:root .shell--conversation .tblk { flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior:contain; }
 :root:root:root:root:root .shell--conversation .tdock { position:relative;inset:auto;flex:none;transform:none; }
 :root:root:root:root:root .shell--conversation .shell__geo-credit { position:absolute;bottom:0;right:0;visibility:hidden;pointer-events:none; }
}

/* Preserved source: /_build/loading-states-20260923.css */
/* Initial data waits use the same wordmark and spark as route waits. */
:root:root:root:root .app-loading-state { position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:160px;padding:24px;box-sizing:border-box;font-size:0; }
:root:root:root:root .app-loading-state > * { display:none; }
:root:root:root:root .app-loading-state::before { content:'filthylittle.';font:800 24px/1.2 var(--sans);letter-spacing:-.035em;color:var(--fg); }
:root:root:root:root .app-loading-state::after { content:'';display:block;width:20px;height:20px;background:var(--ember);clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%); }
:root:root:root:root .shell:has(.app-loading-state) .shell__geo-credit { visibility:hidden; }
@media(prefers-reduced-motion:no-preference){.app-loading-state::after{animation:route-spark-turn 1.6s ease-in-out infinite;}}

/* Preserved source: /_build/profile-loading-20260923.css */
/* Several profile queries can be pending together; draw one loading mark. */
:root:root:root:root .profile-page > .profile-loading-status { min-height:52dvh;padding:32px 16px!important;font-size:0!important; }
:root:root:root:root .profile-page > .profile-loading-status ~ .profile-loading-status { display:none; }
:root:root:root:root .profile-page:has(.profile-portrait-header) > .profile-loading-status { display:none; }
:root:root:root:root .shell:has(.profile-loading-status) .shell__geo-credit { visibility:hidden; }

/* Preserved source: /_build/account-simplicity-20260923.css */
/* Account editing: fewer questions, one nearby save action. */
:root:root:root:root :is(#settings-refunds,a[href="/settings/refunds"],a[href="#settings-refunds"],form:has([id^="trp-refund-"])) {display:none!important;}
:root:root:root:root .flsettings [hidden] {display:none!important;}
:root:root:root:root .flsettings .psplit {display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;align-items:start;padding:24px 0 12px;}
:root:root:root:root .flsettings .pim {width:112px;height:144px;min-height:0;border-radius:14px;overflow:hidden;}
:root:root:root:root .flsettings .pim .pim-empty {min-height:0;padding:12px 8px;}
:root:root:root:root .flsettings .pim .pim-empty :is(b,span),
:root:root:root:root .flsettings .pim .pdot {display:none;}
:root:root:root:root .flsettings .pim .pim-empty__mark {width:36px;height:36px;}
:root:root:root:root .flsettings .pim .pupl {min-height:44px;font:600 13px/1.2 var(--sans);padding:8px;}
:root:root:root:root .flsettings .pbd .cap {margin:0 0 16px;font-size:19px;}
:root:root:root:root .flsettings .pbd .orow {display:grid;grid-template-columns:minmax(0,1fr);align-items:start;}
:root:root:root:root .flsettings .pbd .oin {box-sizing:border-box;width:100%;min-width:0;min-height:48px;}
:root:root:root:root .flsettings .profile-edit-links {border-top:1px solid var(--line);margin-top:16px;}
:root:root:root:root .flsettings .profile-edit-links summary {min-height:48px;padding:14px 0;box-sizing:border-box;cursor:pointer;font:600 14px/1.4 var(--sans);}
:root:root:root:root .flsettings .profile-edit-links summary small {font-weight:400;color:var(--fg2);}
:root:root:root:root .flsettings .psplit + .acsave {position:static;display:flex;flex-wrap:wrap;gap:10px;padding:16px 0 24px;margin:0;border:0;border-bottom:1px solid var(--line);background:transparent;}
:root:root:root:root .flsettings .acsave .set__note {width:100%;margin:0;}
:root:root:root:root .profile-edit-photo {display:flex;align-items:center;gap:16px;margin:8px 0 22px;}
:root:root:root:root .profile-edit-photo img {width:72px;height:88px;object-fit:cover;border-radius:12px;}
:root:root:root:root .inline-profile-editor {border-radius:14px;}
:root:root:root:root .inline-profile-editor > details {order:0;}
:root:root:root:root .flsettings summary:focus-visible {outline:2px solid var(--em1);outline-offset:3px;}
@media(max-width:600px){
 :root:root:root:root .flsettings .psplit {grid-template-columns:1fr;gap:20px;padding-top:16px;}
 :root:root:root:root .flsettings .pim {width:96px;height:124px;min-height:0;}
 :root:root:root:root .flsettings .psplit + .acsave > button {flex:1;min-height:44px;}
 :root:root:root:root .flsettings .pbd {width:100%;}
}

/* Preserved source: /_build/profile-photo-frame-20260923.css */
/* Match the actual model profile photo: 3:2, 16px corners, cover at 22%. */
:root:root:root:root .flsettings .psplit {grid-template-columns:240px minmax(0,1fr);}
:root:root:root:root .flsettings .pim {width:240px;height:auto;min-height:0;max-height:none;aspect-ratio:3/2;border-radius:16px;overflow:hidden;background:var(--g05);}
:root:root:root:root .flsettings .pim .pavim {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%;}
:root:root:root:root .flsettings .pim .pim-empty {height:100%;box-sizing:border-box;}
:root:root:root:root .profile-edit-photo {display:flex;flex-direction:column;align-items:flex-start;gap:12px;}
:root:root:root:root .profile-edit-photo__frame {width:240px;max-width:100%;aspect-ratio:3/2;border-radius:16px;overflow:hidden;display:grid;place-items:center;background:var(--g05);}
:root:root:root:root .profile-edit-photo__frame img {width:100%;height:100%;object-fit:cover;object-position:center 22%;border-radius:0;}
:root:root:root:root .profile-edit-photo__frame > svg {width:40px;height:40px;color:var(--fg2);}
:root:root:root:root .profile-edit-photo__frame > span {font:500 14px/1.4 var(--sans);color:var(--fg2);}
:root:root:root:root #photo-upload-status {font-size:13px;line-height:1.5;}
@media(max-width:600px){
 :root:root:root:root .flsettings .psplit {grid-template-columns:minmax(0,1fr);}
 :root:root:root:root .flsettings .pim, :root:root:root:root .profile-edit-photo__frame {width:100%;max-width:360px;aspect-ratio:3/2;height:auto;min-height:0;}
 :root:root:root:root .profile-edit-photo {align-items:stretch;}
 :root:root:root:root .profile-edit-photo > button {align-self:flex-start;}
}

/* Preserved source: /design-review/approved-logo-20260923-v3.css */
/* Approved hybrid artwork: exact lettering and scratch silhouettes from the selected preview. */
:root .wordmark.wordmark--approved{aspect-ratio:3.12/1;position:relative;display:block;overflow:hidden;isolation:isolate}
:root .wordmark--approved::before,:root .wordmark--approved::after{content:none!important}
:root .wordmark--approved>.wordmark__letters,:root .wordmark--approved>.wordmark__art{display:none!important}
:root .wordmark--approved .approved-logo__art{position:absolute;display:block!important;max-width:none;width:115.7%;height:auto;left:-8.4%;top:-21.3%;filter:var(--logo-filter,url(#fl-logo-remove-black));pointer-events:none}
:root .wordmark--approved .approved-logo__accent{display:none!important}
:root[data-mode='paper'] .wordmark--approved .approved-logo__base{filter:var(--logo-filter,url(#fl-logo-remove-black)) invert(1)}
:root[data-mode='paper'] .wordmark--approved .approved-logo__accent{display:block!important;clip-path:polygon(0 0,29.6% 0,29.6% 100%,0 100%,0 0,90.4% 0,100% 0,100% 100%,90.4% 100%,90.4% 0)}
:root .brand-loading-logo{width:min(340px,78vw)!important;font-size:initial!important}
:root .fl-page-loading__brand>b:has(+.brand-loading-logo),:root .route-loading-brand>b:has(+.brand-loading-logo){display:none}

/* Never invert colored artwork: light-mode base contains lettering only. */
:root[data-mode='paper'] .wordmark--approved .approved-logo__base{clip-path:inset(39% 9.6% 0 29.6%);filter:var(--logo-filter,url(#fl-logo-remove-black)) brightness(0)}
:root .scratch-wait{display:block;width:clamp(80px,22vw,118px);height:auto;overflow:visible}
:root .fl-page-loading__brand:has(.scratch-wait)>:not(.scratch-wait):not(.sr-only),:root .route-loading-brand:has(.scratch-wait)>:not(.scratch-wait):not(.sr-only){display:none!important}
.scratch-wait__track{fill:var(--fg);opacity:.12}
.scratch-wait__color{opacity:.15;animation:scratch-light-up 1.05s linear infinite;animation-delay:-.16s}
.scratch-wait__color:nth-of-type(2){animation-delay:0s}
.scratch-wait__color:nth-of-type(3){animation-delay:.16s}
@keyframes scratch-light-up{0%,70%,100%{opacity:.15}16%,34%{opacity:1}}
@media(prefers-reduced-motion:reduce){.scratch-wait__color{animation:none;opacity:1}}
@media(max-width:767px){:root .phonetop__mark .wordmark--approved,:root .topbar__mark .wordmark--approved{width:190px!important;max-width:52vw}:root .phonetop__mark{max-width:54vw}}

:root[data-mode="paper"] .wordmark--approved .approved-logo__accent{clip-path:polygon(0 0,38% 0,38% 39%,29.6% 39%,29.6% 100%,0 100%,0 0,90.4% 0,100% 0,100% 100%,90.4% 100%,90.4% 0)}

/* Preserved source: /design-review/ember-accents-20260923-v4.css */
/* Shared brand accents. Gradient on lettering; solid ember midpoint on small strokes. */
:root{--brand-accent-ink:linear-gradient(118deg,#FF2D6F,#FF2D6F);--brand-accent-stroke:#ff2d6f}
:root[data-mode='paper']{--brand-accent-ink:linear-gradient(118deg,#d31557,#d31557);--brand-accent-stroke:#d31557}
:root:root:root:root :is(.ember-ink,.burn,.rail__item--on>b,.rail__item[aria-current='page']>b,.rail__prow:hover .rail__pbig,.menu__row--on .menu__t,.settings-index a[aria-current='location']){
 background-image:var(--brand-accent-ink);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;background-repeat:no-repeat;
}
@media(hover:hover){:root:root:root:root .rail__item:hover>b,:root:root:root:root .settings-index a:hover{background-image:var(--brand-accent-ink);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}}
:root:root:root:root .rail__item--on .rail__ico,:root:root:root:root .rail__item[aria-current='page'] .rail__ico,:root:root:root:root .rail__item--on svg.navigation-icon{color:var(--brand-accent-stroke)}
:root:root:root:root .settings-index a[aria-current='location']{border-color:var(--brand-accent-stroke)}
:root:root:root:root :is(.profile-message-pill__arrow,.live-dot){background:var(--ember)}
/* Preserve legibility in high-contrast modes. */
@media(forced-colors:active){:root:root:root:root :is(.ember-ink,.burn,.rail__item--on>b,.rail__item[aria-current='page']>b,.menu__row--on .menu__t,.settings-index a[aria-current='location']){background:none;color:LinkText;-webkit-text-fill-color:LinkText}}

/* First server-rendered account check: graphic immediately, no text flash. */
:root:root:root .agecheck[aria-busy="true"]{position:fixed;inset:0;z-index:2147483000;width:100%;height:100dvh;min-height:100dvh;display:grid;place-items:center;margin:0;padding:0;background:var(--ink,#000)}
:root:root:root .agecheck[aria-busy="true"] .agecheck__in{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
:root:root:root .agecheck[aria-busy="true"]::before{content:'';display:block;width:clamp(80px,22vw,118px);aspect-ratio:610/560;background:url('/brand/scratch-loading-20260923-v2.svg?v=pink-20260928') center/contain no-repeat}

/* Keep every sidebar interaction on the logo's full ember gradient. */
:root:root:root:root .rail .rail__item:is(.rail__item--on,.rail__item--act,[aria-current="page"],:active,:hover)>b {
 background-image:linear-gradient(118deg,#FF2D6F,#FF2D6F);
 background-size:100% 100%;background-repeat:no-repeat;
 background-clip:text;-webkit-background-clip:text;
 color:transparent;-webkit-text-fill-color:transparent;
 width:max-content;flex:0 0 auto;
}
@media(forced-colors:active){
 :root:root:root:root .rail .rail__item:is(.rail__item--on,.rail__item--act,[aria-current="page"],:active,:hover)>b{background:none;color:LinkText;-webkit-text-fill-color:LinkText}
}

/* Preserved source: /design-review/header-clearance-20260923.css */
/* Discover owns its page layout, but still clears the persistent desktop bar. */
@media(min-width:1241px){
 :root:root:root:root .shell:has(> .shell__wide > :is(.flai,.nd,.ndpage,.ndchoose)){padding-top:var(--navh);padding-left:calc(var(--railw) + 24px);padding-right:24px}
 :root:root:root:root .shell > .shell__wide > :is(.nd,.ndpage){padding-top:0}
 :root:root:root:root .topbar__mark{width:250px;flex-basis:250px;flex-shrink:0}
 :root:root:root:root .topbar__mark .wordmark.wordmark--approved{width:250px!important;max-width:100%}
}

/* Retained navigation styles can arrive after the shared stylesheet. */
:root .rail .rail__item:is(.rail__item--on,.rail__item--act,[aria-current="page"],:active,:hover)>b{background-image:linear-gradient(118deg,#FF2D6F,#FF2D6F)!important;background-clip:text!important;-webkit-background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important}
@media(forced-colors:active){:root .rail .rail__item:is(.rail__item--on,.rail__item--act,[aria-current="page"],:active,:hover)>b{background:none!important;color:LinkText!important;-webkit-text-fill-color:LinkText!important}}

/* Preserved source: /design-review/platform-finish-20260924.css */
/* Shared finishing pass: smoother feedback while preserving the existing visual system. */
:root { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ :root { scroll-behavior:auto; } }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 :root:root:root:root :is(.post:not(.post--open),.conv,.st-card,.home-discover,.flai-card,.ndcard,.nvlrow,.morerow){transition:transform 180ms var(--c-press),border-color 180ms var(--c-press),box-shadow 180ms var(--c-press)}
 :root:root:root:root :is(.post:not(.post--open),.conv,.st-card,.home-discover,.flai-card,.ndcard,.nvlrow,.morerow):hover{transform:translateY(-1px);box-shadow:0 10px 28px color-mix(in srgb,var(--ink) 8%,transparent)}
}
:root:root:root:root :is(.post,.conv,.st-card,.flai-card,.ndcard) :is(button,a):focus-visible{outline-offset:3px}
:root:root:root:root :is(.post__text,.conv__last,.st-mut,.set__note){text-wrap:pretty}
@media(max-width:700px){
 :root:root:root:root :is(.post:not(.post--open),.conv,.st-card,.flai-card,.ndcard){border-radius:16px}
 :root:root:root:root :is(.post,.conv,.st-card,.flai-card,.ndcard){box-shadow:none}
}
@media(prefers-reduced-motion:reduce){:root:root:root:root :is(.post:not(.post--open),.conv,.st-card,.home-discover,.flai-card,.ndcard,.nvlrow,.morerow){transition:none;transform:none!important}}

/* Preserved source: /design-review/continuity-20260924.css */
/* Small cross-page consistency fixes. */
:root:root:root:root .studio > .hero .headline br{display:block}
:root:root:root:root :is(.settings-index,.nf__tabs,.studio-workspace-nav,.studio-content-nav,.ndquickrow){scrollbar-width:none;overscroll-behavior-x:contain}
:root:root:root:root :is(.settings-index,.nf__tabs,.studio-workspace-nav,.studio-content-nav,.ndquickrow)::-webkit-scrollbar{display:none}
@media(max-width:700px){
 :root:root:root:root :is(.settings-index,.nf__tabs,.studio-workspace-nav,.studio-content-nav,.ndquickrow){scroll-padding-inline:16px}
 :root:root:root:root .studio > .hero .headline{max-width:14ch}
}

/* Preserved source: /design-review/signup-polish-20260924.css */
/* Signup-only polish. It preserves the approved scene and uses ember everywhere. */
:root.is-auth.is-lnd .signup-door :is(.signup-door__returning button,.signup-door__notice,.signup-door__reset,.signup-door__terms a){background-image:var(--ember-text);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
:root.is-auth.is-lnd .signup-door__brand .wordmark--approved{width:clamp(210px,24vw,330px)!important;max-width:none}
:root.is-auth.is-lnd[data-mode=paper] .signup-door__brand .wordmark--approved .approved-logo__base{filter:var(--logo-filter,url(#fl-logo-remove-black)) brightness(0)!important}
:root.is-auth.is-lnd[data-mode=paper] .signup-door__brand .wordmark--approved .approved-logo__accent{display:block!important}
@media(max-width:820px){:root.is-auth.is-lnd .signup-door__brand .wordmark--approved{width:190px!important;max-width:52vw}}
/* Onboarding words use the same ember gradient in Sunrise and Night. */
:root.is-auth :is(.authpage .burn,.authpage .ember-ink,.authpage .ob__invite,.authpage .ob__note--good,.authpage .crpg__title){background-image:var(--ember-text);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
:root.is-auth :is(.authpage .ob__note--error,.authpage .crflow .crpg__n){color:var(--fg2)}
@media(prefers-reduced-motion:no-preference){:root.is-auth .authpage__step{transition:opacity 180ms var(--c-press),transform 220ms var(--c-press)}}
@media(prefers-reduced-motion:reduce){:root.is-auth .authpage__step{transition:none}}

/* Preserved source: /design-review/signup-polish-20260924-v2.css */
/* Signup-only polish. It preserves the approved scene and uses ember everywhere. */
:root.is-auth.is-lnd .signup-door :is(.signup-door__returning button,.signup-door__notice,.signup-door__reset,.signup-door__terms a){background-image:linear-gradient(118deg,#FF2D6F,#FF2D6F);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
:root.is-auth.is-lnd .signup-door__brand .wordmark--approved{width:clamp(210px,24vw,330px)!important;max-width:none}
:root.is-auth.is-lnd[data-mode=paper] .signup-door__brand .wordmark--approved .approved-logo__base{filter:var(--logo-filter,url(#fl-logo-remove-black)) brightness(0)!important}
:root.is-auth.is-lnd[data-mode=paper] .signup-door__brand .wordmark--approved .approved-logo__accent{display:block!important}
@media(max-width:820px){:root.is-auth.is-lnd .signup-door__brand .wordmark--approved{width:190px!important;max-width:52vw}}
/* Onboarding words use the same ember gradient in Sunrise and Night. */
:root.is-auth :is(.authpage .burn,.authpage .ember-ink,.authpage .ob__invite,.authpage .ob__note--good,.authpage .crpg__title){background-image:linear-gradient(118deg,#FF2D6F,#FF2D6F);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
:root.is-auth :is(.authpage .ob__note--error,.authpage .crflow .crpg__n){color:var(--fg2)}
@media(prefers-reduced-motion:no-preference){:root.is-auth .authpage__step{transition:opacity 180ms var(--c-press),transform 220ms var(--c-press)}}
@media(prefers-reduced-motion:reduce){:root.is-auth .authpage__step{transition:none}}

/* Preserved source: /design-review/full-page-loading-20260923.css */
/* Top-layer dialog escapes transformed page containers on desktop and mobile. */
#fl-page-loading{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:24px;box-sizing:border-box;background:var(--ink,#101013);color:var(--fg,#f8f7fa);outline:0;overflow:hidden}
#fl-page-loading[open]{display:grid;place-items:center}
#fl-page-loading::backdrop{background:var(--ink,#101013)}
.fl-page-loading__brand{display:flex;flex-direction:column;align-items:center;gap:26px}
.fl-page-loading__brand b{font:800 clamp(28px,5vw,38px)/1.15 var(--sans,-apple-system,BlinkMacSystemFont,sans-serif);letter-spacing:-.045em}
.fl-page-loading__brand b>span{color:var(--em1,#ef6387)}
.fl-page-loading__brand i{width:23px;height:23px;background:var(--ember,#ef6387);clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%)}
.fl-page-loading__dismiss{display:none;position:absolute;bottom:calc(28px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);min-height:44px;padding:10px 20px;border:1px solid currentColor;border-radius:24px;background:transparent;color:inherit;font:600 14px var(--sans,sans-serif)}
.fl-page-loading--slow .fl-page-loading__dismiss{display:block}
@media(prefers-reduced-motion:no-preference){.fl-page-loading__brand i{animation:fl-page-loading-turn 1.6s ease-in-out infinite}@keyframes fl-page-loading-turn{50%{transform:rotate(90deg) scale(.8)}100%{transform:rotate(180deg)}}}

/* Preserved source: /design-review/account-navigation-20260923.css */
/* Prevent retired controls flashing while the retained application hydrates. */
form:has(#trp-cap),form:has(#trp-pertxn),.wrcpt__r2,.wrcpt__bar{display:none!important}

/* Preserved source: /design-review/settings-hover-20260924-v10.css */
/* Final contrast pass: keep Settings controls readable in both themes. */
@media (hover: hover) {
  :root[data-mode='grey'] .flsettings :is(.settings-index a,.oval,.xpc-pills button,.xpc-action,.trp-btn,.acc,.nvlrow,.passfilters button,.pupl,.acsave button):not(:disabled):is(:hover,:focus-visible),
  :root:not([data-mode='paper']) .flsettings :is(.settings-index a,.oval,.xpc-pills button,.xpc-action,.trp-btn,.acc,.nvlrow,.passfilters button,.pupl,.acsave button):not(:disabled):is(:hover,:focus-visible) {
    color: var(--fg) !important;
    -webkit-text-fill-color: var(--fg) !important;
    background: var(--g08) !important;
    background-image: none !important;
    border-color: var(--cap-hover-edge) !important;
    text-shadow: none !important;
  }
  :root[data-mode='paper'] .flsettings :is(.settings-index a,.oval,.xpc-pills button,.xpc-action,.trp-btn,.acc,.nvlrow,.passfilters button,.pupl,.acsave button):not(:disabled):is(:hover,:focus-visible) {
    color: var(--fg) !important;
    -webkit-text-fill-color: var(--fg) !important;
    background: var(--g05) !important;
    background-image: none !important;
    border-color: var(--line) !important;
    text-shadow: none !important;
  }
  .flsettings :is(.settings-index a,.oval,.xpc-pills button,.xpc-action,.trp-btn,.acc,.nvlrow,.passfilters button,.pupl,.acsave button):is(:hover,:focus-visible) :is(svg,.ti,.navigation-icon,.ico) { color: currentColor !important; }
}

/* Override the legacy high-specificity gradient hover rule used by the sidebar. */
@media (hover: hover) {
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible,:active,.rail__item--on,.rail__item--act,[aria-current='page']) > b,
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible,:active,.rail__item--on,.rail__item--act,[aria-current='page']) .rail__ico,
  :root:root:root:root .flsettings .settings-index a:is(:hover,:focus-visible) {
    background-image: none !important;
    background-clip: border-box !important;
    -webkit-background-clip: border-box !important;
    color: var(--fg) !important;
    -webkit-text-fill-color: var(--fg) !important;
    text-shadow: none !important;
  }
  :root[data-mode='paper'] :root:root:root:root .rail .rail__item:is(:hover,:focus-visible) > b,
  :root[data-mode='paper'] :root:root:root:root .flsettings .settings-index a:is(:hover,:focus-visible) {
    color: var(--fg) !important;
    -webkit-text-fill-color: var(--fg) !important;
  }
}

/* The screenshot is the More hub: its rows use .more22, not .flsettings. */
@media (hover: hover) {
  :root:root:root:root .more22 .morerow:not(:disabled):is(:hover,:focus-visible),
  :root:root:root:root .more22 .moretabs .pill:not(:disabled):is(:hover,:focus-visible),
  :root:root:root:root .more22 .moreseg .pill:not(:disabled):is(:hover,:focus-visible) {
    color: var(--fg) !important;
    -webkit-text-fill-color: var(--fg) !important;
    background: var(--g08) !important;
    background-image: none !important;
    border-color: var(--cap-hover-edge) !important;
    text-shadow: none !important;
  }
  :root:root:root:root .more22 .morerow:not(:disabled):is(:hover,:focus-visible) :is(svg,.l,.n,.c,i) {
    color: var(--fg) !important;
    -webkit-text-fill-color: var(--fg) !important;
  }
}

/* Sidebar hover is the ember accent, matching the brand mark. */
@media (hover: hover) {
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible) > b {
    background-image: var(--ember-text) !important;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    text-shadow: none !important;
  }
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible) .rail__ico {
    color: var(--em1) !important;
    -webkit-text-fill-color: var(--em1) !important;
    background-image: none !important;
  }
}

/* Sidebar motion: fixed white icons, animated ember label only. */
@media (hover: hover) {
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible) .rail__ico,
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible) .rail__ico svg {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background-image: none !important;
  }
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible) > b {
    background-image: linear-gradient(110deg,var(--em1) 0%,var(--em2) 45%,var(--em1) 90%) !important;
    background-size: 220% 100% !important;
    background-position: 0% 50% !important;
    animation: fl-sidebar-ember 1.8s ease-in-out infinite alternate !important;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
  }
}
@keyframes fl-sidebar-ember {
  from { background-position: 0% 50%; }
  to { background-position: 100% 50%; }
}
@media (prefers-reduced-motion: reduce) {
  :root:root:root:root .rail .rail__item:is(:hover,:focus-visible) > b { animation: none !important; }
}

/* Composer surface: one consistent panel tone, with only the input field lifted. */
#flcmw #flcmbox,
#flcmw #flcmtools,
#flcmw #flcmbox .pmrow,
#flcmw #flcmbox .pmbar {
  background-color: var(--sheet-ground) !important;
  background-image: none !important;
}
#flcmw #flcmbox #flcmta,
#flcmw #flcmbox .pmin {
  background-color: var(--input-bg) !important;
}

/* Composer backdrop: a single even veil behind the card, without a second grey layer. */
#pmwrap.pmwrap,
#flcmw.pmwrap {
  background: rgba(0,0,0,.82) !important;
  background-image: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
:root[data-mode='paper'] #pmwrap.pmwrap,
:root[data-mode='paper'] #flcmw.pmwrap {
  background: rgba(20,16,18,.46) !important;
}

/* Keep the even veil quiet: the page should remain present behind the composer. */
#pmwrap.pmwrap,
#flcmw.pmwrap {
  background: rgba(0,0,0,.58) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  backdrop-filter: blur(8px) !important;
}
:root[data-mode='paper'] #pmwrap.pmwrap,
:root[data-mode='paper'] #flcmw.pmwrap {
  background: rgba(20,16,18,.28) !important;
}

/* Composer popup: header, body, and footer share exactly one surface. */
#pmwrap #flcmbox.pmbox,
#pmwrap #flcmbox.pmbox .pmtop,
#pmwrap #flcmbox.pmbox .pmrow,
#pmwrap #flcmbox.pmbox .pmbar,
#pmwrap #flcmtools,
#flcmw #flcmbox.pmbox,
#flcmw #flcmbox.pmbox .pmtop,
#flcmw #flcmbox.pmbox .pmrow,
#flcmw #flcmbox.pmbox .pmbar,
#flcmw #flcmtools {
  background: var(--sheet-ground) !important;
  background-image: none !important;
}

/* Remove the last nested light bands inside the popup. */
#pmwrap #flcmbox.pmbox::before,
#pmwrap #flcmbox.pmbox::after,
#pmwrap #flcmbox.pmbox .pmbar::before,
#flcmw #flcmbox.pmbox::before,
#flcmw #flcmbox.pmbox::after,
#flcmw #flcmbox.pmbox .pmbar::before {
  background: none !important;
  display: none !important;
}
#pmwrap #flcmbox.pmbox > :is(.pmtop,.pmrow,.pmbar,#flcmtools),
#flcmw #flcmbox.pmbox > :is(.pmtop,.pmrow,.pmbar,#flcmtools) {
  background: var(--sheet-ground) !important;
  background-color: var(--sheet-ground) !important;
  background-image: none !important;
}

/* Preserved source: /design-review/verification-house-20260925mmm.css */
/* Email verification belongs to the same account door as signup. Keep its
   controls, mark, spacing and state language on the shared ember system. */
.verification-flow,
section[aria-label='Email verification'] {
  width: 100%;
  max-width: 620px;
  margin-top: 22px;
  min-width: 0;
}
.verification-flow__heading,
section[aria-label='Email verification'] > .ob__aside-title {
  margin: 0 0 12px;
  color: var(--flow-fg, var(--fg));
  font: 800 clamp(26px, 3vw, 42px)/1.08 SignupArchivo, var(--sans);
  letter-spacing: -.04em;
  text-transform: none;
}
.verification-flow > .ob__note,
section[aria-label='Email verification'] > .ob__note {
  max-width: 620px;
  margin: 10px 0 0;
  padding: 0;
  color: var(--flow-muted, var(--fg2));
  font: 400 14px/1.55 SignupArchivo, var(--sans);
}
.verification-flow > .ob__note--error,
section[aria-label='Email verification'] > .ob__note--error { color: var(--flow-error, var(--em1)); }
.verification-flow .year,
section[aria-label='Email verification'] .year {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  margin: 20px 0 16px;
  cursor: text;
}
.verification-flow .year b,
section[aria-label='Email verification'] .year b {
  display: grid;
  place-items: center;
  width: 100%;
  height: 58px;
  min-width: 0;
  border: 1px solid var(--flow-line, var(--line));
  border-radius: 16px;
  color: var(--flow-fg, var(--fg));
  background: transparent;
  font: 650 23px/1 SignupArchivo, var(--sans);
  transition: border-color 180ms var(--c-press), box-shadow 180ms var(--c-press), background-color 180ms var(--c-press);
}
.verification-flow .year b.year__slot--empty,
section[aria-label='Email verification'] .year b.year__slot--empty { color: var(--flow-muted, var(--fg3)); }
.verification-flow .year b.year__slot--now,
section[aria-label='Email verification'] .year b.year__slot--now {
  border-color: var(--em1);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--em1) 16%, transparent);
}
.verification-flow .year--bad b,
section[aria-label='Email verification'] .year--bad b { border-color: var(--flow-error, var(--em1)); color: var(--flow-error, var(--em1)); }
.verification-flow .year__input,
section[aria-label='Email verification'] .year__input {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  opacity: .01;
  cursor: text;
}
.verification-flow .year__input:focus,
.verification-flow .year__input:focus-visible,
section[aria-label='Email verification'] .year__input:focus,
section[aria-label='Email verification'] .year__input:focus-visible { outline: 2px solid var(--em1); outline-offset: 4px; }
.verification-flow > .pill.verification-flow__action,
section[aria-label='Email verification'] > .pill {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  min-height: 62px;
  margin-top: 16px;
  padding: 8px 10px 8px 24px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: var(--flow-button, var(--signup-button, var(--fg)));
  color: var(--flow-button-text, var(--signup-button-fg, var(--ink)));
  -webkit-text-fill-color: currentColor;
  font: 600 18px/1.25 SignupArchivo, var(--sans);
  text-align: start;
}
.verification-flow > .pill.verification-flow__action--secondary,
section[aria-label='Email verification'] > .pill[aria-pressed='true'] {
  min-height: 48px;
  margin-top: 10px;
  border-color: var(--flow-line, var(--line));
  background: transparent;
  color: var(--flow-fg, var(--fg));
  font-size: 14px;
}
.verification-flow .verification-flow__arrow,
section[aria-label='Email verification'] > .pill::after {
  content: '→';
  display: grid;
  place-items: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--ember);
  color: #080808;
  -webkit-text-fill-color: #080808;
  font-size: 21px;
  transition: transform 180ms var(--c-press);
}
.verification-flow > .pill.verification-flow__action--secondary .verification-flow__arrow,
section[aria-label='Email verification'] > .pill[aria-pressed='true']::after {
  width: 34px;
  height: 34px;
  font-size: 17px;
}
.verification-flow > .pill.verification-flow__action:hover:not([aria-disabled='true']) .verification-flow__arrow,
section[aria-label='Email verification'] > .pill:hover:not([aria-disabled='true'])::after { transform: translateX(2px); }
.verification-flow > .pill.verification-flow__action::after { content: none; }
.verification-flow > .pill.verification-flow__action[aria-disabled='true'],
section[aria-label='Email verification'] > .pill[aria-disabled='true'] { opacity: .58; cursor: not-allowed; }
.verification-flow__action:focus-visible,
section[aria-label='Email verification'] > .pill:focus-visible { outline: 2px solid var(--em1); outline-offset: 4px; }
.verification-flow .verification-flow__email { overflow-wrap: anywhere; }

/* The direct /verify-email document uses the same markup but keeps its own
   six-field autofill surface. These rules deliberately share the exact
   signup-door geometry instead of creating a second card language. */
body:has(.verification-flow) .signup-door__header .signup-door__brand {
  display: block;
  width: clamp(210px, 24vw, 330px);
  min-width: 0;
  line-height: 0;
}
body:has(.verification-flow) .signup-door__header .wordmark.wordmark--approved {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 3.12 / 1;
  overflow: hidden;
  isolation: isolate;
  pointer-events: none;
}
body:has(.verification-flow) .signup-door__header .wordmark--approved::before,
body:has(.verification-flow) .signup-door__header .wordmark--approved::after { content: none; }
body:has(.verification-flow) .signup-door__header .wordmark--approved .approved-logo__art {
  position: absolute;
  display: block;
  width: 115.7%;
  max-width: none;
  height: auto;
  left: -8.4%;
  top: -21.3%;
  pointer-events: none;
  filter: var(--logo-filter);
}
body:has(.verification-flow) .signup-door__header .wordmark--approved .approved-logo__accent { display: none; }
body:has(.verification-flow) .signup-door__header .wordmark--approved .approved-logo__base { clip-path: none; }
:root[data-mode='paper'] body:has(.verification-flow) .signup-door__header .wordmark--approved .approved-logo__base {
  clip-path: inset(39% 9.6% 0 29.6%);
  filter: var(--logo-filter) brightness(0);
}
:root[data-mode='paper'] body:has(.verification-flow) .signup-door__header .wordmark--approved .approved-logo__accent {
  display: block;
  clip-path: polygon(0 0,38% 0,38% 39%,29.6% 39%,29.6% 100%,0 100%,0 0,90.4% 0,100% 0,100% 100%,90.4% 100%,90.4% 0);
}
body:has(.verification-flow) .signup-door__mode .mode-icon {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
}
body:has(.verification-flow) .verification-flow .code {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 20px 0 16px;
}
body:has(.verification-flow) .verification-flow .code input {
  width: 100%;
  height: 58px;
  min-width: 0;
  padding: 0;
  border: 1px solid var(--flow-line, var(--line));
  border-radius: 16px;
  background: transparent;
  color: var(--flow-fg, var(--fg));
  font: 650 23px/1 SignupArchivo, var(--sans);
  text-align: center;
  caret-color: var(--em1);
  outline: none;
}
body:has(.verification-flow) .verification-flow .code input:focus {
  border-color: var(--em1);
  outline: 2px solid color-mix(in srgb, var(--em1) 22%, transparent);
  outline-offset: 2px;
}
body:has(.verification-flow) .verification-flow .signup-door__start { margin-top: 16px; }
body:has(.verification-flow) .verification-flow .notice,
body:has(.verification-flow) .verification-flow .destination { color: var(--flow-muted, var(--fg2)); }
body:has(.verification-flow) .verification-flow .notice { margin-top: 12px; }

@media (max-width: 820px) {
  body:has(.verification-flow) .signup-door__header .signup-door__brand { width: 190px; max-width: 52vw; }
  body:has(.verification-flow) .verification-flow .code { gap: 6px; }
  body:has(.verification-flow) .verification-flow .code input { height: 52px; border-radius: 14px; font-size: 20px; }
}

@media (max-width: 820px) {
  .verification-flow { margin-top: 18px; }
  .verification-flow__heading { font-size: clamp(25px, 7.6vw, 36px); }
  .verification-flow .year { gap: 6px; margin-top: 16px; }
  .verification-flow .year b { height: 52px; border-radius: 14px; font-size: 20px; }
  .verification-flow > .pill.verification-flow__action { min-height: 58px; padding-left: 20px; font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .verification-flow .year b, .verification-flow .verification-flow__arrow { transition: none; }
}

/* Preserved source: /design-review/account-menu-identity-20260925.css */
.menu__identity{display:grid;gap:2px;margin:0 14px 8px;padding:11px 14px 12px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(255,255,255,.045)}.menu__identity-name{overflow:hidden;color:var(--fg);font:700 15px/1.25 var(--sans);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap}.menu__identity-email{overflow:hidden;color:var(--fg3);font:500 12px/1.35 var(--sans);text-overflow:ellipsis;white-space:nowrap}:root[data-mode=paper] .menu__identity{border-color:rgba(0,0,0,.10);background:rgba(0,0,0,.035)}:root[data-mode=paper] .menu__identity-name{color:var(--fg)}:root[data-mode=paper] .menu__identity-email{color:var(--fg3)}
/* Preserved source: /design-review/ember-auth-overlay-20260926.css */
/* Narrow overlay for the currently active .com release. The full source uses
   these same brand tokens; this file lets the live baseline keep its own
   account and payment code while taking the visual correction. */
:root:root:root {
  --em1: #ff2d6f;
  --em2: #ff2d6f;
  --ember: linear-gradient(118deg, var(--em1), var(--em2));
  --em1-pressed: #e31b5c;
  --em2-pressed: #e31b5c;
}
:root:root:root .signup-door__arrow,
:root:root:root .ob--moon .pill__go {
  background: var(--ember);
  color: #080808;
}
:root:root:root.is-auth.is-lnd .signup-door :is(
  .signup-door__returning button,
  .signup-door__notice,
  .signup-door__reset,
  .signup-door__terms a
) {
  background-image: var(--ember);
  background-size: 100% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
:root:root:root.is-auth.is-lnd[data-mode='paper'] .signup-door :is(
  .signup-door__returning button,
  .signup-door__notice,
  .signup-door__reset,
  .signup-door__terms a
) {
  background-image: linear-gradient(118deg, var(--em1-print, #d31557), var(--em2-print, #d31557));
}
:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, [aria-current='page'], :active, :hover) > b {
  background-image: var(--ember) !important;
  background-size: 100% 100% !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}
:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, [aria-current='page'], :active, :hover) :is(.rail__ico, .rail__ico svg, svg.navigation-icon) {
  color: var(--fg) !important;
}
:root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, [aria-current='page'], :active) {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}
@media (forced-colors: active) {
  :root:root:root .rail .rail__item:is(.rail__item--on, .rail__item--act, [aria-current='page'], :active, :hover) > b {
    background: none !important;
    color: LinkText !important;
    -webkit-text-fill-color: LinkText !important;
  }
}

/* Preserved source: /design-review/phone-dock-20260926.css?v=2 */
/* The approved phone dock: five equal destinations, a dark ground in every
   appearance, white selected glyphs and a travelling white highlight. */
@media (max-width: 1240px) {
  :root:root:root .chrome.chrome--fanvue {
    left: 0;
    right: 0;
    bottom: 0 !important;
    width: 100%;
    height: calc(80px + env(safe-area-inset-bottom));
    padding: 0 0 env(safe-area-inset-bottom);
    gap: 0;
    border: 0;
    border-top: 1px solid #292929;
    border-radius: 0;
    background: #0b0b0b;
    box-shadow: none;
    overflow: visible;
    isolation: isolate;
    z-index: 99996;
    pointer-events: auto;
  }
  :root:root:root .chrome.chrome--fanvue::before { display: none; }
  :root:root:root .chrome.chrome--fanvue .chrome__indicator {
    position: absolute;
    top: -1px;
    width: 20%;
    height: 1px;
    z-index: 1;
    transform: translateX(-50%);
    background: linear-gradient(90deg, transparent, #fff 50%, transparent);
    pointer-events: none;
    transition: inset-inline-start 300ms ease-in-out;
  }
  :root:root:root[dir='rtl'] .chrome.chrome--fanvue .chrome__indicator { transform: translateX(50%); }
  :root:root:root .chrome.chrome--fanvue .chrome__indicator::after {
    content: '';
    position: absolute;
    top: -21px;
    left: 16%;
    width: 68%;
    height: 42px;
    border-radius: 50%;
    background: #fff;
    opacity: .12;
    filter: blur(18px);
  }
  :root:root:root .chrome.chrome--fanvue .chrome__i,
  :root:root:root .chrome.chrome--fanvue .chrome__i--bolt {
    position: relative;
    z-index: 2;
    flex: 1 1 20%;
    width: auto;
    min-width: 0;
    height: 79px;
    min-height: 79px;
    margin: 0;
    padding: 0;
    gap: 4px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #a3a3a3;
    -webkit-text-fill-color: currentColor;
    transform: none;
    transition: color 150ms ease-in-out;
  }
  :root:root:root .chrome.chrome--fanvue .chrome__i--on,
  :root:root:root .chrome.chrome--fanvue .chrome__i--on:active {
    background: transparent;
    color: #fff;
  }
  :root:root:root .chrome.chrome--fanvue .chrome__i:active { transform: none; }
  :root:root:root .chrome.chrome--fanvue .chrome__i:active .phone-dock-icon { transform: scale(.94); }
  :root:root:root .chrome.chrome--fanvue .chrome__i:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -4px;
    border-radius: 0;
  }
  :root:root:root .chrome.chrome--fanvue .chrome__label,
  :root:root:root .chrome.chrome--fanvue .chrome__i--bolt .chrome__label,
  :root:root:root .chrome.chrome--fanvue.chrome--compact .chrome__label {
    display: block;
    max-width: 100%;
    overflow: hidden;
    opacity: 1;
    color: inherit;
    font: 600 10.5px/14px Inter, var(--sans), sans-serif;
    letter-spacing: 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    transform: none;
    transition: color 150ms ease-in-out;
  }
  :root:root:root .chrome.chrome--fanvue.chrome--compact .chrome__i > svg,
  :root:root:root .chrome.chrome--fanvue.chrome--compact .flcxbdg { transform: none; }
  :root:root:root .chrome.chrome--fanvue .phone-dock-icon {
    position: relative;
    display: block;
    flex: none;
    width: 24px;
    height: 24px;
    color: inherit;
    transform: scale(1);
    transition: transform 150ms ease-in-out;
  }
  :root:root:root .chrome.chrome--fanvue .phone-dock-icon > svg {
    position: absolute;
    inset: 0;
    width: 24px;
    height: 24px;
    filter: none;
    transition: opacity 150ms ease-in-out;
  }
  :root:root:root .chrome.chrome--fanvue .phone-dock-icon__outline { opacity: 1; }
  :root:root:root .chrome.chrome--fanvue .phone-dock-icon__solid { opacity: 0; }
  :root:root:root .chrome.chrome--fanvue .chrome__i--on .phone-dock-icon__outline { opacity: 0; }
  :root:root:root .chrome.chrome--fanvue .chrome__i--on .phone-dock-icon__solid { opacity: 1; }
  :root:root:root .chrome.chrome--fanvue .phone-dock-avatar,
  :root:root:root .chrome.chrome--fanvue .phone-dock-avatar > svg,
  :root:root:root .chrome.chrome--fanvue .phone-dock-avatar > img {
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 50%;
  }
  :root:root:root .chrome.chrome--fanvue .phone-dock-avatar {
    overflow: hidden;
    border: 1.5px solid #a3a3a3;
    background: #313131;
    transition: border-color 150ms ease-in-out, box-shadow 150ms ease-in-out;
  }
  :root:root:root .chrome.chrome--fanvue .chrome__i--on .phone-dock-avatar {
    border-color: #fff;
    box-shadow: 0 0 0 1px #fff;
  }
  :root:root:root .chrome.chrome--fanvue .phone-dock-avatar > img { object-fit: cover; }
  :root:root:root .chrome.chrome--fanvue .flcxbdg {
    top: 8px;
    margin-inline-start: 17px;
    background: #fff;
    color: #0b0b0b;
  }
  :root:root:root .chrome.chrome--fanvue.chrome--compact::before { transform: none; }
  :root:root:root .chrome.chrome--fanvue.chrome--compact .phone-dock-icon { transform: none; }
  :root:root:root .shell:not(.shell--centred, .shell--own) {
    padding-bottom: calc(88px + env(safe-area-inset-bottom));
  }
}

/* Menu remains a real focus-trapped dialog; on phones it arrives as the
   bottom sheet shown in the approved mockup, above the still-visible dock. */
@media (max-width: 640px) {
  :root:root:root .drawer {
    inset: auto 0 calc(80px + env(safe-area-inset-bottom) + var(--kb, 0px));
    width: 100%;
    max-height: calc(100dvh - 130px - env(safe-area-inset-top));
    padding: 17px 20px 20px;
    border: 1px solid #333;
    border-bottom: 0;
    border-radius: 18px 18px 0 0;
    background: #171717;
    box-shadow: 0 -16px 40px #0009;
    backdrop-filter: none;
    opacity: 1;
    transform: translateY(calc(100% + 80px));
    transition: transform 250ms ease-out, visibility 0s linear 250ms;
  }
  :root:root:root[data-mode='grey'] .drawer,
  :root:root:root[data-mode='paper'] .drawer { background: #171717; }
  :root:root:root .drawer.drawer--on {
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s;
  }
  :root:root:root .drawer,
  :root:root:root .drawer :is(a, button, h2, b, i, span) { color: #f2f2f2; }
  :root:root:root .drawer__group h2,
  :root:root:root .drawer__id i { color: #a3a3a3; }
  :root:root:root .drawer__i--on .drawer__ico { color: #fff; }
  :root:root:root .edgepull { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  :root:root:root .chrome.chrome--fanvue .chrome__indicator,
  :root:root:root .chrome.chrome--fanvue .chrome__i,
  :root:root:root .chrome.chrome--fanvue .chrome__label,
  :root:root:root .chrome.chrome--fanvue .phone-dock-icon,
  :root:root:root .chrome.chrome--fanvue .phone-dock-icon > svg,
  :root:root:root .drawer { transition-duration: 0ms; }
}
@media(max-width:1240px){
 :root:root:root .chrome.chrome--fanvue-live > :not([data-phone-dock-tab],.chrome__indicator){display:none!important}
}
@media(min-width:1241px){[data-phone-dock-tab],.chrome--fanvue-live .chrome__indicator{display:none!important}}

/* Preserved source: /design-review/phone-header-scroll-20260926.css?v=8 */
/* Fanvue uses individual translate: preserve the same 72px travel and 150ms
   easing without composing it with the platform's route transforms. */
@media (max-width: 767px) {
 :root:root:root:root [data-phone-scroll-header] {
  position: sticky;
  top: 0;
  /* Discover card links/actions have their own positive z-index. The opaque
     header must paint above them throughout both directions of its slide. */
  z-index: 30;
  isolation: isolate;
  background: var(--chrome-solid, var(--ink));
  background-clip: border-box;
  border: 0;
  box-sizing: border-box;
  height: calc(72px + env(safe-area-inset-top, 0px));
  min-height: calc(72px + env(safe-area-inset-top, 0px));
  transform: none;
  translate: 0 0;
  transition: translate 150ms cubic-bezier(.4, 0, 1, 1);
  will-change: translate;
 }
 :root:root:root:root [data-phone-scroll-header].phone-header--away {
  translate: 0 -100%;
  pointer-events: none;
 }
 /* Discover remains a fully black bar, including the safe area and the
    two-pixel overscan that seals subpixel seams during a composited slide. */
 :root:root:root:root :is(.flai-mobile-head, .nd-creators > .cxhd)[data-phone-scroll-header] {
  background: #000;
  color: #fff;
 }
 :root:root:root:root :is(.flai-mobile-head, .nd-creators > .cxhd)[data-phone-scroll-header].phone-header--away {
  translate: 0 calc(-100% - 2px);
 }
 :root:root:root:root :is(.flai-mobile-head, .nd-creators > .cxhd)[data-phone-scroll-header]::before {
  content: '';
  position: absolute;
  inset: -2px 0;
  z-index: -1;
  background: #000;
  pointer-events: none;
 }
 :root:root:root:root :is(.flai-mobile-head, .nd-creators > .cxhd)[data-phone-scroll-header] :is(button, .cxt) {
  color: #fff;
 }
 :root:root:root:root :is(.flai-mobile-head, .nd-creators > .cxhd)[data-phone-scroll-header] button:active {
  background: #242424;
  color: #fff;
 }
 :root:root:root:root .flai-mobile-head .approved-logo__base {
  clip-path: none;
  filter: var(--logo-filter, url(#fl-logo-remove-black)) !important;
 }
 :root:root:root:root .flai-mobile-head .approved-logo__accent { display: none !important; }
 :root:root:root:root [data-phone-scroll-header]:has(input:focus, textarea:focus, [contenteditable]:focus) {
  translate: 0 0;
  pointer-events: auto;
 }
}
@media (prefers-reduced-motion: reduce) {
 :root:root:root:root [data-phone-scroll-header] { transition-duration: 0ms; }
}

/* Preserved source: /design-review/profile-ai-signature-20260926.css?v=1 */
/* Small neutral disclosure beside the name, distinct from human verification. */
:root:root:root:root .profile-ai-signature {
 display: inline-block;
 position: relative;
 flex: 0 0 16px;
 width: 16px;
 height: 16px;
 margin: 0 0 0 6px;
 vertical-align: -2px;
 color: #d4d4d4;
 background: none;
 border: 0;
 border-radius: 0;
 animation: none;
}
:root:root:root:root[data-mode='paper'] .profile-ai-signature { color: #505050; }
:root:root:root:root .profile-ai-signature::before {
 content: '';
 display: block;
 width: 16px;
 height: 16px;
 background: currentColor;
 mask: url('/brand/ai-disclosure.svg') center / contain no-repeat;
 -webkit-mask: url('/brand/ai-disclosure.svg') center / contain no-repeat;
}
:root:root:root:root .profile-ai-signature > * { display: none; }
:root:root:root:root .profile-page--ai .profile-facts .kick { display: none; }

/* Preserved source: /design-review/control-polish-20260926.css?v=1 */
/* Shared feedback follows the approved palette; selected states retain it. */
:root:root:root:root {
  --control-feedback-duration: 150ms;
  --control-feedback-ease: cubic-bezier(.4, 0, .2, 1);
}
:root:root:root:root :is(.menu__row, .cm-safety-row, .cm-safety-btn, .dmact, .phonehd__back, .conversation-back, .cpb) {
  transition: background-color var(--control-feedback-duration) var(--control-feedback-ease), color var(--control-feedback-duration) var(--control-feedback-ease);
  -webkit-tap-highlight-color: transparent;
}
:root:root:root:root :is(.cm-safety-row, .cm-safety-btn, .dmact, .phonehd__back, .conversation-back, .cpb):focus-visible {
  outline: 2px solid var(--fg);
  outline-offset: 2px;
}
:root:root:root:root .menu__row--active { background: var(--g05); }
:root:root:root:root .menu { scrollbar-width: thin; scrollbar-color: var(--fg3) transparent; }
:root:root:root:root :is(.settings-index, .ptabs, .conversation-tabs, .flai-categories) {
  overscroll-behavior-x: contain;
  scroll-padding-inline: 8px;
}
:root:root:root:root .menu__identity-email { overflow-wrap: anywhere; white-space: normal; }
@media (hover: hover) {
  :root:root:root:root :is(.cm-safety-btn, .dmact, .phonehd__back, .conversation-back, .cpb):not([aria-expanded='true']):hover {
    background: var(--g05);
    color: var(--fg);
  }
}
@media (prefers-reduced-motion: no-preference) {
  :root:root:root:root :is(.cm-safety-btn, .dmact, .phonehd__back, .conversation-back, .cpb) {
    transition: transform var(--control-feedback-duration) var(--control-feedback-ease), background-color var(--control-feedback-duration) var(--control-feedback-ease), color var(--control-feedback-duration) var(--control-feedback-ease);
  }
  :root:root:root:root :is(.cm-safety-btn, .dmact, .phonehd__back, .conversation-back, .cpb):not(:disabled):active { transform: scale(.96); }
}
@media (prefers-reduced-motion: reduce) {
  :root:root:root:root :is(.menu__row, .cm-safety-row, .cm-safety-btn, .dmact, .phonehd__back, .conversation-back, .cpb) { transition: none; }
}

/* Preserved source: /design-review/creator-ease-20260926.css?v=2 */
/* Side reveal, rather than another long sheet. The native dialog owns focus,
   Escape, routing and account permissions. Opaque movement in both directions. */
@media(max-width:1023px){
 :root{--phone-menu-width:min(352px,calc(100vw - 48px));--phone-menu-travel:0px}
 :root.phone-menu-open{--phone-menu-travel:calc(-1 * var(--phone-menu-width))}
 :root:root:root:root:root #drawer[data-phone-menu=side]{inset:0 0 0 auto;width:var(--phone-menu-width);height:100dvh;max-height:none;padding:0;border:0;border-radius:0;background:#191919;backdrop-filter:none;box-shadow:none;opacity:1;transform:translateX(100%);visibility:hidden;transition:transform 300ms cubic-bezier(.22,.8,.24,1),visibility 0s 300ms;overflow:hidden;color:#f5f5f5}
 :root:root:root:root:root #drawer[data-phone-menu=side].drawer--on{transform:translateX(0);visibility:visible;transition-delay:0s}
 #drawer[data-phone-menu=side]>:is(.drawer__head,.drawer__list,.drawer__me){display:none!important}
 :root:root:root:root:root .drawer__scrim{background:transparent;opacity:1;visibility:hidden;transition:none}
 :root:root:root:root:root .drawer__scrim--on{visibility:visible}
 :root:root:root:root:root :is(.shell>.shell__grid,.shell>.shell__wide,.shell>.phonetop,.shell>.phonehd,.chrome){transform:translateX(var(--phone-menu-travel));transition:transform 300ms cubic-bezier(.22,.8,.24,1)}
 /* Preserve the independent vertical header animation. */
 :root:root:root:root:root .shell [data-phone-scroll-header]{transform:translateX(var(--phone-menu-travel));transition:translate 150ms cubic-bezier(.4,0,1,1),transform 300ms cubic-bezier(.22,.8,.24,1)}
 :root:root:root:root:root .shell :is(.shell__grid,.shell__wide) [data-phone-scroll-header]{transform:none}
 .phone-menu{height:100%;padding:calc(16px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow:hidden;font-family:var(--sans,-apple-system,BlinkMacSystemFont,sans-serif)}
 .phone-menu{position:relative}
 .phone-menu[data-page=main] .phone-menu__head{position:absolute;top:calc(14px + env(safe-area-inset-top));right:14px;margin:0}
 .phone-menu[data-page=main] .phone-menu__title{display:none}
 .phone-menu[data-page=main] .phone-menu__profile{padding:4px 44px 20px 0;min-height:84px}
 .phone-menu[data-page=main] .phone-menu__profile>svg{display:none}
 .phone-menu__divider{flex:none;height:1px;background:#ffffff14;margin:12px 0}
 .phone-menu__head{display:flex;align-items:center;min-height:44px;gap:8px;margin:0 -8px 20px}
 :root:root:root:root:root #drawer .phone-menu__title{margin:0;flex:1;color:#fff;font:750 22px/1.2 var(--sans);letter-spacing:-.55px}
 .phone-menu__head button{display:grid;place-items:center;width:44px;height:44px;flex:none;border:0;border-radius:50%;background:transparent;padding:10px;color:#f5f5f5;cursor:pointer}
 .phone-menu svg{width:24px;height:24px;flex:none}
 .phone-menu__head [hidden],.phone-menu [data-menu-page][hidden]{display:none!important}
 :root:root:root:root:root #drawer .phone-menu__profile{display:flex;align-items:center;gap:12px;padding:4px 0 24px;border-bottom:1px solid #ffffff14;margin-bottom:16px;color:#fff;text-decoration:none;min-height:72px}
 .phone-menu__avatar{display:grid;place-items:center;width:52px;height:52px;flex:none;border:1px solid #ffffff24;border-radius:50%;background:#242424;overflow:hidden}
 .phone-menu__avatar img{width:100%;height:100%;object-fit:cover}
 .phone-menu__identity{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
 :root:root:root:root:root #drawer .phone-menu__name{color:#fff;font:700 18px/1.3 var(--sans);overflow-wrap:anywhere}
 :root:root:root:root:root #drawer .phone-menu__handle{color:#a3a3a3;font:450 13px/1.3 var(--sans);overflow-wrap:anywhere}
 .phone-menu__profile>svg{width:18px;height:18px;color:#888}
 :root[dir=rtl] .phone-menu :is(.phone-menu__back,.phone-menu__chevron,.phone-menu__profile>svg){transform:rotate(180deg)}
 .phone-menu__list{display:flex;flex-direction:column;gap:2px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
 :root:root:root:root:root #drawer .phone-menu__row{display:flex;align-items:center;gap:16px;width:100%;min-height:48px;padding:10px 4px;margin:0;flex:none;border:0;border-radius:8px;background:transparent;color:#f4f4f4;font:600 16px/1.35 var(--sans);text-align:start;text-decoration:none;cursor:pointer;transition:background-color 140ms ease}
 .phone-menu__label{flex:1;min-width:0;overflow-wrap:anywhere}
 .phone-menu__chevron{width:16px!important;height:16px!important;color:#888!important}
 :root:root:root:root:root #drawer .phone-menu :is(a,button):active{background:#ffffff0d}
 :root:root:root:root:root #drawer .phone-menu :is(a,button):focus-visible{outline:2px solid var(--em1);outline-offset:-2px;background:#ffffff09}
 @media(hover:hover){:root:root:root:root:root #drawer .phone-menu__row:hover,:root:root:root:root:root #drawer .phone-menu__head button:hover{background:#ffffff09}}
}
/* Daily creator jobs first. Settings still holds every specialist tool. */
.studio-workspace-nav{margin-bottom:4px!important;gap:clamp(16px,4vw,28px)!important}
.studio-workspace-nav a[href*="view=settings"]{display:none!important}
.studio-settings-link{display:flex;align-items:center;justify-content:flex-end;min-height:44px;width:max-content;margin:0 0 12px auto;padding:8px 0;color:var(--fg2);font:600 13px/1.3 var(--sans);text-decoration:none}
.studio-settings-link[aria-current=page]{color:var(--em1)}
.studio-settings-link:focus-visible{outline:2px solid var(--em1);outline-offset:3px}
.studio[data-workspace] .st-quick--daily{display:none}
.studio[data-workspace=content][data-content-section=posts] .st-quick--daily{display:flex;margin-bottom:20px}
.studio .st-quick--daily>:not(:first-child){display:none}
@media(prefers-reduced-motion:reduce){
 :root:root:root:root:root #drawer[data-phone-menu=side],:root:root:root:root:root :is(.shell>.shell__grid,.shell>.shell__wide,.shell>.phonetop,.shell>.phonehd,.chrome),:root:root:root:root:root .shell [data-phone-scroll-header]{transition-duration:0ms;transition-delay:0ms}
}

/* Preserved source: /release-house/house-continuity.css */
/* Exact approved live Night palette, observed before this settings release.
   Grey/Sunrise keep their existing theme ladders; ember endpoints never change. */
:root:root:root:root:not([data-mode='paper']):not([data-mode='grey']) {
  --ink:#080808; --s0:#080808; --s1:#0a0a0b; --rise:#121212;
  --chrome-solid:#080808; --sheet-ground:#101010; --line:#28262b;
  --fg:#fff; --fg2:#b7b5bc; --fg3:#a19ea7;
  --em1:#ff2d6f; --em2:#ff2d6f;
  --ember:linear-gradient(118deg,#ff2d6f,#ff2d6f);
}
/* The approved desktop logo lives in TopBar, with no second tiny rail logo. */
:root:root:root:root .rail .rail__brand { display:none; }

/* The selected or hovered label uses the logo-dot pink. Keep icons white. */
:root:root:root:root .rail .rail__item:is(.rail__item--on,.rail__item--act,[aria-current='page'],:hover) > b {
  background-image:none!important;
  color:var(--em1)!important;
  -webkit-text-fill-color:var(--em1)!important;
  transition:color 180ms ease,-webkit-text-fill-color 180ms ease;
}
:root:root:root:root[data-mode='paper'] .rail .rail__item:is(.rail__item--on,.rail__item--act,[aria-current='page'],:hover) > b {
  color:var(--em1-print)!important;
  -webkit-text-fill-color:var(--em1-print)!important;
}
@media(forced-colors:active){:root:root:root:root .rail .rail__item:is(.rail__item--on,.rail__item--act,[aria-current='page'],:hover)>b{color:LinkText!important;-webkit-text-fill-color:LinkText!important}}

/* Preserved source: /release-house/social-polish.css */
/* Daily social tasks, refined within the approved house design.
   Profile portrait/avatar frames are intentionally outside this stylesheet. */
:root .post:not(.post--open) {
  margin: 0;
  padding: 16px 14px 10px;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
}
:root .post:not(.post--open)::after { display: none; }
:root .post .post__head { gap: 10px; margin: 0 0 10px; }
:root .post .post__av { width: 44px; height: 44px; }
:root .post .post__nm { font-size: 15px; line-height: 1.25; }
:root .post .post__metadata { gap: 4px 7px; margin-top: 2px; }
:root .post .post__kind { padding: 1px 5px; font: 600 11px/1.4 var(--sans); letter-spacing: 0; text-transform: none; }
:root .post .post__text { max-width: 100%; padding: 0; margin: 0 0 10px; font: 400 16px/1.5 var(--sans); letter-spacing: -.01em; white-space: pre-wrap; }
:root .post .posta { min-height: 44px; margin: 4px 0 0; gap: 8px; }
:root .post .inline-gallery { margin: 0; }
:root .post .post__media { margin: 0; }
/* Predictable compact frames, with the entire photo visible. The expanded
   viewer retains its native ratio and controls. No profile photos affected. */
:root .post .inline-gallery__previews:not(.inline-gallery__previews--grid) .post__media-open,
:root .post .post__media > .post__media-open,
:root .post .post__media > video.post__pic {
  width: 100%; aspect-ratio: 3 / 2; height: auto; max-height: none;
  margin: 0; overflow: hidden; border-radius: 8px; background: var(--stage-media);
}
:root .post .inline-gallery__previews:not(.inline-gallery__previews--grid) .post__media-open .post__pic,
:root .post .post__media > .post__media-open .post__pic {
  display: block; width: 100%; height: 100%; max-height: none; aspect-ratio: auto;
  object-fit: contain; margin: 0;
}
:root .post .post__media > video.post__pic { object-fit: contain; }
:root .post .inline-gallery__previews--grid .post__media-open { aspect-ratio: 1; background: var(--stage-media); border-radius: 8px; overflow: hidden; }
:root .post .inline-gallery__previews--grid .post__media-open .post__pic { width: 100%; height: 100%; max-height: none; object-fit: contain; }
:root .post .fllock { min-height: 230px; margin: 0; background: var(--rise); border-radius: 8px; }
:root .post .fllock .fllc { justify-content: flex-start; padding-top: 34px; }
:root .post .fllock .flll { font: 600 12px/1.4 var(--sans); letter-spacing: .02em; }
:root .post .fllbar { cursor: pointer; background: var(--ember); color: white; border-color: transparent; }
:root .post .fllbt { color: white; -webkit-text-fill-color: white; }
:root .post .fllreview { font-size: 12px; }
:root .post .fllreason { font-size: 11px; }

/* Buttons and identity rhythm only. Never select .pim, .pimg, .profile-avatar,
   .profile-first-avatar, .profile-compact-avatar or their photographs here. */
:root .profile-page .profile-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; align-items: center; }
:root .profile-page .profile-actions > button { min-height: 44px; min-width: 0; padding: 10px 18px !important; font: 600 14px/1.3 var(--sans) !important; gap: 8px; }
:root .profile-page .profile-message-pill__arrow { display: none; }
:root .profile-page .profile-actions > .fwbtn { background: var(--ink); color: var(--fg); -webkit-text-fill-color: var(--fg); border-color: var(--edge); }
:root .profile-page .profile-actions > .fwbtn.fwon { background: var(--ink); color: var(--fg); -webkit-text-fill-color: var(--fg); }
:root .profile-page .profile-bio { font-family: var(--sans) !important; font-style: normal !important; font-size: 15px !important; line-height: 1.55 !important; max-width: 62ch; }
:root .profile-page .profile-membership-card { margin: 16px 0; padding: 14px 0; border: 0; border-block: 1px solid var(--line); border-radius: 0; background: transparent; }
:root .profile-page .profile-membership-card h2 { margin: 0 0 6px; font: 650 16px/1.4 var(--sans); }
:root .profile-page .profile-membership-card p { font-size: 14px; line-height: 1.5; }
:root .profile-page .ptabs { gap: 8px; overflow-x: auto; scrollbar-width: thin; }

:root .studio[data-workspace=overview] > .hero:has(.st-now) { display: none; }
:root .studio .stoday { margin: 12px 0 28px; padding: 0; border: 0; border-radius: 0; background: transparent; overflow: visible; }
:root .stoday h2 { font: 700 26px/1.2 var(--sans); letter-spacing: -.025em; }
:root .stoday header p { display: block; margin-top: 6px; font-size: 14px; }
.creator-home-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; margin: 24px 0 0; border-block: 1px solid var(--line); }
.creator-home-summary a { min-width: 0; min-height: 110px; display: flex; flex-direction: column; justify-content: center; gap: 10px; padding: 18px 16px; color: var(--fg); text-decoration: none; }
.creator-home-summary a + a { border-inline-start: 1px solid var(--line); }
.creator-home-summary span { font: 500 13px/1.4 var(--sans); color: var(--fg2); }
.creator-home-summary strong { font: 700 26px/1.2 var(--sans); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
:root .stoday .stoday__acts { display: flex; flex-direction: column; gap: 0; margin-top: 16px; border-radius: 0; background: transparent; }
:root .stoday .stoday__acts > .stoday__act { min-height: 64px; padding-inline: 10px; border-bottom: 1px solid var(--line); }
:root .stoday .stoday__acts small { white-space: normal; font-size: 12px; line-height: 1.4; }

/* One opaque composer surface, visible media choices and steady action bar. */
:root #pmwrap .pmbox { background: var(--s2); }
:root #pmwrap :is(.pmtop,.pmrow,.pmopts,.pmbar,.pmmenu,.pmstate,.pm-publish-boundary) { background: transparent; }
:root #pmwrap .pmbox:not(.visual-story-composer) { display: flex; flex-direction: column; }
:root #pmwrap .pmbox > * { flex-shrink: 0; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pmtop { order: 0; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pmstate { order: 1; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pm-media-start { order: 2; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pmrow { order: 3; }
:root #pmwrap .pmbox:not(.visual-story-composer) > #pmatt { order: 4; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pm-publish-boundary { order: 5; margin-top: 14px; }
:root #pmwrap .pmbox:not(.visual-story-composer) > #pmchips { order: 6; }
:root #pmwrap .pmbox:not(.visual-story-composer) > :is(.pmupload,.vs-status) { order: 7; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pmopts { order: 8; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pmmenu { order: 9; }
:root #pmwrap .pmbox:not(.visual-story-composer) > .pmbar { order: 10; position: sticky; bottom: 0; z-index: 2; background: var(--s2); border-top: 1px solid var(--line); padding: 12px 24px max(12px,env(safe-area-inset-bottom)); }
.pm-media-start { display: flex; gap: 10px; padding: 12px 24px 16px; }
.pm-media-start button { display: flex; align-items: center; justify-content: center; flex: 1; gap: 10px; min-width: 0; min-height: 64px; padding: 12px; border: 1px solid var(--field-line); border-radius: 8px; background: var(--rise); color: var(--fg); font: 600 14px/1.4 var(--sans); cursor: pointer; }
.pm-media-start svg { width: 24px; height: 24px; flex: none; }
.pm-media-start button:disabled { color: var(--fg2); cursor: not-allowed; }
:root #pmwrap .pmrow textarea { min-height: 90px; font: 400 17px/1.5 var(--sans); }
:root #pmwrap .pmatt.on { display: grid; grid-template-columns: repeat(auto-fit,minmax(140px,1fr)); }
:root #pmwrap .pm-attachment-preview { aspect-ratio: 3 / 2; background: var(--stage-media); }
:root #pmwrap .pm-attachment-preview :is(img,video) { width: 100%; height: 100%; object-fit: contain; }
:root #pmwrap .pm-attachment-caption .mn { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
:root #pmwrap .pm-review-media .pm-review-thumb :is(img,video) { object-fit: contain; }
:root #pmwrap .pm-publish-boundary { border-radius: 8px; }
:root #pmwrap .pm-simple-option { min-height: 44px; font-size: 13px; }

.checkout-progress { display: flex; list-style: none; padding: 0; margin: 18px 0; gap: 12px; }
.checkout-progress li { flex: 1; display: flex; align-items: center; gap: 8px; min-width: 0; color: var(--fg2); font: 600 13px/1.3 var(--sans); }
.checkout-progress li > span { display: grid; place-items: center; flex: none; width: 26px; height: 26px; border: 1px solid var(--edge); border-radius: 50%; font-variant-numeric: tabular-nums; }
.checkout-progress li svg { width: 14px; height: 14px; }
.checkout-progress .current,.checkout-progress .complete { color: var(--fg); }
.checkout-progress .current > span { background: var(--ember); border-color: transparent; color: white; }
.checkout-progress .complete > span { background: var(--fg); border-color: transparent; color: var(--ink); }
.post-checkout__creator { margin: 4px 0; color: var(--fg2); font: 500 14px/1.4 var(--sans); overflow-wrap: anywhere; }
:root .post-checkout .memh { font: 700 20px/1.3 var(--sans); letter-spacing: -.015em; }
:root .post-checkout .pill { font: 600 14px/1.4 var(--sans); letter-spacing: 0; }
.post-checkout__listed-price { margin: 16px 0; font: 700 28px/1.3 var(--sans); }
.post-checkout__listed-price small { display: block; color: var(--fg2); font: 400 13px/1.4 var(--sans); }
:root .post-checkout .rch-note { padding: 12px 0; margin: 16px 0 0; border-block: 1px solid var(--line); color: var(--fg); }
.post-checkout__details summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; color: var(--fg2); font: 500 14px/1.4 var(--sans); }
.post-checkout__details[open] summary { color: var(--fg); }

/* Consistent feedback without reanimating whole lists on every update. */
:root :is(.pm-media-start button,.creator-home-summary a,.profile-actions > button,.post-checkout__details summary) { touch-action: manipulation; transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease; }
@media (hover:hover) {
  .pm-media-start button:not(:disabled):hover,.creator-home-summary a:hover { background: var(--g06); color: var(--fg); }
  .post-checkout__details summary:hover { color: var(--fg); }
}
:root :is(.pm-media-start button,.creator-home-summary a,.profile-actions > button,.post-checkout__details summary):focus-visible { outline: 2px solid var(--fg); outline-offset: 3px; }
.pm-media-start button:not(:disabled):active,.creator-home-summary a:active { background: var(--g12); }
@media(max-width:600px) {
  :root .post:not(.post--open) { padding: 14px 12px 8px; }
  :root .post .post__relationship { padding-inline: 10px; }
  :root .profile-page .profile-actions > button { flex: 1 1 auto; padding-inline: 12px !important; }
  :root .profile-page .profile-actions > .profile-extra-actions { margin-inline-start: auto; }
  .creator-home-summary a { min-height: 96px; padding: 14px 10px; }
  .creator-home-summary span { font-size: 12px; }
  .creator-home-summary strong { font-size: 21px; }
  :root .stoday header { flex-wrap: wrap; align-items: center; }
  .pm-media-start { padding-inline: 18px; }
  .pm-media-start button { min-height: 58px; gap: 7px; padding: 10px; font-size: 13px; }
  :root #pmwrap .pmbar { padding-inline: 18px; }
  .checkout-progress { gap: 6px; }
  .checkout-progress li { gap: 6px; font-size: 12px; }
}
@media(prefers-reduced-motion:reduce) {
  :root :is(.pm-media-start button,.creator-home-summary a,.profile-actions > button,.post-checkout__details summary) { transition: none; }
}

/* The app already reserves the top header. The inbox must not reserve it again. */
:root:root:root:root:root:root .chat2col--inbox .cxwrap--pane { padding-top: 0; }
:root:root:root:root:root:root .chat2col--inbox .conversation-pane-title { margin-top: 18px; }
@media(max-width:1240px) {
  :root:root:root:root:root:root .chat2col--inbox .conversation-pane-title { display: none; }
  :root:root:root:root:root:root .chat2col--inbox .reference-chat-empty { display: none; }
}

/* Preserved source: /release-house/SettingsHome.css */
.settings-page,.flsettings { min-width: 0; }
:root .settings-page { width: 100%; max-width: 720px; padding: 24px 0 60px; margin-inline: 0; }
.settings-page-header { display: flex; align-items: center; gap: 12px; margin: 0 0 24px; padding: 0; }
:root .settings-page-header h1 { margin: 0; font: 700 24px/1.3 var(--sans); letter-spacing: -.025em; color: var(--fg); }
.settings-page-header :is(.settings-back,.settings-close) { display: grid; place-items: center; flex: none; width: 44px; height: 44px; color: var(--fg); border-radius: 50%; background: var(--g06); text-decoration: none; }
.settings-close { margin-inline-start: auto; }
.settings-back svg { transform: rotate(180deg); }
.settings-group { display: flex; flex-direction: column; padding: 4px 18px; border-radius: 16px; background: var(--rise); }
:root .settings-row { display: flex; align-items: center; gap: 14px; width: 100%; min-width: 0; min-height: 58px; padding: 14px 0; border: 0; border-bottom: 1px solid var(--line); background: transparent; color: var(--fg); -webkit-text-fill-color: currentColor; font: 500 15px/1.4 var(--sans); text-align: start; text-decoration: none; cursor: pointer; }
.settings-row > svg { flex: none; width: 22px; height: 22px; }
.settings-row > span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.settings-row > svg:last-child { width: 16px; height: 16px; color: var(--fg2); }
.settings-row > small { font: 400 13px/1.4 var(--sans); color: var(--fg2); }
.settings-group > .settings-row:last-child { border-bottom: 0; }
:root .settings-signout { padding-inline: 18px; margin-top: 8px; border: 0; border-radius: 12px; }
.settings-display { margin-top: 28px; }
.settings-display h2 { margin: 0 0 12px; font: 600 17px/1.4 var(--sans); color: var(--fg); }
.settings-appearance { padding-block: 16px; border-bottom: 1px solid var(--line); }
.settings-appearance > span { display: block; margin-bottom: 12px; font: 500 15px/1.4 var(--sans); }
.settings-appearance > div { display: flex; flex-wrap: wrap; gap: 8px; }
.settings-appearance .pill { flex: 1; min-height: 44px; font: 600 13px/1.4 var(--sans); letter-spacing: 0; }
.settings-account-identity { padding-bottom: 20px; margin-bottom: 12px; border-bottom: 1px solid var(--line); }
.settings-account-identity h2 { margin: 0 0 6px; font: 650 20px/1.3 var(--sans); }
.settings-account-identity p { margin: 0 0 12px; font: 400 15px/1.5 var(--sans); color: var(--fg2); overflow-wrap: anywhere; }
.settings-email-verified,.settings-email-verify,.settings-email-state { display: inline-flex; gap: 8px; align-items: center; font: 600 14px/1.4 var(--sans); color: var(--fg); }
.settings-email-verified svg,.settings-email-verify svg { width: 18px; height: 18px; }
.settings-email-verify { min-height: 44px; text-decoration: none; }
.settings-email-state { flex-wrap: wrap; color: var(--fg2); }
.settings-email-state button { min-height: 44px; color: var(--fg); padding-inline: 12px; }
.settings-error { color: var(--fg); padding: 12px 0; }
:root:root:root:root:root .flsettings:has(.settings-page-header) { width: 100%; max-width: 720px; margin-inline: 0; padding-top: 24px; }
:root:root:root:root:root .flsettings:has(.settings-page-header) .cap { font: 600 17px/1.4 var(--sans); letter-spacing: 0; text-transform: none; color: var(--fg); }
:root:root:root:root:root .flsettings:has(.settings-page-header) :is(.olab,.oval,.mut) { font-family: var(--sans); letter-spacing: 0; text-transform: none; }
:root:root:root:root:root .flsettings:has(.settings-page-header) .olab { font-size: 15px; }
:root:root:root:root:root .flsettings:has(.settings-page-header) .oval { font-size: 15px; }
:root:root:root:root:root .flsettings:has(.settings-page-header) .mut { font-size: 14px; line-height: 1.5; }
:root:root:root:root:root .flsettings:has(.settings-page-header) .acsec { margin: 20px 0 0; }
:root:root:root:root:root .flsettings:has(.settings-page-header) .acsave { padding-top: 14px; gap: 10px; }
:root .settings-page :is(a,button):focus-visible,:root .flsettings .settings-row:focus-visible { outline: 2px solid var(--fg); outline-offset: 3px; }
:root .settings-row,:root .settings-back,:root .settings-close { transition: color 150ms ease, background-color 150ms ease; touch-action: manipulation; }
@media(hover:hover) {
  :root .settings-row:hover { color: var(--fg); -webkit-text-fill-color: currentColor; background: var(--g06); }
  :root .settings-back:hover,:root .settings-close:hover { color: var(--fg); background: var(--g12); }
}
:root .settings-row:active { background: var(--g12); }
@media(max-width:1240px) { :root .settings-page { padding-inline: 18px; } }
@media(max-width:600px) {
  :root .settings-page,:root:root:root:root:root .flsettings:has(.settings-page-header) { padding-top: 16px; }
  .settings-group { padding-inline: 16px; }
  .settings-page-header { margin-bottom: 18px; }
  :root .settings-page-header h1 { font-size: 22px; }
  :root .settings-row { gap: 12px; }
}
@media(prefers-reduced-motion:reduce) { :root .settings-row,:root .settings-back,:root .settings-close { transition: none; } }

:root .settings-page .nvlrow { animation: none; background: var(--rise); }
:root .settings-page .nvlrow:hover { color: var(--fg); -webkit-text-fill-color: currentColor; background: var(--g06); }

:root .settings-row.settings-toggle { gap: 16px; }
.settings-toggle > span.settings-switch { position: relative; flex: none; width: 40px; height: 24px; border-radius: 99px; background: var(--g12); border: 1px solid var(--line); overflow: visible; }
.settings-switch::after { content: ''; position: absolute; top: 3px; inset-inline-start: 3px; width: 16px; height: 16px; border-radius: 50%; background: var(--fg2); transition: transform 150ms ease; }
.settings-toggle > span.settings-switch[data-on=true] { background: var(--ember); border-color: transparent; }
.settings-switch[data-on=true]::after { transform: translateX(16px); background: #080808; }
:root[dir=rtl] .settings-switch[data-on=true]::after { transform: translateX(-16px); }
.settings-toggle[aria-busy=true] { cursor: progress; }
.settings-toggle[aria-disabled=true] { color: var(--fg2); }
:root:root .settings-appearance .pill.pill--on { background: var(--ember); color: #080808; border-color: transparent; -webkit-text-fill-color: currentColor; }
@media(prefers-reduced-motion:reduce) { .settings-switch::after { transition: none; } }

:root[dir=rtl] .settings-back svg { transform: none; }
:root[dir=rtl] .settings-row > svg:last-child { transform: scaleX(-1); }

/* Settings headers contain only the Back arrow visually; retain the page name for assistive navigation. */
:root:root:root .settings-page-header .settings-page-title {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap; border: 0;
}

/* Preserved source: /release-house/page-loading.css */
/* Last in both native and preserved-house cascades: no old wordmark or spark. */
:root:root:root:root :is(.page-loading-mark,.app-loading-state::before) {
  display:block;width:clamp(80px,22vw,118px);height:auto;aspect-ratio:610/560;
  flex:none;object-fit:contain;
}
:root:root:root:root .app-loading-state::before {
  content:'';background:url('/brand/scratch-loading-20260923-v2.svg?v=pink-20260928') center/contain no-repeat;
}
:root:root:root:root .app-loading-state::after,
:root:root:root:root :is(.route-loading-brand,.fl-page-loading__brand)>:is(b,i,.brand-loading-logo) {
  content:none;display:none!important;animation:none;
}
/* Loading is owned by the document arrival gate; content stays in normal flow. */

/* Preserved source: /release-house/phone-navigation-polish.css */
/* The side reveal keeps the native dialog, keyboard and routing boundaries. */
@media (max-width: 1023px) {
  :root { --phone-menu-width: min(328px, calc(100vw - 48px)); --menu-surface: #1c1c1c; --menu-ink: #fff; --menu-muted: #a3a3a3; --menu-line: #ffffff14; --menu-pressed: #ffffff09; --menu-balance: #353535; }
  :root[data-mode='paper'] { --menu-surface: #f7f7f7; --menu-ink: #151515; --menu-muted: #737373; --menu-line: #15151514; --menu-pressed: #15151509; --menu-balance: #737373; }
  :root:root:root:root:root:root #drawer[data-phone-menu='side'] {
    background: var(--menu-surface); color: var(--menu-ink); overflow: visible;
    transition: transform 300ms cubic-bezier(.4,0,.2,1), visibility 0s 300ms;
  }
  :root:root:root:root:root:root #drawer[data-phone-menu='side'].drawer--on { transition-delay: 0s; }
  /* A strip of the page bends around the drawer at both ends. */
  #drawer[data-phone-menu='side']::before {
    content: ''; position: absolute; z-index: 1; inset: 0 auto 0 0;
    width: 16px; border-radius: 0 24px 24px 0; background: var(--ink); pointer-events: none;
  }
  #drawer[data-phone-menu='side']::after {
    content: ''; position: absolute; z-index: 2; left: 0; bottom: calc(80px + env(safe-area-inset-bottom));
    width: 16px; height: 1px; background: var(--line); pointer-events: none;
  }
  :root:root:root:root:root:root :is(.shell>.shell__grid,.shell>.shell__wide,.shell>.phonetop,.shell>.phonehd,.chrome) {
    transition: transform 300ms cubic-bezier(.4,0,.2,1);
  }
  #drawer .phone-menu { padding-inline: 32px 16px; overflow: hidden; }
  :root:root:root:root:root:root #drawer .phone-menu :is(a,button,h2,b,strong,i,span) { color: var(--menu-ink); }
  :root:root:root:root:root:root #drawer .phone-menu__profile { border: 0; margin-bottom: 0; }
  :root:root:root:root:root:root #drawer .phone-menu__profile .phone-menu__handle { color: var(--menu-muted); }
  #drawer .phone-menu__avatar { background: var(--menu-pressed); border-color: var(--menu-line); }
  #drawer .phone-menu__divider { background: var(--menu-line); }
  :root:root:root:root:root:root #drawer .phone-menu__refer {
    display: flex; flex: none; flex-direction: column; gap: 3px; padding: 14px 16px; margin: 0 0 20px;
    min-height: 64px; border-radius: 16px; background: var(--em1);
    text-decoration: none;
  }
  :root:root:root:root:root:root #drawer .phone-menu__refer :is(strong,span) { color: #fff; }
  #drawer .phone-menu__refer strong { font: 700 16px/1.3 var(--sans); }
  #drawer .phone-menu__refer span { font: 400 13px/1.4 var(--sans); }
  :root:root:root:root:root:root #drawer .phone-menu .phone-menu__balance {
    flex: none; max-width: 48%; padding: 7px 12px; border-radius: 999px; background: var(--menu-balance);
    color: #fff; font: 600 12px/1.4 var(--sans); font-variant-numeric: tabular-nums; overflow-wrap: anywhere;
  }
  :root:root:root:root:root:root #drawer .phone-menu :is(a,button):is(:active,:focus-visible) { background: var(--menu-pressed); }
  @media (hover:hover) { :root:root:root:root:root:root #drawer .phone-menu__row:hover { background: var(--menu-pressed); } }
}

@media (max-width: 1240px) {
  :root:root:root:root[data-mode='paper'] .chrome.chrome--fanvue { background: #fff; border-top-color: #d4d4d4; }
  :root:root:root:root[data-mode='paper'] .chrome.chrome--fanvue .chrome__i--on { color: #151515; }
  :root:root:root:root[data-mode='paper'] .chrome.chrome--fanvue .chrome__indicator { background: linear-gradient(90deg,transparent,#151515 50%,transparent); }
  :root:root:root:root[data-mode='paper'] .chrome.chrome--fanvue .chrome__indicator::after { background: #151515; opacity: .06; }
  :root:root:root:root[data-mode='paper'] .chrome.chrome--fanvue .chrome__i:focus-visible { outline-color: #151515; }
  :root:root:root:root[data-mode='paper'] .chrome.chrome--fanvue .chrome__i--on .phone-dock-avatar { border-color: #151515; box-shadow: 0 0 0 1px #151515; }
  :root:root:root:root[data-mode='paper'] .chrome.chrome--fanvue .flcxbdg { background: #151515; color: #fff; }
}

@media (prefers-reduced-motion: reduce) {
  :root:root:root:root:root:root #drawer[data-phone-menu='side'],
  :root:root:root:root:root:root :is(.shell>.shell__grid,.shell>.shell__wide,.shell>.phonetop,.shell>.phonehd,.chrome) { transition-duration: 0ms; transition-delay: 0ms; }
}

/* Opaque chrome has no pixels to blur behind it. Avoid sampling the moving
   feed through an invisible full-width backdrop layer. */
@media (max-width: 1240px) {
  :root:root:root:root:root:root .chrome.chrome--fanvue,
  :root:root:root:root:root:root [data-phone-scroll-header] {
    backdrop-filter: none; -webkit-backdrop-filter: none;
  }
}

/* Preserved source: /release-house/create-post-reference.css */
/* Approved Create Post canvas. Only the post composer uses this layout. */
#pmwrap .visual-story-composer :is(.pc-layout,.pc-editor,.pc-media-strip.story-media) { display: contents; }
:root:root:root:root:root #pmwrap .pmbox.reference-post {
  --pc-pink: #ff2d73;
  --pc-edge: #303034;
  --pc-surface: #171719;
  --pc-muted: #aaa8ae;
  display: flex;
  flex-direction: column;
  width: min(680px, calc(100vw - 36px));
  max-width: 680px;
  height: min(760px, calc(100dvh - 44px));
  max-height: calc(100dvh - 44px);
  overflow: hidden;
  border: 1px solid #343438;
  border-radius: 20px;
  background: #0c0c0d;
  color: #f8f7f8;
  box-shadow: 0 36px 110px #000b;
  backdrop-filter: none;
}
:root:root:root:root:root #pmwrap .pmbox.reference-post .pmtop {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 78px;
  padding: 14px 20px;
  border-bottom: 1px solid #28282c;
  background: #101012;
}
#pmwrap .reference-post .pc-heading { min-width: 0; margin-right: auto; }
#pmwrap .reference-post .pc-heading h2 {
  margin: 0;
  color: #fff;
  font: 800 clamp(25px, 2.4vw, 31px)/1.12 var(--sans, system-ui);
  letter-spacing: -.045em;
  text-transform: none;
}
#pmwrap .reference-post .pc-heading p { margin: 5px 0 0; color: #d4d0d4; font-size: 14px; line-height: 1.3; }
#pmwrap .reference-post .pc-header-actions { display: flex; align-items: center; gap: 9px; }
#pmwrap .reference-post .pc-header-actions button {
  min-width: 100px; height: 41px; padding: 0 18px;
  border: 1px solid #444348; border-radius: 10px;
  background: #171719; color: #fff; font: 700 13px/1 var(--sans, system-ui);
}
#pmwrap .reference-post .pc-header-actions .pc-publish { border-color: var(--pc-pink); background: var(--pc-pink); color: #080709; }
#pmwrap .reference-post .pc-header-actions button:disabled { opacity: .45; cursor: not-allowed; }
#pmwrap .reference-post .pmx { width: 38px; min-width: 38px; height: 38px; min-height: 38px; color: #fff; border: 1px solid #37373b; border-radius: 10px; background: #18181a; }
#pmwrap .reference-post .pmx svg { width: 18px; height: 18px; }
:root:root:root:root:root #pmwrap .reference-post .pc-layout {
  display: flex;
  flex-direction: column;
  min-height: 0;
  flex: 1;
  padding: 14px 18px;
}
:root:root:root:root:root #pmwrap .reference-post .pc-editor {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #48474c transparent;
  padding: 0 6px 15px 0;
}
#pmwrap .reference-post .pc-editor > * { flex-shrink: 0; }
#pmwrap .reference-post .pc-editor > .pmstate { order: 15; padding: 8px 2px; min-height: 24px; justify-content: flex-start; color: #a7a4a9; }
#pmwrap .reference-post .pc-editor > .pmttlw { display: none; }
#pmwrap .reference-post .pc-modes { order: 0; display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); padding: 4px; gap: 3px; border: 1px solid var(--pc-edge); border-radius: 13px; background: #19191b; }
#pmwrap .reference-post .pc-modes button { display: grid; justify-items: center; align-content: center; gap: 5px; min-width: 0; min-height: 62px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: #e4e2e5; font: 600 11px/1.2 var(--sans, system-ui); }
#pmwrap .reference-post .pc-modes button i { font-size: 20px; }
#pmwrap .reference-post .pc-modes button.active { border-color: #ff4a88; background: var(--pc-pink); color: #0d0609; box-shadow: 0 5px 16px #ff2d7338; }
#pmwrap .reference-post .pc-modes button:disabled { opacity: .38; cursor: not-allowed; }
:root:root:root:root:root #pmwrap .reference-post .pmrow { order: 1; margin-top: 15px; padding: 0; border: 1px solid #3b3a3f; border-radius: 13px; background: linear-gradient(140deg,#1c1c1f,#151517); }
#pmwrap .reference-post .pmrow .pmav { display: none; }
:root:root:root:root:root #pmwrap .reference-post .pmrow textarea { display: block; width: 100%; min-height: 120px; max-height: 300px; padding: 16px; background: transparent; border: 0; color: #fff; font: 500 16px/1.5 var(--sans, system-ui); letter-spacing: -.01em; }
#pmwrap .reference-post .pmrow textarea::placeholder { color: #bcb9be; }
#pmwrap .reference-post .pc-media-heading { order: 2; display: flex; justify-content: space-between; margin: 14px 2px 9px; font-size: 13px; font-weight: 700; color: #f5f3f5; }
#pmwrap .reference-post .pc-media-heading small { color: var(--pc-muted); font-size: 11px; font-weight: 500; }
#pmwrap .reference-post .pc-media-strip { order: 3; display: flex; align-items: flex-start; gap: 9px; min-width: 0; overflow-x: auto; padding-bottom: 5px; scrollbar-width: thin; }
#pmwrap .reference-post .pc-add-media { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 0 0 118px; width: 118px; height: 112px; border: 1px dashed #858087; border-radius: 11px; background: #111113; color: #fff; }
#pmwrap .reference-post .pc-add-media i { font-size: 28px; line-height: 1; }
#pmwrap .reference-post .pc-add-media b { margin-top: 7px; font-size: 12px; }
#pmwrap .reference-post .pc-add-media small { margin-top: 3px; color: #bcb9be; font-size: 10px; }
#pmwrap .reference-post .pc-add-media:disabled { opacity: .45; }
#pmwrap .reference-post .pc-library { display: flex; flex: 0 0 104px; height: 112px; flex-direction: column; align-items: center; justify-content: center; gap: 7px; border: 1px solid #39383c; border-radius: 11px; background: #19191b; color: #eee; font-size: 11px; }
#pmwrap .reference-post .pc-library i { font-size: 25px; }
:root:root:root:root:root #pmwrap .reference-post .pmatt.on { display: flex; flex-wrap: nowrap; flex: 0 0 auto; gap: 9px; padding: 0; }
:root:root:root:root:root #pmwrap .reference-post .pmatt .mea, #pmwrap .reference-post .pmatt .mea:only-child, #pmwrap .reference-post .pmatt .mea:has(video) { display: block; grid-column: auto; flex: 0 0 112px; width: 112px; min-width: 112px; max-width: 112px; min-height: 112px; padding: 0; overflow: hidden; position: relative; border: 1px solid #444; border-radius: 11px; background: #171719; }
:root:root:root:root:root #pmwrap .reference-post .pmatt .pm-attachment-preview { width: 100%; height: 112px; min-height: 112px; aspect-ratio: 1; border: 0; background: #101012; }
:root:root:root:root:root #pmwrap .reference-post .pmatt .pm-attachment-preview :is(img,video) { width: 100%; height: 100%; max-height: none; object-fit: cover; }
#pmwrap .reference-post .pmatt .pm-attachment-caption { position: absolute; inset: auto 0 0; min-height: 33px; padding: 6px 5px; background: linear-gradient(transparent,#000d); color: #fff; }
#pmwrap .reference-post .pmatt .pm-attachment-caption :is(.mn,.ms) { display: none; }
#pmwrap .reference-post .pmatt .pm-attachment-remove { position: absolute; top: -75px; right: 4px; display: grid; place-items: center; width: 26px; height: 26px; border: 0; border-radius: 50%; background: #09090cdd; color: #fff; }
#pmwrap .reference-post .pmatt .pm-attachment-remove svg { width: 14px; height: 14px; }
#pmwrap .reference-post .pmatt .pm-attachment-order { display: flex; position: absolute; bottom: 2px; left: 2px; right: 2px; justify-content: center; gap: 1px; }
#pmwrap .reference-post .pmatt .pm-attachment-order button { padding: 0 3px; min-height: 25px; color: #fff; background: #09090ca8; border-radius: 4px; font-size: 9px; }
#pmwrap .reference-post .pc-quick-actions { order: 4; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin-top: 11px; }
#pmwrap .reference-post .pc-quick-actions button { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 44px; padding: 5px; border: 1px solid #343438; border-radius: 10px; background: #1b1b1e; color: #fff; font: 600 11px/1.2 var(--sans,system-ui); white-space: nowrap; }
#pmwrap .reference-post .pc-quick-actions i { font-size: 16px; }
#pmwrap .reference-post .pc-quick-actions button:disabled, #pmwrap .reference-post .pc-label-choices button:disabled { opacity: .46; cursor: not-allowed; }
#pmwrap .reference-post .pc-card { border: 1px solid #303034; border-radius: 12px; background: linear-gradient(145deg,#1f1f22,#18181a); padding: 14px 13px; }
#pmwrap .reference-post .pc-audience-card { order: 5; margin-top: 13px; }
#pmwrap .reference-post .pc-card-title { display: flex; justify-content: space-between; align-items: center; color: #fff; }
#pmwrap .reference-post .pc-card-title b { display: block; font-size: 14px; line-height: 1.2; }
#pmwrap .reference-post .pc-card-title small { display: block; margin-top: 3px; color: #b5b2b7; font-size: 11px; }
#pmwrap .reference-post .pc-card-title > i { font-size: 17px; color: #e8e6e8; }
#pmwrap .reference-post .pc-audience-choices { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin-top: 12px; }
#pmwrap .reference-post .pc-audience-choices button { display: flex; align-items: center; gap: 7px; min-height: 55px; padding: 7px; border: 1px solid #3c3b3f; border-radius: 9px; background: #151517; color: #fff; text-align: left; }
#pmwrap .reference-post .pc-audience-choices button > i { display: grid; place-items: center; flex: 0 0 26px; height: 26px; border-radius: 50%; background: #29292d; font-size: 15px; color: #fff; }
#pmwrap .reference-post .pc-audience-choices button b { display: block; font-size: 10px; white-space: nowrap; }
#pmwrap .reference-post .pc-audience-choices button small { display: block; margin-top: 3px; color: #a9a5ab; font-size: 9px; line-height: 1.1; }
#pmwrap .reference-post .pc-audience-choices button[aria-pressed='true'] { border-color: var(--pc-pink); background: #2c1520; }
#pmwrap .reference-post .pc-audience-choices button[aria-pressed='true'] > i { background: var(--pc-pink); color: #10070b; }
#pmwrap .reference-post .pc-audience-choices button:disabled { opacity: .46; cursor: not-allowed; }
:root:root:root:root:root #pmwrap .reference-post .pm-publish-boundary { order: 6; margin: 10px 0 0; padding: 10px; white-space: normal; background: #1d1b1e; border: 1px solid #38363a; border-radius: 11px; color: #fff; }
#pmwrap .reference-post .pm-publish-boundary:not(.pc-visible) { display: none; }
#pmwrap .reference-post .pc-label-card { order: 7; margin-top: 13px; }
#pmwrap .reference-post .pc-label-choices { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin-top: 12px; }
#pmwrap .reference-post .pc-label-choices button { display: flex; align-items: center; justify-content: center; gap: 5px; min-height: 43px; padding: 6px 3px; border: 1px solid #3b3b3f; border-radius: 9px; background: #171719; color: #eee; font-size: 10px; white-space: nowrap; }
#pmwrap .reference-post .pc-label-choices button i { font-size: 16px; }
#pmwrap .reference-post .pc-label-choices button.selected { border-color: var(--pc-pink); color: var(--pc-pink); }
#pmwrap .reference-post .pc-advanced { order: 8; display: flex; justify-content: space-between; align-items: center; width: 100%; margin-top: 13px; padding: 14px; border: 1px solid #303034; border-radius: 11px; background: #1d1d20; color: #fff; text-align: left; }
#pmwrap .reference-post .pc-advanced b { display: block; font-size: 13px; }
#pmwrap .reference-post .pc-advanced small { display: block; margin-top: 4px; color: #b0adb1; font-size: 11px; }
#pmwrap .reference-post .pc-advanced i { font-size: 17px; transition: transform 200ms cubic-bezier(.23,1,.32,1); }
#pmwrap .reference-post .pc-advanced[aria-expanded='true'] i { transform: rotate(180deg); }
:root:root:root:root:root #pmwrap .reference-post .pmchipwrap { order: 9; padding: 8px 0 0; }
:root:root:root:root:root #pmwrap .reference-post .pmopts { order: 10; padding: 9px 0 0; }
#pmwrap .reference-post #pmopts > .pm-simple-option:first-child { display: none; }
#pmwrap .reference-post #pmopts > .pm-simple-option:nth-child(2) { display: none; }
#pmwrap .reference-post #pmopts > .pm-simple-option:nth-child(3) { display: none; }
:root:root:root:root:root #pmwrap .reference-post #pm-more-options { order: 11; padding: 9px 0 0; }
:root:root:root:root:root #pmwrap .reference-post .pmmenu { order: 12; margin: 0; background: #171719; }
#pmwrap .reference-post .pmmenu.on { max-height: 390px; border: 1px solid #36353a; border-radius: 11px; margin-top: 8px; }
#pmwrap .reference-post .pmmenu :is(.pm-panel-nav,.pm-audience,.pmk) { background: transparent; }
#pmwrap .reference-post .pmmenu .pm-audience-option { color: #fff; background: #202023; }
#pmwrap .reference-post .pmmenu .pm-audience-option.on { background: #371b29; border-color: var(--pc-pink); }
#pmwrap .reference-post .pmmenu :is(.pm-audience-copy small,.pmnote) { color: #bab7bb; }
#pmwrap .reference-post .pc-editor > .pmupload { order: 13; margin: 10px 0 0; white-space: normal; }
#pmwrap .reference-post .pc-editor > svg { display: none; }
:root:root:root:root:root #pmwrap .reference-post .pmbar { display: none; }
#pmwrap .reference-post :is(button,[role='button']):not(:disabled) { transition: transform 130ms cubic-bezier(.23,1,.32,1), background-color 180ms cubic-bezier(.23,1,.32,1), border-color 180ms cubic-bezier(.23,1,.32,1), color 180ms cubic-bezier(.23,1,.32,1), opacity 180ms cubic-bezier(.23,1,.32,1); }
#pmwrap .reference-post :is(button,[role='button']):not(:disabled):active { transform: scale(.97); }
#pmwrap .reference-post :is(button,input,textarea,[role='button']):focus-visible { outline: 2px solid var(--pc-pink); outline-offset: 2px; }
@media (hover:hover) and (pointer:fine) {
  #pmwrap .reference-post :is(.pc-modes button,.pc-quick-actions button,.pc-audience-choices button,.pc-label-choices button,.pc-advanced,.pc-add-media,.pc-library,.pc-header-actions button):not(:disabled):hover { border-color: var(--pc-pink); transform: translateY(-1px); }
  #pmwrap .reference-post .pc-modes button:not(.active):not(:disabled):hover { background: #29262a; }
  #pmwrap .reference-post .pc-header-actions .pc-publish:not(:disabled):hover { background: #ff4987; }
}
@media (max-width: 760px) {
  :root:root:root:root:root #pmwrap:has(.reference-post) { padding: 0; }
  :root:root:root:root:root #pmwrap .pmbox.reference-post { width: 100vw; max-width: none; height: var(--vvh,100dvh); max-height: var(--vvh,100dvh); border: 0; border-radius: 0; }
  :root:root:root:root:root #pmwrap .pmbox.reference-post .pmtop { min-height: 95px; padding: 20px 18px 13px; align-items: flex-start; }
  #pmwrap .reference-post .pc-heading h2 { font-size: 27px; }
  #pmwrap .reference-post .pc-heading p { font-size: 13px; }
  #pmwrap .reference-post .pc-header-actions { display: none; }
  :root:root:root:root:root #pmwrap .reference-post .pc-layout { display: block; padding: 0; overflow: hidden; }
  :root:root:root:root:root #pmwrap .reference-post .pc-editor { height: 100%; overflow-y: auto; padding: 13px 16px calc(112px + env(safe-area-inset-bottom)); }
  #pmwrap .reference-post .pc-modes { display: flex; overflow-x: auto; scrollbar-width: none; }
  #pmwrap .reference-post .pc-modes button { flex: 0 0 69px; min-height: 58px; }
  #pmwrap .reference-post .pc-modes::-webkit-scrollbar { display: none; }
  :root:root:root:root:root #pmwrap .reference-post .pmrow { margin-top: 13px; }
  :root:root:root:root:root #pmwrap .reference-post .pmrow textarea { min-height: 112px; font-size: 15px; }
  #pmwrap .reference-post .pc-media-strip { padding-bottom: 4px; }
  #pmwrap .reference-post .pc-add-media, #pmwrap .reference-post .pc-library { flex-basis: 100px; width: 100px; height: 100px; }
  :root:root:root:root:root #pmwrap .reference-post .pmatt .mea, #pmwrap .reference-post .pmatt .mea:only-child, #pmwrap .reference-post .pmatt .mea:has(video) { flex-basis: 100px; min-width: 100px; width: 100px; max-width: 100px; min-height: 100px; }
  :root:root:root:root:root #pmwrap .reference-post .pmatt .pm-attachment-preview { height: 100px; min-height: 100px; }
  #pmwrap .reference-post .pc-quick-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #pmwrap .reference-post .pc-audience-choices { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #pmwrap .reference-post .pc-label-choices { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :root:root:root:root:root #pmwrap .reference-post .pmbar { display: flex; position: fixed; inset: auto 0 0; z-index: 4; gap: 10px; margin: 0; padding: 12px 17px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid #343438; background: #101012; }
  #pmwrap .reference-post .pmbar::before, #pmwrap .reference-post .pmbar .pmadd-media, #pmwrap .reference-post .pmbar .pmdv2, #pmwrap .reference-post .pmbar .pmk2 { display: none; }
  #pmwrap .reference-post .pmbar > span[style] { display: none; }
  :root:root:root:root:root #pmwrap .reference-post .pmbar .pmpost { order: 0; flex: 1; justify-content: center; min-width: 0; height: 46px; padding: 0 15px; border: 1px solid var(--pc-pink); border-radius: 10px; background: var(--pc-pink); color: #10070b; font-size: 14px; }
  #pmwrap .reference-post .pmbar .pmpost__arrow { display: none; }
  #pmwrap .reference-post .pc-mobile-draft { order: 1; min-width: 97px; height: 46px; border: 1px solid #4c4a50; border-radius: 10px; background: #19191b; color: #fff; font-weight: 700; font-size: 12px; }
}
@media (max-width: 380px) {
  #pmwrap .reference-post .pc-quick-actions button { font-size: 10px; }
  #pmwrap .reference-post .pc-audience-choices button { gap: 5px; padding: 5px; }
}
@media (prefers-reduced-motion: reduce) {
  #pmwrap .reference-post, #pmwrap .reference-post * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* The approved, single-column Create Post editor. Keep these rules scoped to posts. */
:root:root:root:root:root #pmwrap .pmbox.reference-post {
  width: min(704px, calc(100vw - 36px)); max-width: 704px;
  height: min(690px, calc(100dvh - 44px)); max-height: calc(100dvh - 44px);
  background: #111113; border-color: #414046; border-radius: 17px;
}
:root:root:root:root:root #pmwrap .reference-post .pmtop {
  min-height: 72px; padding: 16px 20px 14px; background: #111113;
  border-bottom-color: #2b2b30;
}
#pmwrap .reference-post .pc-heading h2 { font-size: 22px; letter-spacing: -.035em; }
#pmwrap .reference-post .pc-heading p { font-size: 12px; color: #c5c2c9; }
#pmwrap .reference-post .pc-header-actions { display: none; }
:root:root:root:root:root #pmwrap .reference-post .pc-layout { padding: 0; }
:root:root:root:root:root #pmwrap .reference-post .pc-editor { padding: 18px 20px 15px; }
#pmwrap .reference-post .pc-identity { order: 0; display: flex; align-items: center; gap: 10px; margin-bottom: 11px; }
#pmwrap .reference-post .pc-avatar { position: relative; flex: none; display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #ff5c93; border-radius: 50%; overflow: hidden; background: #31202a; font-size: 13px; font-weight: 800; }
#pmwrap .reference-post .pc-avatar img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#pmwrap .reference-post .pc-person { min-width: 0; }
#pmwrap .reference-post .pc-person b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
#pmwrap .reference-post .pc-person small { display: block; margin-top: 2px; color: #b8b4bd; font-size: 11px; }
#pmwrap .reference-post .pc-format { display: flex; align-items: center; gap: 5px; margin-left: auto; color: #bebac3; font-size: 11px; }
#pmwrap .reference-post .pc-format i { color: #ff5792; font-size: 17px; }
:root:root:root:root:root #pmwrap .reference-post .pmrow { order: 1; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; }
:root:root:root:root:root #pmwrap .reference-post .pmrow textarea { min-height: 86px; max-height: 220px; padding: 3px 0 7px; font-size: 16px; line-height: 1.45; }
#pmwrap .reference-post .pc-toolrail { order: 2; display: flex; align-items: center; gap: 8px; margin: 0 0 13px; }
#pmwrap .reference-post .pc-toolrail button { display: inline-flex; align-items: center; gap: 7px; height: 35px; padding: 0 10px; border: 1px solid #424047; border-radius: 9px; background: #202024; color: #f4f1f5; font-size: 11px; font-weight: 700; }
#pmwrap .reference-post .pc-toolrail button i { font-size: 17px; }
#pmwrap .reference-post .pc-toolrail .pc-emoji { width: 35px; padding: 0; justify-content: center; }
#pmwrap .reference-post .pc-toolrail .pc-count { margin-left: auto; color: #aaa6af; font-size: 11px; white-space: nowrap; }
#pmwrap .reference-post .pc-media-heading { order: 3; margin: 0 0 8px; }
:root:root:root:root:root #pmwrap .reference-post .pc-media-strip { order: 4; width: 100%; padding: 0 0 12px; border-bottom: 1px solid #2d2b30; }
#pmwrap .reference-post .pc-media-strip:not(:has(.pmatt.on)) .pc-add-media { flex: 1 1 auto; width: auto; height: 109px; }
#pmwrap .reference-post .pc-add-media { border-color: #6c626b; background: linear-gradient(145deg,#1b191d,#151417); }
#pmwrap .reference-post .pc-add-media i { color: #ff6b9e; }
#pmwrap .reference-post .pc-library { flex-basis: 102px; height: 109px; background: #1b1a1d; }
#pmwrap .reference-post .pc-media-strip:has(.pmatt.on) { flex-wrap: wrap; }
#pmwrap .reference-post .pc-media-strip .pmatt { order: 0; }
#pmwrap .reference-post .pc-media-strip .pc-add-media { order: 1; }
#pmwrap .reference-post .pc-media-strip .pc-library { order: 2; }
:root:root:root:root:root #pmwrap .reference-post .pmatt .pm-attachment-remove { top: -75px; }
#pmwrap .reference-post .pmatt .pm-attachment-caption { overflow: visible; }
#pmwrap .reference-post .pmatt .mea { overflow: visible; }
#pmwrap .reference-post .pc-audience-card { order: 5; margin: 13px 0 0; padding: 0; border: 0; background: none; }
#pmwrap .reference-post .pc-card-title b { font-size: 12px; color: #d3cfd6; }
#pmwrap .reference-post .pc-audience-choices { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 8px; }
#pmwrap .reference-post .pc-audience-choices button { display: inline-flex; min-height: 34px; gap: 6px; padding: 0 11px; border-color: #444148; border-radius: 9px; background: #17171a; color: #d6d3d9; font-size: 11px; font-weight: 700; }
#pmwrap .reference-post .pc-audience-choices button > i { flex: none; width: auto; height: auto; background: none; color: inherit; font-size: 16px; }
#pmwrap .reference-post .pc-audience-choices button[aria-pressed='true'] { border-color: #ff4e89; background: #401829; color: #fff; }
#pmwrap .reference-post .pc-audience-choices button[aria-pressed='true'] > i { background: none; color: #ff6c9f; }
#pmwrap .reference-post .pc-extra-access { display: block; margin-top: 7px; color: #d5a9ba; }
#pmwrap .reference-post .pc-more-access { display: inline-flex; align-items: center; gap: 3px; margin: 5px 0 0; padding: 2px 0; border: 0; background: none; color: #c8afba; font-size: 11px; }
#pmwrap .reference-post .pc-more-access i { font-size: 13px; }
:root:root:root:root:root #pmwrap .reference-post .pm-publish-boundary { order: 6; }
:root:root:root:root:root #pmwrap .reference-post .pmchipwrap,
:root:root:root:root:root #pmwrap .reference-post .pmopts { display: none !important; }
#pmwrap .reference-post .pc-advanced { order: 7; min-height: 54px; gap: 10px; margin-top: 12px; padding: 9px 12px; border-color: #57404b; background: #1a171d; }
#pmwrap .reference-post .pc-advanced > span { flex: 1; }
#pmwrap .reference-post .pc-advanced .pc-advanced-icon { display: grid; place-items: center; flex: 0 0 30px; height: 30px; border-radius: 8px; background: #3b1a2a; color: #ff83ad; font-size: 17px; }
#pmwrap .reference-post .pc-advanced .pc-advanced-chevron { color: #b4b0b9; font-size: 16px; }
#pmwrap .reference-post .pc-advanced em { padding: 5px 8px; border: 1px solid #694354; border-radius: 99px; color: #e2bad0; font-size: 10px; font-style: normal; font-weight: 700; white-space: nowrap; }
#pmwrap .reference-post .pc-advanced[aria-expanded='true'] { border-color: #f25d90; border-radius: 11px 11px 0 0; background: #251920; }
#pmwrap .reference-post .pc-advanced[aria-expanded='true'] .pc-advanced-chevron { transform: rotate(180deg); }
#pmwrap .reference-post .pc-advanced-detail { order: 8; padding: 14px; border: 1px solid #b34871; border-top: 0; border-radius: 0 0 12px 12px; background: linear-gradient(165deg,#27171f,#19171b 50%,#171619); animation: pc-reveal .28s cubic-bezier(.22,1,.36,1) both; }
#pmwrap .reference-post .pc-advanced-scrim, #pmwrap .reference-post .pc-sheet-head { display: none; }
#pmwrap .reference-post .pc-advanced-intro { display: flex; align-items: center; gap: 10px; padding: 3px 1px 12px; }
#pmwrap .reference-post .pc-advanced-intro > span { display: grid; place-items: center; flex: 0 0 29px; height: 29px; border-radius: 9px; background: #fb2c70; color: #fff; }
#pmwrap .reference-post .pc-advanced-intro b, #pmwrap .reference-post .pc-advanced-title b { display: block; font-size: 12px; }
#pmwrap .reference-post .pc-advanced-intro small, #pmwrap .reference-post .pc-advanced-title small { display: block; margin-top: 3px; color: #bdb4bc; font-size: 11px; line-height: 1.35; }
#pmwrap .reference-post .pc-advanced-section { padding: 12px 0 4px; border-top: 1px solid #4d3941; }
#pmwrap .reference-post .pc-advanced-title { display: flex; align-items: center; gap: 9px; margin-bottom: 10px; }
#pmwrap .reference-post .pc-advanced-title > i { color: #ff76a4; font-size: 19px; }
#pmwrap .reference-post .pc-choice-row { display: flex; flex-wrap: wrap; gap: 6px; }
#pmwrap .reference-post .pc-choice-row button { min-height: 34px; padding: 0 10px; border: 1px solid #564750; border-radius: 8px; background: #221e22; color: #e1dbe1; font-size: 11px; font-weight: 700; }
#pmwrap .reference-post .pc-choice-row button i { margin-right: 4px; font-size: 15px; }
#pmwrap .reference-post .pc-choice-row button[aria-pressed='true'] { border-color: #ff5a91; background: #6b203d; color: #fff; }
#pmwrap .reference-post .pc-date-field { display: block; margin: 10px 0; color: #d3c9d0; font-size: 11px; font-weight: 700; }
#pmwrap .reference-post .pc-date-field input { display: block; width: min(100%,270px); min-height: 38px; margin-top: 6px; padding: 0 8px; border: 1px solid #68515c; border-radius: 8px; background: #171519; color: #fff; color-scheme: dark; }
#pmwrap .reference-post .pc-expiry-choice { display: flex; align-items: center; gap: 8px; margin: 12px 0 5px; color: #ece4ea; font-size: 11px; }
#pmwrap .reference-post .pc-expiry-choice input { accent-color: #ff2d73; }
#pmwrap .reference-post .pc-advanced-help { display: block; margin-top: 7px; color: #ad9da8; font-size: 10px; line-height: 1.4; }
#pmwrap .reference-post .pmmenu { order: 10; }
:root:root:root:root:root #pmwrap .reference-post .pmmenu.on:has(.pm-audience) {
  flex: 0 0 auto; min-height: 0; max-height: none; overflow: visible;
}
:root:root:root:root:root #pmwrap .reference-post .pc-desktop-footer { display: flex; align-items: center; gap: 10px; min-height: 64px; padding: 11px 20px; border-top: 1px solid #333238; background: #161619; }
#pmwrap .reference-post .pc-footer-state { display: flex; align-items: center; gap: 5px; margin-right: auto; color: #b6b1b9; font-size: 11px; }
#pmwrap .reference-post .pc-footer-state i { color: #ff5792; font-size: 16px; }
#pmwrap .reference-post .pc-desktop-footer button { min-height: 38px; padding: 0 16px; border: 1px solid #514d54; border-radius: 9px; background: #1c1c20; color: #fff; font-size: 11px; font-weight: 750; }
#pmwrap .reference-post .pc-desktop-footer .pc-publish { min-width: 89px; border-color: #ff2d73; background: #ff2d73; color: #13060d; }
#pmwrap .reference-post .pc-desktop-footer button:disabled { opacity: .45; }
@keyframes pc-reveal { from { opacity: 0; transform: translateY(-7px); } to { opacity: 1; transform: translateY(0); } }
@media (hover:hover) and (pointer:fine) {
  #pmwrap .reference-post :is(.pc-toolrail button,.pc-more-access,.pc-choice-row button,.pc-desktop-footer button):not(:disabled):hover { border-color: #ff5a91; transform: translateY(-1px); }
}
@media (max-width:760px) {
  :root:root:root:root:root #pmwrap .pmbox.reference-post { width: 100vw; max-width: none; height: var(--vvh,100dvh); max-height: var(--vvh,100dvh); border-radius: 0; }
  :root:root:root:root:root #pmwrap .reference-post .pmtop { min-height: 72px; padding: 17px 18px 13px; }
  :root:root:root:root:root #pmwrap .reference-post .pc-editor { padding: 16px 16px calc(100px + env(safe-area-inset-bottom)); }
  #pmwrap .reference-post .pc-heading h2 { font-size: 24px; }
  #pmwrap .reference-post .pc-heading p { font-size: 12px; }
  #pmwrap .reference-post .pc-identity { margin-bottom: 13px; }
  :root:root:root:root:root #pmwrap .reference-post .pmrow { margin-top: 0; }
  :root:root:root:root:root #pmwrap .reference-post .pmrow textarea { min-height: 94px; font-size: 16px; }
  #pmwrap .reference-post .pc-toolrail { margin-bottom: 13px; }
  #pmwrap .reference-post .pc-media-strip:not(:has(.pmatt.on)) .pc-add-media { height: 105px; }
  #pmwrap .reference-post .pc-library { height: 105px; }
  #pmwrap .reference-post .pc-advanced em { display: none; }
  :root:root:root:root:root #pmwrap .reference-post .pc-desktop-footer { display: none; }
  :root:root:root:root:root #pmwrap .reference-post .pmbar { gap: 8px; }
  :root:root:root:root:root #pmwrap .reference-post .pmbar .pmpost { order: 1; }
  #pmwrap .reference-post .pc-mobile-draft { order: 0; }
  #pmwrap .reference-post .pc-advanced-scrim { display: block; position: fixed; inset: 0; z-index: 90; width: 100%; border: 0; background: #000b; }
  #pmwrap .reference-post .pc-advanced-detail { position: fixed; inset: auto 0 0; z-index: 91; width: 100%; max-height: min(86dvh,720px); overflow-y: auto; overscroll-behavior: contain; padding: 0 16px calc(25px + env(safe-area-inset-bottom)); border: 1px solid #a7446c; border-bottom: 0; border-radius: 23px 23px 0 0; background: linear-gradient(165deg,#291820,#171519 54%,#111113); box-shadow: 0 -20px 60px #000c; animation: pc-sheet-rise .34s cubic-bezier(.22,1,.36,1) both; }
  #pmwrap .reference-post .pc-sheet-head { position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; align-items: center; margin: 0 -16px 12px; padding: 13px 16px 10px; border-bottom: 1px solid #693247; border-radius: 22px 22px 0 0; background: #281820; color: #fff; font-size: 14px; }
  #pmwrap .reference-post .pc-sheet-head button { padding: 7px 12px; border: 0; border-radius: 8px; background: #ff2d73; color: #1c0a12; font-size: 11px; font-weight: 800; }
  #pmwrap .reference-post .pc-choice-row button { min-height: 39px; }
}
@keyframes pc-sheet-rise { from { opacity: .6; transform: translateY(32px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { #pmwrap .reference-post .pc-advanced-detail { animation: none; } }

/* Restore the first approved editor: a strong heading, a caption canvas,
   square media previews, and one obvious Free/Paid decision. */
:root:root:root:root:root #pmwrap .pmbox.reference-post {
  width: min(744px, calc(100vw - 36px)); max-width: 744px;
  height: min(790px, calc(100dvh - 44px)); max-height: calc(100dvh - 44px);
  background: #0d0d0f; border-color: #39383d;
}
:root:root:root:root:root #pmwrap .reference-post .pmtop {
  min-height: 82px; padding: 15px 23px; background: #0d0d0f; border-bottom-color: #2c2b30;
}
#pmwrap .reference-post .pc-heading h2 { font-size: 30px; line-height: 1.08; letter-spacing: -.045em; }
#pmwrap .reference-post .pc-heading p { margin-top: 5px; font-size: 14px; color: #d4d0d5; }
#pmwrap .reference-post .pc-header-actions { display: flex; }
:root:root:root:root:root #pmwrap .reference-post .pc-editor { padding: 20px 23px 22px; }
#pmwrap .reference-post .pc-identity { display: none; }
:root:root:root:root:root #pmwrap .reference-post .pmrow {
  display: block; position: relative; order: 1; min-height: 148px; margin: 0 0 14px;
  border: 1px solid #48464c; border-radius: 12px;
  background: linear-gradient(135deg,#1b1b1e,#202023);
}
:root:root:root:root:root #pmwrap .reference-post .pmrow textarea {
  display: block; width: 100%; min-height: 146px; max-height: 300px;
  padding: 15px 48px 26px 16px; font-size: 16px; line-height: 1.5;
}
#pmwrap .reference-post .pc-toolrail { position: absolute; inset: 0; display: block; margin: 0; pointer-events: none; }
#pmwrap .reference-post .pc-toolrail > button:first-child { display: none; }
#pmwrap .reference-post .pc-toolrail .pc-emoji {
  position: absolute; top: 10px; right: 10px; width: 31px; height: 31px;
  border: 0; background: transparent; color: #f5f2f5; pointer-events: auto;
}
#pmwrap .reference-post .pc-toolrail .pc-count { position: absolute; right: 13px; bottom: 9px; color: #b8b5bd; font-size: 11px; }
#pmwrap .reference-post .pc-media-heading { margin: 0 0 8px; }
:root:root:root:root:root #pmwrap .reference-post .pc-media-strip {
  order: 4; display: flex; flex-wrap: wrap; align-items: flex-start; gap: 9px;
  padding: 0; border: 0; overflow: visible; margin-bottom: 14px;
}
:root:root:root:root:root #pmwrap .reference-post .pc-media-strip:not(:has(.pmatt.on)) .pc-add-media,
:root:root:root:root:root #pmwrap .reference-post .pc-add-media {
  order: 0; flex: 0 0 130px; width: 130px; height: 126px;
  border: 1px dashed #8b858e; background: linear-gradient(140deg,#121214,#1b1a1d);
}
#pmwrap .reference-post .pc-add-media b { font-size: 12px; }
#pmwrap .reference-post .pc-add-media small { font-size: 10px; }
:root:root:root:root:root #pmwrap .reference-post .pc-media-strip .pmatt { order: 1; }
#pmwrap .reference-post .pc-media-strip .pc-library { order: 2; flex-basis: 130px; width: 130px; height: 126px; }
:root:root:root:root:root #pmwrap .reference-post .pmatt .mea,
:root:root:root:root:root #pmwrap .reference-post .pmatt .mea:only-child,
:root:root:root:root:root #pmwrap .reference-post .pmatt .mea:has(video) {
  flex-basis: 126px; width: 126px; min-width: 126px; max-width: 126px; min-height: 126px;
}
:root:root:root:root:root #pmwrap .reference-post .pmatt .pm-attachment-preview { height: 126px; min-height: 126px; }
#pmwrap .reference-post .pc-audience-card {
  order: 5; margin: 0; padding: 16px; border: 1px solid #39383d;
  border-radius: 13px; background: #1b1b1e;
}
#pmwrap .reference-post .pc-card-title b { font-size: 15px; color: #fff; }
#pmwrap .reference-post .pc-card-title small { margin-top: 3px; color: #aaa7af; }
#pmwrap .reference-post .pc-audience-choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin-top: 13px; }
#pmwrap .reference-post .pc-audience-choices .pc-access-tile {
  display: flex; align-items: center; gap: 11px; min-height: 71px; padding: 11px 12px;
  border: 1px solid #45434a; border-radius: 11px; background: #111113; color: #fff;
  text-align: left;
}
#pmwrap .reference-post .pc-access-icon {
  flex: 0 0 38px; display: grid; place-items: center; width: 38px; height: 38px;
  border-radius: 10px; background: #2a292d; color: #fff;
}
#pmwrap .reference-post .pc-access-icon i { font-size: 21px; }
#pmwrap .reference-post .pc-audience-choices .pc-access-tile b { font-size: 14px; line-height: 1.1; }
#pmwrap .reference-post .pc-audience-choices .pc-access-tile small { margin-top: 5px; font-size: 11px; color: #b8b5bc; }
#pmwrap .reference-post .pc-audience-choices .pc-access-tile[aria-pressed='true'] {
  border-color: #ff2d73; background: linear-gradient(110deg,#ff2d731c,#20151b); box-shadow: inset 0 0 0 1px #ff2d7330;
}
#pmwrap .reference-post .pc-audience-choices .pc-access-tile[aria-pressed='true'] .pc-access-icon { background: #ff2d73; color: #080709; }
#pmwrap .reference-post .pc-free-visibility { margin-top: 14px; padding-top: 12px; border-top: 1px solid #ffffff17; }
#pmwrap .reference-post .pc-free-visibility > span { display: block; margin-bottom: 8px; font-size: 12px; font-weight: 750; }
#pmwrap .reference-post .pc-free-visibility > div { display: flex; gap: 8px; }
#pmwrap .reference-post .pc-free-visibility button {
  min-height: 34px; padding: 0 12px; border: 1px solid #47454c; border-radius: 8px;
  background: #111113; color: #e9e6eb; font-size: 11px; font-weight: 700;
}
#pmwrap .reference-post .pc-free-visibility button[aria-pressed='true'] { border-color: #ff2d73; background: #ff2d731c; color: #fff; }
#pmwrap .reference-post .pc-access-summary { margin: 12px 0 0; color: #e7dae0; font-size: 12px; line-height: 1.4; }
#pmwrap .reference-post .pc-access-summary i { margin-right: 5px; color: #ff5792; font-size: 16px; vertical-align: -2px; }
#pmwrap .reference-post .pc-more-access { margin-top: 9px; color: #d0b8c3; }
:root:root:root:root:root #pmwrap .reference-post .pm-publish-boundary.pc-visible {
  order: 6; margin: 0; padding: 13px 16px; border: 1px solid #39383d;
  border-top: 1px solid #ffffff19; border-radius: 0 0 13px 13px; background: #1b1b1e;
}
#pmwrap .reference-post .pc-audience-card:has(+ .pm-publish-boundary.pc-visible) { border-bottom: 0; border-radius: 13px 13px 0 0; }
#pmwrap .reference-post .pm-publish-boundary > i { background: #ff2d7322; color: #ff5792; }
#pmwrap .reference-post .pm-publish-boundary b { color: #fff; font-size: 13px; }
#pmwrap .reference-post .pm-publish-boundary small { color: #c6c1c8; font-size: 11px; }
#pmwrap .reference-post .pm-publish-boundary .pm-date-line { grid-column: 1 / -1; margin-top: 5px; }
#pmwrap .reference-post .pm-publish-boundary .pm-date-line > span { display: block; margin-bottom: 7px; color: #f2eff2; font-size: 12px; font-weight: 700; }
#pmwrap .reference-post .pm-publish-boundary input { width: min(100%,220px); border-radius: 9px; background: #111113; color: #fff; }
#pmwrap .reference-post .pc-advanced { margin-top: 13px; border-color: #39383d; background: #1b1b1e; }
#pmwrap .reference-post .pc-advanced .pc-advanced-icon { background: #ff2d7322; color: #ff5b94; }
#pmwrap .reference-post .pc-advanced-detail { border-color: #51434b; background: #1b1b1e; }
:root:root:root:root:root #pmwrap .reference-post .pc-desktop-footer { display: none; }
@media (hover:hover) and (pointer:fine) {
  #pmwrap .reference-post :is(.pc-access-tile,.pc-free-visibility button):not(:disabled):hover { border-color: #ff2d73; transform: translateY(-1px); }
}
@media (max-width:760px) {
  :root:root:root:root:root #pmwrap .pmbox.reference-post { width: 100vw; max-width: none; height: var(--vvh,100dvh); max-height: var(--vvh,100dvh); border-radius: 0; }
  :root:root:root:root:root #pmwrap .reference-post .pmtop { min-height: 75px; padding: 14px 16px; }
  #pmwrap .reference-post .pc-heading h2 { font-size: 26px; }
  #pmwrap .reference-post .pc-heading p { font-size: 13px; }
  #pmwrap .reference-post .pc-header-actions { display: none; }
  :root:root:root:root:root #pmwrap .reference-post .pc-editor { padding: 15px 15px calc(105px + env(safe-area-inset-bottom)); }
  :root:root:root:root:root #pmwrap .reference-post .pmrow { min-height: 125px; margin: 0 0 12px; }
  :root:root:root:root:root #pmwrap .reference-post .pmrow textarea { min-height: 123px; font-size: 16px; }
  #pmwrap .reference-post .pc-media-strip { gap: 7px; }
  :root:root:root:root:root #pmwrap .reference-post .pc-media-strip:not(:has(.pmatt.on)) .pc-add-media,
  :root:root:root:root:root #pmwrap .reference-post .pc-add-media,
  #pmwrap .reference-post .pc-media-strip .pc-library { flex-basis: 104px; width: 104px; height: 99px; }
  :root:root:root:root:root #pmwrap .reference-post .pmatt .mea,
  :root:root:root:root:root #pmwrap .reference-post .pmatt .mea:only-child,
  :root:root:root:root:root #pmwrap .reference-post .pmatt .mea:has(video) { flex-basis: 99px; width: 99px; min-width: 99px; max-width: 99px; min-height: 99px; }
  :root:root:root:root:root #pmwrap .reference-post .pmatt .pm-attachment-preview { height: 99px; min-height: 99px; }
  #pmwrap .reference-post .pc-audience-card { padding: 13px; }
  #pmwrap .reference-post .pc-audience-choices .pc-access-tile { min-height: 68px; padding: 9px; gap: 8px; }
  #pmwrap .reference-post .pc-access-icon { flex-basis: 30px; width: 30px; height: 30px; border-radius: 8px; }
  #pmwrap .reference-post .pc-access-icon i { font-size: 17px; }
  #pmwrap .reference-post .pc-audience-choices .pc-access-tile b { font-size: 12px; }
  #pmwrap .reference-post .pc-audience-choices .pc-access-tile small { font-size: 10px; }
  #pmwrap .reference-post .pm-publish-boundary .pm-date-line input { width: 100%; min-height: 44px; font-size: 16px; }
}

/* Preserved source: /design-review/profile-photo-clarity-20261001.css?v=5 */
/* Restore the original filled profile frame, keeping the face at its top. */
.profile-page .pim > img.profile-hero-media {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center top !important;
}
.profile-page .profile-reference-thumbs {
  position: absolute;
  inset: auto 8px 6px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  max-width: calc(100% - 16px);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
}
.profile-page .profile-reference-thumbs > button {
  flex: 0 0 44px;
  display: block;
  width: 44px;
  height: 48px;
  min-height: 44px;
  padding: 2px;
  border: 1px solid var(--line);
  border-radius: 0;
  background: var(--ink);
  cursor: pointer;
}
.profile-page .profile-reference-thumbs > button[aria-pressed='true'] {
  border-color: var(--em1);
}
.profile-page .profile-reference-thumbs > button:focus-visible {
  outline: 2px solid var(--em1);
  outline-offset: -2px;
}
.profile-page .profile-reference-thumbs img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.profile-page .pg6 .pt,
.profile-page .profile-native-card[style*='background: url'] {
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}
.profile-page .profile-feed .post .post__pic {
  object-fit: contain !important;
  object-position: center !important;
}
:root:root:root:root .post__kind:has(> .profile-ai-signature) {
  display: inline-flex;
  align-items: center;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
}
:root:root:root:root .post__kind:has(> .profile-ai-signature)::before,
:root:root:root:root .post__kind:has(> .profile-ai-signature)::after { content: none !important; }
:root:root:root:root .post__kind > .profile-ai-signature { margin: 0; }

/* Feed photography is complete before opening the viewer, at its own ratio. */
:root .post button.post__media-open {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}
:root .post button.post__media-open > img.post__pic {
  display: block;
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}
.media-viewer { padding: 0 !important; }
.media-viewer .media-viewer__panel {
  box-sizing: border-box !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  width: 100vw !important;
  height: 100dvh !important;
  max-height: none !important;
  padding: 60px 12px 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.media-viewer .media-viewer__image {
  min-width: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  border-radius: 0 !important;
  object-fit: contain !important;
}
.media-viewer__save {
  position: absolute;
  top: max(12px, env(safe-area-inset-top));
  left: max(12px, env(safe-area-inset-left));
  z-index: 2;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 50%;
  background: rgba(8, 7, 8, .82);
  color: #fff;
  text-decoration: none;
  font: inherit;
}
.media-viewer__save svg { width: 20px; height: 20px; }
.media-viewer__save:hover { border-color: var(--em1); color: var(--em1); }
.media-viewer__save:focus-visible {
  outline: 2px solid var(--em1);
  outline-offset: -2px;
}

/* Name and icon share the first line; the handle sits directly underneath. */
:root:root .post .post__who {
  display: flex !important;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
}
:root:root .post .post__nm {
  flex: 0 1 auto;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start;
  gap: 0;
  min-width: 0;
  padding-top: 2px;
}
:root:root .post .post__identity-line {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 6px;
  min-height: 22px;
  max-width: 100%;
  min-width: 0;
}
:root:root .post .post__identity-line > .profile-ai-signature {
  flex: none;
  margin: 0;
}
:root:root .post .post__chan {
  display: block;
  margin: 0;
  line-height: 18px;
}
:root:root .post .post__metadata {
  flex: none;
  flex-wrap: nowrap;
  margin-top: 0;
  gap: 0;
}
:root:root .post .post__tm {
  display: inline-flex;
  align-items: flex-start;
  gap: 6px;
  min-height: 44px;
  margin-top: 0;
  padding-top: 3px;
  line-height: 22px;
  white-space: nowrap;
}
:root:root .post .post__tm::before { content: '·'; }
@media (max-width: 600px) {
  :root:root .post .post__who { gap: 2px; }
  :root:root .post .post__identity-line { gap: 4px; }
  :root:root .post .post__tm { gap: 4px; }
}
:root:root:root:root .profile-page .pim:has(>.profile-add-media){background:var(--g05,rgba(128,128,128,.07));border:1px solid var(--line,rgba(128,128,128,.2));box-sizing:border-box;position:relative}
:root:root:root:root .profile-page .pim>.profile-add-media{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;height:100%;border:0;background:transparent;color:var(--fg);font:600 14px/1.4 var(--sans);cursor:pointer;padding:32px}
:root:root:root:root .profile-page .pim>.profile-add-media svg{width:32px;height:32px;opacity:.7}
:root:root:root:root .profile-page .pim:has(>.profile-add-media)>.profile-reference-back{z-index:2}

:root:root:root:root .profile-reference-back[aria-label="Back to account"]{display:none!important}
/* Everyday controls reuse house tokens and keep existing artwork intact. */
:root:root:root:root .profile-page .pim>.profile-add-media--has-photo{inset:auto 12px 12px auto;width:auto;height:auto;padding:10px 16px;border-radius:999px;flex-direction:row;gap:8px;background:var(--bg,#000);border:1px solid var(--line);font-size:12px;z-index:3}
:root:root:root:root .profile-page .pim>.profile-add-media--has-photo svg{width:18px;height:18px}
:root:root:root .wallet-new-amount{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font:600 15px/1.4 var(--sans);margin:18px 0 8px}
:root:root:root .wallet-new-amount>span{margin-left:auto;color:var(--mut);font-size:12px}
:root:root:root .wallet-new-amount>input{flex-basis:100%;min-width:0;width:100%;box-sizing:border-box;padding:16px 18px;border:1px solid var(--line);border-radius:16px;color:var(--fg);background:var(--g05);font:600 26px/1.3 var(--sans);font-variant-numeric:tabular-nums}
:root:root:root .wallet-funding-section .wallet-funding__amount:has(>input){display:none}
:root:root:root .easy-deposit-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;list-style:none}
:root:root:root .easy-deposit-progress li{min-width:0;display:flex;align-items:center;gap:8px;font:500 12px/1.4 var(--sans);overflow-wrap:normal}
:root:root:root .easy-deposit-progress li>span{flex-shrink:0}
:root:root:root :is(.inline-profile-editor,.wallet-funding,.studio-quick-actions) :is(button,a.pill){min-height:44px}
:root:root:root :is(.inline-profile-editor,.wallet-funding,.wallet-new-amount) :is(input,textarea,button):focus-visible{outline:2px solid var(--em1);outline-offset:3px}
:root:root:root .inline-profile-editor p[role=status]{color:var(--fg);font-weight:600}
@media(hover:hover){:root:root:root .studio-quick-actions :is(a,button){transition:transform .18s ease,background .18s ease}:root:root:root .studio-quick-actions :is(a,button):hover{transform:translateY(-2px)}}
@media(max-width:480px){:root:root:root .easy-deposit-progress li{flex-direction:column;align-items:flex-start;font-size:11px}}
@media(prefers-reduced-motion:reduce){:root:root:root .studio-quick-actions :is(a,button){transition:none;transform:none}}
