/* ═════════════════════════════════════════════════════════════════════
   ANKLE OS THEME SYSTEM
   Loaded on every aleqth.com / ankle.website / ANKLE.app page.
   Activate a theme by setting `document.body.className = "theme-<name>"`.
   Overlay skins (wallpaper + grid) activate automatically when the
   corresponding CSS variables are defined on :root.
   ═════════════════════════════════════════════════════════════════════ */

/* ── Base hooks — all themed pages should use these vars ──────────── */
:root {
  --bg: #c0c0c0;
  --fg: #000;
  --panel: #fff;
  --muted: #555;
  --line: #000;
  --link: #0000ee;
  --visited: #551a8b;
  --highlight: #ffffe0;
  --media-well: #000;
  --body-font: "Times New Roman", Times, serif;
  --mono-font: "Courier New", Courier, monospace;
  --radius: 0;
  --shadow: none;

  /* Skin overlay knobs — unset by default */
  --wallpaper-url: none;
  --wallpaper-opacity: 0.28;
  --wallpaper-size: cover;     /* cover | contain | <length> */
  --wallpaper-repeat: no-repeat; /* repeat | no-repeat */
  --grid-url: none;
  --grid-opacity: 0.3;
  --grid-blend: multiply;
}

/* ── Theme presets (body class based) ─────────────────────────────── */
body.theme-discmaster {
  --bg: #c0c0c0;
  --fg: #000;
  --panel: #cacaca;  /* Slight lift over --bg so panels read distinct without
                       breaking the Win95-gray ethos. White panels (the old
                       value) clashed with the chrome — they read as cards
                       from a different theme. */
  --muted: #555;
  --line: #000;
  --link: #0000ee;
  --visited: #551a8b;
  --highlight: #ffffe0;
  --media-well: #000;
  --body-font: "Times New Roman", Times, serif;
  --mono-font: "Courier New", Courier, monospace;
  --display-font: "Press Start 2P","Courier New",monospace;
  --digital-font: "VT323","Courier New",monospace;
  --radius: 0;
  --shadow: none;
}
/* Hard edges EVERYWHERE under discmaster — no rounded anything */
body.theme-discmaster *,
body.theme-discmaster *::before,
body.theme-discmaster *::after { border-radius: 0 !important; }
body.theme-discmaster input,
body.theme-discmaster textarea,
body.theme-discmaster select {
  border: 2px inset #fff !important;
  background: #fff !important;
  color: #000 !important;
  font-family: var(--mono-font) !important;
  border-radius: 0 !important;
}
body.theme-discmaster button:not(.theme-opt),
body.theme-discmaster .btn {
  border: 2px outset #fff !important;
  background: #c0c0c0 !important;
  color: #000 !important;
  font-family: var(--mono-font) !important;
  border-radius: 0 !important;
}
body.theme-discmaster button:not(.theme-opt):active,
body.theme-discmaster .btn:active { border-style: inset !important; }

body.theme-status-2007 {
  /* Original ANKLE asset/palette. This borrows the interaction grammar of
     early public-status sites without copying a wordmark, bird, cloud art,
     archived CSS, or other third-party brand material. */
  --bg: #9ae4e8;
  --fg: #333;
  --panel: #fff;
  --muted: #999;
  --line: #ccc;
  --control-line: #999;
  --link: #0000cc;
  --visited: #551a8b;
  --highlight: #ffff99;
  --media-well: #f6f6f6;
  --body-font: Helvetica, Arial, sans-serif;
  --mono-font: "Lucida Console", Monaco, monospace;
  --radius: 0;
  --shadow: none;
  background-image:
    radial-gradient(circle at 8% 18%, rgba(255,255,255,.24) 0 22px, transparent 23px),
    radial-gradient(circle at 92% 72%, rgba(255,255,255,.18) 0 34px, transparent 35px),
    radial-gradient(circle at 18% 88%, rgba(255,255,255,.12) 0 52px, transparent 53px) !important;
  background-attachment: fixed !important;
}

body.theme-status-2007 .card,
body.theme-status-2007 .system-card,
body.theme-status-2007 .active-world-card,
body.theme-status-2007 .world-card,
body.theme-status-2007 .post-card,
body.theme-status-2007 .stat-card,
body.theme-status-2007 .agent-card,
body.theme-status-2007 .template-card,
body.theme-status-2007 .market-card,
body.theme-status-2007 .nav-card,
body.theme-status-2007 .dir-card {
  background: var(--panel) !important;
  color: var(--fg) !important;
  border-color: var(--line) !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
body.theme-status-2007 #classicFeed {
  background: transparent !important;
}
body.theme-status-2007 #classicFeed .post-card__header {
  padding: 10px 12px 6px;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips,
html[data-ankle-viewer-theme="status-2007"] #aos-bottom,
html[data-ankle-viewer-theme="status-2007"] #aos-left {
  background: #fff !important;
  color: #222 !important;
  border-color: #c4d5d7 !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-right {
  background: #e2ffc9 !important;
  color: #222 !important;
  border-color: #b1ce9a !important;
}
body.theme-status-2007 :is(#classicFeed,.world-card,.active-world-card,.status-row,.nav-card,.dir-card) button:not(.theme-opt),
body.theme-status-2007 :is(#classicFeed,.world-card,.active-world-card,.status-row,.nav-card,.dir-card) .btn {
  background: var(--panel) !important;
  color: var(--fg) !important;
  border: 1px solid var(--control-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.theme-status-2007 :is(#classicFeed,.world-card,.active-world-card,.status-row,.nav-card,.dir-card) :is(input,textarea,select) {
  background: var(--panel) !important;
  color: var(--fg) !important;
  border: 1px solid var(--control-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.theme-status-2007 .aos-row,
body.theme-status-2007 .aos-search-result,
body.theme-status-2007 .feed-post,
body.theme-status-2007 .status-row {
  border-bottom: 1px solid var(--line) !important;
}
body.theme-status-2007 mark {
  background: var(--highlight) !important;
  color: var(--fg) !important;
}
html[data-ankle-color-scheme="dark"] body.theme-status-2007,
html[data-ankle-resolved-theme="dark"] body.theme-status-2007,
html[data-theme="dark"] body.theme-status-2007 {
  --bg: #14171d !important;
  --fg: #f0f3f8 !important;
  --panel: #1e222b !important;
  --muted: #b8c0cc !important;
  --faint: #a0aec0 !important;
  --accent: #ffffff !important;
  --code: #90cdf4 !important;
  --line: #3d4454 !important;
  --control-line: #718096 !important;
  --link: #63b3ed !important;
  --visited: #b794f4 !important;
  --highlight: #2b3a4a !important;
  --media-well: #171b22 !important;
  background-image: none !important;
}
html[data-ankle-color-scheme="dark"][data-ankle-viewer-theme="status-2007"] #aos-topchips,
html[data-ankle-color-scheme="dark"][data-ankle-viewer-theme="status-2007"] #aos-bottom,
html[data-ankle-color-scheme="dark"][data-ankle-viewer-theme="status-2007"] #aos-left,
html[data-ankle-color-scheme="dark"][data-ankle-viewer-theme="status-2007"] #aos-right,
html[data-ankle-resolved-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-topchips,
html[data-ankle-resolved-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-bottom,
html[data-ankle-resolved-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-left,
html[data-ankle-resolved-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-right,
html[data-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-topchips,
html[data-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-bottom,
html[data-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-left,
html[data-theme="dark"][data-ankle-viewer-theme="status-2007"] #aos-right {
  background: #1e222b !important;
  color: #f0f3f8 !important;
  border-color: #3d4454 !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips,
html[data-ankle-viewer-theme="status-2007"] #aos-bottom,
html[data-ankle-viewer-theme="status-2007"] #aos-left,
html[data-ankle-viewer-theme="status-2007"] #aos-right {
  --fg: #222;
  --panel: #fff;
  --muted: #666;
  --line: #c4d5d7;
  --control-line: #65777a;
  --link: #0066cc;
  --visited: #4f3a84;
  --highlight: #fff36a;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips a,
html[data-ankle-viewer-theme="status-2007"] #aos-bottom a,
html[data-ankle-viewer-theme="status-2007"] #aos-left a,
html[data-ankle-viewer-theme="status-2007"] #aos-right a {
  color: var(--link) !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-bottom,#aos-left,#aos-right) :is(button,input,select,textarea) {
  color: var(--fg) !important;
  background: var(--panel) !important;
  border-color: var(--control-line) !important;
}
html[data-ankle-color-scheme="dark"][data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-bottom,#aos-left,#aos-right),
html[data-ankle-resolved-theme="dark"][data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-bottom,#aos-left,#aos-right),
html[data-theme="dark"][data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-bottom,#aos-left,#aos-right) {
  --fg: #f0f3f8;
  --panel: #1e222b;
  --muted: #b8c0cc;
  --line: #3d4454;
  --control-line: #718096;
  --link: #63b3ed;
  --visited: #b794f4;
  --highlight: #2b3a4a;
}

/* Status 2007 composition contract.
   The proportions and interaction grammar follow the verified 2007 public
   status-page reference; the identity, routes, data, and artwork remain ANKLE. */
body.theme-status-2007 {
  --status-2007-width: 780px;
  --status-2007-main: 535px;
  --status-2007-rail: 175px;
  --status-2007-gap: 12px;
  --status-2007-font: Helvetica, Arial, "Lucida Grande", sans-serif;
  --status-2007-utility: #eef8da;
  --status-2007-utility-line: #b5df7a;
  --body-font: var(--status-2007-font);
  --mono-font: var(--status-2007-font);
  --serif: var(--status-2007-font);
  --mono: var(--status-2007-font);
  background-color: #9ae4e8 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1280' height='960' viewBox='0 0 1280 960'%3E%3Cg fill='%23ffffff' fill-opacity='.2'%3E%3Ccircle cx='52' cy='90' r='43'/%3E%3Ccircle cx='104' cy='67' r='61'/%3E%3Ccircle cx='170' cy='91' r='42'/%3E%3Crect x='18' y='90' width='190' height='48' rx='24'/%3E%3Ccircle cx='1125' cy='735' r='52'/%3E%3Ccircle cx='1187' cy='704' r='76'/%3E%3Ccircle cx='1262' cy='739' r='49'/%3E%3Crect x='1071' y='738' width='209' height='59' rx='29'/%3E%3Ccircle cx='42' cy='840' r='34'/%3E%3Ccircle cx='88' cy='816' r='54'/%3E%3Ccircle cx='144' cy='842' r='36'/%3E%3Crect x='8' y='840' width='172' height='44' rx='22'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-attachment: fixed !important;
  background-position: top left !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  color: #333 !important;
  font-family: var(--status-2007-font) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}
/* Text navigation is visibly navigation. The early-Web reference did not hide
   destinations inside neutral chips: ordinary anchors are blue and
   underlined, while explicit button-like controls keep their control shape. */
body.theme-status-2007 a:not([role="button"]):not(.btn):not(.hero-collapse-control) {
  color: #0000cc !important;
  text-decoration: underline !important;
  text-underline-offset: 1px !important;
}
body.theme-status-2007 a:visited { color: #551a8b; }
body.theme-status-2007 mark,
body.theme-status-2007 ::selection { background: #ffff99 !important; color: #333 !important; }
body.theme-status-2007 :is(.section-title,.word,.name,.ttl,.hero-title) {
  font-family: var(--status-2007-font) !important;
}
body.theme-status-2007 :is(button,input,select,textarea,summary,label):not(#ankle-theme-panel *),
body.theme-status-2007 :is(.section-meta,.section-link,.hero-doors,.hero-kicker,.starter-inventory-note,.world-entry,.world-entry *,.surface-actions,.surface-actions *) {
  font-family: var(--status-2007-font) !important;
}
/* In the 2007 reference, labels and profile names are black document text.
   Blue is reserved for destinations and metadata that actually navigate. */
body.theme-status-2007 :is(.section-title,.name,.ttl,.hero-title) {
  color: #333 !important;
}
body.theme-status-2007 :is(.word,.fp-user) {
  color: #0000cc !important;
}
body.theme-status-2007 :is(.section-meta,.meta,.muted,.ago,.fp-ago,.aw-host) {
  color: #999 !important;
}

/* The public front door uses the compact 780 / 535 / 175 composition. */
body.theme-status-2007 .page-layout {
  width: min(var(--status-2007-width), calc(100% - 24px)) !important;
  max-width: var(--status-2007-width) !important;
  margin: 0 auto !important;
  padding: 18px 0 28px !important;
}
body.theme-status-2007 .page-layout > .shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 0 56px !important;
}
body.theme-status-2007 .ankle-topbar { display: none !important; }
body.theme-status-2007 .hero {
  padding: 14px 12px !important;
  margin: 0 0 12px !important;
  gap: 12px !important;
  background: var(--status-2007-utility) !important;
  border: 1px solid var(--status-2007-utility-line) !important;
  box-shadow: none !important;
}
body.theme-status-2007 .hero-ico {
  display: none !important;
}
body.theme-status-2007 .hero-title {
  display: none !important;
}
/* The compact public front door substitutes its logo for the generic hero
   identity. A World never does: its owner-selected icon and #word title are
   the primary identity and must remain visible in every viewer theme. */
body.theme-status-2007.a96 #worldHero .hero-ico {
  display: flex !important;
}
body.theme-status-2007.a96 #worldHero .hero-title {
  display: block !important;
}
body.theme-status-2007 .status2007-hero-wordmark {
  display: block !important;
  width: 220px !important;
  max-width: 58vw !important;
  height: auto !important;
  margin: -5px 0 2px !important;
  border: 0 !important;
  background: transparent !important;
}
body.theme-status-2007 .hero.is-collapsed { min-height: 50px !important; padding: 10px 44px 10px 12px !important; }
body.theme-status-2007 .hero.is-collapsed .hero-sub { display: none !important; }
body.theme-status-2007 .hero.is-collapsed .status2007-hero-wordmark { margin: 0 !important; }
body.theme-status-2007 .hero-sub { color: #999 !important; font: 10px/1.4 var(--status-2007-font) !important; }
body.theme-status-2007 .hero-tag { max-width: 535px !important; font: 18px/1.25 var(--status-2007-font) !important; }
body.theme-status-2007 .world-thesis {
  border: 0 !important;
  background: rgba(255,255,255,.72) !important;
  padding: 8px 0 0 !important;
  font: 12px/1.5 var(--status-2007-font) !important;
}
body.theme-status-2007 .hero-collapse-control {
  width: 22px !important;
  height: 22px !important;
  border: 1px solid #ccc !important;
  background: #fff !important;
  color: #666 !important;
  font: bold 13px/1 var(--status-2007-font) !important;
}
body.theme-status-2007 .world-entry {
  background: var(--status-2007-utility) !important;
  border: 1px solid var(--status-2007-utility-line) !important;
  box-shadow: none !important;
}
body.theme-status-2007 :is(.surface-brief,.cph-empty,.starter-inventory-note,.surface-more,.system-card,.nav-card,.dir-card) {
  background: var(--status-2007-utility) !important;
  border-color: var(--status-2007-utility-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.theme-status-2007 .section {
  margin: 12px 0 !important;
  background: #fff !important;
  padding: 10px 12px !important;
}
/* The same white document / ruled box grammar applies beyond the front door.
   Keep the selectors semantic and explicit so an authored World never gets a
   blanket class-name or descendant rewrite. */
body.theme-status-2007 :is(main,[role="main"],.main-panel,.content-panel,.workspace-main) {
  background: #fff !important;
  color: #333 !important;
}
/* /feed is the document column inside the Status 2007 page field, not the
   page field itself. Keep the route canvas transparent so the canonical cyan
   remains visible around one white, ruled chronological stream. */
body.theme-status-2007 #feedMain {
  background: transparent !important;
}
body.theme-status-2007 #classicFeed {
  width: min(var(--status-2007-width), calc(100% - 24px)) !important;
  max-width: var(--status-2007-width) !important;
  margin: 12px auto 28px !important;
  padding: 10px 12px !important;
  background: #fff !important;
}
body.theme-status-2007 #classicFeed .masonry {
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  background: #fff !important;
}
body.theme-status-2007 #classicFeed .post-card {
  background: #fff !important;
  border-bottom: 1px solid #ccc !important;
}
body.theme-status-2007 :is(.panel,.main-panel,.content-panel,.system-card,.nav-card,.dir-card) {
  border: 1px solid #ccc !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.theme-status-2007 :is(.panel,.main-panel,.content-panel,.system-card,.nav-card,.dir-card) > :is(header,.panel-head,.card-head,.section-head) {
  border-bottom: 1px solid #ccc !important;
  background: transparent !important;
}
body.theme-status-2007 .section-head {
  border-bottom: 1px solid #ccc !important;
  margin-bottom: 0 !important;
  padding-bottom: 5px !important;
}
body.theme-status-2007 .section-title { font-size: 18px !important; letter-spacing: 0 !important; }
body.theme-status-2007 .section-title::first-letter { font-size: inherit !important; }
body.theme-status-2007 .activity {
  grid-template-columns: minmax(0,var(--status-2007-main)) minmax(0,var(--status-2007-rail)) !important;
  gap: var(--status-2007-gap) !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.theme-status-2007 .activity-feed {
  border: 0 !important;
  background: #fff !important;
  padding: 6px 10px !important;
  font: 12px/1.4 var(--status-2007-font) !important;
}
body.theme-status-2007 .activity-row {
  grid-template-columns: 48px minmax(0,1fr) auto !important;
  gap: 8px !important;
  align-items: start !important;
  padding: 6px 0 !important;
  border-bottom: 1px solid #ccc !important;
}
body.theme-status-2007 .activity-row .avatar { width: 48px !important; height: 48px !important; border: 0 !important; }
body.theme-status-2007 .activity-side {
  background: #eef8da !important;
  border: 1px solid #b5df7a !important;
  padding: 10px !important;
}
body.theme-status-2007 .activity-side h4 { color: #333 !important; font: bold 12px/1.4 var(--status-2007-font) !important; }
body.theme-status-2007 .activity-side .cta {
  background: #fff !important;
  border: 1px solid #b5df7a !important;
  color: #0000cc !important;
  font: bold 12px/1.4 var(--status-2007-font) !important;
}

/* Worlds and posts become identity-led chronological rows, not raised tiles. */
body.theme-status-2007 .active-worlds-grid,
body.theme-status-2007 .front-feed-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 0 !important;
}
body.theme-status-2007 .active-world-card {
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  grid-template-areas: "identity state" "identity pulse" "identity meta" "identity enter" !important;
  gap: 1px 10px !important;
  padding: 7px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #ccc !important;
  background: #fff !important;
}
body.theme-status-2007 .active-world-card .aw-identity { grid-area: identity; align-items: start !important; }
body.theme-status-2007 .active-world-card .aw-state { grid-area: state; color: #999 !important; }
body.theme-status-2007 .active-world-card .pulse { grid-area: pulse; }
body.theme-status-2007 .active-world-card .meta { grid-area: meta; }
body.theme-status-2007 .active-world-card .aw-enter { grid-area: enter; }
body.theme-status-2007 .active-world-card .aw-icon { width: 48px !important; height: 48px !important; border: 0 !important; }
body.theme-status-2007 .active-world-card .word { font-size: 14px !important; color: #0000cc !important; }
body.theme-status-2007 .active-world-card :is(.aw-host,.aw-state,.pulse,.meta,.aw-enter) { font-family: var(--status-2007-font) !important; }
body.theme-status-2007 .front-post-card {
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  grid-template-areas: "head" "body" "media" "foot" !important;
  padding: 7px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #ccc !important;
  box-shadow: none !important;
  background: #fff !important;
  color: #333 !important;
  font: 12px/1.35 var(--status-2007-font) !important;
}
body.theme-status-2007 .front-post-card .fp-head {
  grid-area: head !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
body.theme-status-2007 .front-post-card .fp-avatar { width: 48px !important; height: 48px !important; border: 0 !important; }
body.theme-status-2007 .front-post-card .fp-user { display: block !important; color: #0000cc !important; font-size: 12px !important; white-space: normal !important; }
body.theme-status-2007 .front-post-card .fp-ago { margin-left: auto !important; }
body.theme-status-2007 .front-post-card .fp-ago { display: block !important; white-space: normal !important; }
body.theme-status-2007 .front-post-card .fp-body { grid-area: body !important; padding: 0 !important; color: #333 !important; font-size: 12px !important; }
body.theme-status-2007 .front-post-card .fp-media {
  grid-area: media !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  margin: 5px 0 0 !important;
  place-self: start !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  border: 0 !important;
  background: #f6f6f6 !important;
}
body.theme-status-2007 .front-post-card .fp-media img,
body.theme-status-2007 .front-post-card .fp-media video { width: auto !important; max-width: 100% !important; height: auto !important; object-fit: contain !important; margin-left: 0 !important; margin-right: auto !important; }
body.theme-status-2007 .front-post-card .fp-foot { grid-area: foot !important; padding: 4px 0 0 !important; border: 0 !important; background: transparent !important; }

/* Period interaction grammar: a plain white status composer, ruled tabs,
   and a white footer strip. These selectors are deliberately semantic and
   scoped to Status 2007 so imported/authored World HTML is never rewritten. */
body.theme-status-2007 :is(.composer,.post-composer,.feed-composer) {
  background: #fff !important;
  color: #333 !important;
  border: 1px solid #ccc !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 7px !important;
}
body.theme-status-2007 :is(.composer,.post-composer,.feed-composer) :is(input,textarea) {
  background: #fff !important;
  color: #333 !important;
  border: 1px solid #999 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.theme-status-2007 :is(.tabs,.feed-tabs,.profile-tabs) {
  display: flex !important;
  align-items: end !important;
  gap: 0 !important;
  border-bottom: 1px solid #ccc !important;
  background: #fff !important;
}
body.theme-status-2007 :is(.tabs,.feed-tabs,.profile-tabs) > :is(a,button,[role="tab"]) {
  min-height: 25px !important;
  padding: 4px 12px !important;
  border: 1px solid #ccc !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: #eee !important;
  color: #333 !important;
}
body.theme-status-2007 :is(.tabs,.feed-tabs,.profile-tabs) > :is(a,button,[role="tab"]):is(.active,.on,[aria-selected="true"]) {
  background: #fff !important;
}
body.theme-status-2007 :is(.footer,.footer-links,.page-footer) {
  background: #fff !important;
  color: #333 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 8px 10px !important;
  text-align: center !important;
}

/* Shared OS chrome follows the white masthead + pale-green utility rail. */
html[data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-left,#aos-right,#aos-bottom) {
  font-family: Helvetica, Arial, "Lucida Grande", sans-serif !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-left,#aos-bottom) {
  background: #fff !important;
  color: #333 !important;
  border-color: #ccc !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-right {
  background: #d9ff86 !important;
  color: #333 !important;
  border-color: #7ca53a !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-left,#aos-right) .aos-hd {
  min-height: 24px !important;
  background: transparent !important;
  color: #333 !important;
  border-bottom: 1px solid #ccc !important;
  font: bold 12px/1.4 Helvetica,Arial,"Lucida Grande",sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-left,#aos-right) .aos-sec {
  margin: 10px 0 3px !important;
  padding: 0 0 2px !important;
  color: #666 !important;
  border-bottom: 1px solid #ccc !important;
  font: bold 11px/1.4 Helvetica,Arial,"Lucida Grande",sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-left,#aos-right) .aos-link {
  padding: 3px 2px !important;
  color: #0000cc !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(204,204,204,.65) !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-left,#aos-right) .aos-link:hover,
html[data-ankle-viewer-theme="status-2007"] :is(#aos-left,#aos-right) .aos-link.active {
  background: #ffff99 !important;
  color: #0000cc !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-left,#aos-right) :is(.aos-friend,.aos-row) {
  border-bottom: 1px solid #ccc !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-brand-name,
html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-brand-default-mark {
  display: none !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-brand-symbol {
  width: 82px !important;
  min-width: 82px !important;
  padding: 1px 6px 1px 2px !important;
  overflow: visible !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-brand-status-wordmark {
  display: block !important;
  width: 74px !important;
  height: auto !important;
  max-height: 26px !important;
  object-fit: contain !important;
  border: 0 !important;
  background: transparent !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-left,#aos-right,#aos-bottom) a:not([role="button"]):not(.aos-post):not(.aos-world-chip):not(.aos-world-chip-x):not(.aos-brand-symbol):not(.aos-user-btn) {
  color: #0000cc !important;
  text-decoration: underline !important;
  text-underline-offset: 1px !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-chips-group > a:not(.aos-post) {
  background: transparent !important;
  color: #0000cc !important;
  text-transform: none !important;
  text-decoration: underline !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-chips-group > a:not(.aos-post):is(:hover,.on) {
  background: #ffff99 !important;
  color: #0000cc !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-right :is(.aos-friend,.aos-row,.aos-sec-body) {
  background: transparent !important;
  border-color: #9bc85a !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-right .aos-follow-quick {
  min-width: 0 !important;
  padding: 0 2px !important;
  background: transparent !important;
  color: #0000cc !important;
  border: 0 !important;
  text-decoration: underline !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-hovercard {
  width: 210px !important;
  background: #d9ff86 !important;
  color: #222 !important;
  border: 1px solid #7ca53a !important;
  box-shadow: none !important;
  font-family: Helvetica,Arial,"Lucida Grande",sans-serif !important;
  font-size: 12px !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-hovercard .aos-hovercard-head {
  padding: 8px !important;
  border-bottom: 2px solid #7ca53a !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-hovercard .aos-hovercard-bio {
  color: #222 !important;
  padding: 7px 8px !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-hovercard .aos-hovercard-actions {
  gap: 5px !important;
  padding: 6px 8px !important;
  border-top: 1px solid #9bc85a !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-hovercard .aos-hover-action {
  padding: 2px !important;
  background: transparent !important;
  color: #0000cc !important;
  border: 0 !important;
  box-shadow: none !important;
  text-decoration: underline !important;
  font-family: Helvetica,Arial,"Lucida Grande",sans-serif !important;
}
html[data-ankle-viewer-theme="status-2007"] #aos-hovercard .aos-hovercard-composer {
  padding: 6px 8px !important;
  border-top: 1px solid #9bc85a !important;
}
html[data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-left,#aos-right,#aos-bottom) :is(button,input,select,textarea) {
  background: #fff !important;
  color: #333 !important;
  border: 1px solid #999 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Helvetica,Arial,"Lucida Grande",sans-serif !important;
}

@media (max-width: 720px) {
  body.theme-status-2007 .page-layout { width: calc(100% - 12px) !important; padding-top: 8px !important; }
  body.theme-status-2007 .activity { grid-template-columns: 1fr !important; }
  body.theme-status-2007 .activity-side { margin-top: 8px !important; }
  body.theme-status-2007 .active-world-card { grid-template-columns: 1fr !important; grid-template-areas: "identity" "pulse" "meta" "state" "enter" !important; }
  html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-brand-symbol { width: 48px !important; min-width: 48px !important; padding-right: 3px !important; }
  html[data-ankle-viewer-theme="status-2007"] #aos-topchips .aos-brand-status-wordmark { width: 44px !important; }
}

/* Color mode remains the viewer's choice. The historical composition survives
   in night mode, but never forces the authored content of a World to change. */
html[data-ankle-color-scheme="dark"] body.theme-status-2007,
html[data-ankle-resolved-theme="dark"] body.theme-status-2007,
html[data-theme="dark"] body.theme-status-2007 {
  background-color: #14171d !important;
  background-image: none !important;
  color: #f0f3f8 !important;
}
html[data-ankle-color-scheme="dark"] body.theme-status-2007 :is(.hero,.world-entry,.section,.activity-feed,.active-worlds-grid,.front-feed-grid,.active-world-card,.front-post-card),
html[data-ankle-resolved-theme="dark"] body.theme-status-2007 :is(.hero,.world-entry,.section,.activity-feed,.active-worlds-grid,.front-feed-grid,.active-world-card,.front-post-card),
html[data-theme="dark"] body.theme-status-2007 :is(.hero,.world-entry,.section,.activity-feed,.active-worlds-grid,.front-feed-grid,.active-world-card,.front-post-card) {
  background: #1e222b !important;
  color: #f0f3f8 !important;
  border-color: #3d4454 !important;
}
html[data-ankle-color-scheme="dark"] body.theme-status-2007 :is(.section-title,.name,.ttl,.hero-title),
html[data-ankle-resolved-theme="dark"] body.theme-status-2007 :is(.section-title,.name,.ttl,.hero-title),
html[data-theme="dark"] body.theme-status-2007 :is(.section-title,.name,.ttl,.hero-title) { color: #f0f3f8 !important; }
html[data-ankle-color-scheme="dark"] body.theme-status-2007 :is(.word,.fp-user),
html[data-ankle-resolved-theme="dark"] body.theme-status-2007 :is(.word,.fp-user),
html[data-theme="dark"] body.theme-status-2007 :is(.word,.fp-user) { color: #63b3ed !important; }
html[data-ankle-color-scheme="dark"][data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-bottom,#aos-left,#aos-right),
html[data-ankle-resolved-theme="dark"][data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-bottom,#aos-left,#aos-right),
html[data-theme="dark"][data-ankle-viewer-theme="status-2007"] :is(#aos-topchips,#aos-bottom,#aos-left,#aos-right) {
  background: #1e222b !important;
  color: #f0f3f8 !important;
  border-color: #3d4454 !important;
}

body.theme-directory-portal-2000 {
  /* Clean-room high-information directory primitive; typography does the work. */
  --bg: #fff;
  --fg: #000;
  --panel: #f2f2f2;
  --muted: #555;
  --line: #999;
  --link: #0000cc;
  --visited: #551a8b;
  --highlight: #ffffcc;
  --media-well: #e5e5e5;
  --body-font: Arial, Helvetica, sans-serif;
  --mono-font: "Courier New", Courier, monospace;
  --radius: 0;
  --shadow: none;
}
body.theme-directory-portal-2000 .panel,
body.theme-directory-portal-2000 .card,
body.theme-directory-portal-2000 [class*="-panel"],
body.theme-directory-portal-2000 [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]) {
  background: var(--panel) !important;
  color: var(--fg) !important;
  border: 1px solid var(--line) !important;
  box-shadow: none !important;
}
body.theme-directory-portal-2000 button:not(.theme-opt),
body.theme-directory-portal-2000 .btn {
  background: #e5e5e5 !important;
  color: #000 !important;
  border: 1px outset #ccc !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
}
body.theme-directory-portal-2000 input,
body.theme-directory-portal-2000 textarea,
body.theme-directory-portal-2000 select {
  background: #fff !important;
  color: #000 !important;
  border: 1px solid #777 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* ── Defensive panel-readability rules (apply to ALL ankle96 variants) ── */
/* Pages that ship their own dark inline CSS (prompt_machine, etc.) get
   coerced to use theme panel colors for any element whose class name smells
   like "card" / "panel" / "section" — this is what prevents black-on-near-black
   text when the page's own CSS has hardcoded rgba fills. */
body.theme-discmaster [class*="panel"]:not(#ankle-theme-panel):not(.theme-opt),
body.theme-discmaster [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]),
body.theme-discmaster .card,
body.theme-discmaster [class*="-section"]:not(nav):not(header),
body.theme-directory-portal-2000 [class*="panel"]:not(#ankle-theme-panel):not(.theme-opt),
body.theme-directory-portal-2000 [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]),
body.theme-directory-portal-2000 .card {
  background: var(--panel) !important;
  color: var(--fg) !important;
  border-color: var(--line) !important;
}

/* ── Global application of theme vars to body ─────────────────────── */
body[class*="theme-"] {
  color: var(--fg) !important;
  font-family: var(--body-font) !important;
}
body[class*="theme-"]:not(.theme-status-2007) {
  background: var(--bg) !important;
}
body.theme-status-2007 {
  background-color: var(--bg) !important;
}
body[class*="theme-"] a { color: var(--link) !important; }
body[class*="theme-"] a:visited { color: var(--visited) !important; }

/* ── Skin overlays (wallpaper + grid) ─────────────────────────────── */
/* The wallpaper layer sits behind all content; the grid layer on top. */
body[class*="theme-"]::before,
body[class*="theme-"]::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
}
body[class*="theme-"]::before {
  /* Wallpaper layer — invisible until body.has-wallpaper is toggled on */
  background-image: var(--wallpaper-url, none);
  background-size: var(--wallpaper-size, cover);
  background-repeat: var(--wallpaper-repeat, no-repeat);
  background-position: center center;
  background-attachment: fixed;
  opacity: 0;
  transition: opacity .25s ease;
}
body.has-wallpaper::before {
  opacity: var(--wallpaper-opacity, 1);
}
body.has-wallpaper {
  background-image: var(--wallpaper-url, none) !important;
  background-size: var(--wallpaper-size, cover) !important;
  background-repeat: var(--wallpaper-repeat, no-repeat) !important;
  background-position: center center !important;
  background-attachment: fixed !important;
}
body[class*="theme-"]::after {
  /* Grid / texture overlay layer */
  background-image: var(--grid-url, none);
  background-size: var(--grid-size, auto);
  background-repeat: repeat;
  opacity: 0;
  mix-blend-mode: var(--grid-blend, normal);
}
body.has-grid::after {
  opacity: var(--grid-opacity, 0.3);
}

/* ═══════════════════════════════════════════════════════════════════
   @⌘ terminal v2 (ankle_terminal_v2.js) — discmaster override
   "terminal by Ankle" panel: the ANKLE protocol v1.4 widget with
   ingest/collect/discover chips. Ships dark #0a0a0a bg by default; we
   repaint it in discmaster gray + Times serif + Win95 chips.
   ═══════════════════════════════════════════════════════════════════ */
body.theme-discmaster .ankle-fab{
  background:#c0c0c0 !important; color:#000 !important;
  border:2px outset #fff !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
  box-shadow:none !important;
}
body.theme-discmaster .ankle-fab.active{
  background:#ffffe0 !important; color:#000 !important; border:1px solid #000 !important;
}
body.theme-discmaster .ankle-fab:active{ border-style:inset !important; }
body.theme-discmaster .ankle-fab:hover{ transform:none !important; box-shadow:none !important; }

body.theme-discmaster .ankle-terminal{
  background:#c0c0c0 !important; color:#000 !important;
  border:1px solid #000 !important; border-radius:0 !important;
  box-shadow:none !important;
}
body.theme-discmaster .terminal-header{
  background:#eee !important; color:#000 !important;
  border-bottom:1px solid #000 !important;
}
body.theme-discmaster .terminal-header .label{
  font-family:"Courier New",Courier,monospace !important;
  color:#000 !important; letter-spacing:0 !important;
}
body.theme-discmaster .terminal-header .label span{ color:#0000ee !important; }

body.theme-discmaster .terminal-close,
body.theme-discmaster .terminal-reset,
body.theme-discmaster .terminal-copy,
body.theme-discmaster .terminal-expand,
body.theme-discmaster .terminal-popout{
  color:#0000ee !important;
  font-family:"Courier New",Courier,monospace !important;
  background:transparent !important; border:0 !important;
}
body.theme-discmaster .terminal-close:hover{ color:#000 !important; background:#ffffe0 !important; }
body.theme-discmaster .terminal-copy:hover,
body.theme-discmaster .terminal-expand:hover,
body.theme-discmaster .terminal-popout:hover,
body.theme-discmaster .terminal-reset:hover{ color:#000 !important; background:#ffffe0 !important; }

body.theme-discmaster .terminal-output{
  background:#c0c0c0 !important; color:#000 !important;
  font-family:"Courier New",Courier,monospace !important;
}
body.theme-discmaster .terminal-output .line.cmd{ color:#0000ee !important; }
body.theme-discmaster .terminal-output .line.cmd::before{ color:#555 !important; content:'> ' !important; }
body.theme-discmaster .terminal-output .line.result{ color:#000 !important; }
body.theme-discmaster .terminal-output .line.error{ color:#a42a00 !important; }
body.theme-discmaster .terminal-output .line.system{ color:#555 !important; }
body.theme-discmaster .terminal-output .line.hermes{ color:#000 !important; }
body.theme-discmaster .terminal-output .line.hermes::before{ color:#a42a00 !important; }

body.theme-discmaster .terminal-input-row{
  background:#eee !important; color:#000 !important;
  border-top:1px solid #000 !important;
}
body.theme-discmaster .terminal-prompt{
  color:#000 !important; font-weight:bold !important;
  font-family:"Courier New",Courier,monospace !important;
}
body.theme-discmaster .terminal-hermes-tag{ color:#a42a00 !important; }
body.theme-discmaster .terminal-input{
  background:#fff !important; color:#000 !important;
  border:2px inset #fff !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
  caret-color:#000 !important; padding:2px 4px !important;
}
body.theme-discmaster .terminal-input::placeholder{ color:#888 !important; }

/* Hermes response bubble */
body.theme-discmaster .hermes-bubble{
  background:#ffffe0 !important; border:1px solid #000 !important;
  border-left:2px solid #000 !important; border-radius:0 !important;
  margin:6px 0 10px 0 !important;
}
body.theme-discmaster .hermes-bubble .b-text{
  color:#000 !important; font-family:"Times New Roman",Times,serif !important;
  font-size:13px !important;
}
body.theme-discmaster .hermes-bubble .b-text strong{ color:#000 !important; }
body.theme-discmaster .hermes-bubble .b-text em{ color:#a42a00 !important; font-style:italic !important; }

/* The action chips: "◇ ingest page", "◇ collect imgs", "⇌ to /surf", "≋ refine", etc. */
body.theme-discmaster .cmd-chip{
  background:#c0c0c0 !important; color:#000 !important;
  border:2px outset #fff !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
}
body.theme-discmaster .cmd-chip:hover{ background:#ffffe0 !important; color:#000 !important; }
body.theme-discmaster .cmd-chip:active{ border-style:inset !important; }
body.theme-discmaster .cmd-chip.primary{
  background:#ffffe0 !important; border:1px solid #000 !important;
  color:#000 !important; font-weight:bold !important;
}
body.theme-discmaster .cmd-chip.muted{
  background:#c0c0c0 !important; color:#555 !important;
  border:2px outset #fff !important;
}
body.theme-discmaster .hermes-meta{ color:#555 !important; font-family:"Courier New",Courier,monospace !important; }

/* Bottom "quick actions" row (ingest page / collect imgs / to /surf / …) */
body.theme-discmaster .quick-actions{
  background:#c0c0c0 !important; border-top:1px solid #000 !important;
}
body.theme-discmaster .qa-btn{
  background:#c0c0c0 !important; color:#000 !important;
  border:2px outset #fff !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
}
body.theme-discmaster .qa-btn:hover{ background:#ffffe0 !important; color:#000 !important; }
body.theme-discmaster .qa-btn:active{ border-style:inset !important; }
body.theme-discmaster .qa-btn .g{ color:#0000ee !important; }

/* Slash-command menu popup ( / autocomplete ) */
body.theme-discmaster .slash-menu{
  background:#fff !important; border:1px solid #000 !important; border-radius:0 !important;
  box-shadow:none !important;
}
body.theme-discmaster .slash-item{
  color:#000 !important; font-family:"Courier New",Courier,monospace !important;
  border-bottom:1px dotted #999 !important;
}
body.theme-discmaster .slash-item .k{ color:#0000ee !important; font-weight:bold !important; }
body.theme-discmaster .slash-item .d{ color:#555 !important; }
body.theme-discmaster .slash-item:hover,
body.theme-discmaster .slash-item.sel{ background:#ffffe0 !important; color:#000 !important; }
body.theme-discmaster .slash-item:hover .k,
body.theme-discmaster .slash-item.sel .k{ color:#000 !important; }
body.theme-discmaster .slash-item:hover .d,
body.theme-discmaster .slash-item.sel .d{ color:#555 !important; }

body.theme-discmaster .ankle-notification{
  background:#ffffe0 !important; color:#000 !important;
  border:1px solid #000 !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
  box-shadow:none !important;
}
body.theme-discmaster .ankle-notification .notif-sigil{ color:#0000ee !important; }

/* ═══════════════════════════════════════════════════════════════════
   @⌘ legacy (#botta-panel) — discmaster override for the older widget
   Repaints the built-in #botta-panel / botta-* chrome in discmaster gray
   + Times serif + classic pills. atcmd.js ships its own dark palette, so
   we override with body.theme-discmaster + !important.
   ═══════════════════════════════════════════════════════════════════ */
body.theme-discmaster #botta-fab{
  background:#c0c0c0 !important; color:#000 !important;
  border:2px outset #fff !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
  box-shadow:none !important;
}
body.theme-discmaster #botta-fab:active{ border-style:inset !important; }
body.theme-discmaster #botta-panel,
body.theme-discmaster #botta-panel *{
  font-family:"Times New Roman",Times,serif !important;
  border-radius:0 !important;
}
body.theme-discmaster #botta-panel{
  background:#c0c0c0 !important; color:#000 !important;
  border:1px solid #000 !important;
  box-shadow:none !important;
}
body.theme-discmaster #botta-panel .botta-h{
  background:#eee !important; color:#000 !important;
  border-bottom:1px solid #000 !important;
  font-family:"Courier New",Courier,monospace !important;
  font-weight:bold !important;
  padding:4px 10px !important;
}
body.theme-discmaster #botta-panel #bottaClose{
  color:#0000ee !important; text-decoration:underline !important;
  font-family:"Courier New",Courier,monospace !important;
}
body.theme-discmaster #botta-panel .botta-body,
body.theme-discmaster #botta-panel .botta-log,
body.theme-discmaster #botta-panel .botta-site-status{
  background:#c0c0c0 !important; color:#000 !important;
}
body.theme-discmaster #botta-panel code,
body.theme-discmaster #botta-panel pre,
body.theme-discmaster #botta-panel .botta-cmd,
body.theme-discmaster #botta-panel .botta-log em{
  font-family:"Courier New",Courier,monospace !important;
  color:#000 !important; background:transparent !important;
}
/* All inputs inside the @⌘ panel: classic inset bevel */
body.theme-discmaster #botta-panel input,
body.theme-discmaster #botta-panel textarea,
body.theme-discmaster #botta-panel select{
  background:#fff !important; color:#000 !important;
  border:2px inset #fff !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
}
/* All buttons: Win95 outset pills with yellow highlight on primary */
body.theme-discmaster #botta-panel button{
  background:#c0c0c0 !important; color:#000 !important;
  border:2px outset #fff !important; border-radius:0 !important;
  font-family:"Courier New",Courier,monospace !important;
  padding:3px 10px !important;
}
body.theme-discmaster #botta-panel button:active{ border-style:inset !important; }
body.theme-discmaster #botta-panel button.primary{
  background:#ffffe0 !important; border:1px solid #000 !important;
  font-weight:bold !important;
}
/* Orange/blue outline chips → yellow highlight pills */
body.theme-discmaster #botta-panel .chip,
body.theme-discmaster #botta-panel [class*="action"],
body.theme-discmaster #botta-panel [class*="suggest"],
body.theme-discmaster #botta-panel .botta-cta,
body.theme-discmaster #botta-panel .botta-quick,
body.theme-discmaster #botta-panel [style*="border:1px solid"]{
  background:#c0c0c0 !important; color:#000 !important;
  border:2px outset #fff !important; border-radius:0 !important;
}
body.theme-discmaster #botta-panel [style*="color:#"]{
  color:#000 !important;
}
body.theme-discmaster #botta-panel a{
  color:#0000ee !important; text-decoration:underline !important;
}
/* Top "@⌘ terminal by Ankle" title bar if styled differently */
body.theme-discmaster #botta-panel [class*="title"],
body.theme-discmaster #botta-panel [class*="header"]{
  background:#eee !important; color:#000 !important;
}
/* Prompt row "hermes > ask hermes…" */
body.theme-discmaster #botta-panel .botta-input{
  background:#c0c0c0 !important; border-top:1px solid #000 !important;
}

/* ── Global top-right toolbar — identity pill + ⚙ gear ──────────── */
#ankle-toolbar {
  position: fixed; top: 8px; right: 10px; z-index: 1200;
  display: flex; align-items: center; gap: 6px;
}
/* Hide the toolbar + panel when a modal/lightbox locks body scroll. */
body[style*="overflow: hidden"] #ankle-toolbar,
body[style*="overflow:hidden"] #ankle-toolbar,
body[style*="overflow: hidden"] #ankle-theme-panel,
body[style*="overflow:hidden"] #ankle-theme-panel { display: none !important; }

/* Identity pill */
#ankle-identity { font-family: var(--body-font, Verdana, sans-serif); font-size: 11px; position: relative; }
#ankle-identity .ankle-identity__signin {
  display: inline-flex; align-items: center; padding: 4px 10px;
  border: 1px solid #999; background: var(--panel, #fff); color: var(--fg, #000);
  border-radius: var(--radius, 4px); text-decoration: none; font-size: 11px;
}
#ankle-identity .ankle-identity__btn {
  display: inline-flex; align-items: center; gap: 5px; padding: 3px 8px 3px 4px;
  border: 1px solid #999; background: var(--panel, #fff); color: var(--fg, #000);
  border-radius: var(--radius, 4px); cursor: pointer; font: inherit;
}
#ankle-identity .ankle-identity__av {
  width: 18px; height: 18px; border-radius: 50%; object-fit: cover;
  background: #ddd; flex-shrink: 0;
}
#ankle-identity .ankle-identity__av--ph { background: #ccc; display: inline-block; }
#ankle-identity .ankle-identity__name { font-weight: 600; max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#ankle-identity .ankle-identity__caret { font-size: 9px; color: #666; }
#ankle-identity .ankle-identity__menu {
  display: none; position: absolute; top: calc(100% + 4px); right: 0;
  min-width: 200px; background: var(--panel, #fff); border: 1px solid #999;
  border-radius: var(--radius, 4px); box-shadow: 0 4px 16px rgba(0,0,0,0.06);
  padding: 4px 0; z-index: 1202;
}
#ankle-identity .ankle-identity__menu.open { display: block; }
#ankle-identity .ankle-identity__sub { padding: 6px 12px; font-size: 9px; color: #999; font-family: var(--mono-font, monospace); }
#ankle-identity .ankle-identity__menu a {
  display: flex; align-items: center; gap: 8px; padding: 6px 12px;
  font-size: 11px; color: var(--fg, #000); text-decoration: none;
}
#ankle-identity .ankle-identity__menu a:hover { background: var(--highlight, #f0f0f0); }
#ankle-identity .ankle-identity__menu a .mi { font-family: monospace; color: #999; width: 14px; }
#ankle-identity .ankle-identity__sep { height: 1px; background: #e5e5e5; margin: 3px 0; }

/* ANKLE96 recolor — match the rest of the chrome (flat hairlines) */
body.theme-discmaster #ankle-identity .ankle-identity__signin,
body.theme-discmaster #ankle-identity .ankle-identity__btn,
body.theme-discmaster #ankle-identity .ankle-identity__menu { background: #c0c0c0; border: 1px solid #999; border-radius: 0; }
body.theme-discmaster #ankle-identity .ankle-identity__menu a:hover { background: #000080; color: #fff; }
body.theme-discmaster #ankle-identity .ankle-identity__menu a:hover .mi { color: #fff; }

/* Settings gear — flat single-border to match identity pill */
#ankle-theme-fab {
  position: relative; top: auto; right: auto;
  width: 32px; height: 28px;
  border: 1px solid #999; background: var(--panel); color: var(--fg);
  font-family: var(--mono-font); font-size: 14px;
  cursor: pointer; border-radius: var(--radius);
  display: flex; align-items: center; justify-content: center;
  padding: 0;
}
body.theme-discmaster #ankle-theme-fab{background:#c0c0c0;border:1px solid #999;border-radius:0;color:#000}
#ankle-theme-fab:hover { background: var(--highlight) }
#ankle-theme-fab:active{ background: var(--highlight); }

#ankle-theme-panel {
  position: fixed; top: 50px; right: 10px; z-index: 1201;
  width: 320px; max-width: calc(100vw - 20px); max-height: calc(100vh - 80px); overflow-y: auto;
  background: var(--panel); color: var(--fg);
  border: 1px solid var(--line); border-radius: var(--radius);
  font-family: var(--body-font); font-size: 13px;
  padding: 12px 14px; display: none;
  box-shadow: var(--shadow);
}
body.theme-discmaster #ankle-theme-panel{
  font-family:"Times New Roman",Times,serif !important;
  font-size:14px !important;
}
body.theme-discmaster #ankle-theme-panel h4{
  font-family:"Press Start 2P","Courier New",monospace !important;
  font-size:13px !important; font-weight:normal !important;
  letter-spacing:.06em !important;
}
body.theme-discmaster #ankle-theme-panel h5{
  font-family:"Times New Roman",Times,serif !important;
  font-size:14px !important; font-weight:bold !important;
  letter-spacing:0 !important; text-transform:none !important;
}
body.theme-discmaster #ankle-theme-panel label,
body.theme-discmaster #ankle-theme-panel .skin-field label{
  font-family:"Courier New",Courier,monospace !important;
  font-size:11px !important;
}
body.theme-discmaster #ankle-theme-panel .theme-opt{
  font-family:"Times New Roman",Times,serif !important;
  font-size:13px !important;
  border:2px outset #fff !important; background:#c0c0c0 !important;
  border-radius:0 !important;
}
body.theme-discmaster #ankle-theme-panel .theme-opt.active{
  border:1px solid #000 !important; background:#ffffe0 !important;
  font-weight:bold !important;
}

/* Vintage Win95 sliders under discmaster — beveled track + square thumb */
body.theme-discmaster #ankle-theme-panel input[type=range]{
  -webkit-appearance:none !important; appearance:none !important;
  height:18px !important; background:transparent !important;
  border:0 !important; padding:0 !important;
}
body.theme-discmaster #ankle-theme-panel input[type=range]::-webkit-slider-runnable-track{
  height:6px; background:#c0c0c0;
  border:2px inset #fff; border-radius:0;
}
body.theme-discmaster #ankle-theme-panel input[type=range]::-moz-range-track{
  height:6px; background:#c0c0c0;
  border:2px inset #fff; border-radius:0;
}
body.theme-discmaster #ankle-theme-panel input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none; appearance:none;
  width:16px; height:18px; background:#c0c0c0;
  border:2px outset #fff; border-radius:0;
  margin-top:-6px; cursor:pointer;
}
body.theme-discmaster #ankle-theme-panel input[type=range]::-moz-range-thumb{
  width:16px; height:18px; background:#c0c0c0;
  border:2px outset #fff; border-radius:0; cursor:pointer;
}
body.theme-discmaster #ankle-theme-panel input[type=file]{
  font-family:"Courier New",monospace !important;
  font-size:11px !important;
  border:2px inset #fff !important; background:#fff !important;
  padding:2px !important;
}
@media(max-width: 600px){
  #ankle-theme-panel{ width: calc(100vw - 20px); right: 10px; left: 10px }
  #ankle-theme-panel .theme-list{ grid-template-columns: 1fr 1fr !important }
}
#ankle-theme-panel.open { display: block }
#ankle-theme-panel h4 {
  font-family: var(--body-font); font-size: 16px; font-weight: bold;
  margin: 6px 0 8px; color: var(--fg);
}
#ankle-theme-panel h5 {
  font-family: var(--mono-font); font-size: 11px; font-weight: bold;
  margin: 14px 0 6px; color: var(--fg); letter-spacing: .06em;
  border-bottom: 1px solid var(--line); padding-bottom: 2px;
}
#ankle-theme-panel .theme-list {
  display: grid; grid-template-columns: 1fr 1fr; gap: 6px;
}
#ankle-theme-panel .theme-opt {
  padding: 8px; border: 1px solid var(--line);
  background: var(--panel); color: var(--fg); cursor: pointer;
  font-family: var(--mono-font); font-size: 11px; text-align: left;
  border-radius: var(--radius); transition: background .15s;
}
#ankle-theme-panel .theme-opt:hover { background: var(--highlight) }
#ankle-theme-panel .theme-opt.active {
  background: var(--highlight); font-weight: bold; border-color: var(--fg);
}
#ankle-theme-panel .theme-opt .swatch {
  display: block; width: 100%; height: 28px; margin-bottom: 4px;
  border: 1px solid var(--line); border-radius: var(--radius);
}
#ankle-theme-panel .skin-field {
  margin-top: 6px; display: flex; flex-direction: column; gap: 4px;
}
#ankle-theme-panel .skin-field label {
  font-size: 10px; color: var(--muted); font-weight: bold;
}
#ankle-theme-panel button.btn {
  padding: 4px 10px; border: 2px outset #eee; background: var(--panel);
  color: var(--fg); font-family: var(--mono-font); font-size: 11px;
  cursor: pointer; border-radius: var(--radius);
}
#ankle-theme-panel button.btn:active { border-style: inset }
#ankle-theme-panel button.btn.primary {
  background: var(--highlight); font-weight: bold; border: 1px solid var(--fg);
}
#ankle-theme-panel input[type=range] { width: 100%; accent-color: var(--link) }
#ankle-theme-panel input[type=file] {
  font-family: var(--mono-font); font-size: 10px; color: var(--fg);
}
#ankle-theme-panel .swatch-preview {
  display: flex; gap: 6px; flex-wrap: wrap; margin-top: 6px;
}
#ankle-theme-panel .swatch-preview img {
  width: 42px; height: 42px; object-fit: cover;
  border: 1px solid var(--line); cursor: pointer;
}
#ankle-theme-panel .swatch-preview img.selected { outline: 2px solid var(--link) }
#ankle-theme-panel .close-x {
  position: absolute; top: 8px; right: 10px; cursor: pointer;
  background: transparent; border: 0; color: var(--muted); font-size: 14px;
}

/* Palette editor */
#ankle-theme-panel .palette-editor {
  display: flex; flex-direction: column; gap: 4px; margin-top: 4px;
}
#ankle-theme-panel .palette-row {
  display: grid; grid-template-columns: 72px 32px 1fr 22px; gap: 6px;
  align-items: center; font-family: var(--mono-font); font-size: 10px;
}
#ankle-theme-panel .palette-row label {
  color: var(--fg); font-weight: bold; font-size: 10px;
  letter-spacing: .04em; text-transform: uppercase;
}
#ankle-theme-panel .palette-row input[type="color"] {
  width: 32px; height: 22px; padding: 0; cursor: pointer;
  border: 1px solid var(--line); background: var(--panel);
  border-radius: var(--radius);
}
#ankle-theme-panel .palette-row input[type="text"] {
  width: 100%; padding: 2px 4px; font-family: var(--mono-font); font-size: 10px;
  border: 1px solid var(--line); background: var(--panel); color: var(--fg);
  border-radius: var(--radius);
}
#ankle-theme-panel .palette-clear {
  padding: 1px 4px !important; font-size: 11px !important;
  line-height: 1 !important; min-width: 22px;
}
#ankle-theme-panel .palette-group-label {
  font-family: var(--mono-font); font-size: 9px; color: var(--muted);
  letter-spacing: .12em; text-transform: uppercase;
  margin: 6px 0 2px; padding-bottom: 1px;
  border-bottom: 1px dotted var(--line);
}
#ankle-theme-panel .palette-group-label:first-child { margin-top: 0; }
#ankle-theme-panel .live-sw {
  width: 14px; height: 14px; display: inline-block;
  border: 1px solid var(--line); flex-shrink: 0;
}
#ankle-theme-panel button.btn.active {
  background: var(--highlight) !important;
  border-style: inset !important;
  font-weight: bold !important;
}


/* ── Stable established theme catalog ───────────────────────────── */
body.theme-graphpaper {
  --bg:#f6f4ea;--fg:#102030;--panel:#fdfbf2;--muted:#6b7a88;--line:#2a3a50;
  --link:#1a4dff;--visited:#6b35d4;--highlight:#fff4a6;--media-well:#1a1a1a;
  --body-font:"Times New Roman",Times,serif;--mono-font:"Courier New",Courier,monospace;
  --radius:0;--shadow:none;
  --grid-url:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32'><path d='M32 0H0V32' fill='none' stroke='%232a3a50' stroke-width='0.4'/></svg>");
  --grid-opacity:.35;--grid-blend:multiply;
}
body.theme-phosphor {
  --bg:#0a0f08;--fg:#7fff6a;--panel:#0f170c;--muted:#4a8c3a;--line:#1f3316;
  --link:#c7ff00;--visited:#a8ff7e;--highlight:rgba(127,255,106,.18);--media-well:#000;
  --body-font:"Fragment Mono","Courier New",monospace;--mono-font:"Fragment Mono","Courier New",monospace;
  --radius:0;--shadow:0 0 40px rgba(127,255,106,.15);
  --grid-url:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='4' height='4'><path d='M0 2H4' stroke='%23000' stroke-width='1' opacity='0.35'/></svg>");
  --grid-opacity:1;--grid-blend:normal;
}
body.theme-paper {
  --bg:#f8f3e6;--fg:#1a1a1a;--panel:#fffbf0;--muted:#6a6458;--line:#1a1a1a;
  --link:#a42a00;--visited:#742000;--highlight:#fff2a8;--media-well:#1a1a1a;
  --body-font:"Times New Roman",Times,serif;--mono-font:"Courier New",Courier,monospace;
  --radius:0;--shadow:0 1px 2px rgba(0,0,0,.1);
}
body:is(.theme-ankle99-next, .theme-ankle96-next) {
  --bg:#9896b4;--fg:#0a0a12;--panel:#d8d6cc;--panel2:#c4c2b8;--muted:#4a4850;
  --line:#1a1a2a;--link:#2a3f77;--visited:#5a2878;--highlight:#f0e070;--media-well:#1a1a2a;
  --title-bar:#555063;--title-fg:#fff;--body-font:"Times New Roman",Times,serif;
  --mono-font:"Courier New",Courier,monospace;--radius:0;--shadow:3px 3px 0 rgba(0,0,0,.35);
  --surface-chrome-bg:#d8d6cc;--surface-chrome-fg:#0a0a12;--surface-panel-bg:#d8d6cc;
  --surface-input-bg:#ffffff;--surface-input-fg:#0a0a12;--surface-border:1px solid #1a1a2a;
  --surface-border-outset:1px solid;
  --raise:inset 1px 1px 0 #f4f2e8, inset -1px -1px 0 #5a5660, inset 2px 2px 0 #e8e6dc, inset -2px -2px 0 #8a8690;
  --sink:inset 1px 1px 0 #5a5660, inset -1px -1px 0 #f4f2e8, inset 2px 2px 0 #8a8690, inset -2px -2px 0 #e8e6dc;
}

/* ── All Panels & Windows in Ankle96-Next: Always on Theme & 3D Beveled ── */
html body:is(.theme-ankle99-next, .theme-ankle96-next) :is(
  .world-entry,
  #claim-world,
  .hero,
  #homeHero,
  .section,
  .section-panel,
  .front-feed-panel,
  .activity,
  .coin-slate,
  .panel:not(.aos-panel),
  .main-panel,
  .content-panel,
  [class*="-panel"]:not(.aos-panel):not(#ankle-theme-panel),
  .card,
  [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]),
  .surface-brief,
  .starter-inventory-note,
  details.surface-more,
  .canvas-scale-bar,
  .builder-menubar,
  .builder-toolbox,
  #builderProperties,
  #aiBar,
  #builderReferenceStrip,
  .ed-fields-panel,
  .add-surf-panel,
  .editor-source-panel__bar,
  #surfaceDesk section,
  .surface-preview-modal,
  .world-stream,
  .world-arcade,
  .world-continuity,
  #pHero,
  .world-hero,
  .hero-is-world,
  .stat-row,
  #statRow,
  .wgrid .panel,
  .shell .panel,
  .shell .section,
  .a96 .panel,
  .a96 .section,
  [data-sec]
) {
  background: var(--panel, #d8d6cc) !important;
  color: var(--fg, #0a0a12) !important;
  border: 1px solid var(--line, #1a1a2a) !important;
  box-shadow: inset 1px 1px 0 #f4f2e8, inset -1px -1px 0 #5a5660, 3px 3px 0 rgba(0,0,0,0.35) !important;
  border-radius: 0 !important;
}

/* ── Sub-panels & Nested Cards in Ankle96-Next ── */
html body:is(.theme-ankle99-next, .theme-ankle96-next) :is(
  .active-world-card,
  .front-post-card,
  .world-card,
  .market-card,
  .agent-chip,
  .disc-card,
  .caps-card,
  .surface-library-card,
  .add-surf-card,
  .activity-side,
  .activity-feed,
  .hero-doors
) {
  background: var(--panel2, #c4c2b8) !important;
  color: var(--fg, #0a0a12) !important;
  border: 1px solid var(--line, #1a1a2a) !important;
  box-shadow: inset 1px 1px 0 #ffffff, inset -1px -1px 0 #8a8690, 2px 2px 0 rgba(0,0,0,0.25) !important;
  border-radius: 0 !important;
}

/* ── Inputs inside Ankle96-Next Panels ── */
html body:is(.theme-ankle99-next, .theme-ankle96-next) :is(
  .world-entry input,
  #claim-world input,
  #ankleWorldInput,
  .section input,
  .panel input,
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  textarea,
  select
) {
  background: #ffffff !important;
  color: var(--fg, #0a0a12) !important;
  -webkit-text-fill-color: var(--fg, #0a0a12) !important;
  border: 1px solid !important;
  border-color: #5a5660 #f4f2e8 #f4f2e8 #5a5660 !important;
  box-shadow: inset 1px 1px 2px rgba(0,0,0,0.2) !important;
  border-radius: 0 !important;
}

/* ── All Buttons, Chips & Interactive Controls in Ankle96-Next: Always Beveled ── */
html body:is(.theme-ankle99-next, .theme-ankle96-next) :is(
  .world-entry button,
  #claim-world button,
  .world-entry button[type="submit"],
  .hero-collapse-control,
  .activity-side .cta,
  .coin-slate .btn,
  .section button,
  .panel button,
  button:not(.theme-opt):not(.help):not(.close-x),
  .btn,
  .chip,
  .pill,
  .badge,
  .add-tab,
  .add-surf-filter-btn,
  .surf-use-button,
  .pager-pill,
  .scale-btn,
  .btn-preset,
  .ed-fields-panel__wide-btn,
  .ed-fields-panel__toggle,
  .builder-menubar summary,
  .builder-menubar details > summary,
  .canvas-scale-bar button,
  .canvas-scale-bar .btn-preset,
  #sec-editor .builder-menubar button,
  #sec-editor .builder-tool-grid button,
  #sec-editor #builderProperties button,
  #sec-editor #aiBar button,
  #sec-editor .editor-primary-actions button,
  #sec-editor .editor-primary-actions a,
  [data-ankle96-role="chip"],
  [data-ankle96-role="button"]
) {
  background: linear-gradient(180deg, #e8e6dc, #c4c2b8) !important;
  color: var(--fg, #0a0a12) !important;
  -webkit-text-fill-color: var(--fg, #0a0a12) !important;
  border: 1px solid !important;
  border-color: #f4f2e8 #5a5660 #5a5660 #f4f2e8 !important;
  box-shadow: inset 1px 1px 0 #ffffff, inset -1px -1px 0 #8a8690 !important;
  border-radius: 0 !important;
  font-family: var(--mono-font, "Courier New", Courier, monospace) !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

html body:is(.theme-ankle99-next, .theme-ankle96-next) :is(
  .world-entry button,
  #claim-world button,
  .world-entry button[type="submit"],
  .hero-collapse-control,
  .activity-side .cta,
  .coin-slate .btn,
  .section button,
  .panel button,
  button:not(.theme-opt):not(.help):not(.close-x),
  .btn,
  .chip,
  .pill,
  .badge,
  .add-tab,
  .add-surf-filter-btn,
  .surf-use-button,
  .pager-pill,
  .scale-btn,
  .btn-preset,
  .ed-fields-panel__wide-btn,
  .ed-fields-panel__toggle,
  .builder-menubar summary,
  .builder-menubar details > summary,
  .canvas-scale-bar button,
  .canvas-scale-bar .btn-preset,
  #sec-editor .builder-menubar button,
  #sec-editor .builder-tool-grid button,
  #sec-editor #builderProperties button,
  #sec-editor #aiBar button,
  #sec-editor .editor-primary-actions button,
  #sec-editor .editor-primary-actions a,
  [data-ankle96-role="chip"],
  [data-ankle96-role="button"]
):hover:not(:active):not(.active):not([aria-pressed="true"]) {
  background: linear-gradient(180deg, #f2f0e6, #ceccc2) !important;
  border-color: #ffffff #4a4650 #4a4650 #ffffff !important;
  color: var(--fg, #0a0a12) !important;
  -webkit-text-fill-color: var(--fg, #0a0a12) !important;
}

html body:is(.theme-ankle99-next, .theme-ankle96-next) :is(
  .world-entry button,
  #claim-world button,
  .world-entry button[type="submit"],
  .hero-collapse-control,
  .activity-side .cta,
  .coin-slate .btn,
  .section button,
  .panel button,
  button:not(.theme-opt):not(.help):not(.close-x),
  .btn,
  .chip,
  .pill,
  .badge,
  .add-tab,
  .add-surf-filter-btn,
  .surf-use-button,
  .pager-pill,
  .scale-btn,
  .btn-preset,
  .ed-fields-panel__wide-btn,
  .ed-fields-panel__toggle,
  .builder-menubar summary,
  .builder-menubar details > summary,
  .canvas-scale-bar button,
  .canvas-scale-bar .btn-preset,
  #sec-editor .builder-menubar button,
  #sec-editor .builder-tool-grid button,
  #sec-editor #builderProperties button,
  #sec-editor #aiBar button,
  #sec-editor .editor-primary-actions button,
  #sec-editor .editor-primary-actions a,
  [data-ankle96-role="chip"],
  [data-ankle96-role="button"]
):is(:active, .active, [aria-pressed="true"], [data-active="true"]),
html body:is(.theme-ankle99-next, .theme-ankle96-next) .builder-menubar details[open] > summary {
  background: linear-gradient(180deg, #b8b6ac, #c4c2b8) !important;
  border: 1px solid !important;
  border-color: #5a5660 #f4f2e8 #f4f2e8 #5a5660 !important;
  box-shadow: inset 1px 1px 2px rgba(0,0,0,0.35) !important;
  color: var(--fg, #0a0a12) !important;
  -webkit-text-fill-color: var(--fg, #0a0a12) !important;
}

/* ── Universal Classic Ankle96 / Silver Panels & Bevels ── */
body:is(.theme-ankle96, .theme-ankle96-silver, .theme-ankle-silver, :not([class*="theme-"])) :is(
  .world-entry,
  #claim-world,
  .hero,
  #homeHero,
  .activity,
  .coin-slate,
  .section-panel,
  .front-feed-panel,
  .surface-brief,
  details.surface-more,
  .panel,
  [class*="-panel"]
) {
  background: var(--panel, #c0c0c0) !important;
  color: var(--fg, #000) !important;
  border: 2px outset #ffffff !important;
  border-color: #ffffff #808080 #808080 #ffffff !important;
  box-shadow: inset 1px 1px 0 #dfdfdf, inset -1px -1px 0 #404040, 2px 2px 0 rgba(0,0,0,0.2) !important;
  border-radius: 0 !important;
}

body:is(.theme-ankle96, .theme-ankle96-silver, .theme-ankle-silver, :not([class*="theme-"])) :is(
  .world-entry button,
  #claim-world button,
  .world-entry button[type="submit"],
  .hero-collapse-control,
  .activity-side .cta,
  .coin-slate .btn
) {
  background: var(--surface, #c0c0c0) !important;
  color: #000000 !important;
  border: 2px outset #ffffff !important;
  border-color: #ffffff #808080 #808080 #ffffff !important;
  box-shadow: inset 1px 1px 0 #dfdfdf, inset -1px -1px 0 #0a0a0a !important;
  border-radius: 0 !important;
  cursor: pointer !important;
}

body:is(.theme-ankle96, .theme-ankle96-silver, .theme-ankle-silver, :not([class*="theme-"])) :is(
  .world-entry button,
  #claim-world button,
  .world-entry button[type="submit"],
  .hero-collapse-control,
  .activity-side .cta,
  .coin-slate .btn
):active {
  border-color: #808080 #ffffff #ffffff #808080 !important;
  box-shadow: inset 1px 1px 2px rgba(0,0,0,0.35) !important;
}

/* ── Paper Theme Panels & Bevels ── */
body.theme-paper :is(
  .world-entry,
  #claim-world,
  .hero,
  #homeHero,
  .activity,
  .coin-slate,
  .section-panel,
  .front-feed-panel,
  .panel,
  .card,
  [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]),
  [class*="-panel"]
) {
  background: var(--panel, #fffbf0) !important;
  color: var(--fg, #1a1a1a) !important;
  border: 1px solid var(--line, #1a1a1a) !important;
  box-shadow: inset 1px 1px 0 #fffdf5, inset -1px -1px 0 #b8a98a, 2px 2px 0 rgba(0,0,0,0.12) !important;
  border-radius: 0 !important;
}
body.theme-paper :is(.world-entry button, #claim-world button, .world-entry button[type="submit"]) {
  background: #fffdf5 !important;
  color: #1a1a1a !important;
  border: 1px solid #1a1a1a !important;
  box-shadow: inset 1px 1px 0 #ffffff, inset -1px -1px 0 #cabfa0 !important;
  border-radius: 0 !important;
}

/* ── Phosphor Theme Panels & Bevels ── */
body.theme-phosphor :is(
  .world-entry,
  #claim-world,
  .hero,
  #homeHero,
  .activity,
  .coin-slate,
  .section-panel,
  .front-feed-panel,
  .panel,
  .card,
  [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]),
  [class*="-panel"]
) {
  background: var(--panel, #0f170c) !important;
  color: var(--fg, #7fff6a) !important;
  border: 1px solid var(--line, #1f3316) !important;
  box-shadow: inset 1px 1px 0 #2c5224, inset -1px -1px 0 #000, 0 0 15px rgba(127,255,106,0.12) !important;
  border-radius: 0 !important;
}
body.theme-phosphor :is(.world-entry button, #claim-world button, .world-entry button[type="submit"]) {
  background: #152410 !important;
  color: #7fff6a !important;
  border: 1px solid #2c5224 !important;
  box-shadow: inset 1px 1px 0 #4a8c3a, inset -1px -1px 0 #050a04 !important;
  border-radius: 0 !important;
}

/* ── Graphpaper Theme Panels & Bevels ── */
body.theme-graphpaper :is(
  .world-entry,
  #claim-world,
  .hero,
  #homeHero,
  .activity,
  .coin-slate,
  .section-panel,
  .front-feed-panel,
  .panel,
  .card,
  [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]),
  [class*="-panel"]
) {
  background: var(--panel, #ffffff) !important;
  color: var(--fg, #0a1020) !important;
  border: 1px solid var(--line, #2a3a50) !important;
  box-shadow: inset 1px 1px 0 #ffffff, inset -1px -1px 0 #8a93a8, 2px 2px 0 rgba(0,0,0,0.1) !important;
  border-radius: 0 !important;
}
body.theme-graphpaper :is(.world-entry button, #claim-world button, .world-entry button[type="submit"]) {
  background: #f0f4f8 !important;
  color: #0a1020 !important;
  border: 1px solid #2a3a50 !important;
  box-shadow: inset 1px 1px 0 #ffffff, inset -1px -1px 0 #b9c0d0 !important;
  border-radius: 0 !important;
}

body:is(.theme-ankle99-next, .theme-ankle96-next) :is(.nav,#nav-bar) {background:var(--title-bar)!important;color:var(--title-fg)!important;border-bottom:2px solid var(--line)!important}
body:is(.theme-ankle99-next, .theme-ankle96-next) :is(.nav,#nav-bar) a {color:#e0e0f0!important}

/* Established 2007 surfaces remain CSS-only reconstructions. */
body.theme-arcade-2007,body.theme-miniclip{--bg:#003366;--fg:#111;--panel:#fff;--muted:#555;--line:#3399ff;--link:#003366;--visited:#551a8b;--highlight:#ff9900;--media-well:#eef6ff;--body-font:Verdana,Arial,Helvetica,sans-serif;--mono-font:"Courier New",monospace;--radius:6px;--shadow:0 3px 12px rgba(0,51,102,0.35)}
body.theme-portal-2007{--bg:#191919;--fg:#f2f2f2;--panel:#333;--muted:#aaa;--line:#f90;--link:#ffb000;--visited:#d98c50;--highlight:#f90;--media-well:#111;--body-font:Arial,Helvetica,sans-serif;--radius:2px;--shadow:0 2px 0 #000}
body.theme-video-2007{--bg:#fff;--fg:#111;--panel:#fff;--muted:#666;--line:#ccc;--link:#03c;--visited:#518;--highlight:#fff3a6;--media-well:#eee;--body-font:Arial,Helvetica,sans-serif;--radius:3px;--shadow:none}
body.theme-news-2007{--bg:#e9f0f7;--fg:#222;--panel:#fff;--muted:#777;--line:#b7c8d9;--link:#0560bd;--visited:#654b8b;--highlight:#fff2a8;--media-well:#f2f6fa;--body-font:Arial,Helvetica,sans-serif;--radius:6px;--shadow:none}
body.theme-profile-2007{--bg:#fff;--fg:#111;--panel:#f2f5fa;--muted:#666;--line:#6698cb;--link:#036;--visited:#636;--highlight:#fc6;--media-well:#e5edf5;--body-font:Arial,Helvetica,sans-serif;--radius:0;--shadow:none}
body.theme-art-2007{--bg:#7f8d86;--fg:#26362f;--panel:#e9f2ee;--muted:#66756e;--line:#4b6157;--link:#2d7180;--visited:#53685f;--highlight:#d7e3dc;--media-well:#dce7e2;--body-font:Verdana,Arial,sans-serif;--radius:4px;--shadow:none}
body.theme-fun-2007{--bg:#e8f7ff;--fg:#222;--panel:#fff;--muted:#666;--line:#77c5ef;--link:#0645ad;--visited:#639;--highlight:#ffe04c;--media-well:#eef9ff;--body-font:Verdana,Arial,sans-serif;--radius:8px;--shadow:0 1px 2px rgba(0,0,0,.18)}
body.theme-campus-2007{--bg:#fff;--fg:#111;--panel:#fff;--muted:#666;--line:#3b5998;--link:#3b5998;--visited:#5a4a7d;--highlight:#d8dfea;--media-well:#f7f7f7;--body-font:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif;--mono-font:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif;--radius:0;--shadow:none}
body.theme-linkboard-2007{--bg:#fff;--fg:#222;--panel:#fff;--muted:#888;--line:#c6d6e5;--link:#00f;--visited:#518;--highlight:#cee3f8;--media-well:#eff7ff;--body-font:Arial,Helvetica,sans-serif;--radius:0;--shadow:none}
body:is(.theme-arcade-2007,.theme-miniclip,.theme-portal-2007,.theme-video-2007,.theme-news-2007,.theme-profile-2007,.theme-art-2007,.theme-fun-2007,.theme-campus-2007,.theme-linkboard-2007) :is(.card,.system-card,.active-world-card,.world-card,.post-card,.stat-card,.agent-card,.template-card,.market-card,.nav-card,.dir-card,.world-entry,#claim-world,.hero,#homeHero,.section,.activity,.coin-slate,.panel,[class*="-panel"]){
  background:var(--panel)!important;color:var(--fg)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow)!important
}
body:is(.theme-arcade-2007,.theme-miniclip) :is(.section-title,.card-title,.window-title){background:#ff9900!important;color:#fff!important;border-bottom:3px solid #cc6600!important;font-weight:900!important;font-family:Verdana,Arial,sans-serif!important}
body.theme-news-2007 :is(.section-title,.card-title,.window-title){background:#28639b!important;color:#fff!important;border-bottom:4px solid #a8d16f!important}
body.theme-video-2007 :is(.section-title,.card-title,.window-title){color:#03c!important;background:linear-gradient(#fff,#d8e4fa)!important}
body:is(.theme-profile-2007,.theme-campus-2007) :is(.section-title,.card-title,.window-title){background:#3b5998!important;color:#fff!important}
body.theme-art-2007 :is(.section-title,.card-title,.window-title){background:linear-gradient(#65766e,#3f554c)!important;color:#fff!important}
body.theme-fun-2007 :is(.section-title,.card-title,.window-title){color:#0645ad!important;background:#ffe04c!important}
body.theme-linkboard-2007 :is(.section-title,.card-title,.window-title){color:#111!important;background:#cee3f8!important}
body.theme-portal-2007 :is(.section-title,.card-title,.window-title,.hero-kicker){color:#111!important;background:#f90!important;border:1px solid #000!important}

/* ── Apple 2011 (OS X Lion / iOS 5 / Brushed Graphite & Aqua Gloss) ──────── */
body.theme-apple-2011 {
  --bg: #f0f0f2;
  --fg: #1d1d1f;
  --panel: #ffffff;
  --muted: #6e6e73;
  --faint: #86868b;
  --line: #d2d2d7;
  --link: #0070c9;
  --visited: #5856d6;
  --highlight: #e8e8ed;
  --media-well: #e5e5ea;
  --body-font: "Lucida Grande", "Lucida Sans Unicode", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --mono-font: Menlo, Monaco, "Courier New", monospace;
  --radius: 6px;
  --shadow: 0 2px 8px rgba(0,0,0,0.08);
  background: #f0f0f2 !important;
  color: #1d1d1f !important;
  font-family: var(--body-font) !important;
}
body.theme-apple-2011 a:not([role="button"]):not(.btn) {
  color: #0070c9 !important;
  text-decoration: none !important;
}
body.theme-apple-2011 a:not([role="button"]):not(.btn):hover {
  text-decoration: underline !important;
  color: #004488 !important;
}
body.theme-apple-2011 :is(.card, .panel, .section, .active-world-card, .system-card, .post-card, .stat-card, .agent-card, .template-card, .market-card) {
  background: #ffffff !important;
  border: 1px solid #d2d2d7 !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}
body.theme-apple-2011 :is(button, .btn) {
  background: linear-gradient(180deg, #ffffff 0%, #f1f1f1 50%, #e1e1e1 51%, #f6f6f6 100%) !important;
  border: 1px solid #b5b5b5 !important;
  border-radius: 4px !important;
  color: #333333 !important;
  font-family: inherit !important;
  text-shadow: 0 1px 0 #ffffff !important;
  font-size: 11px !important;
  padding: 3px 10px !important;
}
body.theme-apple-2011 :is(button, .btn):hover {
  background: linear-gradient(180deg, #fefefe 0%, #e8e8e8 50%, #d8d8d8 51%, #ececec 100%) !important;
  border-color: #999999 !important;
}
body.theme-apple-2011 :is(button.primary, .btn.primary, button[type="submit"]) {
  background: linear-gradient(180deg, #4aa4f2 0%, #298be7 50%, #1773d4 51%, #2b84e5 100%) !important;
  border-color: #12559e !important;
  color: #ffffff !important;
  text-shadow: 0 -1px 0 rgba(0,0,0,0.3) !important;
}

/* Facebook 2007: clean-room reconstruction of the 2006-07 profile era.
   The regular UI face uses the local Lucida Grande installation. Bold labels
   use the local Tahoma bold cut. The supplied ANKLE
   artwork carries the period wordmark without redistributing Klavika or the
   proprietary interface fonts. */
@font-face{
  font-family:"Ankle Facebook UI";
  src:local("Lucida Grande"),local("Tahoma"),local("Verdana");
  font-style:normal;font-weight:400;font-display:swap;
}
@font-face{
  font-family:"Ankle Facebook UI";
  src:local("Tahoma Bold"),local("Lucida Grande Bold"),local("Verdana Bold");
  font-style:normal;font-weight:700;font-display:swap;
}
body.theme-campus-2007{
  --campus-2007-width:960px;
  --campus-2007-font:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif;
  --campus-2007-blue:#3b5998;
  --campus-2007-blue-dark:#1c2a47;
  --campus-2007-bar:#d8dfea;
  --campus-2007-soft:#edeff4;
  --campus-2007-line:#b7c5d9;
  --body-font:var(--campus-2007-font);
  --mono-font:var(--campus-2007-font);
  --serif:var(--campus-2007-font);
  --mono:var(--campus-2007-font);
  background:#fff!important;
  color:#111!important;
  font:11px/1.35 var(--campus-2007-font)!important;
}
body.theme-campus-2007 a:not([role="button"]):not(.btn):not(.hero-collapse-control){color:#3b5998!important;text-decoration:none!important}
body.theme-campus-2007 a:not([role="button"]):not(.btn):not(.hero-collapse-control):hover{text-decoration:underline!important}
body.theme-campus-2007 a:visited{color:#3b5998}
body.theme-campus-2007 :is(button,input,select,textarea,summary,label):not(#ankle-theme-panel *),
body.theme-campus-2007 :is(.section-title,.section-meta,.section-link,.hero-doors,.hero-kicker,.world-entry,.world-entry *,.surface-actions,.surface-actions *){
  font-family:var(--campus-2007-font)!important;
}
body.theme-campus-2007 :is(.section-title,.name,.ttl,.hero-title){color:var(--campus-2007-blue-dark)!important}
body.theme-campus-2007 :is(.word,.fp-user){color:var(--campus-2007-blue)!important}
body.theme-campus-2007 :is(.section-meta,.meta,.muted,.ago,.fp-ago,.aw-host){color:#777!important}

/* The public front door becomes the centered, rail-led 2007 composition. */
body.theme-campus-2007 .page-layout{
  width:min(var(--campus-2007-width),calc(100% - 24px))!important;
  max-width:var(--campus-2007-width)!important;
  margin:0 auto!important;
  padding:15px 0 28px!important;
}
body.theme-campus-2007 .page-layout>.shell{width:100%!important;max-width:none!important;margin:0!important;padding:0 0 56px!important}
body.theme-campus-2007 .ankle-topbar{display:none!important}
body.theme-campus-2007 .hero{
  min-height:88px!important;
  display:block!important;
  padding:13px 44px 12px 14px!important;
  margin:0 0 10px!important;
  background:var(--campus-2007-blue)!important;
  border:1px solid var(--campus-2007-blue-dark)!important;
  box-shadow:none!important;
}
body.theme-campus-2007 .hero-ico,body.theme-campus-2007 .hero-title,body.theme-campus-2007 .status2007-hero-wordmark{display:none!important}
body.theme-campus-2007 .campus2007-hero-wordmark{
  display:block!important;width:154px!important;max-width:46vw!important;height:auto!important;
  margin:-7px 0 1px!important;border:0!important;background:transparent!important;filter:invert(1);
}
body.theme-campus-2007 .hero-sub{margin:0 0 6px!important;color:#d8dfea!important;font:9px/1.2 var(--campus-2007-font)!important;text-transform:uppercase}
body.theme-campus-2007 .hero-tag{max-width:650px!important;color:#fff!important;font:13px/1.4 var(--campus-2007-font)!important}
body.theme-campus-2007 .world-thesis{
  max-width:760px!important;margin:10px 0 0!important;padding:7px 9px!important;
  background:#fff!important;border:1px solid var(--campus-2007-line)!important;color:#111!important;
  font:11px/1.45 var(--campus-2007-font)!important;
}
body.theme-campus-2007 .world-thesis b{color:var(--campus-2007-blue-dark)!important;font-size:13px!important}
body.theme-campus-2007 .hero-collapse-control{
  width:21px!important;height:20px!important;padding:0!important;background:#fff!important;color:var(--campus-2007-blue)!important;
  border:1px solid var(--campus-2007-line)!important;font:bold 13px/1 var(--campus-2007-font)!important;
}
body.theme-campus-2007 .hero.is-collapsed{min-height:48px!important;padding:8px 42px 8px 12px!important}
body.theme-campus-2007 .hero.is-collapsed .hero-sub{display:none!important}
body.theme-campus-2007 .hero.is-collapsed .campus2007-hero-wordmark{width:128px!important;margin:-5px 0!important}
body.theme-campus-2007 .world-entry{
  margin:0 0 10px!important;padding:8px 10px!important;background:var(--campus-2007-soft)!important;
  border:1px solid var(--campus-2007-line)!important;box-shadow:none!important;
}
body.theme-campus-2007 .world-entry :is(input,textarea,select){background:#fff!important;border:1px solid #8496ba!important;border-radius:0!important;box-shadow:none!important;color:#111!important}
body.theme-campus-2007 .world-entry :is(button,.btn){background:var(--campus-2007-blue)!important;border:1px solid var(--campus-2007-blue-dark)!important;border-radius:0!important;box-shadow:none!important;color:#fff!important;font-weight:bold!important}
body.theme-campus-2007 :is(.surface-brief,.cph-empty,.starter-inventory-note,.surface-more,.system-card,.nav-card,.dir-card){background:var(--campus-2007-soft)!important;border-color:var(--campus-2007-line)!important;border-radius:0!important;box-shadow:none!important}

body.theme-campus-2007 .section{margin:10px 0!important;padding:0!important;background:#fff!important;border:1px solid var(--campus-2007-line)!important;box-shadow:none!important}
body.theme-campus-2007 .section-head{
  min-height:25px!important;align-items:center!important;margin:0!important;padding:3px 7px!important;
  background:var(--campus-2007-bar)!important;border:0!important;border-bottom:1px solid var(--campus-2007-line)!important;
}
body.theme-campus-2007 .section-title{color:var(--campus-2007-blue-dark)!important;font:bold 12px/1.25 var(--campus-2007-font)!important;letter-spacing:0!important;text-transform:none!important}
body.theme-campus-2007 .section-title::first-letter{font-size:inherit!important}
body.theme-campus-2007 :is(#active-worlds-section,.front-feed-panel) .section-title{
  padding:0!important;background:transparent!important;color:var(--campus-2007-blue-dark)!important;
  border:0!important;box-shadow:none!important;
}
body.theme-campus-2007 .section-meta,body.theme-campus-2007 .section-link{font:9px/1.3 var(--campus-2007-font)!important}
body.theme-campus-2007 .section-explainer{margin:0!important;padding:7px 8px!important;color:#555!important;font:11px/1.4 var(--campus-2007-font)!important}
body.theme-campus-2007 :is(main,[role="main"],.main-panel,.content-panel,.workspace-main){color:#111!important}
body.theme-campus-2007 :is(.panel,.main-panel,.content-panel,.system-card,.nav-card,.dir-card){background:#fff!important;border:1px solid var(--campus-2007-line)!important;border-radius:0!important;box-shadow:none!important}
body.theme-campus-2007 :is(.panel,.main-panel,.content-panel,.system-card,.nav-card,.dir-card)>:is(header,.panel-head,.card-head,.section-head){background:var(--campus-2007-bar)!important;border-bottom:1px solid var(--campus-2007-line)!important;color:var(--campus-2007-blue-dark)!important}

/* The overview uses the classic content column + application rail. */
body.theme-campus-2007 .activity{display:grid!important;grid-template-columns:minmax(0,1fr) 205px!important;gap:0!important;background:#fff!important;border:0!important;box-shadow:none!important}
body.theme-campus-2007 .activity-feed{max-height:240px!important;padding:5px 8px!important;background:#fff!important;border-right:1px solid var(--campus-2007-line)!important;font:11px/1.35 var(--campus-2007-font)!important}
body.theme-campus-2007 .activity-row{grid-template-columns:32px minmax(0,1fr) 65px!important;gap:6px!important;align-items:start!important;padding:5px 0!important;border-bottom:1px solid #ddd!important}
body.theme-campus-2007 .activity-row .avatar{width:30px!important;height:30px!important;border:1px solid var(--campus-2007-line)!important}
body.theme-campus-2007 .activity-side{padding:7px!important;background:var(--campus-2007-soft)!important}
body.theme-campus-2007 .activity-side h4{margin:-7px -7px 6px!important;padding:4px 6px!important;background:var(--campus-2007-bar)!important;border-bottom:1px solid var(--campus-2007-line)!important;color:var(--campus-2007-blue-dark)!important;font:bold 11px/1.3 var(--campus-2007-font)!important;text-transform:none!important;letter-spacing:0!important}
body.theme-campus-2007 .activity-side .cta{background:#fff!important;border:1px solid var(--campus-2007-line)!important;color:var(--campus-2007-blue)!important;font:bold 10px/1.3 var(--campus-2007-font)!important}

/* Worlds read like compact identity/application modules. Feed remains one
   chronological mini-feed, matching the profile-era reference. */
body.theme-campus-2007 .active-worlds-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;padding:6px!important;background:#fff!important;border:0!important;container-type:inline-size}
body.theme-campus-2007 .active-world-card{
  min-height:78px!important;display:grid!important;grid-template-columns:minmax(140px,1fr) minmax(112px,145px)!important;
  grid-template-areas:"identity state" "identity pulse" "identity meta" "identity enter"!important;
  gap:1px 8px!important;padding:6px!important;background:#fff!important;border:0!important;border-bottom:1px solid #e2e6ee!important;border-right:1px solid #e2e6ee!important;box-shadow:none!important;
}
body.theme-campus-2007 .active-world-card .aw-identity{grid-area:identity;align-items:start!important}
body.theme-campus-2007 .active-world-card .aw-state{grid-area:state}.theme-campus-2007 .active-world-card .pulse{grid-area:pulse}.theme-campus-2007 .active-world-card .meta{grid-area:meta}.theme-campus-2007 .active-world-card .aw-enter{grid-area:enter}
body.theme-campus-2007 .active-world-card .aw-icon{width:48px!important;height:48px!important;border:1px solid var(--campus-2007-line)!important}
body.theme-campus-2007 .active-world-card .word{color:var(--campus-2007-blue)!important;font:bold 12px/1.2 var(--campus-2007-font)!important}
body.theme-campus-2007 .active-world-card :is(.aw-host,.aw-state,.pulse,.meta,.aw-enter){font-family:var(--campus-2007-font)!important;font-size:9px!important}
body.theme-campus-2007 .front-feed-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important;padding:6px 8px!important;background:#fff!important;border:0!important}
body.theme-campus-2007 .front-post-card{
  min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:"head" "body" "media" "foot"!important;
  padding:6px 0!important;background:#fff!important;border:0!important;border-bottom:1px solid #ddd!important;box-shadow:none!important;color:#111!important;font:11px/1.35 var(--campus-2007-font)!important;
}
body.theme-campus-2007 .front-post-card .fp-head{grid-area:head!important;display:flex!important;align-items:flex-start!important;gap:6px!important;padding:0!important;background:transparent!important;border:0!important}
body.theme-campus-2007 .front-post-card .fp-avatar{width:34px!important;height:34px!important;border:1px solid var(--campus-2007-line)!important}
body.theme-campus-2007 .front-post-card .fp-user{display:block!important;color:var(--campus-2007-blue)!important;font-size:11px!important;white-space:normal!important}
body.theme-campus-2007 .front-post-card .fp-ago{display:block!important;margin-left:auto!important;font-size:9px!important;white-space:normal!important}
body.theme-campus-2007 .front-post-card .fp-body{grid-area:body!important;padding:0!important;color:#111!important;font-size:11px!important}
body.theme-campus-2007 .front-post-card .fp-media{grid-area:media!important;width:auto!important;height:auto!important;max-width:360px!important;margin:4px 0 0!important;place-self:start!important;justify-content:flex-start!important;align-items:flex-start!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.theme-campus-2007 .front-post-card .fp-media :is(img,video){width:auto!important;max-width:100%!important;height:auto!important;max-height:230px!important;object-fit:contain!important;margin-left:0!important;margin-right:auto!important;border:0!important;box-shadow:none!important}
body.theme-campus-2007 .front-post-card .fp-foot{grid-area:foot!important;padding:4px 0 0!important;background:transparent!important;border:0!important;color:#777!important}

body.theme-campus-2007 #feedMain{background:#fff!important}
body.theme-campus-2007 #classicFeed{width:min(760px,calc(100% - 24px))!important;max-width:760px!important;margin:10px auto 28px!important;padding:0!important;background:#fff!important;border:1px solid var(--campus-2007-line)!important}
body.theme-campus-2007 #classicFeed .masonry{grid-template-columns:1fr!important;gap:0!important;background:#fff!important}
body.theme-campus-2007 #classicFeed .post-card{background:#fff!important;border:0!important;border-bottom:1px solid #ddd!important;border-radius:0!important;box-shadow:none!important}
body.theme-campus-2007 #classicFeed .post-card__header{padding:6px 8px!important}
body.theme-campus-2007 #classicFeed .post-card__body{padding:0 8px 5px!important;font-size:11px!important;line-height:1.35!important}
body.theme-campus-2007 #classicFeed .post-card__img-wrap{width:auto!important;max-width:520px!important;margin:0 8px 5px!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.theme-campus-2007 #classicFeed .post-card__img-wrap img{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:360px!important;object-fit:contain!important;border:0!important;box-shadow:none!important}
body.theme-campus-2007 #classicFeed .post-card__video{width:auto!important;max-width:520px!important;max-height:360px!important;margin:0 8px 5px!important;border:0!important;box-shadow:none!important}
body.theme-campus-2007 #classicFeed .post-card__actions{display:flex!important;justify-content:flex-start!important;gap:3px!important;padding:3px 8px!important;border-top:1px solid #eee!important}
body.theme-campus-2007 #classicFeed .post-card__action{width:auto!important;min-width:0!important;min-height:20px!important;padding:2px 5px!important;color:#3b5998!important;font:bold 10px/1.2 var(--campus-2007-font)!important}
body.theme-campus-2007 #classicFeed .post-card__action:first-child{display:inline-flex!important;align-items:center!important;gap:3px!important}
body.theme-campus-2007 #classicFeed .post-card__action:first-child svg{display:none!important}
body.theme-campus-2007 #classicFeed .post-card__action:first-child::before{content:"";order:0;width:13px;height:13px;flex:0 0 13px;background:url('/static/facebook2007-like.png') center/contain no-repeat}
body.theme-campus-2007 #classicFeed .post-card__action:first-child::after{content:"Like";order:1;white-space:nowrap}
body.theme-campus-2007 #classicFeed .post-card__action--hearted:first-child::after{content:"Liked"}
body.theme-campus-2007 #classicFeed .post-card__action:first-child>span{order:2}
body.theme-campus-2007 #classicFeed .post-card__comment-bar{padding:4px 8px!important;gap:5px!important}
body.theme-campus-2007 :is(.composer,.post-composer,.feed-composer){padding:7px!important;background:var(--campus-2007-soft)!important;border:1px solid var(--campus-2007-line)!important;border-radius:0!important;box-shadow:none!important}
body.theme-campus-2007 :is(.composer,.post-composer,.feed-composer) :is(input,textarea){background:#fff!important;border:1px solid #8496ba!important;border-radius:0!important;box-shadow:none!important;color:#111!important}
body.theme-campus-2007 :is(.tabs,.feed-tabs,.profile-tabs){display:flex!important;gap:2px!important;align-items:end!important;background:#fff!important;border-bottom:1px solid var(--campus-2007-line)!important}
body.theme-campus-2007 :is(.tabs,.feed-tabs,.profile-tabs)>:is(a,button,[role="tab"]){min-height:24px!important;padding:4px 8px!important;background:var(--campus-2007-soft)!important;border:1px solid var(--campus-2007-line)!important;border-bottom:0!important;border-radius:0!important;box-shadow:none!important;color:var(--campus-2007-blue)!important;font-weight:bold!important}
body.theme-campus-2007 :is(.tabs,.feed-tabs,.profile-tabs)>:is(a,button,[role="tab"]):is(.active,.on,[aria-selected="true"]){background:#fff!important;color:var(--campus-2007-blue-dark)!important}
body.theme-campus-2007 :is(.footer,.footer-links,.page-footer){padding:8px!important;background:#fff!important;border-top:1px solid var(--campus-2007-line)!important;color:#777!important;text-align:center!important}

/* Facebook 2007 (Campus 2007) World surfaces — eliminate grey bevels */
body.theme-campus-2007 :is(.world-stream,.world-arcade,.world-continuity,#pHero,.world-hero,.hero-is-world,.stat-row,#statRow,.wgrid .panel,.shell .panel,.shell .section,.a96 .panel,.a96 .section,[data-sec]){
  background: #fff !important;
  border: 1px solid var(--campus-2007-line, #b7c5d9) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #111 !important;
}
body.theme-campus-2007 :is(.world-stream-head,.world-arcade-head,.world-continuity-head,.section-head,.panel-head){
  background: var(--campus-2007-bar, #d8dfea) !important;
  border-bottom: 1px solid var(--campus-2007-line, #b7c5d9) !important;
  color: var(--campus-2007-blue-dark, #1c2a47) !important;
  font-family: var(--campus-2007-font) !important;
}
body.theme-campus-2007 :is(.world-stream-title,.world-arcade-title,.world-continuity-title,.section-title,.panel-title){
  color: var(--campus-2007-blue-dark, #1c2a47) !important;
  font-family: var(--campus-2007-font) !important;
  font-size: 13px !important;
  font-weight: bold !important;
}
body.theme-campus-2007 :is(.section-meta,.world-stream-sub,.muted){
  color: #555 !important;
  font-family: var(--campus-2007-font) !important;
}
body.theme-campus-2007 .world-build-door{
  background: var(--campus-2007-soft, #edeff4) !important;
  border: 1px solid var(--campus-2007-line, #b7c5d9) !important;
  color: #111 !important;
}
body.theme-campus-2007 :is(.world-build-door-title,.world-build-door-kicker){
  color: var(--campus-2007-blue-dark, #1c2a47) !important;
  font-family: var(--campus-2007-font) !important;
  font-weight: bold !important;
}
body.theme-campus-2007 .world-build-door-note{
  color: #555 !important;
  font-family: var(--campus-2007-font) !important;
}
body.theme-campus-2007 .world-build-door-cta,
body.theme-campus-2007 :is(#worldStreamBuild,#attachSiteBtn,.world-stream-controls .btn,.world-build-quick button,#threadSubmit,#wallPostBtn){
  background: var(--campus-2007-blue, #3b5998) !important;
  color: #fff !important;
  border: 1px solid var(--campus-2007-blue-dark, #1c2a47) !important;
  font-family: var(--campus-2007-font) !important;
  font-weight: bold !important;
}
body.theme-campus-2007 :is(.world-build-quick input,#threadInput,#wallText,input.txt,textarea.txt,.shell input:not([type="checkbox"]):not([type="radio"]),.shell textarea){
  background: #fff !important;
  color: #111 !important;
  border: 1px solid #8496ba !important;
  font-family: var(--campus-2007-font) !important;
  box-shadow: none !important;
}
body.theme-campus-2007 .world-stream-card{
  background: #fff !important;
  border: 1px solid var(--campus-2007-line, #b7c5d9) !important;
  color: #111 !important;
}
body.theme-campus-2007 :is(.worldsite-edit,.worldsite-hide,.worldsite-set-portal,.worldsite-set-front){
  background: var(--campus-2007-soft, #edeff4) !important;
  color: var(--campus-2007-blue, #3b5998) !important;
  border: 1px solid var(--campus-2007-line, #b7c5d9) !important;
}
body.theme-campus-2007 :is(.stat,.stat-row *){
  background: #fff !important;
  color: #111 !important;
}
body.theme-campus-2007 :is(.post,.thr){
  border-top: 1px solid #ddd !important;
  color: #111 !important;
  font-family: var(--campus-2007-font) !important;
}
body.theme-campus-2007 :is(.post .who,.thr a){
  color: var(--campus-2007-blue, #3b5998) !important;
  font-family: var(--campus-2007-font) !important;
  font-weight: bold !important;
}

/* Shared OS chrome: blue utility bar, white application rails, compact chat. */
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-topchips,#aos-left,#aos-right,#aos-bottom,#aos-hovercard){font-family:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important;font-size:11px!important;line-height:1.35!important;box-shadow:none!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips{--aos-world-chip-fg:#fff;background:#3b5998!important;color:#fff!important;border-color:#1c2a47!important}
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right){background:#fff!important;color:#111!important;border-color:#b7c5d9!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-bottom{background:#edeff4!important;color:#111!important;border-color:#b7c5d9!important}
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right) .aos-hd{min-height:24px!important;padding:4px 6px!important;background:#3b5998!important;color:#fff!important;border-bottom:1px solid #1c2a47!important;font:bold 11px/1.3 "Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important}
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right) .aos-sec{margin:7px 0 2px!important;padding:3px 5px!important;background:#d8dfea!important;color:#1c2a47!important;border:0!important;border-bottom:1px solid #b7c5d9!important;font:bold 10px/1.3 "Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important}
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right) .aos-link{padding:3px 5px!important;color:#3b5998!important;border:0!important;border-bottom:1px solid #eee!important;text-decoration:none!important}
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right) .aos-link:is(:hover,.active){background:#edeff4!important;color:#1c2a47!important}
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right) :is(.aos-friend,.aos-row){border-bottom:1px solid #ddd!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-name,
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-default-mark,
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-status-wordmark{display:none!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-symbol{width:86px!important;min-width:86px!important;padding:1px 7px 1px 3px!important;overflow:visible!important;background:transparent!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-campus-wordmark{display:block!important;width:76px!important;height:auto!important;max-height:26px!important;object-fit:contain!important;border:0!important;background:transparent!important;filter:invert(1)}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-chips-group>a:not(.aos-post){background:transparent!important;color:#fff!important;border-color:#627aad!important;text-transform:none!important;text-decoration:none!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-chips-group>a:not(.aos-post):is(:hover,.on){background:#1c2a47!important;color:#fff!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-chips-group :is(a,a:link,a:visited){color:#fff!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-world-chip-wrap{height:auto!important;margin:0 4px 0 0!important;align-items:stretch!important;background:transparent!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-world-chip{height:auto!important;min-width:0!important;padding:0 7px!important;gap:5px!important;background:transparent!important;color:#fff!important;border:0!important;font:bold 11px/1.2 "Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important;letter-spacing:0!important;text-transform:none!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-world-icon{width:18px!important;height:18px!important;flex-basis:18px!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;object-fit:contain!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-world-chip-x{height:auto!important;margin:0!important;padding:0 7px!important;background:#1c2a47!important;color:#fff!important;border:0!important;font:bold 9px/1 "Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important;text-transform:none!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-world-chip-x:is(:hover,:focus){background:#627aad!important;color:#fff!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-search{height:24px!important;margin:2px 6px!important;padding:0 5px!important;border:1px solid #1c2a47!important;background:#fff!important}
html[data-ankle-viewer-theme="campus-2007"] :is(#aos-topchips,#aos-left,#aos-right,#aos-bottom) :is(button,input,select,textarea){background:#fff!important;color:#111!important;border:1px solid #8496ba!important;border-radius:0!important;box-shadow:none!important;font-family:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-hovercard{width:230px!important;background:#fff!important;color:#111!important;border:1px solid #3b5998!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-hovercard .aos-hovercard-head{padding:6px!important;background:#d8dfea!important;border-bottom:1px solid #b7c5d9!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-hovercard .aos-hovercard-actions{padding:5px 6px!important;border-top:1px solid #b7c5d9!important}
html[data-ankle-viewer-theme="campus-2007"] #aos-hovercard .aos-hover-action{background:#edeff4!important;color:#3b5998!important;border:1px solid #b7c5d9!important;border-radius:0!important;box-shadow:none!important}

/* A Facebook World is a profile/content surface, not another blue toolbar.
   Keep the owner's wallpaper around it, but render the identity/operations
   window as the white 2007-era panel with blue reserved for structure. */
html[data-ankle-viewer-theme="campus-2007"] body.a96 #worldHero{
  --panel:#fff;--chip:#d8dfea;--fg:#111;--muted:#666;--line:#b7c5d9;--link:#3b5998;--highlight:#edeff4;
  background:#fff!important;color:#111!important;border:1px solid #3b5998!important;box-shadow:none!important;background-image:none!important;
}
html[data-ankle-viewer-theme="campus-2007"] body.a96 #worldHero :is(.founder-strip .agentrow,.founder-strip .agentchip){background:#fff!important;color:#111!important;border-color:#b7c5d9!important}
html[data-ankle-viewer-theme="campus-2007"] body.a96 #worldHero :is(.world-action-disclosure>summary,.world-founder-tools summary,.world-action-group .btn){background:#edeff4!important;color:#1c2a47!important;border:1px solid #b7c5d9!important;box-shadow:none!important;text-transform:none!important;font-family:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important}
html[data-ankle-viewer-theme="campus-2007"] body.a96 #worldHero :is(.world-action-disclosure>summary,.world-founder-tools summary,.world-action-group .btn):is(:hover,:focus){background:#d8dfea!important;color:#3b5998!important}

/* World controls belong to the Facebook surface, not to the generic gray
   window skin. Keep destructive meaning in copy, while every control uses
   the period blue/pale-blue visual language. */
html[data-ankle-viewer-theme="campus-2007"] body.a96 .shell :is(button,.btn,.world-action-disclosure>summary,.world-founder-tools summary){
  background:#edeff4!important;color:#3b5998!important;border:1px solid #b7c5d9!important;
  border-radius:0!important;box-shadow:none!important;text-shadow:none!important;
  font-family:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important;
}
html[data-ankle-viewer-theme="campus-2007"] body.a96 .shell :is(button,.btn,.world-action-disclosure>summary,.world-founder-tools summary):is(:hover,:focus-visible){background:#d8dfea!important;color:#1c2a47!important;border-color:#8496ba!important}
html[data-ankle-viewer-theme="campus-2007"] body.a96 .shell :is(button.primary,.btn.primary,button[type="submit"],[aria-pressed="true"]){background:#3b5998!important;color:#fff!important;border-color:#1c2a47!important}

/* Owner-selected transparent avatars and World sigils remain literal assets.
   Fallback initials keep their normal panel, but a real image never gains a
   white tile, outline, or halo from the Facebook composition. */
body.theme-campus-2007 :is(.active-world-card .aw-icon.has-loaded-image,.front-post-card .fp-avatar:has(img),.activity-row .avatar:has(img),.profile__avatar-lg:has(img),.profile__world-badge:has(img),.person-row__avatar:has(img),.post-card__avatar:has(img),.post-card__comment-avatar:has(img),.post-card__comment-avatar-link:has(img)){
  background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;
}
body.theme-campus-2007 :is(.active-world-card .aw-icon.has-loaded-image,.profile__world-badge:has(img)) img{object-fit:contain!important;background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important}
html[data-ankle-viewer-theme="campus-2007"] body.a96 :is(.hero-ico:has(img),.founder-strip .av:has(img)){
  background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;
}
html[data-ankle-viewer-theme="campus-2007"] body.a96 :is(.hero-ico,.founder-strip .av) img{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;object-fit:contain!important}

/* The red count sits inside the notification button. Its Facebook badge has
   no white keyline, and the button itself clips only the badge—not the sibling
   notification menu—so it cannot hang into the adjacent credit label. */
html[data-ankle-viewer-theme="campus-2007"] body #aos-topchips #aosNotifMenuBtn{position:relative!important;overflow:hidden!important}
html[data-ankle-viewer-theme="campus-2007"] body #aos-topchips #aosNotifMenuBtn .aos-notif-badge{
  right:4px!important;top:50%!important;transform:translateY(-50%)!important;
  min-width:14px!important;height:14px!important;padding:0 3px!important;
  background:#f03d25!important;color:#fff!important;border:0!important;outline:0!important;box-shadow:none!important;
}

/* Facebook Messages is a white/pale-blue communication surface. Black is
   ordinary copy only; selected, sent, primary, and unread states use the
   period blue/red grammar instead of generic terminal boxes. */
body.theme-campus-2007:has(.main#appMain) {
  --panel:#edeff4;--paper:#fff;--ink:#111;--dim:#666;--navy:#3b5998;--bad:#b94a48;
  background:#fff!important;color:#111!important;
  font-family:"Ankle Facebook UI","Lucida Grande",Tahoma,Verdana,Arial,sans-serif!important;
}
body.theme-campus-2007:has(.main#appMain) .titlebar{background:#3b5998!important;color:#fff!important;border-color:#1c2a47!important}
body.theme-campus-2007:has(.main#appMain) .titlebar a{color:#fff!important}
body.theme-campus-2007:has(.main#appMain) .titlebar a:hover{background:#1c2a47!important;color:#fff!important}
body.theme-campus-2007:has(.main#appMain) :is(.main,.side,.chat,.side-h,.chat-h,.tabs,.composer,.status,.compose,.gate-box){border-color:#b7c5d9!important}
body.theme-campus-2007:has(.main#appMain) .main{background:#fff!important}
body.theme-campus-2007:has(.main#appMain) :is(.side-h,.chat-h,.tabs,.composer,.status,.compose){background:#edeff4!important;color:#1c2a47!important}
body.theme-campus-2007:has(.main#appMain) .list{background:#fff!important}
body.theme-campus-2007:has(.main#appMain) .convo{background:#fff!important;border-color:#ddd!important}
body.theme-campus-2007:has(.main#appMain) .convo:hover{background:#edeff4!important}
body.theme-campus-2007:has(.main#appMain) .convo.active{background:#d8dfea!important;outline-color:#3b5998!important}
body.theme-campus-2007:has(.main#appMain) :is(.name,.chat-h .ttl,.side-h .ttl){color:#1c2a47!important}
body.theme-campus-2007:has(.main#appMain) .badge{background:#f03d25!important;color:#fff!important;border:0!important}
body.theme-campus-2007:has(.main#appMain) .chat-body{background:#f7f7f7!important}
body.theme-campus-2007:has(.main#appMain) .bubble{border-color:#b7c5d9!important;box-shadow:none!important}
body.theme-campus-2007:has(.main#appMain) .bubble.mine{background:#3b5998!important;color:#fff!important}
body.theme-campus-2007:has(.main#appMain) .bubble.theirs{background:#fff!important;color:#111!important}
body.theme-campus-2007:has(.main#appMain) .reaction{background:#edeff4!important;color:#3b5998!important;border-color:#b7c5d9!important}
body.theme-campus-2007:has(.main#appMain) .reaction:is(:hover,:focus){background:#d8dfea!important;outline-color:#3b5998!important}
body.theme-campus-2007:has(.main#appMain) .reaction.mine{background:#3b5998!important;color:#fff!important}
body.theme-campus-2007:has(.main#appMain) :is(.btn,.tab){background:#edeff4!important;color:#3b5998!important;border-color:#b7c5d9!important}
body.theme-campus-2007:has(.main#appMain) :is(.btn,.tab):is(:hover,:focus){background:#d8dfea!important;color:#1c2a47!important}
body.theme-campus-2007:has(.main#appMain) .tab.active{background:#fff!important;color:#1c2a47!important;border-bottom-color:#fff!important}
body.theme-campus-2007:has(.main#appMain) .btn.primary{background:#3b5998!important;color:#fff!important;border-color:#1c2a47!important}
body.theme-campus-2007:has(.main#appMain) :is(.composer textarea,.compose input){background:#fff!important;color:#111!important;border-color:#8496ba!important}
body.theme-campus-2007:has(.main#appMain) :is(.composer textarea,.compose input):focus{outline-color:#3b5998!important}
body.theme-campus-2007:has(.main#appMain) .rrow:hover{background:#d8dfea!important;color:#1c2a47!important}
body.theme-campus-2007:has(.main#appMain) .rrow:hover .rh{color:#3b5998!important}
body.theme-campus-2007:has(.main#appMain) :is(.msg-img,.msg-file){border-color:#b7c5d9!important;background:#fff!important;color:#3b5998!important}

@container (max-width:430px){
  body.theme-campus-2007 .active-world-card{grid-template-columns:1fr!important;grid-template-areas:"identity" "state" "pulse" "meta" "enter"!important}
}

@media(max-width:760px){
  body.theme-campus-2007 .page-layout{width:calc(100% - 12px)!important;padding-top:7px!important}
  body.theme-campus-2007 .activity{grid-template-columns:1fr!important}
  body.theme-campus-2007 .activity-feed{border-right:0!important;border-bottom:1px solid var(--campus-2007-line)!important}
  body.theme-campus-2007 .active-worlds-grid{grid-template-columns:1fr!important}
  body.theme-campus-2007 .active-world-card{grid-template-columns:1fr!important;grid-template-areas:"identity" "pulse" "meta" "state" "enter"!important}
  html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-symbol{width:50px!important;min-width:50px!important;padding-right:3px!important}
  html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-campus-wordmark{width:44px!important}
}
html[data-ankle-color-scheme="dark"] body.theme-campus-2007,
html[data-ankle-resolved-theme="dark"] body.theme-campus-2007,
html[data-theme="dark"] body.theme-campus-2007{background:#10141d!important;color:#eef2f8!important}
html[data-ankle-color-scheme="dark"] body.theme-campus-2007 :is(.world-entry,.section,.activity,.activity-feed,.active-worlds-grid,.front-feed-grid,.active-world-card,.front-post-card,#classicFeed),
html[data-ankle-resolved-theme="dark"] body.theme-campus-2007 :is(.world-entry,.section,.activity,.activity-feed,.active-worlds-grid,.front-feed-grid,.active-world-card,.front-post-card,#classicFeed),
html[data-theme="dark"] body.theme-campus-2007 :is(.world-entry,.section,.activity,.activity-feed,.active-worlds-grid,.front-feed-grid,.active-world-card,.front-post-card,#classicFeed){background:#1c2330!important;color:#eef2f8!important;border-color:#435578!important}
html[data-ankle-color-scheme="dark"][data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right,#aos-bottom),
html[data-ankle-resolved-theme="dark"][data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right,#aos-bottom),
html[data-theme="dark"][data-ankle-viewer-theme="campus-2007"] :is(#aos-left,#aos-right,#aos-bottom){background:#1c2330!important;color:#eef2f8!important;border-color:#435578!important}

/* Each picker tile is a tiny composition, not a generic palette stripe. */
#ankle-theme-panel .theme-opt .theme-mini{
  position:relative;display:block;width:100%;height:48px;margin-bottom:5px;overflow:hidden;
  box-sizing:border-box;border:1px solid var(--tp-line);background:var(--tp-bg);
}
#ankle-theme-panel .theme-mini__top{position:absolute;left:4px;right:4px;top:4px;height:6px;background:var(--tp-link)}
#ankle-theme-panel .theme-mini__copy{position:absolute;left:7px;right:20px;top:17px;display:grid;gap:3px}
#ankle-theme-panel .theme-mini__copy i{display:block;height:2px;background:var(--tp-link)}
#ankle-theme-panel .theme-mini__copy i:nth-child(2){width:78%}
#ankle-theme-panel .theme-mini__copy i:nth-child(3){width:58%}
#ankle-theme-panel .theme-mini__rail{position:absolute;right:4px;top:14px;bottom:4px;width:12px;background:var(--tp-hi);border-left:1px solid var(--tp-line)}
#ankle-theme-panel .theme-mini__media,#ankle-theme-panel .theme-mini__vote{display:none}
#ankle-theme-panel .theme-mini--discmaster{background:#c0c0c0;border:2px outset #fff}
#ankle-theme-panel .theme-mini--discmaster .theme-mini__top{background:#000080}
#ankle-theme-panel .theme-mini--graphpaper{background-color:#f6f4ea;background-image:linear-gradient(#2a3a5022 1px,transparent 1px),linear-gradient(90deg,#2a3a5022 1px,transparent 1px);background-size:8px 8px}
#ankle-theme-panel .theme-mini--phosphor{background:#071006;background-image:repeating-linear-gradient(0deg,#0005 0 1px,transparent 1px 3px);box-shadow:inset 0 0 8px #7fff6a44}
#ankle-theme-panel .theme-mini--phosphor :is(.theme-mini__top,.theme-mini__copy i){background:#7fff6a}
#ankle-theme-panel .theme-mini--paper{background:#f8f3e6;padding:4px;box-shadow:inset 5px 0 #a42a00}
#ankle-theme-panel .theme-mini--status-2007{background:#9ae4e8}
#ankle-theme-panel .theme-mini--status-2007 .theme-mini__copy{left:14px;right:22px;top:14px;bottom:4px;background:#fff;padding:6px 4px}
#ankle-theme-panel .theme-mini--status-2007 .theme-mini__top{left:14px;right:18px;background:#fff;border-bottom:1px solid #ccc}
#ankle-theme-panel .theme-mini--status-2007 .theme-mini__rail{background:#eef8da}
#ankle-theme-panel .theme-mini--arcade-2007{background:#003366}
#ankle-theme-panel .theme-mini--arcade-2007 .theme-mini__top{height:9px;background:linear-gradient(90deg,#ff9900 0 40%,#3399ff 40%)}
#ankle-theme-panel .theme-mini--arcade-2007 .theme-mini__media{display:block;position:absolute;left:6px;top:17px;width:22px;height:21px;background:#fff;border:2px solid #3399ff}
#ankle-theme-panel .theme-mini--arcade-2007 .theme-mini__copy{left:34px;right:5px}
#ankle-theme-panel .theme-mini--apple-2011{background:#f0f0f2}
#ankle-theme-panel .theme-mini--apple-2011 .theme-mini__top{height:9px;background:linear-gradient(180deg,#444 0%,#282828 100%)}
#ankle-theme-panel .theme-mini--apple-2011 .theme-mini__copy{left:8px;right:8px;top:14px;background:#fff;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,0.1)}
#ankle-theme-panel .theme-mini--portal-2007{background:#191919}
#ankle-theme-panel .theme-mini--portal-2007 .theme-mini__top{height:8px;background:#f90}
#ankle-theme-panel .theme-mini--portal-2007 .theme-mini__copy i{background:#ffb000}
#ankle-theme-panel .theme-mini--video-2007 .theme-mini__media{display:block;position:absolute;left:6px;top:17px;width:25px;height:22px;background:#eee;border:1px solid #aaa}
#ankle-theme-panel .theme-mini--video-2007 .theme-mini__copy{left:36px;right:5px}
#ankle-theme-panel .theme-mini--news-2007 .theme-mini__top{background:linear-gradient(90deg,#28639b 0 70%,#a8d16f 70%)}
#ankle-theme-panel .theme-mini--news-2007 .theme-mini__vote{display:block;position:absolute;left:6px;top:17px;width:14px;height:18px;background:#fff2a8;border:1px solid #b7c8d9}
#ankle-theme-panel .theme-mini--news-2007 .theme-mini__copy{left:25px;right:5px}
#ankle-theme-panel .theme-mini--profile-2007 .theme-mini__top{left:0;right:0;top:0;height:10px;background:#3b5998}
#ankle-theme-panel .theme-mini--profile-2007 .theme-mini__media{display:block;position:absolute;left:6px;top:16px;width:19px;height:23px;background:#e5edf5;border:1px solid #6698cb}
#ankle-theme-panel .theme-mini--profile-2007 .theme-mini__copy{left:31px;right:5px}
#ankle-theme-panel .theme-mini--art-2007{background:#7f8d86}
#ankle-theme-panel .theme-mini--art-2007 .theme-mini__media{display:block;position:absolute;left:6px;right:6px;top:16px;height:22px;background:repeating-linear-gradient(90deg,#dce7e2 0 17px,#4b6157 17px 20px)}
#ankle-theme-panel .theme-mini--fun-2007{background:#e8f7ff;border-radius:6px}
#ankle-theme-panel .theme-mini--fun-2007 .theme-mini__top{background:#ffe04c;border-radius:5px}
#ankle-theme-panel .theme-mini--fun-2007 .theme-mini__rail{background:#77c5ef;border-radius:5px}
#ankle-theme-panel .theme-mini--campus-2007{background:#fff}
#ankle-theme-panel .theme-mini--campus-2007 .theme-mini__top{left:0;right:0;top:0;height:10px;background:#3b5998}
#ankle-theme-panel .theme-mini--campus-2007 .theme-mini__rail{left:5px;right:auto;top:14px;bottom:5px;width:17px;background:#edeff4;border:1px solid #b7c5d9}
#ankle-theme-panel .theme-mini--campus-2007 .theme-mini__media{display:block;position:absolute;left:27px;top:15px;width:18px;height:20px;background:#f7f7f7;border:1px solid #b7c5d9}
#ankle-theme-panel .theme-mini--campus-2007 .theme-mini__copy{left:50px;right:5px;top:15px;gap:3px}
#ankle-theme-panel .theme-mini--campus-2007 .theme-mini__copy i{background:#d8dfea}
#ankle-theme-panel .theme-mini--campus-2007 .theme-mini__copy i:first-child{height:4px;background:#3b5998}
#ankle-theme-panel .theme-mini--linkboard-2007 .theme-mini__top{background:#cee3f8}
#ankle-theme-panel .theme-mini--linkboard-2007 .theme-mini__vote{display:block;position:absolute;left:6px;top:18px;width:5px;height:16px;background:#c6d6e5}
#ankle-theme-panel .theme-mini--linkboard-2007 .theme-mini__copy{left:16px;right:5px;gap:4px}
#ankle-theme-panel :is(.theme-mini--ankle99-next, .theme-mini--ankle96-next){background:#9896b4;box-shadow:inset 0 0 0 4px #d8d6cc}
#ankle-theme-panel :is(.theme-mini--ankle99-next, .theme-mini--ankle96-next) .theme-mini__top{background:#555063}
#ankle-theme-panel .theme-mini--directory-portal-2000 .theme-mini__copy{right:5px;display:grid;grid-template-columns:1fr 1fr;gap:4px 8px}
#ankle-theme-panel .theme-mini--directory-portal-2000 .theme-mini__copy i{width:100%}
#ankle-theme-panel .theme-mini--funny{background:#c0c0c0;border-color:#f00}
#ankle-theme-panel .theme-mini--funny .theme-mini__top{background:#fff700;border:1px solid #f00}
#ankle-theme-panel .theme-mini--funny .theme-mini__rail{background:#fff700;border-color:#f00}
#ankle-theme-panel .theme-mini--geocities-fireheart{background:#1a0000;background-image:radial-gradient(ellipse at 50% 110%,#ff0 0 8%,#f40 9% 22%,transparent 23%),linear-gradient(#1a0000,#330000)}
#ankle-theme-panel .theme-mini--geocities-fireheart .theme-mini__top{background:#f40;box-shadow:0 0 5px #f40}
#ankle-theme-panel .theme-mini--geocities-fireheart .theme-mini__copy i{background:#ffd700}

/* Typography is a real role editor plus individually loaded font specimens. */
#ankle-theme-panel *,#ankle-theme-panel *::before,#ankle-theme-panel *::after{box-sizing:border-box}
#ankle-theme-panel :is(input,button,select,textarea,.font-role,.font-result){min-width:0;max-width:100%}
#ankle-theme-panel :is(.font-role,.font-result,.font-empty){overflow-wrap:anywhere}
#ankle-theme-panel .font-role-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:7px}
#ankle-theme-panel .font-role{display:grid;gap:2px;width:100%;min-height:46px;padding:5px 7px;border:1px solid var(--line);border-radius:0;background:var(--panel);color:var(--fg);text-align:start;cursor:pointer;overflow:hidden}
#ankle-theme-panel .font-role.active{background:var(--highlight);outline:1px solid var(--fg);outline-offset:-2px}
#ankle-theme-panel .font-role b{font:700 10px/1.2 var(--mono-font);text-transform:uppercase;letter-spacing:.04em}
#ankle-theme-panel .font-role span{font:10px/1.25 var(--body-font);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ankle-theme-panel #ankle-font-search{width:100%;padding:6px 7px;border:1px solid var(--line);background:var(--panel);color:var(--fg);font:11px/1.3 var(--body-font)}
#ankle-theme-panel .font-results{max-height:min(360px,45vh);margin-top:6px;overflow:hidden auto;border:1px solid var(--line);background:var(--panel)}
#ankle-theme-panel .font-result{display:grid;gap:3px;width:100%;padding:7px 8px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--panel);color:var(--fg);text-align:start;cursor:pointer}
#ankle-theme-panel .font-result:hover,#ankle-theme-panel .font-result.active{background:var(--highlight)}
#ankle-theme-panel .font-result-name{font:10px/1.2 var(--mono-font);color:var(--muted)}
#ankle-theme-panel .font-result-sample{display:block;font-size:19px;line-height:1.25;white-space:normal}
#ankle-theme-panel .font-empty{padding:8px;color:var(--muted);font:10px/1.35 var(--mono-font)}
#ankle-theme-panel .font-preview{margin-top:6px;padding:8px;border:1px dashed var(--line);background:var(--bg);color:var(--fg);font-size:18px;line-height:1.3}
@media(max-width:430px){#ankle-theme-panel .font-role-list{grid-template-columns:1fr}}
/* Apply only roles with an explicit user selection. A role showing "theme
   default" must preserve the component's authored font instead of inheriting
   a different custom role. These declarations intentionally outrank legacy
   theme/shell !important rules when the viewer made an explicit choice. */
body.ankle-user-font-body{font-family:var(--ankle-font-body)!important}
body.ankle-user-font-body :is(p,li,dt,dd,blockquote,caption,th,td,.hero-tag,.section-explainer,.activity-row .body,.world-card .body,.front-post-card .fp-body,.caps-layer,.disc-card p):not(#ankle-theme-panel *){font-family:var(--ankle-font-body)!important}
body.ankle-user-font-heading :is(h1,h2,h3,h4,h5,h6,.hero-title,.world-thesis b,.hero-stat b,.section-title,.active-world-card .word,.world-card .name,.coin-slate .ttl,.agent-chip .name,.market-card .name,.disc-card h3,.stat-cell .val):not(#ankle-theme-panel *){font-family:var(--ankle-font-heading)!important}
body.ankle-user-font-ui :is(button,input,select,textarea,label,nav,nav *,.nav,.nav *,.btn,[role="button"],#aos-topchips,#aos-topchips *,#aos-left,#aos-left *,#aos-right,#aos-right *,#aos-bottom,#aos-bottom *,#aos-post-modal,#aos-post-modal *,#aos-legal-banner,#aos-legal-banner *):not(#ankle-theme-panel *){font-family:var(--ankle-font-ui)!important}
body.ankle-user-font-mono :is(code,pre,kbd,samp,.hero-sub,.section-meta,.section-link,.activity-feed,.activity-side,.world-card .desc,.active-world-card .meta,.active-world-card .pulse,.front-post-card .fp-head,.front-post-card .fp-foot,.coin-slate .sub,.coin-slate .addr,.agent-chip .spec,.agent-chip .verified,.market-card .desc,.market-card .row,.caps-id,.caps-proof,.stat-cell,.footer):not(#ankle-theme-panel *){font-family:var(--ankle-font-mono)!important}
/* Global night-mode contrast safety. */
html[data-ankle-color-scheme="dark"],
html[data-ankle-resolved-theme="dark"],
html[data-theme="dark"],
body.theme-dark,
body[data-theme="dark"] {
  --bg: #14171d !important;
  --fg: #f5f7fa !important;
  --panel: #1e222b !important;
  --muted: #b8c0cc !important;
  --faint: #718096 !important;
  --line: #3d4454 !important;
  --link: #63b3ed !important;
  --visited: #b794f4 !important;
  --highlight: #2b3a4a !important;
  background-color: #14171d !important;
  color: #f5f7fa !important;
}
html[data-ankle-color-scheme="dark"] body.theme-discmaster,
html[data-ankle-color-scheme="dark"] body.theme-discmaster *,
html[data-ankle-resolved-theme="dark"] body.theme-discmaster,
html[data-ankle-resolved-theme="dark"] body.theme-discmaster *,
html[data-theme="dark"] body.theme-discmaster,
html[data-theme="dark"] body.theme-discmaster * { color: inherit; }
html[data-ankle-color-scheme="dark"] body.theme-discmaster :is(.ankle-terminal,.terminal-header,.terminal-output,.terminal-input-row,.hermes-bubble,.cmd-chip,.ankle-notification,.qa-btn,.slash-item) {
  background: #1e222b !important;
  border-color: #3d4454 !important;
  color: #f5f7fa !important;
}
html[data-ankle-color-scheme="dark"] body.theme-discmaster .terminal-input {
  background: #14171d !important;
  color: #f5f7fa !important;
  border-color: #3d4454 !important;
  caret-color: #f5f7fa !important;
}

/* campus-2007 hero banners: FB font, white text, lowercase headers (2026-09-03) */
body.theme-campus-2007 :is(.hero, .hero *){
  font-family:var(--campus-2007-font)!important;
}
body.theme-campus-2007 .hero :is(h1,h2,.title){
  color:#fff!important;
  font:20px/1.2 var(--campus-2007-font)!important;
  font-weight:bold!important;
  text-transform:lowercase!important;
  letter-spacing:-0.01em!important;
}
body.theme-campus-2007 .hero :is(.sub,.description,.blurb){
  color:#d8dfea!important;
  font:11px/1.35 var(--campus-2007-font)!important;
  text-transform:none!important;
}
body.theme-campus-2007 .hero :is(.stats,.stats *){
  color:#fff!important;
}
body.theme-campus-2007 .hero .stats b{
  color:#fff!important;
}

/* ── PERMANENT LOCK (2026-09-03): Facebook theme wordmark ────────────────
   Operator directive: the campus-2007 brand IS the lowercase wordmark PNG
   (facebook2007-ankle-wordmark.png, white, Codex-made from Alex's PNG).
   These rules intentionally over-specify so later cascade additions can't
   silently drop the brand back to a bare glyph. Do not remove. */
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-campus-wordmark,
body.theme-campus-2007 #aos-topchips .aos-brand-campus-wordmark {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-default-mark,
body.theme-campus-2007 #aos-topchips .aos-brand-default-mark {
  display: none !important;
}
html[data-ankle-viewer-theme="campus-2007"] #aos-topchips .aos-brand-campus-wordmark-fallback {
  display: none !important;
}
/* ── END PERMANENT LOCK ─────────────────────────────────────────────── */


/* ── cuppicakeXD theme (Mia Y2K AIM aesthetic) ─────────────────────── */
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) {
  --bg: #f4ebe1;
  --fg: #000000;
  --panel: #f794c3;
  --surface: #ffffff;
  --muted: #555555;
  --faint: #777777;
  --line: #000000;
  --link: #ff0066;
  --visited: #99004d;
  --highlight: #ffe600;
  --accent: #ff0066;
  --title-bar: #f794c3;
  --title-fg: #000000;
  --media-well: #ffffff;
  --body-font: Tahoma, "MS Sans Serif", Arial, sans-serif;
  --mono-font: "Courier New", Courier, monospace;
  --radius: 0;
  --shadow: none;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) *,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) *::before,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) *::after {
  border-radius: 0 !important;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) input,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) textarea,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) select {
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  color: #000000 !important;
  font-family: var(--body-font) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) button:not(.theme-opt):not(.close-x),
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .btn {
  border: 1px solid #000000 !important;
  background: #f794c3 !important;
  color: #000000 !important;
  font-family: var(--body-font) !important;
  font-weight: bold !important;
  border-radius: 0 !important;
  box-shadow: 1px 1px 0 #000000 !important;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .btn.primary,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) button.primary,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .post-card__action--world {
  background: #ffe600 !important;
  color: #000000 !important;
  border: 1px solid #000000 !important;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) button:not(.theme-opt):not(.close-x):active,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .btn:active {
  box-shadow: inset 1px 1px 0 #000000 !important;
  transform: translate(1px, 1px);
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .post-card,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .card,
body:is(.theme-cuppicake-xd, .theme-cuppicakexd) [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]) {
  border: 1px solid #000000 !important;
  background: #ffffff !important;
  box-shadow: 2px 2px 0 #000000 !important;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .post-card__header {
  background: #f794c3 !important;
  color: #000000 !important;
  border-bottom: 1px solid #000000 !important;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .post-card__actions {
  background: #f794c3 !important;
  border-top: 1px solid #000000 !important;
}

body:is(.theme-cuppicake-xd, .theme-cuppicakexd) .post-card__comment-bar {
  background: #ffffff !important;
  border-top: 1px solid #000000 !important;
}

#ankle-theme-panel .theme-mini--cuppicake-xd{background:#f4ebe1;border:1px solid #000}
#ankle-theme-panel .theme-mini--cuppicake-xd .theme-mini__top{background:#f794c3;height:10px}
#ankle-theme-panel .theme-mini--cuppicake-xd .theme-mini__copy i{background:#000}
#ankle-theme-panel .theme-mini--cuppicake-xd .theme-mini__media{display:block;position:absolute;left:6px;top:16px;width:18px;height:20px;background:#fff;border:1px solid #000}

/* ── Original ANKLE theme (February / March modern portfolio aesthetic) ── */
html[data-ankle-viewer-theme="ankle-original"],
body.theme-ankle-original {
  --bg: #ffffff;
  --fg: #121212;
  --panel: #fafafa;
  --surface: #ffffff;
  --muted: #6b6b6b;
  --faint: #999999;
  --line: #e8e8e8;
  --border: #e8e8e8;
  --link: #0a0a0a;
  --visited: #4a4a4a;
  --highlight: #f5f5f5;
  --accent: #111111;
  --title-bar: #fafafa;
  --title-fg: #121212;
  --media-well: #f8f8f8;
  --body-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --mono-font: 'Fragment Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --radius: 12px;
  --shadow: 0 4px 20px rgba(0,0,0,0.06);
}

body.theme-ankle-original {
  background: var(--bg) !important;
  color: var(--fg) !important;
  font-family: var(--body-font) !important;
}

body.theme-ankle-original input,
body.theme-ankle-original textarea,
body.theme-ankle-original select {
  border: 1px solid #e8e8e8 !important;
  background: #ffffff !important;
  color: #121212 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  font-family: var(--body-font) !important;
}

body.theme-ankle-original button:not(.theme-opt):not(.close-x),
body.theme-ankle-original .btn {
  border: 1px solid #e8e8e8 !important;
  background: #f5f5f5 !important;
  color: #121212 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  font-family: var(--body-font) !important;
  font-weight: 500 !important;
  transition: all 0.15s ease !important;
}

body.theme-ankle-original button:not(.theme-opt):not(.close-x):hover,
body.theme-ankle-original .btn:hover {
  background: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
}

body.theme-ankle-original .btn.primary,
body.theme-ankle-original button.primary {
  background: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
}

body.theme-ankle-original .post-card,
body.theme-ankle-original .card,
body.theme-ankle-original .surf-card,
body.theme-ankle-original [class*="-card"]:not([class*="-card__"]):not([class*="-card-"]) {
  border: 1px solid #e8e8e8 !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.04) !important;
  overflow: hidden !important;
}

body.theme-ankle-original .post-card__header {
  border-bottom: 1px solid #f0f0f0 !important;
  background: #ffffff !important;
}

body.theme-ankle-original .hero,
body.theme-ankle-original .world-entry,
body.theme-ankle-original #claim-world {
  border: 1px solid #e8e8e8 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.05) !important;
  background: #fafafa !important;
}

body.theme-ankle-original #aos-bottom,
body.theme-ankle-original #aos-top,
body.theme-ankle-original #aos-left,
body.theme-ankle-original #aos-right {
  border-color: #e8e8e8 !important;
  background: #fafafa !important;
}

#ankle-theme-panel .theme-mini--ankle-original {
  background: #ffffff;
  border: 1px solid #e8e8e8;
  border-radius: 4px;
}
#ankle-theme-panel .theme-mini--ankle-original .theme-mini__top {
  background: #fafafa;
  height: 10px;
  border-bottom: 1px solid #e8e8e8;
}
#ankle-theme-panel .theme-mini--ankle-original .theme-mini__copy i {
  background: #111111;
}
#ankle-theme-panel .theme-mini--ankle-original .theme-mini__media {
  display: block;
  position: absolute;
  left: 6px;
  top: 16px;
  width: 18px;
  height: 20px;
  background: #f8f8f8;
  border: 1px solid #e8e8e8;
  border-radius: 2px;
}

/* Ensure feed post body preserves all line breaks and stanzas across all themes */
.post-card__body {
  white-space: pre-wrap !important;
  word-break: break-word !important;
}

/* Universal World Picker Modal for Feed, Surf, Motion, and World Hub */
.world-picker-overlay {
  position: fixed; inset: 0; z-index: 100060; display: none; align-items: center; justify-content: center;
  padding: 18px; background: rgba(0,0,0,.68);
}
.world-picker-overlay.open { display: flex; }
.world-picker {
  width: min(520px, calc(100vw - 28px)); max-height: min(78vh, 680px); overflow: auto;
  border: 2px outset #fff; box-shadow: 5px 5px 0 #000; background: var(--panel, #c0c0c0); color: var(--fg, #000);
}
.world-picker__head { position: sticky; top: 0; z-index: 4; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px; border-bottom: 1px solid #000; background: var(--panel, #c0c0c0); }
.world-picker__title { font: bold 12px var(--mono, monospace); }
.world-picker__close { min-width: 28px; min-height: 26px; border: 2px outset #fff; background: var(--panel, #c0c0c0); cursor: pointer; }
.world-picker__intro { padding: 9px 10px; border-bottom: 1px dotted #777; font: 10px/1.4 var(--mono, monospace); }
.world-picker__search-wrap { position: sticky; top: 41px; z-index: 3; padding: 8px 10px; background: var(--panel, #c0c0c0); border-bottom: 1px solid #777; }
.world-picker__search { width: 100%; box-sizing: border-box; padding: 7px 10px; border: 2px inset #fff; background: var(--surface, #fff); color: var(--fg, #000); font: 11px var(--mono, monospace); outline: none; }
.world-picker__search:focus { border-color: #000; outline: 1px solid #000; }
.world-picker__list { display: grid; gap: 6px; padding: 10px; }
.world-picker__row { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 8px; width: 100%; min-height: 48px; padding: 6px; border: 1px solid #777; background: var(--surface, #eee); color: inherit; text-align: left; cursor: pointer; font: 10px var(--mono, monospace); }
.world-picker__row:hover { border-color: #000; background: var(--highlight, #ffffe0); }
.world-picker__row[disabled] { opacity: .62; cursor: wait; }
.world-picker__icon { width: 32px; height: 32px; object-fit: cover; border: 1px solid #777; background: #ddd; }
.world-picker__name { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: bold 11px var(--mono, monospace); }
.world-picker__role { color: var(--dim, #666); font-size: 9px; }
.world-picker__state { white-space: nowrap; font-weight: 700; }
.world-picker__empty { padding: 22px 12px; font: 11px/1.5 var(--mono, monospace); }

