@font-face {
  font-family: "TFB Bricolage";
  src: url("../fonts/editorial/bricolage-grotesque.ttf") format("truetype");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "TFB DM Sans";
  src: url("../fonts/editorial/dm-sans.ttf") format("truetype");
  font-weight: 100 1000;
  font-style: normal;
  font-display: swap;
}
.brand-preview-wrap { position: relative; flex: 0 1 auto; }
.brand-home { display: block; color: inherit; text-decoration: none; }
.brand-world-switch {
  position: absolute; left: 0; bottom: -3px; width: 100%; height: 22%;
  padding: 0; border: 0; background: transparent; border-radius: 0;
}
.brand-world-switch[hidden] { display: none; }
.brand-world-switch:focus-visible { outline: 1px solid var(--logo); outline-offset: 3px; }

.home-tools:has(.world-switch) { justify-content: space-between; align-items: center; gap: 12px; }
.home-tools:has(.world-switch) > .view-close { margin-top: 0; }
.world-switch { display: inline-flex; align-items: center; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; flex: none; }
.world-switch button { min-height: 38px; padding: 0 12px; border: 0; background: var(--card); font-family: var(--font); font-size: .8rem; font-weight: 600; letter-spacing: 0; color: var(--ink); }
.world-switch button + button { border-left: 1px solid var(--line); }
.world-switch button[aria-pressed="true"] { background: var(--brand); color: #fff; }
.world-switch button:focus-visible { outline: 2px solid var(--signal); outline-offset: -3px; }

.editorial-preview-active {
  --brand: #171717;
  --logo: #171717;
  --ink: #171717;
  --muted: #686868;
  --on-bg: #171717;
  --on-bg-muted: #686868;
  --bg: #EFEFEF;
  --topbar: rgba(239, 239, 239, .96);
  --cream: #F7F7F7;
  --paper: #F7F7F7;
  --card: #F9F9F9;
  --cardboard: #E5E5E5;
  --cardboard-2: #D2D2D2;
  --clay-soft: #F5E9E5;
  --green-soft: #E8E8E8;
  --meet-open: #686868;
  --text: #171717;
  --radius: 8px;
  --line: #D7D7D7;
  --shadow: 0 1px 2px rgba(23, 23, 23, .06);
  --font: "TFB DM Sans", -apple-system, "Segoe UI", sans-serif;
  --serif: "TFB Bricolage", "TFB DM Sans", sans-serif;
  --look-serif: var(--serif);
  --hand: "TFB DM Sans", -apple-system, "Segoe UI", sans-serif;
  font-optical-sizing: auto;
}
.editorial-preview-active :is(h1, h2, h3, .feature-body h2, .fpost-title) {
  font-family: var(--serif); font-weight: 700; letter-spacing: 0; color: var(--ink);
}
.editorial-preview-active .topbar { background: var(--bg); }
.editorial-preview-active .topnav .tab { font-family: var(--font); font-size: .82rem; letter-spacing: 0; font-weight: 700; color: var(--muted); }
.editorial-preview-active .topnav .tab.active { color: var(--ink); }
.editorial-preview-active .topnav .tab.tab-kiosk { color: var(--signal); }
@media (max-width: 400px) {
  .editorial-preview-active .topnav .tab { font-size: .76rem; }
}
@media (min-width: 1024px) {
  .editorial-preview-active .topnav .tab { font-size: .85rem; }
}
.editorial-preview-active .home-masthead { color: var(--muted); border-color: var(--line); }
.editorial-preview-active .home-look-6 .feature {
  background: #F7F7F7; border-radius: 4px; box-shadow: 0 1px 2px rgba(23, 23, 23, .06);
}
.editorial-preview-active .feature-media { border-radius: 4px; }
.editorial-preview-active .feature-dark :is(h2, .feature-text, .feature-text p) { color: var(--ink); }
.editorial-preview-active .feature-text, .editorial-preview-active .feature-text p { color: var(--ink); font-family: var(--font); }
.editorial-preview-active .feature-sub { color: var(--ink); font-weight: 500; }
.editorial-preview-active .feature-kicker { letter-spacing: 0; font-family: var(--font); font-weight: 500; }
.editorial-preview-active .feature-kicker .feature-kicker-label {
  display: inline-block; width: fit-content; border: 1px solid var(--line);
  border-radius: 3px; padding: 3px 7px; color: var(--ink); font-size: .75rem;
  text-transform: none; background: transparent;
}
.editorial-preview-active .home-look-6 .feature-kicker :is(.feature-number, span:not(.feature-kicker-label)) {
  color: transparent; -webkit-text-stroke: 1.25px var(--signal); font-family: var(--serif); font-weight: 600; letter-spacing: 0;
}
.editorial-preview-active .fpost { border-radius: 4px; background: #F9F9F9; box-shadow: var(--shadow); }
.editorial-preview-active .fpost-title { color: var(--ink); font-size: 1.3rem; }
.editorial-preview-active .fpost-text { font-family: var(--font); color: var(--ink); }
.editorial-preview-active .fpost-media, .editorial-preview-active .message-collage { border-radius: 3px; }
.editorial-preview-active .fpost-tools { border-color: var(--line); }
.editorial-preview-active .fpost-who small { color: var(--muted); }
.editorial-preview-active .overview .mini { border-radius: 4px; background: #F9F9F9; box-shadow: var(--shadow); }
.editorial-preview-active .mini-where { color: var(--ink); font-family: var(--serif); font-weight: 700; }
.editorial-preview-active .page-head, .editorial-preview-active .feed-head { border-color: var(--line); }

/* Shared surfaces stay neutral; status/action colors and actual photographs are retained. */
.editorial-preview-active :is(.card, .post, .event, .meet-card, .meet-status, .meet-kind-tile, .meet-group, .meet-suggest button, .acct-card, .acct-stats a, .person, .team-list, .team-facts div, .fee-card, .block-facts > div, .membership-card, .import-plan li, .photo-admin .photo-request, .link-card, .inbox-list) {
  background: var(--card); border-radius: 8px; box-shadow: var(--shadow);
}
.editorial-preview-active :is(.sheet, .photo-frame-dialog) { background: var(--paper); }
.editorial-preview-active .sheet { border-radius: 8px; }
.editorial-preview-active .sheet-backdrop { background: rgba(23, 23, 23, .35); }
.editorial-preview-active :is(.tile, .kiosk-link, .look-picker, .nav-row, .sec) { border-radius: 8px; box-shadow: var(--shadow); }
.editorial-preview-active :is(.tile-art, .tile-picture, .tile-illustration) { background: #E9E9E9; border-radius: 4px; }
.editorial-preview-active :is(.post-body p, .event .event-text, .story-text, .block-text, .paper-detail) { color: var(--ink); }
.editorial-preview-active :is(.post-body h3, .event h3, .story-head h1, .story-h, .rich-area h3) { font-family: var(--serif); font-weight: 700; letter-spacing: 0; color: var(--ink); }
.editorial-preview-active :is(.story-photo, .story-side-img, .story-square, .post-square, .portrait-cta, .portrait-cta-img, .block-image > img) { border-radius: 4px; }
.editorial-preview-active :is(.story-hero-text, .portrait-cta, .editbar, .acct-admin) :is(h1, h2, h3) { color: #fff; }
.editorial-preview-active .feature-dark .feature-body { --ink: #171717; --muted: #686868; --signal: #C4553A; color: var(--ink); }
.editorial-preview-active .feature.links-light .feature-body .link-chip { --ink: #171717; --muted: #686868; color: var(--ink); }
.editorial-preview-active .deckel .deckel-face { background: var(--card); color: var(--ink); box-shadow: 0 0 0 1px var(--line), 0 8px 20px rgba(23, 23, 23, .12); }
.editorial-preview-active .paper-row.me { background: rgba(23, 23, 23, .05); }
.editorial-preview-active :is(.tally-head, .tally-cell, .meet-chips .chip.pending, .photo-tags span, .meet-groups-pick button) { border-color: var(--line); }
.editorial-preview-active :is(.acct-pref, .acct-photo, .frame-lock, .nav-preview span, .nav-row-top > button, .rich-tools .rich-group, .sec-bar button, .aktuell-switch, .photo-state.none) { background: #E9E9E9; }
.editorial-preview-active :is(.field input, .field select, .field textarea, .rich-area, .compose-title) { font-family: var(--font); background: var(--paper); border-color: var(--line); }
.editorial-preview-active .acct-form input[readonly] { background: #E9E9E9; color: var(--muted); }
.editorial-preview-active .seg button { border-color: var(--line); }
.editorial-preview-active .seg button.on { border-color: var(--brand); }
.editorial-preview-active .site-footer a { color: var(--muted); }
.editorial-preview-active .demo-ribbon { background: #E5E5E5; color: var(--muted); }
.editorial-preview-active :is(.meet-avatar, .meet-chips .chip, .team-rank:not(.top), .membership-notice) { background: #E9E9E9; }
.editorial-preview-active :is(.inbox-open, button.meet-row, .team):hover { background: #E5E5E5; }
.editorial-preview-active .meet-status.is-full { background: var(--meet-yes-soft); }
.editorial-preview-active .acct-next-match { border-color: var(--ink); border-radius: 8px; }
.editorial-preview-active .header-focus { color: var(--ink); border-color: var(--ink); background: var(--card); }
.editorial-preview-active .header-focus:hover { background: #E5E5E5; }
.editorial-preview-active .feature .link-chip { background: var(--card); color: #171717; --ink: #171717; --muted: #686868; }
.editorial-preview-active .feature .feature-link .btn.signal { background: var(--signal); border-color: var(--signal); color: #fff; }
.editorial-preview-active .meet-kind-tile { min-width: 0; }
.editorial-preview-active .meet-kind-tile :is(strong, small) { max-width: 100%; overflow-wrap: anywhere; }
@media (max-width: 480px) {
  .editorial-preview-active .meet-new-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .editorial-preview-active .meet-kind-tile { min-height: 92px; }
}
