:root {
  --bg: #f8f8f5;
  --surface: #ffffff;
  --surface-alt: #f2f2ee;
  --ink: #121417;
  --muted: #5f6872;
  --line: #d8dcd5;
  --accent: #0f6c5c;
  --accent-2: #174ea6;
  --danger: #9b1c31;
  --radius: 16px;
  --sidebar-shell-bg: #fff8f1;
  --sidebar-shell-border: rgba(223, 197, 166, 0.72);
  --sidebar-shell-radius: 20px;
  --shadow: 0 8px 26px rgba(18, 20, 23, 0.08);
  --app-gutter: 28px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: radial-gradient(circle at 12% 0%, #fefdf7 0%, var(--bg) 46%, #eff2ea 100%);
  color: var(--ink);
  font-family: "Space Grotesk", "Segoe UI", sans-serif;
  line-height: 1.45;
}

img {
  max-width: 100%;
  display: block;
}

a,
button,
input {
  font: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
.topic-chip:focus-visible,
.tsemit-btn:focus-visible {
  outline: 3px solid var(--accent-2);
  outline-offset: 2px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(248, 248, 245, 0.74);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(216, 220, 213, 0.65);
}

.header-inner {
  width: min(1760px, calc(100% - var(--app-gutter)));
  margin: 0 auto;
  min-height: 56px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
}

.logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.logo-mark {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--accent), #2f8b7d);
  color: #fff;
}

.logo-text {
  font-size: 1.05rem;
}

.hero-search input {
  width: 100%;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: var(--ink);
  padding: 0.72rem 1rem;
}

.header-nav {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.header-nav a,
.ghost-btn,
.profile-btn {
  padding: 0.34rem 0.56rem;
  border-radius: 10px;
  border: 1px solid transparent;
  background: transparent;
  cursor: pointer;
  color: #3d4650;
  font-size: 0.92rem;
}

.header-nav a:hover,
.ghost-btn:hover,
.profile-btn:hover {
  background: #ecefe7;
  border-color: #dde2d8;
}

main {
  width: min(1760px, calc(100% - var(--app-gutter)));
  margin: 0 auto 18px;
}

.hero {
  border: 0;
  border-radius: 0;
  padding: 4px 0;
  background: transparent;
  box-shadow: none;
  display: grid;
  gap: 6px;
  min-width: 0;
}

.hero-topline {
  display: flex;
  flex-wrap: nowrap;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}

.hero-copy,
.hero-search {
  min-width: 0;
}

.hero-copy h1 {
  margin: 0;
  font-family: "Source Serif 4", Georgia, serif;
  font-size: clamp(0.88rem, 1.35vw, 1.06rem);
  line-height: 1.06;
  letter-spacing: -0.02em;
  white-space: nowrap;
  flex: 0 0 auto;
}

.hero-copy h1 span {
  display: inline;
}

.hero-subtitle {
  margin: 0;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

.hero-identity {
  margin: 0;
  font-size: 0.56rem;
  letter-spacing: 0.16em;
  color: #7b8591;
  width: 100%;
  text-align: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.status-strip {
  margin-top: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 3px 0;
  overflow: hidden;
  min-width: 0;
}

.status-strip h2 {
  margin: 0 0 3px;
  font-size: 0.58rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #66717c;
}

.status-items {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: nowrap;
  gap: 5px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}

.status-items li {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 6px;
  padding: 0.06rem 0.46rem 0.06rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #3a4652;
  font-size: 0.66rem;
  line-height: 1.15;
  white-space: nowrap;
}

.status-items li:not(:last-child) {
  border-right: 1px solid rgba(164, 172, 183, 0.42);
  margin-right: 2px;
}

.status-items li strong {
  color: #1f2b36;
  font-size: 0.68rem;
}

.brief-block,
.pulse-block {
  margin-top: 2px;
  max-width: 760px;
  border-top: 1px solid #e0e6dc;
  padding-top: 4px;
}

.pulse-block {
  margin-top: 1px;
}

.brief-block h2,
.pulse-block h2 {
  margin: 0 0 3px;
  font-size: 0.69rem;
  letter-spacing: 0.16em;
  color: #66717c;
  font-weight: 700;
}

.brief-points {
  margin: 0;
  padding: 0 0 0 16px;
  color: #26313b;
  display: grid;
  gap: 1px;
}

.brief-points li {
  font-size: 0.79rem;
  line-height: 1.25;
}

.pulse-block ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 2px;
}

.pulse-block li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 0.77rem;
  color: #3a4753;
}

.pulse {
  font-size: 0.79rem;
  font-weight: 600;
}

.pulse::before {
  margin-right: 6px;
}

.pulse.up {
  color: #1f6f61;
}

.pulse.up::before {
  content: "\2191";
}

.pulse.down {
  color: #7a4e13;
}

.pulse.down::before {
  content: "\2193";
}

.pulse.steady {
  color: #5e6772;
}

.pulse.steady::before {
  content: "\2192";
}

.hero-search {
  margin-top: 0;
  max-width: 100%;
}

/* Header simplification: keep only SEE · FEEL · FIX before content flow. */
.hero-topline,
.status-strip,
.hero-search {
  display: none !important;
}

#hero-title,
.hero-subtitle,
.today-matters,
.center-logic {
  display: none !important;
}

body:not(.entity-workspace-lock) .hero {
  display: none;
}

body:not(.entity-workspace-lock) .hero-identity {
  display: none !important;
}

body:not(.entity-workspace-lock) .homepage-grid {
  margin-top: 2px;
}

body:not(.entity-workspace-lock) .center-column::before {
  content: "SEE · FEEL · FIX";
  display: block;
  margin: 0 0 8px;
  color: #7b8591;
  font-size: 0.56rem;
  letter-spacing: 0.16em;
  line-height: 1.1;
}

.hero-copy {
  display: block;
}

.hero-identity {
  text-align: left;
}

.hero-search input {
  padding: 0.42rem 0.8rem;
  font-size: 0.8rem;
}

.today-matters {
  margin: 2px 0 6px;
  color: #737c87;
  font-size: 0.72rem;
  letter-spacing: 0.2em;
  font-weight: 600;
}

/* Homepage search — same width as the 580px center column. */
.homepage-feed-search {
  position: relative;
  flex: 0 0 580px;
  width: 580px;
  max-width: 580px;
  min-width: 580px;
  margin: 0 auto;
}

.homepage-feed-search input {
  width: 100%;
  height: 40px;
  box-sizing: border-box;
  border: 1px solid #d8dde3;
  border-radius: 20px;
  background: #f3f5f7;
  color: var(--ink);
  padding: 0 42px 0 42px;
  font: inherit;
  font-size: 0.9rem;
  outline: none;
  transition: background-color 120ms ease, border-color 120ms ease, box-shadow 120ms ease;
}

.homepage-feed-search input::placeholder {
  color: #6f7883;
}

.homepage-feed-search input:hover {
  background: #eceff2;
  border-color: #cbd2d9;
}

.homepage-feed-search input:focus {
  background: #fff;
  border-color: #0b7a68;
  box-shadow: 0 0 0 2px rgba(11, 122, 104, 0.12);
}

.homepage-feed-search-icon {
  position: absolute;
  z-index: 1;
  left: 15px;
  top: 50%;
  transform: translateY(-52%);
  color: #65707c;
  font-size: 1.15rem;
  line-height: 1;
  pointer-events: none;
}

body.entity-workspace-lock .homepage-feed-search {
  display: none;
}

.homepage-grid {
  display: grid;
  margin-top: 8px;
  gap: 16px;
  align-items: start;
  justify-content: center;
  grid-template-columns: 300px 580px 320px;
}

.left-column,
.center-column,
.right-column {
  min-height: 320px;
}

.left-column,
.right-column {
  width: auto;
  max-width: none;
}

.center-column {
  width: 580px;
  max-width: 580px;
}

.left-column,
.right-column {
  position: sticky;
  top: 90px;
  max-height: calc(100vh - 88px);
  overflow: auto;
  padding-right: 4px;
}

body:not(.entity-workspace-lock) .left-column,
body:not(.entity-workspace-lock) .right-column {
  background: #f7f1ea;
  border: 1px solid #efe3d6;
  border-radius: 14px;
  padding: 14px 10px;
}

.tsemou-guest-login {
  margin: 0 0 14px;
  padding: 14px 12px 13px;
  border: 1px solid rgba(223, 197, 166, 0.7);
  border-radius: 14px;
  background: linear-gradient(180deg, #fffdf8 0%, #fff9f1 100%);
  box-shadow: 0 6px 18px rgba(18, 20, 23, 0.045);
}

.tsemou-guest-login h2 {
  margin: 0 0 12px;
  color: #121417;
  font-size: 0.94rem;
  font-weight: 650;
  line-height: 1.24;
}

.tsemou-user-card h2 {
  margin-bottom: 5px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
}

.tsemou-user-card-role {
  margin: 0 0 15px;
  color: #6f7780;
  font-size: 0.74rem;
  font-weight: 500;
  line-height: 1.28;
}

.tsemou-user-card-links {
  display: grid;
  gap: 3px;
  padding-top: 12px;
  border-top: 1px solid rgba(223, 197, 166, 0.62);
}

.tsemou-user-card-links a,
.tsemou-user-card-links span {
  display: block;
  padding: 8px 8px;
  border-radius: 9px;
  color: #3d4650;
  font-size: 0.88rem;
  line-height: 1.22;
}

.tsemou-user-card-links a:hover {
  background: rgba(15, 108, 92, 0.07);
  color: #0f6c5c;
}

.tsemou-user-card-links a:last-child {
  margin-top: 9px;
  padding-top: 11px;
  border-top: 1px solid rgba(223, 197, 166, 0.58);
}

.tsemou-user-card-links .is-disabled {
  color: #6f7780;
  cursor: default;
}

.tsemou-guest-login-button {
  display: grid;
  max-width: 100%;
  overflow: hidden;
}

.tsemou-guest-login-button,
.tsemou-guest-login-button .nsl-container,
.tsemou-guest-login-button .nsl-container-buttons {
  width: 100%;
  max-width: 100%;
}

.tsemou-profile-page {
  min-height: 100vh;
}

.tsemou-profile-shell {
  width: min(760px, calc(100% - 32px));
  min-height: 100vh;
  margin: 0 auto;
  padding: 44px 0;
  display: grid;
  align-content: center;
  gap: 16px;
}

.tsemou-profile-back {
  width: max-content;
  color: #5f6872;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.tsemou-profile-back-row {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.tsemou-profile-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
  padding: 22px;
  border: 1px solid rgba(223, 197, 166, 0.7);
  border-radius: 16px;
  background: linear-gradient(180deg, #fffdf8 0%, #fff9f1 100%);
  box-shadow: 0 10px 26px rgba(18, 20, 23, 0.055);
}

.tsemou-profile-avatar-image {
  width: 72px;
  height: 72px;
  border-radius: 16px;
}

.tsemou-profile-content {
  min-width: 0;
}

.tsemou-profile-kicker {
  margin: 0 0 4px;
  color: #6f7780;
  font-size: 0.78rem;
  font-weight: 600;
}

.tsemou-profile-card h1 {
  margin: 0;
  color: #121417;
  font-family: "Source Serif 4", Georgia, serif;
  font-size: clamp(1.8rem, 5vw, 2.6rem);
  line-height: 1.04;
}

.tsemou-profile-details {
  margin: 18px 0 0;
  padding-top: 16px;
  border-top: 1px solid rgba(223, 197, 166, 0.62);
  display: grid;
  gap: 12px;
}

.tsemou-profile-details div {
  display: grid;
  gap: 2px;
}

.tsemou-profile-details dt {
  color: #6f7780;
  font-size: 0.75rem;
  font-weight: 600;
}

.tsemou-profile-details dd {
  margin: 0;
  color: #3d4650;
  font-size: 0.95rem;
  overflow-wrap: anywhere;
}

.tsemou-activity-shell {
  width: min(920px, calc(100% - 32px));
  align-content: start;
}

.tsemou-activity-card {
  display: block;
}

.tsemou-activity-owner {
  margin: 8px 0 0;
  color: #5f6872;
  font-size: 0.95rem;
}

.tsemou-activity-sections {
  margin-top: 22px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.tsemou-activity-section {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(223, 197, 166, 0.62);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.54);
}

.tsemou-activity-section h2 {
  margin: 0 0 10px;
  color: #121417;
  font-size: 1rem;
}

.tsemou-activity-empty {
  margin: 0;
  color: #6f7780;
  font-size: 0.9rem;
}

.tsemou-activity-list {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  list-style: none;
}

.tsemou-activity-list li {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 10px 0;
  border-top: 1px solid rgba(223, 197, 166, 0.46);
}

.tsemou-activity-list a,
.tsemou-activity-list span:first-child {
  color: #2c3947;
  font-size: 0.94rem;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.tsemou-activity-list a {
  text-decoration: none;
}

.tsemou-activity-list a:hover {
  color: #121417;
}

.tsemou-activity-time {
  color: #7a828a;
  font-size: 0.76rem;
  overflow-wrap: anywhere;
}

.column-title-wrap {
  margin: 0 0 10px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(151, 161, 171, 0.3);
}

.column-title-wrap h2 {
  margin: 0;
  font-size: 1.04rem;
}

.column-title-wrap p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.center-logic {
  margin-top: 2px;
  font-size: 0.78rem;
}

.community-block,
.news-item {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.community-block {
  margin-bottom: 12px;
  padding: 0 0 10px;
  border-bottom: 1px solid rgba(151, 161, 171, 0.26);
}

.community-block.rising {
  padding: 0 0 10px;
}

.community-block:last-child {
  border-bottom: 0;
}

.community-block h3 {
  margin: 0 0 8px;
  font-size: 0.9rem;
}

.rising-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
}

.rising-item {
  display: grid;
  grid-template-columns: 24px 54px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  border: 0;
  border-radius: 0;
  padding: 5px 0;
  background: transparent;
  border-bottom: 1px solid rgba(168, 176, 186, 0.22);
}

.rising-item.gold {
  background: transparent;
  border-color: rgba(168, 176, 186, 0.22);
}

.rising-item.silver {
  background: transparent;
  border-color: rgba(168, 176, 186, 0.22);
}

.rising-item.bronze {
  background: transparent;
  border-color: rgba(168, 176, 186, 0.22);
}

.rising-item:last-child {
  border-bottom: 0;
}

.rank-pill {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  font-size: 0.75rem;
  font-weight: 700;
  color: #2f3944;
  background: #e9eee7;
}

.rising-item img {
  width: 54px;
  height: 40px;
  border-radius: 8px;
  object-fit: cover;
}

.rising-item-title {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.25;
  color: #1e2833;
}

.rising-meta {
  margin-top: 3px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  font-size: 0.72rem;
  color: #5f6872;
}

.rising-score {
  color: #186f5d;
  font-weight: 700;
  white-space: nowrap;
}

.rising-indicator {
  margin: 4px 0 0;
  font-size: 0.7rem;
  color: #1e7a67;
  font-weight: 600;
}

.rising-arrow {
  margin-left: 3px;
}

.company-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.company-mini {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 6px 0;
  box-shadow: none;
}

.company-mini h3 {
  margin: 0 0 8px;
  font-size: 0.8rem;
}

.company-mini ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 6px;
}

.company-mini li {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 0.74rem;
  color: #5d6670;
}

.company-mini li strong {
  color: #1f2934;
  font-weight: 600;
}

.community-block ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 7px;
}

.community-block li {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 0.84rem;
  color: var(--muted);
}

.community-block li strong {
  color: var(--ink);
  font-weight: 600;
}

.story-feed {
  display: grid;
  gap: 12px;
}

.living-case-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-left-width: 4px;
  border-left-color: #cfd6cd;
  border-radius: 14px;
  padding: 12px;
  box-shadow: none;
  display: grid;
  gap: 10px;
}

.center-column .living-case-card {
  padding: 12px;
  gap: 9px;
}

.center-column .living-case-card .card-media {
  margin-bottom: 2px;
}

.center-column .living-case-card .living-case-summary {
  margin: 0;
  padding-top: 1px;
  padding-bottom: 1px;
  font-size: 0.9rem;
  line-height: 1.45;
}

.center-column .living-case-card .living-case-meta {
  margin-top: 2px;
  gap: 6px;
  row-gap: 6px;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 1px;
  scrollbar-width: none;
}

.center-column .living-case-card .living-case-meta::-webkit-scrollbar {
  display: none;
}

.center-column .living-case-card .case-chip {
  min-height: 23px;
  padding: 0.14rem 0.46rem;
  border-color: #dde4dc;
  background: rgba(255, 255, 255, 0.78);
  color: #4a5460;
  font-weight: 500;
}

.center-column .living-case-card .living-case-footer {
  margin-top: 6px;
  padding-top: 7px;
  border-top: 1px solid rgba(132, 146, 159, 0.22);
  gap: 8px;
  align-items: center;
}

.center-column .living-case-card .living-case-footer-copy,
.center-column .living-case-card .living-case-footer-action {
  padding-top: 0;
}

.center-column .living-case-card .living-case-footer-label {
  color: #4c5661;
  font-weight: 750;
}

.center-column .living-case-card .living-case-footer-action {
  align-self: center;
}

.case-type-case {
  background: linear-gradient(180deg, #ffffff 0%, #fbfcfa 100%);
  border-left-color: #8f99a3;
}

.case-type-evidence {
  background: linear-gradient(180deg, #fbfdff 0%, #f2f7ff 100%);
  border-left-color: #3a77d2;
}

.case-type-proof {
  background: linear-gradient(180deg, #fbfefb 0%, #eff8f1 100%);
  border-left-color: #22855f;
}

.case-type-solution {
  background: linear-gradient(180deg, #fffdfa 0%, #fff6e7 100%);
  border-left-color: #c28a16;
}

.case-type-community {
  background: linear-gradient(180deg, #fefcff 0%, #f5efff 100%);
  border-left-color: #7a4fc2;
}

.case-type-trending-discussion {
  background: linear-gradient(180deg, #fffdf9 0%, #fff3e8 100%);
  border-left-color: #d1711f;
}

.living-case-card.featured {
  border-color: #b7d4cb;
}

.living-case-topline {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
  color: #69737f;
  font-size: 0.72rem;
}

.living-case-topline .case-pill {
  flex: 0 0 auto;
}

.case-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 0.18rem 0.5rem;
  border: 1px solid #d9e3d6;
  background: #f8faf5;
  color: #43505b;
  font-weight: 700;
  letter-spacing: 0.03em;
}

.living-case-title {
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
  font-size: clamp(1.02rem, 2vw, 1.2rem);
  line-height: 1.25;
  letter-spacing: -0.01em;
}

.living-case-title a {
  color: inherit;
}

.case-updated {
  flex: 0 0 auto;
  white-space: nowrap;
}
.case-pill.featured-pill {
  background: #e7f4ef;
  color: #0f6c5c;
  border-color: #b7d4cb;
}

.living-case-summary {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.35;
  color: #27303a;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.card-media {
  width: 100%;
  border-radius: 11px;
  border: 1px solid #dbe2d9;
  overflow: hidden;
  display: grid;
  margin-top: 1px;
  position: relative;
}

.card-media-compact {
  aspect-ratio: 20 / 9;
}

.card-media-large {
  aspect-ratio: 16 / 9;
  max-height: 460px;
}

.card-media-stage,
.card-media-placeholder {
  width: 100%;
  height: 100%;
}

.card-media-stage {
  display: grid;
}

.card-media-placeholder {
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.9) 0, rgba(255, 255, 255, 0.35) 18%, transparent 36%),
    linear-gradient(140deg, #eef3ef 0%, #dde7e2 100%);
}

.card-media-placeholder-chrome {
  width: min(82%, 26rem);
  display: grid;
  gap: 0.35rem;
  justify-items: start;
  padding: 1rem 1.1rem;
  border-radius: 14px;
  border: 1px solid rgba(81, 98, 87, 0.12);
  background: rgba(255, 255, 255, 0.54);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
  backdrop-filter: blur(4px);
}

.card-media-placeholder-kicker {
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64716b;
}

.card-media-placeholder-title {
  font-size: 0.88rem;
  font-weight: 700;
  line-height: 1.3;
  color: #28333b;
}

.card-media-placeholder-line {
  width: 100%;
  max-width: 13rem;
  height: 10px;
  border-radius: 999px;
  background: rgba(75, 87, 79, 0.15);
}

.card-media-placeholder-line.short {
  max-width: 9rem;
}

.card-media-image-element,
.card-media-video-element,
.card-media-embed-frame {
  width: 100%;
  height: 100%;
  display: block;
}

.card-media-image-element,
.card-media-video-element {
  object-fit: cover;
}

.card-media-document,
.card-media-chart,
.card-media-map {
  background: linear-gradient(140deg, #f7faf8 0%, #edf2ef 100%);
}

.card-media-document-link,
.card-media-visual {
  display: grid;
  place-items: center;
  text-align: center;
  width: 100%;
  min-height: 100%;
  padding: 0.9rem 1rem;
  color: #2f3b46;
  text-decoration: none;
  gap: 0.35rem;
}

.card-media-document-label,
.card-media-visual-label {
  font-size: 0.63rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5f6973;
}

.card-media-document-title,
.card-media-visual-title {
  font-size: 0.86rem;
  font-weight: 600;
  line-height: 1.35;
  color: #27303a;
}

.card-media-visual-meta {
  font-size: 0.72rem;
  color: #58626d;
}

.card-media-embed-frame {
  border: 0;
}

.card-media-stage-image,
.card-media-stage-video,
.card-media-stage-document,
.card-media-stage-embed,
.card-media-stage-chart,
.card-media-stage-map {
  background: #f4f7f5;
}

.card-media-stage-image .card-media-image-element,
.card-media-stage-video .card-media-video-element,
.card-media-stage-embed .card-media-embed-frame {
  width: 100%;
  height: 100%;
}

.card-media-stage-document .card-media-document-link,
.card-media-stage-chart .card-media-visual,
.card-media-stage-map .card-media-visual {
  min-height: 100%;
}

.card-media.has-media {
  background: #f4f7f5;
}

.card-media.is-placeholder {
  background: transparent;
}

/* Homepage Action Center — compact stacked panel for the right column. */
.right-news-cta.entry-actions {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 0 12px;
}

.right-news-cta-button {
  width: 100%;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid #d8e2dc;
  border-radius: 12px;
  background: #fff;
  color: #147b6c;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.06em;
  white-space: nowrap;
  cursor: pointer;
}

.right-news-cta .participation-panel {
  display: none;
  width: 100%;
  box-sizing: border-box;
  margin-top: 8px;
  padding: 10px;
  border: 1px solid #d8e2dc;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(21, 47, 40, 0.08);
}

.right-news-cta .participation-panel.is-open {
  display: block;
}

.right-news-cta .participation-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 30px;
  margin-bottom: 8px;
}

.right-news-cta .participation-panel-head strong {
  font-size: 0.88rem;
  line-height: 1.2;
  white-space: nowrap;
}

.right-news-cta .participation-panel-close,
.right-news-cta .action-option-btn {
  border: 1px solid #d8e2dc;
  border-radius: 9px;
  background: #f8fbfa;
  color: #173f38;
  font: inherit;
  cursor: pointer;
}

.right-news-cta .participation-panel-close {
  flex: 0 0 auto;
  padding: 5px 8px;
  font-size: 0.7rem;
  line-height: 1;
  white-space: nowrap;
}

.right-news-cta .participation-panel-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
}

.right-news-cta .action-option-btn {
  width: 100%;
  min-height: 40px;
  padding: 9px 11px;
  text-align: left;
  font-size: 0.78rem;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}


/* Homepage Action environment — visible foundation only; no persistence yet. */

.homepage-action-composer {
  display: none;
  min-height: 620px;
  padding: 20px 24px 24px;
  border: 1px solid rgba(15, 91, 82, 0.18);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(33, 54, 50, 0.08);
}

.homepage-action-composer.is-open {
  display: block;
}

#homepageCenterFeedHeading.is-hidden,
#storyFeed.is-hidden {
  display: none !important;
}

/* Create mode owns the center column: hide every feed/runtime sibling while composing. */
.center-column.is-action-create-mode > :not(#homepageActionComposer) {
  display: none !important;
}

.center-column.is-action-create-mode #homepageActionComposer {
  display: block;
}

.homepage-action-composer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
}

.homepage-action-composer-back {
  border: 0;
  padding: 0;
  background: transparent;
  color: #1d5f58;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.homepage-action-composer-draft {
  color: #66736f;
  font-size: 0.88rem;
}

.homepage-action-composer-title-row {
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(15, 91, 82, 0.14);
}

.homepage-action-composer-kicker {
  margin: 0 0 5px;
  color: #0f766e;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.homepage-action-composer-title-row h2 {
  margin: 0;
  color: #183d39;
  font-size: 1.65rem;
}

.homepage-action-composer-form {
  display: grid;
  gap: 18px;
}

.homepage-action-field {
  display: grid;
  gap: 8px;
}

.homepage-action-field > span {
  color: #243d3a;
  font-weight: 700;
}

.homepage-action-field b {
  color: #b83c4c;
}

.homepage-action-field small {
  color: #72807d;
  font-weight: 500;
}

.homepage-action-field input,
.homepage-action-field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(15, 91, 82, 0.22);
  border-radius: 12px;
  background: #fff;
  color: #173c38;
  font: inherit;
  outline: none;
}

.homepage-action-field input {
  min-height: 48px;
  padding: 0 14px;
}

.homepage-action-field textarea {
  min-height: 250px;
  padding: 14px;
  resize: vertical;
}

.homepage-action-field input:focus,
.homepage-action-field textarea:focus {
  border-color: #178a7d;
  box-shadow: 0 0 0 3px rgba(23, 138, 125, 0.12);
}

.homepage-action-composer-hint {
  margin: -6px 0 0;
  color: #66736f;
  font-size: 0.88rem;
  line-height: 1.45;
}

.homepage-action-composer-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 2px 0 16px;
  border-bottom: 1px solid rgba(15, 91, 82, 0.14);
}

.homepage-action-composer-tools button {
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(15, 91, 82, 0.18);
  border-radius: 50%;
  padding: 0;
  background: #f8fbfa;
  color: #244f49;
  font: inherit;
  font-size: 1rem;
  cursor: pointer;
}

.homepage-action-composer-tools button:hover,
.homepage-action-composer-tools button:focus-visible {
  border-color: rgba(15, 91, 82, 0.42);
  background: #eef7f5;
}

.homepage-action-composer-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 8px;
}

.homepage-action-composer-actions button {
  min-height: 42px;
  border-radius: 999px;
  padding: 0 18px;
  font: inherit;
  font-weight: 700;
}

.homepage-action-draft-button {
  border: 1px solid rgba(15, 91, 82, 0.18);
  background: #f7f9f8;
  color: #8a9592;
}

.homepage-action-publish-button {
  border: 0;
  background: #dfe5e3;
  color: #8a9592;
}

@media (max-width: 760px) {
  .homepage-action-composer {
    min-height: 560px;
    padding: 16px;
    border-radius: 14px;
  }

  .homepage-action-composer-title-row h2 {
    font-size: 1.35rem;
  }

  .homepage-action-field textarea {
    min-height: 210px;
  }

  .homepage-action-composer-actions {
    justify-content: stretch;
  }

  .homepage-action-composer-actions button {
    flex: 1;
  }
}

/* S7-A — static Canonical Assistant foundation. */
.homepage-action-composer-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px;
  gap: 18px;
  align-items: start;
}

.homepage-canonical-assistant {
  min-width: 0;
  border: 1px solid rgba(15, 91, 82, 0.16);
  border-radius: 14px;
  background: #f8fbfa;
  overflow: hidden;
}

.homepage-canonical-assistant > h3 {
  margin: 0;
  padding: 14px 14px 12px;
  border-bottom: 1px solid rgba(15, 91, 82, 0.14);
  color: #183d39;
  font-size: 0.95rem;
}


.homepage-canonical-assistant-intro {
  margin: 10px;
  padding: 12px;
  border: 1px solid rgba(15, 91, 82, 0.10);
  border-radius: 10px;
  background: #ffffff;
}

.homepage-canonical-assistant-intro strong {
  display: block;
  margin-bottom: 5px;
  color: #244f49;
  font-size: 0.79rem;
  line-height: 1.35;
}

.homepage-canonical-assistant-intro p {
  margin: 0;
  color: #7a8784;
  font-size: 0.74rem;
  line-height: 1.4;
}

.homepage-canonical-assistant-section {
  margin: 0 10px 10px;
  padding: 11px 12px;
  border: 1px solid rgba(15, 91, 82, 0.10);
  border-radius: 10px;
  background: #ffffff;
}

.homepage-canonical-assistant-section:last-child {
  margin-bottom: 10px;
}

.homepage-canonical-assistant-section h4 {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 5px;
  color: #244f49;
  font-size: 0.82rem;
}

.homepage-canonical-assistant-section p {
  margin: 0;
  color: #7a8784;
  font-size: 0.76rem;
  line-height: 1.4;
}

@media (max-width: 760px) {
  .homepage-action-composer-layout {
    grid-template-columns: 1fr;
  }

  .homepage-canonical-assistant {
    order: 2;
  }
}

/* S7-C — live assistant demo states; no backend or canonical search. */
.homepage-canonical-assistant-intro.is-analyzing strong::before,
.homepage-canonical-assistant-section.is-searching [data-assistant-status]::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 6px;
  border: 2px solid rgba(15, 91, 82, 0.22);
  border-top-color: #0f5b52;
  border-radius: 50%;
  vertical-align: -1px;
  animation: homepage-assistant-spin 0.8s linear infinite;
}

.homepage-canonical-assistant-section.has-demo-match {
  border-color: rgba(15, 143, 119, 0.34);
  background: #f2fbf7;
}

.homepage-canonical-assistant-section.has-demo-match [data-assistant-status] {
  color: #0b6c5b;
  font-weight: 700;
}

@keyframes homepage-assistant-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .homepage-canonical-assistant-intro.is-analyzing strong::before,
  .homepage-canonical-assistant-section.is-searching [data-assistant-status]::before {
    animation: none;
  }
}


/* S7-D — selectable demo canonical suggestion; frontend-only state. */
.homepage-canonical-assistant-section [data-assistant-status] {
  display: block;
}

.homepage-assistant-match-name,
.homepage-assistant-match-meta {
  display: block;
}

.homepage-assistant-match-name {
  color: #0b5f52;
  font-weight: 700;
}

.homepage-assistant-match-meta {
  margin-top: 3px;
  color: #65766f;
  font-size: 12px;
  font-weight: 400;
}

.homepage-assistant-link-toggle {
  width: 100%;
  margin-top: 9px;
  padding: 7px 10px;
  border: 1px solid rgba(15, 143, 119, 0.34);
  border-radius: 9px;
  background: #ffffff;
  color: #0b6c5b;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.homepage-assistant-link-toggle:hover,
.homepage-assistant-link-toggle:focus-visible {
  background: #eaf8f3;
}

.homepage-canonical-assistant-section.is-linked {
  border-color: rgba(15, 143, 119, 0.52);
  background: #eaf8f3;
}

.homepage-canonical-assistant-section.is-linked .homepage-assistant-link-toggle {
  border-color: rgba(123, 87, 50, 0.28);
  color: #7b5732;
}

/* S7-E — multiple selectable demo suggestions across assistant categories. */
.homepage-assistant-match-list {
  display: grid;
  gap: 9px;
}

.homepage-assistant-match-item {
  padding: 9px;
  border: 1px solid rgba(15, 91, 82, 0.12);
  border-radius: 9px;
  background: #ffffff;
}

.homepage-assistant-match-item.is-linked {
  border-color: rgba(15, 143, 119, 0.48);
  background: #eaf8f3;
}

.homepage-assistant-match-item + .homepage-assistant-match-item {
  margin-top: 0;
}


/* S7-F — selected entities summary; frontend-only composer state. */
.homepage-assistant-selected {
  margin: 0 10px 10px;
  padding: 11px 12px;
  border: 1px solid rgba(15, 143, 119, 0.24);
  border-radius: 10px;
  background: #eef9f5;
}

.homepage-assistant-selected h4 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 0 0 8px;
  color: #244f49;
  font-size: 0.8rem;
}

.homepage-assistant-selected h4 span {
  display: inline-flex;
  min-width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #0f8f77;
  color: #ffffff;
  font-size: 11px;
}

.homepage-assistant-selected-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.homepage-assistant-selected-list p {
  margin: 0;
  color: #6f7f7a;
  font-size: 0.72rem;
  line-height: 1.4;
}

.homepage-assistant-selected-chip {
  max-width: 100%;
  padding: 6px 8px;
  border: 1px solid rgba(15, 143, 119, 0.28);
  border-radius: 999px;
  background: #ffffff;
  color: #0b6c5b;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  text-align: left;
  cursor: pointer;
}

.homepage-assistant-selected-chip:hover,
.homepage-assistant-selected-chip:focus-visible {
  background: #e2f5ee;
}

/* S7-G — unified Knowledge Assistant suggestions list. */
.homepage-assistant-suggestions {
  margin: 0 10px 10px;
  padding: 11px 12px;
  border: 1px solid rgba(15, 91, 82, 0.16);
  border-radius: 10px;
  background: #ffffff;
}

.homepage-assistant-suggestions h4 {
  margin: 0 0 9px;
  color: #244f49;
  font-size: 0.8rem;
}

.homepage-assistant-suggestions-list {
  display: grid;
  gap: 6px;
}

.homepage-assistant-suggestions-list p {
  margin: 0;
  color: #6f7f7a;
  font-size: 0.72rem;
  line-height: 1.4;
}

.homepage-assistant-suggestions-list.is-searching p {
  opacity: 0.72;
}

.homepage-assistant-unified-item {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 28px;
  align-items: center;
  gap: 7px;
  padding: 8px;
  border: 1px solid rgba(15, 91, 82, 0.12);
  border-radius: 9px;
  background: #fbfdfc;
}

.homepage-assistant-unified-item.is-linked {
  border-color: rgba(15, 143, 119, 0.42);
  background: #eaf8f3;
}

.homepage-assistant-unified-icon {
  font-size: 14px;
  text-align: center;
}

.homepage-assistant-unified-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.homepage-assistant-unified-copy strong {
  overflow: hidden;
  color: #154d45;
  font-size: 0.72rem;
  line-height: 1.25;
  text-overflow: ellipsis;
}

.homepage-assistant-unified-copy small {
  color: #77837f;
  font-size: 0.64rem;
}

.homepage-assistant-unified-toggle {
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(15, 143, 119, 0.32);
  border-radius: 999px;
  background: #ffffff;
  color: #0b6c5b;
  font: inherit;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.homepage-assistant-unified-toggle:hover,
.homepage-assistant-unified-toggle:focus-visible {
  background: #e2f5ee;
}


/* S7-H — Knowledge Assistant compact polish and frontend design lock. */
.homepage-canonical-assistant-intro {
  margin: 0 10px 9px;
  padding: 10px 11px;
}

.homepage-canonical-assistant-intro strong {
  font-size: 0.76rem;
}

.homepage-canonical-assistant-intro p {
  margin-top: 4px;
  font-size: 0.68rem;
  line-height: 1.35;
}

.homepage-assistant-suggestions {
  padding: 9px 10px;
}

.homepage-assistant-suggestions h4 {
  margin-bottom: 7px;
  font-size: 0.74rem;
}

.homepage-assistant-suggestions-list {
  gap: 4px;
}

.homepage-assistant-unified-item {
  grid-template-columns: 18px minmax(0, 1fr) 26px;
  gap: 5px;
  min-height: 34px;
  padding: 5px 6px;
  border-radius: 8px;
}

.homepage-assistant-unified-icon {
  font-size: 12px;
}

.homepage-assistant-unified-copy {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
}

.homepage-assistant-unified-copy strong {
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  font-size: 0.68rem;
  line-height: 1.15;
}

.homepage-assistant-type-badge {
  flex: 0 0 auto;
  padding: 2px 5px;
  border: 1px solid rgba(15, 91, 82, 0.12);
  border-radius: 999px;
  background: #eef3f1;
  color: #5f706b;
  font-size: 0.55rem !important;
  font-weight: 700;
  line-height: 1;
}

.homepage-assistant-unified-toggle {
  width: 24px;
  height: 24px;
  font-size: 14px;
}

.homepage-assistant-selected {
  margin: 0 10px 10px;
  padding: 9px 10px;
}

.homepage-assistant-selected h4 {
  margin-bottom: 7px;
  font-size: 0.74rem;
}

.homepage-assistant-selected-list {
  gap: 5px;
}

.homepage-assistant-selected-chip {
  padding: 5px 7px;
  font-size: 10px;
  line-height: 1.1;
}


/* S7-I — remove redundant assistant status card and keep full suggestion names visible. */
.homepage-assistant-suggestions {
  margin-top: 10px;
}

.homepage-assistant-unified-copy {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 3px;
}

.homepage-assistant-unified-copy strong {
  overflow: visible;
  white-space: normal;
  text-overflow: clip;
  overflow-wrap: anywhere;
  font-size: 0.69rem;
  line-height: 1.22;
}

.homepage-assistant-type-badge {
  justify-self: start;
}

/* AUTO-ENTITY-22: read-only Workspace Knowledge Panel */
.workspace-knowledge-panel {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 16px;
  background: #fff;
}

.workspace-knowledge-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.workspace-knowledge-heading span {
  display: block;
  margin-bottom: 3px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: #6b7280;
}

.workspace-knowledge-heading h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.2;
}

.workspace-knowledge-heading strong {
  min-width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #f3f4f6;
  font-size: 13px;
}

.workspace-knowledge-groups {
  display: grid;
  gap: 12px;
}

.workspace-knowledge-group h4 {
  margin: 0 0 6px;
  font-size: 12px;
  text-transform: capitalize;
  color: #4b5563;
}

.workspace-knowledge-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  color: inherit;
  text-decoration: none;
}

.workspace-knowledge-item span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 650;
}

.workspace-knowledge-item small {
  flex: 0 0 auto;
  font-size: 10px;
  text-transform: uppercase;
  color: #6b7280;
}


.homepage-knowledge-context {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 10px 0 0;
  padding: 10px 0;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  border-bottom: 1px solid rgba(17, 24, 39, 0.08);
}

.homepage-knowledge-label {
  flex: 0 0 auto;
  padding-top: 2px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6b7280;
}

.homepage-knowledge-items {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.homepage-knowledge-item,
.homepage-knowledge-more {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 26px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #f3f4f6;
  color: #374151;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
  text-decoration: none;
}

.homepage-knowledge-item:hover,
.homepage-knowledge-item:focus-visible {
  background: #e5e7eb;
  color: #111827;
}

.homepage-knowledge-more {
  color: #6b7280;
}

@media (max-width: 720px) {
  .homepage-knowledge-context {
    display: block;
  }

  .homepage-knowledge-label {
    display: block;
    margin-bottom: 7px;
  }
}

/* Homepage left rail: thin scrollbar, hidden until the rail is used. */
@media (min-width: 861px) {
  body:not(.entity-workspace-lock) .left-column {
    scrollbar-width: thin;
    scrollbar-color: transparent transparent;
  }

  body:not(.entity-workspace-lock) .left-column:hover,
  body:not(.entity-workspace-lock) .left-column:focus-within {
    scrollbar-color: rgba(78, 86, 98, 0.34) transparent;
  }

  body:not(.entity-workspace-lock) .left-column::-webkit-scrollbar {
    width: 4px;
  }

  body:not(.entity-workspace-lock) .left-column::-webkit-scrollbar-track {
    background: transparent;
  }

  body:not(.entity-workspace-lock) .left-column::-webkit-scrollbar-thumb {
    min-height: 36px;
    border-radius: 999px;
    background: transparent;
  }

  body:not(.entity-workspace-lock) .left-column:hover::-webkit-scrollbar-thumb,
  body:not(.entity-workspace-lock) .left-column:focus-within::-webkit-scrollbar-thumb {
    background: rgba(78, 86, 98, 0.34);
  }

  body:not(.entity-workspace-lock) .left-column::-webkit-scrollbar-thumb:hover {
    background: rgba(78, 86, 98, 0.52);
  }
}

/* Homepage center column: remove the outer card border and shadow only. */
body:not(.entity-workspace-lock) .center-column .living-case-card,
body:not(.entity-workspace-lock) .center-column .living-case-card:hover,
body:not(.entity-workspace-lock) .center-column .story-card,
body:not(.entity-workspace-lock) .center-column .story-card:hover {
  border: 0 !important;
  border-left: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* Homepage desktop header alignment: mirror the three-column homepage grid. */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .header-inner {
    display: grid;
    grid-template-columns: 300px 580px 320px;
    gap: 16px;
    justify-content: center;
  }

  body:not(.entity-workspace-lock) .logo {
    grid-column: 1;
    justify-self: start;
  }

  body:not(.entity-workspace-lock) .homepage-feed-search {
    grid-column: 2;
    justify-self: stretch;
    width: 580px;
    min-width: 580px;
    max-width: 580px;
    margin: 0;
  }

  body:not(.entity-workspace-lock) .header-nav {
    grid-column: 3;
    justify-self: end;
  }
}

/* Center the Homepage identity exactly inside the middle column. */
body:not(.entity-workspace-lock) .center-column::before {
  width: 100%;
  text-align: center;
}


/* TSEMOU desktop focus layout: collapse either side rail and give its space to the center. */
@media (min-width: 1201px) {
  .homepage-grid {
    transition: grid-template-columns 180ms ease;
  }

  .tsemou-layout-toggle {
    position: sticky;
    top: 90px;
    z-index: 8;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    margin: 0 0 10px;
    padding: 0;
    border: 1px solid #d5dae2;
    border-radius: 50%;
    background: #fff;
    color: #283142;
    box-shadow: 0 4px 14px rgba(16, 24, 40, 0.10);
    cursor: pointer;
    font-size: 1rem;
    line-height: 1;
  }

  .left-column > .tsemou-layout-toggle {
    margin-left: auto;
    margin-right: 4px;
  }

  .right-column > .tsemou-layout-toggle {
    /* Keep the control attached to the visible edge of the independently
       scrolling right rail. Negative bottom margin removes its layout height,
       so it never creates an empty block above ACTION – YOUR NEWS. */
    position: sticky;
    top: 14px;
    left: 0;
    z-index: 40;
    margin: 0 0 -34px;
    transform: translateX(-50%);
  }

  .tsemou-layout-toggle:hover,
  .tsemou-layout-toggle:focus-visible {
    border-color: #8f9aab;
    box-shadow: 0 0 0 3px rgba(95, 53, 243, 0.12);
    outline: 0;
  }

  body.tsemou-left-collapsed .homepage-grid {
    grid-template-columns: 56px minmax(580px, 824px) 320px;
  }

  body.tsemou-right-collapsed .homepage-grid {
    grid-template-columns: 300px minmax(580px, 824px) 56px;
  }

  body.tsemou-left-collapsed.tsemou-right-collapsed .homepage-grid {
    grid-template-columns: 56px minmax(580px, 1088px) 56px;
  }

  body.tsemou-left-collapsed .left-column > :not(.tsemou-layout-toggle),
  body.tsemou-right-collapsed .right-column > :not(.tsemou-layout-toggle) {
    display: none !important;
  }

  body.tsemou-left-collapsed .left-column,
  body.tsemou-right-collapsed .right-column {
    overflow: visible;
    padding-left: 6px !important;
    padding-right: 6px !important;
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  /* On restore, every right-rail content wrapper must immediately occupy the
     full 320px track. This prevents stale intrinsic widths or hidden wrappers
     from leaving a white area after expand. */
  body:not(.tsemou-right-collapsed) .right-column {
    width: 100% !important;
    min-width: 0 !important;
  }

  body:not(.tsemou-right-collapsed) .right-column > :not(.tsemou-layout-toggle),
  body:not(.tsemou-right-collapsed) .right-column .right-news-cta,
  body:not(.tsemou-right-collapsed) .right-column .live-news {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    box-sizing: border-box;
  }

  body.tsemou-left-collapsed .center-column,
  body.tsemou-right-collapsed .center-column,
  body.tsemou-left-collapsed .case-workspace-primary-surface,
  body.tsemou-right-collapsed .case-workspace-primary-surface {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.tsemou-left-collapsed .center-column > *,
  body.tsemou-right-collapsed .center-column > *,
  body.tsemou-left-collapsed .case-workspace-primary-surface > *,
  body.tsemou-right-collapsed .case-workspace-primary-surface > * {
    max-width: none !important;
  }

  body:not(.entity-workspace-lock).tsemou-left-collapsed .header-inner {
    grid-template-columns: 56px minmax(580px, 824px) 320px;
  }

  body:not(.entity-workspace-lock).tsemou-right-collapsed .header-inner {
    grid-template-columns: 300px minmax(580px, 824px) 56px;
  }

  body:not(.entity-workspace-lock).tsemou-left-collapsed.tsemou-right-collapsed .header-inner {
    grid-template-columns: 56px minmax(580px, 1088px) 56px;
  }

  body:not(.entity-workspace-lock).tsemou-left-collapsed .homepage-feed-search,
  body:not(.entity-workspace-lock).tsemou-right-collapsed .homepage-feed-search {
    width: 100%;
    min-width: 0;
    max-width: none;
  }

  body.entity-workspace-lock.tsemou-left-collapsed main,
  body.entity-workspace-lock.tsemou-right-collapsed main {
    width: min(1272px, calc(100% - 24px));
  }
}


/* Focus layout media expansion: when a side rail collapses, the homepage media
   grows with the center column instead of leaving unused white space. */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock).tsemou-left-collapsed .center-column .living-case-card,
  body:not(.entity-workspace-lock).tsemou-right-collapsed .center-column .living-case-card,
  body:not(.entity-workspace-lock).tsemou-left-collapsed .center-column .story-feed,
  body:not(.entity-workspace-lock).tsemou-right-collapsed .center-column .story-feed {
    width: 100% !important;
    max-width: none !important;
  }

  body:not(.entity-workspace-lock).tsemou-left-collapsed .center-column .living-case-card .card-media.card-media-generic,
  body:not(.entity-workspace-lock).tsemou-right-collapsed .center-column .living-case-card .card-media.card-media-generic {
    width: 100% !important;
    height: 570px !important;
    max-width: none !important;
    aspect-ratio: auto;
    justify-self: stretch;
  }
}

@media (max-width: 1200px) {
  .tsemou-layout-toggle {
    display: none !important;
  }
}


/* Right rail: keep vertical scrolling functional while hiding the visible scrollbar. */
@media (min-width: 1201px) {
  .right-column {
    -ms-overflow-style: none;
    scrollbar-width: none !important;
  }

  .right-column::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none;
  }
}

/* Desktop scroll isolation: the page/center feed is the only vertical scroll
   surface. Side rails stay anchored from the first scroll pixel and no longer
   retain or consume their own vertical scroll position. */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .left-column,
  body:not(.entity-workspace-lock) .right-column {
    position: sticky;
    top: 64px;
    max-height: none;
    overflow-x: visible;
    overflow-y: visible;
    overscroll-behavior: none;
    -ms-overflow-style: auto;
    scrollbar-width: auto !important;
  }

  body:not(.entity-workspace-lock) .left-column::-webkit-scrollbar,
  body:not(.entity-workspace-lock) .right-column::-webkit-scrollbar {
    width: auto !important;
    height: auto !important;
    display: initial;
  }
}


/* RT-2L — Story Workspace related Needs */
.workspace-related-panel { padding: 14px; border-top: 1px solid rgba(15, 42, 67, .12); }
.workspace-related-list { display: grid; gap: 10px; }
.workspace-related-item { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px; border: 1px solid rgba(15, 42, 67, .14); border-radius: 14px; background: #fff; }
.workspace-related-item h3 { margin: 4px 0; font-size: 16px; }
.workspace-related-item p { margin: 0; color: #64748b; font-size: 13px; }
.workspace-related-type { font-size: 11px; font-weight: 700; letter-spacing: .08em; color: #6d28d9; }
.workspace-related-open { flex: 0 0 auto; padding: 8px 12px; border: 1px solid rgba(15, 42, 67, .18); border-radius: 10px; text-decoration: none; font-weight: 700; }
.workspace-related-empty { margin: 0; padding: 18px; text-align: center; color: #64748b; }


/* RT-2M — Native Need Workspace Integration */
.workspace-needs-section,
.workspace-need-origin { padding: 16px; border-top: 1px solid rgba(15, 42, 67, .12); }
.workspace-needs-heading,
.workspace-need-origin-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.workspace-needs-heading h3,
.workspace-need-origin h3 { margin: 4px 0 0; font-size: 17px; }
.workspace-needs-count { min-width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(15, 42, 67, .14); border-radius: 999px; font-weight: 700; }
.workspace-need-card { align-items: flex-start; }
.workspace-need-copy { min-width: 0; }
.workspace-need-description { margin: 6px 0 !important; color: #334155 !important; white-space: pre-wrap; }
.workspace-need-origin p { margin: 6px 0 0; color: #475569; white-space: pre-wrap; }
.need-workspace .workspace-story-type { color: #6d28d9; }
@media (max-width: 720px) {
  .workspace-related-item,
  .workspace-needs-heading,
  .workspace-need-origin-row { align-items: stretch; flex-direction: column; }
  .workspace-related-open { align-self: flex-start; }
}

/* RT-3G — keep the shared native Entity composer fully reachable inside the right rail. */
.right-column-native-entity-composer,
.right-column-native-need-composer {
  position: static;
  inset: auto;
  width: 100%;
  max-width: none;
  max-height: none;
  box-sizing: border-box;
  margin-top: 10px;
  overflow: visible;
  box-shadow: none;
}

@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .right-column.right-column--entity-composer-open,
  body.entity-workspace-lock .right-column.right-column--entity-composer-open,
  body:not(.entity-workspace-lock) .right-column.right-column--need-composer-open,
  body.entity-workspace-lock .right-column.right-column--need-composer-open {
    max-height: calc(100vh - 72px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin !important;
    padding-bottom: 18px;
  }

  body:not(.entity-workspace-lock) .right-column.right-column--entity-composer-open::-webkit-scrollbar,
  body.entity-workspace-lock .right-column.right-column--entity-composer-open::-webkit-scrollbar,
  body:not(.entity-workspace-lock) .right-column.right-column--need-composer-open::-webkit-scrollbar,
  body.entity-workspace-lock .right-column.right-column--need-composer-open::-webkit-scrollbar {
    display: block;
    width: 8px !important;
    height: 8px !important;
  }
}


/* RT-3D — Native Solution Workspace Integration */
.solution-workspace .workspace-story-type { color: #0f766e; }
.solution-workspace .workspace-need-origin { border-top: 1px solid rgba(15, 42, 67, .12); }


/* RT-3E — Story Workspace related Solutions */
.workspace-related-type--solution { color: #047857; }
.workspace-solution-card { border-color: rgba(4, 120, 87, .2); }

/* RT-4E — Story ↔ Help Integration */
.workspace-related-type--help { color: #9a3412; }
.workspace-help-card { border-left: 3px solid rgba(154, 52, 18, 0.22); }


/* RT-4G — Help runtime validation and polish */
.help-workspace .workspace-story-type,
.help-workspace .workspace-related-type { color: #9a3412; }
.help-workspace .workspace-need-origin { border-top: 1px solid rgba(154, 52, 18, .14); }
.workspace-help-card { align-items: flex-start; }
.workspace-help-card .workspace-need-copy { min-width: 0; flex: 1 1 auto; }
.workspace-help-card .workspace-need-description { white-space: pre-wrap; overflow-wrap: anywhere; }
.workspace-help-identity { font-size: 12px !important; opacity: .78; }
.entity-action-panel--composer .entity-action-feedback:not(:empty) { min-height: 20px; margin-top: 2px; }
.entity-need-composer-submit.is-loading { cursor: progress; }

@media (max-width: 760px) {
  .workspace-help-card { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .workspace-help-card .entity-controls { width: 100%; }
  .workspace-help-card .entity-controls button,
  .workspace-help-card .entity-controls a { min-height: 44px; }
  .entity-action-panel--composer .entity-need-composer-actions { position: sticky; bottom: 0; background: inherit; padding-top: 10px; }
  .entity-action-panel--composer .entity-need-composer-cancel,
  .entity-action-panel--composer .entity-need-composer-submit { min-height: 44px; }
}

/* RT-5E Story ↔ Support integration */
.workspace-related-type--support { color: #1d4ed8; }
.workspace-support-card { border-left: 3px solid rgba(29, 78, 216, 0.22); align-items: flex-start; }
.workspace-support-card .workspace-need-copy { min-width: 0; flex: 1 1 auto; }
.workspace-support-card .workspace-need-description { white-space: pre-wrap; overflow-wrap: anywhere; }
.workspace-support-identity { margin: 8px 0 0; font-size: 12px; opacity: .68; }
@media (max-width: 720px) {
  .workspace-support-card { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .workspace-support-card .entity-controls { width: 100%; }
  .workspace-support-card .entity-controls button,
  .workspace-support-card .entity-controls a { min-height: 44px; }
}


/* RT-5G — Support runtime validation and polish */
.support-workspace .workspace-story-type,
.support-workspace .workspace-related-type { color: #1d4ed8; }
.support-workspace .workspace-need-origin { border-top: 1px solid rgba(29, 78, 216, .14); }
.workspace-support-identity { opacity: .78; }

@media (max-width: 760px) {
  .workspace-support-card { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .workspace-support-card .entity-controls { width: 100%; }
  .workspace-support-card .entity-controls button,
  .workspace-support-card .entity-controls a { min-height: 44px; }
}

/* DC-2B: ranked, popular and recent destination suggestions. */
.destination-chain-section-label {
  padding: 7px 10px 5px;
  background: #f7f9fb;
  color: #6b7884;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-bottom: 1px solid #edf1f4;
}

.destination-chain-option--recent::before {
  content: "↺ ";
  color: #6c7b88;
}

.destination-chain-option--create {
  background: #fbfcfd;
}

/* DC-2E: compact category toggles and readable in-flow suggestion panel. */
.destination-category-native-select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.destination-category-toggle {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  width: 100%;
}

.destination-category-toggle__button {
  min-width: 0;
  min-height: 32px;
  border: 1px solid #cfd9e1;
  border-radius: 999px;
  background: #ffffff;
  color: #334352;
  padding: 6px 8px;
  font: inherit;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease;
}

.destination-category-toggle__button:hover,
.destination-category-toggle__button:focus-visible {
  border-color: #8fa7b8;
  background: #f5f8fa;
  outline: none;
}

.destination-category-toggle__button.is-active {
  border-color: #294154;
  background: #294154;
  color: #ffffff;
}

.destination-chain-suggestions {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  width: 100%;
  max-width: 100%;
  max-height: min(46vh, 420px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  box-sizing: border-box;
  z-index: auto;
  box-shadow: 0 5px 16px rgba(31, 43, 54, 0.1);
}

.destination-chain-option,
.destination-chain-section-label {
  box-sizing: border-box;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

.destination-chain-option {
  min-height: 38px;
  padding: 10px 11px;
  line-height: 1.35;
}

@media (max-width: 760px) {
  .destination-category-toggle { gap: 5px; }
  .destination-category-toggle__button {
    min-height: 36px;
    padding-inline: 6px;
    font-size: 0.7rem;
  }
  .destination-chain-suggestions {
    max-height: min(42vh, 360px);
  }
}


/* A1 — Need ↔ Give match cards. Read-only presentation of stored matches. */
.workspace-match-recommendations { padding: 16px; border-top: 1px solid rgba(15, 42, 67, .12); }
.workspace-match-heading p { margin: 4px 0 0; color: #64748b; font-size: 12px; }
.workspace-match-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
.workspace-match-card { display: flex; min-width: 0; flex-direction: column; gap: 13px; padding: 15px; border: 1px solid rgba(15, 42, 67, .14); border-radius: 16px; background: #fff; box-shadow: 0 6px 18px rgba(15, 23, 42, .05); }
.workspace-match-card__topline { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.workspace-match-score { display: inline-flex; align-items: center; justify-content: center; min-height: 24px; padding: 0 8px; border-radius: 999px; background: rgba(109, 40, 217, .09); color: #6d28d9; font-size: 11px; font-weight: 800; white-space: nowrap; }
.workspace-match-person { display: flex; align-items: center; gap: 10px; min-width: 0; }
.workspace-match-avatar { display: inline-flex; width: 44px; height: 44px; flex: 0 0 44px; align-items: center; justify-content: center; overflow: hidden; border-radius: 50%; background: #eef2ff; color: #4338ca; font-size: 15px; font-weight: 800; }
.workspace-match-avatar img { width: 100%; height: 100%; display: block; object-fit: cover; }
.workspace-match-person__copy { min-width: 0; }
.workspace-match-person__copy strong,
.workspace-match-person__copy span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-match-person__copy strong { color: #0f172a; font-size: 14px; }
.workspace-match-person__copy span { margin-top: 3px; color: #475569; font-size: 12px; }
.workspace-match-details { display: grid; gap: 8px; margin: 0; }
.workspace-match-details div { display: grid; grid-template-columns: 82px minmax(0, 1fr); gap: 8px; }
.workspace-match-details dt { color: #94a3b8; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.workspace-match-details dd { min-width: 0; margin: 0; color: #334155; font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }
.workspace-match-open { display: inline-flex; min-height: 36px; margin-top: auto; align-items: center; justify-content: center; border: 1px solid rgba(15, 42, 67, .18); border-radius: 10px; color: #0f172a; font-size: 12px; font-weight: 800; text-decoration: none; }
.workspace-match-open:hover { border-color: rgba(109, 40, 217, .42); color: #6d28d9; }
.give-workspace .workspace-story-type { color: #0f766e; }
@media (max-width: 720px) {
  .workspace-match-grid { grid-template-columns: 1fr; }
}

/* A1-FIX: Recommended Matches must remain visibly present even with zero matches. */
.workspace-match-recommendations {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 14px;
  overflow: visible;
}
.workspace-match-heading { margin: 0; }
.workspace-match-empty {
  display: grid;
  gap: 6px;
  min-height: 92px;
  padding: 16px;
  border: 1px dashed rgba(15, 42, 67, .22);
  border-radius: 14px;
  background: rgba(255, 255, 255, .62);
}
.workspace-match-empty strong { color: #0f2a43; font-size: 14px; }
.workspace-match-empty p { margin: 0; color: rgba(15, 42, 67, .72); font-size: 13px; line-height: 1.45; }
.workspace-match-grid { width: 100%; min-width: 0; }

/* Build 1 — Need/Give creation success state using canonical navigation. */
.entity-action-panel--creation-success {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.entity-creation-success {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(15, 118, 110, 0.22);
  border-radius: 14px;
  background: rgba(240, 253, 250, 0.9);
}

.entity-creation-success__mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #0f766e;
  color: #fff;
  font-weight: 800;
  line-height: 1;
}

.entity-creation-success__copy {
  min-width: 0;
}

.entity-creation-success__title {
  display: block;
  color: #17324d;
  font-size: 15px;
  line-height: 1.35;
}

.entity-creation-success__description {
  margin: 5px 0 0;
  color: #526474;
  font-size: 13px;
  line-height: 1.45;
}

.entity-creation-success__actions {
  display: flex;
  gap: 10px;
  align-items: stretch;
}

.entity-creation-success__actions > * {
  flex: 1 1 0;
}

.entity-creation-success__open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}


/* Build 2: Need / Give Workspace completion */
.workspace-need-give-details {
  display: grid;
  gap: 14px;
  padding: 18px;
}
.workspace-need-give-details__heading h3 {
  margin: 4px 0 0;
  font-size: 1.15rem;
}
.workspace-need-give-description {
  margin: 0;
  line-height: 1.55;
  white-space: pre-wrap;
}
.workspace-need-give-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}
.workspace-need-give-facts > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(25, 45, 70, 0.12);
  border-radius: 12px;
  background: rgba(247, 249, 252, 0.88);
}
.workspace-need-give-facts dt {
  margin-bottom: 5px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .62;
}
.workspace-need-give-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
  font-weight: 650;
}
.workspace-need-give-author {
  display: flex;
  align-items: center;
  gap: 10px;
}
.workspace-need-give-author div {
  display: grid;
  gap: 2px;
}
.workspace-need-give-author small { opacity: .65; }
@media (max-width: 720px) {
  .workspace-need-give-facts { grid-template-columns: 1fr; }
}

/* MATCH-UX-1 — clearer, action-oriented recommendation cards. UI only. */
.workspace-match-card--ux1 {
  gap: 16px;
  padding: 17px;
  border-radius: 18px;
  box-shadow: 0 9px 24px rgba(15, 23, 42, .07);
}
.workspace-match-card__eyebrow {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 7px;
  color: #0f766e;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.workspace-match-status-dot {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 999px;
  background: #10b981;
  box-shadow: 0 0 0 4px rgba(16, 185, 129, .12);
}
.workspace-match-score {
  min-height: 38px;
  padding: 5px 10px;
  flex-direction: column;
  line-height: 1.05;
}
.workspace-match-score strong,
.workspace-match-score small { display: block; }
.workspace-match-score strong { font-size: 10px; }
.workspace-match-score small { margin-top: 3px; font-size: 12px; font-weight: 900; }
.workspace-match-score--exact { background: rgba(16, 185, 129, .11); color: #047857; }
.workspace-match-score--related { background: rgba(109, 40, 217, .09); color: #6d28d9; }
.workspace-match-avatar--large {
  width:42px;
  height:42px;
  flex-basis: 52px;
  font-size: 18px;
}
.workspace-match-intent-label {
  color: #0f766e !important;
  font-weight: 700;
}
.workspace-match-why {
  display: grid;
  gap: 7px;
  padding: 12px;
  border: 1px solid rgba(15, 118, 110, .13);
  border-radius: 13px;
  background: rgba(240, 253, 250, .72);
}
.workspace-match-why > strong { color: #0f172a; font-size: 12px; }
.workspace-match-why > span {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #334155;
  font-size: 12px;
  font-weight: 650;
}
.workspace-match-why > span b { color: #059669; font-size: 13px; }
.workspace-match-why p {
  margin: 2px 0 0;
  color: #0f766e;
  font-size: 12px;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.workspace-match-preview {
  display: -webkit-box;
  margin: -2px 0 0;
  overflow: hidden;
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.workspace-match-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  margin-top: auto;
}
.workspace-match-actions .workspace-match-open { margin-top: 0; }
.workspace-match-open {
  min-height: 40px;
  border-color: #6d28d9;
  background: #6d28d9;
  color: #fff;
}
.workspace-match-open:hover { border-color: #5b21b6; background: #5b21b6; color: #fff; }
.workspace-match-discussion {
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid rgba(15, 42, 67, .14);
  border-radius: 10px;
  background: #f8fafc;
  color: #94a3b8;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  cursor: not-allowed;
}
@media (max-width: 460px) {
  .workspace-match-actions { grid-template-columns: 1fr; }
}

/* MATCH-UX-2 — richer identity, destination and statement preview. UI only. */
.workspace-match-card--ux2 {
  position: relative;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.workspace-match-card--ux2:hover {
  transform: translateY(-2px);
  border-color: rgba(109, 40, 217, .24);
  box-shadow: 0 14px 32px rgba(15, 23, 42, .10);
}
.workspace-match-member-label {
  margin-top: 2px !important;
  color: #64748b !important;
  font-size: 11px !important;
  font-weight: 600;
}
.workspace-match-card--ux2 .workspace-match-intent-label { margin-top: 4px; }
.workspace-match-card--ux2 .workspace-match-why { gap: 8px; }
.workspace-match-destination {
  display: grid;
  gap: 7px;
  padding: 11px 12px;
  border: 1px solid rgba(109, 40, 217, .12);
  border-radius: 13px;
  background: rgba(245, 243, 255, .64);
}
.workspace-match-destination__label,
.workspace-match-preview-block > span {
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.workspace-match-breadcrumb {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
}
.workspace-match-breadcrumb__segment {
  display: inline-flex;
  min-height: 25px;
  max-width: 100%;
  align-items: center;
  padding: 3px 8px;
  border: 1px solid rgba(109, 40, 217, .12);
  border-radius: 999px;
  background: #fff;
  color: #5b21b6;
  font-size: 11px;
  font-weight: 750;
  overflow-wrap: anywhere;
}
.workspace-match-breadcrumb__arrow {
  color: #a78bfa;
  font-size: 15px;
  font-weight: 800;
}
.workspace-match-preview-block {
  display: grid;
  gap: 6px;
  padding: 11px 12px;
  border-left: 3px solid rgba(109, 40, 217, .42);
  border-radius: 0 11px 11px 0;
  background: #f8fafc;
}
.workspace-match-preview-block .workspace-match-preview {
  margin: 0;
  color: #334155;
  font-size: 12px;
  line-height: 1.55;
}
.workspace-match-discussion {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.workspace-match-discussion span { font-size: 13px; filter: grayscale(1); opacity: .7; }
@media (max-width: 720px) {
  .workspace-match-card--ux2 { padding: 15px; }
  .workspace-match-card--ux2:hover { transform: none; }
}
@media (max-width: 380px) {
  .workspace-match-card__topline { align-items: flex-start; }
  .workspace-match-card__eyebrow { font-size: 10px; }
  .workspace-match-breadcrumb__segment { font-size: 10px; }
}


/* MATCH-UX-3 — compact person-first recommendation card. UI only. */
.workspace-match-card--ux3 {
  gap: 11px;
  padding: 14px;
}
.workspace-match-card--ux3 .workspace-match-person--hero {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}
.workspace-match-card--ux3 .workspace-match-avatar--large {
  width: 48px;
  height: 48px;
  flex-basis: 48px;
}
.workspace-match-card--ux3 .workspace-match-person__copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}
.workspace-match-card--ux3 .workspace-match-person__copy > strong {
  overflow: hidden;
  color: #0f172a;
  font-size: 14px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.workspace-match-card--ux3 .workspace-match-card__eyebrow {
  margin-bottom: 2px;
  font-size: 9px;
}
.workspace-match-card--ux3 .workspace-match-status-dot {
  width: 6px;
  height: 6px;
  flex-basis: 6px;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, .11);
}
.workspace-match-card--ux3 .workspace-match-intent-label {
  margin-top: 0;
  font-size: 11px;
}
.workspace-match-card--ux3 .workspace-match-score {
  min-width: 74px;
  min-height: 36px;
  padding: 5px 8px;
  text-align: center;
}
.workspace-match-card--ux3 .workspace-match-destination--primary {
  gap: 8px;
  padding: 10px 11px;
  border-color: rgba(109, 40, 217, .16);
  background: linear-gradient(135deg, rgba(245, 243, 255, .94), rgba(255,255,255,.96));
}
.workspace-match-card--ux3 .workspace-match-breadcrumb__segment {
  min-height: 27px;
  padding: 4px 9px;
  font-size: 11px;
}
.workspace-match-card--ux3 .workspace-match-why--compact {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
}
.workspace-match-card--ux3 .workspace-match-why--compact > span {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border: 1px solid rgba(15, 118, 110, .12);
  border-radius: 999px;
  background: rgba(240, 253, 250, .72);
  font-size: 10px;
  line-height: 1.2;
}
.workspace-match-card--ux3 .workspace-match-preview-block--human {
  margin: 0;
  padding: 9px 11px;
  border: 0;
  border-left: 3px solid rgba(109, 40, 217, .42);
  border-radius: 0 10px 10px 0;
  background: #f8fafc;
}
.workspace-match-card--ux3 .workspace-match-preview-block--human .workspace-match-preview {
  margin: 0;
  color: #475569;
  font-size: 11px;
  font-style: italic;
  line-height: 1.45;
  -webkit-line-clamp: 2;
}
.workspace-match-card--ux3 .workspace-match-actions {
  gap: 7px;
}
.workspace-match-card--ux3 .workspace-match-open,
.workspace-match-card--ux3 .workspace-match-discussion {
  min-height: 38px;
}
@media (max-width: 460px) {
  .workspace-match-card--ux3 .workspace-match-person--hero {
    grid-template-columns: 44px minmax(0, 1fr);
  }
  .workspace-match-card--ux3 .workspace-match-avatar--large {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
  }
  .workspace-match-card--ux3 .workspace-match-score {
    grid-column: 1 / -1;
    width: fit-content;
    min-width: 0;
    min-height: 30px;
    margin-left: 54px;
    flex-direction: row;
    gap: 5px;
  }
  .workspace-match-card--ux3 .workspace-match-score small { margin-top: 0; }
}


/* Communities UI-C20 — visible entry points, Community feed cards and workspace. */

.community-directory-title {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 8px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 1rem;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}
.community-directory-title > span:last-child {
  font-size: 1.35rem;
  line-height: 1;
  transition: transform .18s ease;
}
.community-directory-title:hover > span:first-child,
.community-directory-title:focus-visible > span:first-child { text-decoration: underline; }
.community-directory-title[aria-expanded="true"] > span:last-child { transform: rotate(90deg); }
.community-directory-list { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.community-directory-list li { padding:0; border:0; }
.community-directory-list a { display:grid; gap:2px; padding:7px 0; color:inherit; text-decoration:none; border-bottom:1px solid rgba(168,176,186,.22); }
.community-directory-list a:hover strong { text-decoration:underline; }
.community-directory-list strong { font-size:.79rem; line-height:1.25; }
.community-directory-list span, .community-directory-empty { color:var(--muted); font-size:.7rem; }
.community-entry-links { display:grid; gap:5px; margin-top:10px; }
.community-entry-links button { width:100%; text-align:left; border:0; background:transparent; color:#185f59; padding:6px 0; font:inherit; font-size:.78rem; cursor:pointer; }
.community-entry-links button:hover { text-decoration:underline; }
.community-entry-links .community-create-entry { font-weight:700; }
.entry-type.type-community { background:#eee8ff; color:#59419a; border-color:#d3c6fa; }
.news-item[data-entity-type="community"] { padding:10px; border:1px solid #d9d0f4; border-radius:12px; background:#faf8ff; }
.news-item[data-entity-type="community"] .entry-title { font-size:.9rem; }
.community-workspace-hero { padding:20px; border:1px solid rgba(151,161,171,.28); border-radius:16px; background:#fff; }
.community-workspace-kicker { font-size:.68rem; letter-spacing:.12em; font-weight:800; color:#6750a4; }
.community-workspace-hero h1 { margin:7px 0 8px; font-size:1.5rem; }
.community-workspace-hero p { margin:0; color:var(--muted); }
.community-workspace-stats { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.community-workspace-stats span { padding:7px 10px; border-radius:999px; background:#f3f0fb; font-size:.75rem; }
.community-workspace-tabs { display:flex; gap:8px; padding:12px 0; }
.community-workspace-tabs a { color:#185f59; text-decoration:none; font-size:.78rem; font-weight:700; }
.community-workspace-section { margin-top:12px; }
.community-workspace-section h2 { margin-top:0; font-size:1rem; }
.community-workspace-feed, .community-member-list { display:grid; gap:8px; }
.community-workspace-feed article, .community-member-list article { padding:10px; border:1px solid rgba(151,161,171,.22); border-radius:10px; background:#fff; }
.community-workspace-feed article span, .community-member-list article span { display:block; color:var(--muted); font-size:.68rem; }
.community-workspace-feed article h3 { margin:3px 0 0; font-size:.84rem; }
@media (max-width: 760px) { .community-workspace-stats { display:grid; grid-template-columns:1fr; } }


/* Communities UI-C20.1 — functional creation flow */
body.community-creation-open { overflow: hidden; }
.community-creation-dialog { position: fixed; inset: 0; z-index: 100000; display: none; align-items: center; justify-content: center; padding: 20px; }
.community-creation-dialog.is-open { display: flex; }
.community-creation-backdrop { position: absolute; inset: 0; background: rgba(16, 31, 29, .54); backdrop-filter: blur(2px); }
.community-creation-card { position: relative; width: min(560px, 100%); max-height: calc(100vh - 40px); overflow: auto; background: #fffdf9; border: 1px solid #d7e0dc; border-radius: 18px; box-shadow: 0 24px 70px rgba(20, 45, 40, .26); padding: 22px; }
.community-creation-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.community-creation-head h2 { margin: 2px 0 0; font-size: 1.35rem; }
.community-creation-kicker { margin: 0; font-size: .72rem; letter-spacing: .15em; color: #16746c; font-weight: 700; }
.community-creation-close { border: 0; background: transparent; font-size: 1.8rem; line-height: 1; cursor: pointer; }
.community-creation-form { display: grid; gap: 15px; }
.community-creation-form label { display: grid; gap: 6px; font-size: .82rem; font-weight: 650; color: #263d39; }
.community-creation-form input, .community-creation-form textarea, .community-creation-form select { width: 100%; box-sizing: border-box; border: 1px solid #cbd8d3; border-radius: 10px; background: #fff; padding: 10px 11px; font: inherit; color: #172d29; }
.community-creation-form textarea { resize: vertical; min-height: 110px; }
.community-primary-entity { margin: 0; border: 1px solid #dbe4e0; border-radius: 12px; padding: 13px; }
.community-primary-entity legend { padding: 0 6px; font-size: .8rem; font-weight: 700; color: #185f59; }
.community-primary-entity-grid { display: grid; grid-template-columns: 1fr 120px; gap: 10px; }
.community-primary-entity input[readonly] { background: #f2f6f4; }
.community-primary-entity p { margin: 9px 0; font-size: .76rem; color: #5a6c68; }
.community-use-visible-entity { border: 0; background: transparent; color: #0a6d65; padding: 0; font: inherit; font-size: .78rem; font-weight: 700; cursor: pointer; }
.community-creation-message { min-height: 20px; margin: 0; font-size: .82rem; }
.community-creation-message[data-state="error"] { color: #a22626; }
.community-creation-message[data-state="success"] { color: #087064; }
.community-creation-actions { display: flex; justify-content: flex-end; gap: 10px; }
.community-creation-actions button { border-radius: 999px; padding: 9px 16px; font: inherit; cursor: pointer; }
.community-creation-cancel { border: 1px solid #cbd8d3; background: #fff; color: #263d39 !important; font-weight: 700; opacity: 1; }
.community-creation-cancel:hover { background: #f4f8f6; border-color: #9fb4ad; color: #172d29 !important; }
.community-creation-cancel:focus-visible { outline: 3px solid rgba(12,117,108,.24); outline-offset: 2px; color: #172d29 !important; }
.community-creation-cancel:disabled { background: #f7f9f8; border-color: #dde5e2; color: #879590 !important; opacity: 1; cursor: not-allowed; }
.community-creation-submit { border: 1px solid #0c756c; background: #0c756c; color: #fff; font-weight: 700; }
.community-creation-submit:disabled { opacity: .55; cursor: not-allowed; }
@media (max-width: 640px) {
  .community-creation-dialog { padding: 10px; align-items: flex-end; }
  .community-creation-card { width: 100%; max-height: 92vh; border-radius: 18px 18px 8px 8px; padding: 18px; }
  .community-primary-entity-grid { grid-template-columns: 1fr; }
}


/* Communities UI-C20.2 — functional My/Discover result panels. */
.community-entry-results {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(15, 92, 78, 0.14);
}
.community-entry-results[hidden] { display: none !important; }
.community-entry-result-list { list-style: none; margin: 0; padding: 0; }
.community-entry-result-list li + li { border-top: 1px solid rgba(15, 92, 78, 0.1); }
.community-entry-result-list a {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 9px 0;
  color: inherit;
  text-decoration: none;
}
.community-entry-result-list a:hover strong,
.community-entry-result-list a:focus-visible strong { text-decoration: underline; }
.community-entry-result-list span,
.community-entry-empty { font-size: 12px; color: #66736f; }
.community-entry-links button[aria-expanded="true"] { font-weight: 700; }


.community-workspace-hero-topline { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.community-membership-button { border:1px solid #5b45d6; border-radius:999px; background:#6545e8; color:#fff; padding:8px 14px; font:inherit; font-size:.76rem; font-weight:800; cursor:pointer; }
.community-membership-button[disabled] { opacity:.58; cursor:wait; }
.community-membership-role { display:inline-flex; align-items:center; min-height:34px; padding:0 12px; border-radius:999px; background:#f0ecff; color:#563bb7; font-size:.74rem; font-weight:800; }
.community-post-composer { display:grid; gap:8px; margin:0 0 14px; padding:12px; border:1px solid rgba(101,69,232,.2); border-radius:12px; background:#faf9ff; }
.community-post-composer label { font-size:.78rem; font-weight:800; color:#23313f; }
.community-post-composer textarea { width:100%; resize:vertical; border:1px solid rgba(151,161,171,.4); border-radius:10px; padding:10px; font:inherit; background:#fff; }
.community-post-composer-actions { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.community-post-composer-actions button { border:0; border-radius:999px; background:#6545e8; color:#fff; padding:8px 16px; font:inherit; font-size:.76rem; font-weight:800; cursor:pointer; }
.community-post-message { color:var(--muted); font-size:.72rem; }
.community-discussion-list { display:grid; gap:9px; }
.community-discussion-list article { padding:11px 12px; border:1px solid rgba(151,161,171,.22); border-radius:11px; background:#fff; }
.community-discussion-list article > div { display:flex; justify-content:space-between; gap:10px; }
.community-discussion-list time { color:var(--muted); font-size:.68rem; }
.community-discussion-list p { margin:7px 0 0; white-space:pre-wrap; font-size:.84rem; line-height:1.45; }

/* C21.4 — Community Feed Runtime */
.community-workspace-feed { display: grid; gap: 12px; }
.community-feed-card { border: 1px solid rgba(15, 23, 42, .12); border-radius: 14px; padding: 14px; background: #fff; }
.community-feed-card-meta { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-size: 12px; color: #64748b; }
.community-feed-card-type { font-weight: 800; color: #0f766e; }
.community-feed-card h3 { margin: 8px 0 12px; font-size: 18px; }
.community-feed-card h3 a { color: inherit; text-decoration: none; }
.community-feed-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.community-feed-card-footer .entity-controls { margin: 0; }

/* C21.5 — Community Replies */
.community-discussion-item { position: relative; }
.community-discussion-meta { display: flex; justify-content: space-between; gap: 10px; }
.community-reply-trigger { margin-top: 8px; border: 0; background: transparent; padding: 0; color: #5b45d6; font: inherit; font-size: .72rem; font-weight: 800; cursor: pointer; }
.community-reply-slot:empty { display: none; }
.community-reply-composer { display: grid; gap: 7px; margin-top: 10px; padding-top: 10px; border-top: 1px solid rgba(101,69,232,.15); }
.community-reply-composer textarea { width: 100%; box-sizing: border-box; resize: vertical; border: 1px solid rgba(151,161,171,.4); border-radius: 9px; padding: 9px; font: inherit; background: #fff; }
.community-reply-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.community-reply-message { margin-right: auto; color: var(--muted); font-size: .7rem; }
.community-reply-actions button { border: 1px solid rgba(101,69,232,.25); border-radius: 999px; background: #fff; color: #563bb7; padding: 6px 11px; font: inherit; font-size: .7rem; font-weight: 800; cursor: pointer; }
.community-reply-actions button[type="submit"] { border-color: #6545e8; background: #6545e8; color: #fff; }
.community-reply-actions button:disabled { opacity: .58; cursor: wait; }
.community-replies { display: grid; gap: 8px; margin-top: 10px; margin-left: 18px; padding-left: 10px; border-left: 2px solid rgba(101,69,232,.16); }
.community-discussion-list .community-discussion-item--reply { padding: 9px 10px; background: #fcfbff; }
@media (max-width: 640px) {
  .community-replies { margin-left: 8px; padding-left: 8px; }
}


/* C21.6 — Community root-post media */
.community-post-media-tools { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.community-post-media-button { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:34px; padding:0 12px; border:1px solid rgba(101,69,232,.24); border-radius:999px; background:#fff; color:#563bb7; box-shadow:0 1px 2px rgba(15,23,42,.04); font-size:.72rem !important; font-weight:800; cursor:pointer; transition:border-color .16s ease, background-color .16s ease, transform .16s ease; }
.community-post-media-button:hover,
.community-post-media-button:focus-visible { border-color:#6545e8; background:#f5f2ff; outline:none; transform:translateY(-1px); }
.community-post-media-button span { font-size:.82rem; line-height:1; }
.community-post-media-preview { position:relative; overflow:hidden; border:1px solid rgba(101,69,232,.18); border-radius:12px; background:#eef1f6; }
.community-post-media-preview[data-media-type="image"] { height:clamp(220px, 34vw, 300px); }
.community-post-media-preview img { display:block; width:100%; height:100%; object-fit:cover; background:#eef1f6; }
.community-post-media-preview video { display:block; width:100%; max-height:360px; object-fit:contain; background:#0f172a; }
.community-post-media-preview .community-media-remove { position:absolute; top:9px; right:9px; display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border:1px solid rgba(255,255,255,.55); border-radius:50%; padding:0; background:rgba(15,23,42,.72); color:#fff; box-shadow:0 2px 8px rgba(15,23,42,.2); font:700 20px/1 Arial,sans-serif; cursor:pointer; backdrop-filter:blur(3px); }
.community-post-media-preview .community-media-remove:hover,
.community-post-media-preview .community-media-remove:focus-visible { background:rgba(15,23,42,.92); outline:2px solid #fff; outline-offset:1px; }
.community-post-media { margin:10px 0 0; overflow:hidden; border-radius:12px; background:#eef1f6; }
.community-post-media--image { height:clamp(230px, 36vw, 340px); }
.community-post-media--image img { display:block; width:100%; height:100%; object-fit:cover; background:#eef1f6; }
.community-post-media--video video { display:block; width:100%; max-height:520px; object-fit:contain; background:#0f172a; }
.community-discussion-item--reply .community-post-media { display:none; }
@media (max-width:640px) {
  .community-post-media-preview[data-media-type="image"] { height:220px; }
  .community-post-media--image { height:240px; }
}


/* Communities UI-C21.7 — Community post moderation */
.community-discussion-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:6px; }
.community-moderation-controls { display:inline-flex; align-items:center; gap:8px; margin-left:auto; }
.community-moderation-controls button { border:0; background:transparent; color:#6545e8; padding:2px 0; font:inherit; font-size:.68rem; font-weight:800; letter-spacing:.06em; cursor:pointer; }
.community-moderation-controls button[data-community-delete] { color:#9f2f3a; }
.community-moderation-controls button:disabled { opacity:.5; cursor:default; }
.community-discussion-meta > span { display:inline-flex; align-items:center; gap:7px; }
.community-edited-label { color:var(--muted); font-size:.66rem; font-weight:600; }
.community-edit-form { display:grid; gap:8px; margin:7px 0; }
.community-edit-form textarea { width:100%; resize:vertical; border:1px solid rgba(151,161,171,.45); border-radius:10px; padding:9px; font:inherit; background:#fff; }
.community-edit-message { color:var(--muted); font-size:.7rem; margin-right:auto; }


/* Communities UI-C21.8 — Community polish */
.community-empty-state { display:grid; gap:4px; padding:16px; border:1px dashed rgba(101,69,232,.28); border-radius:12px; background:#fbfaff; text-align:center; color:#667085; }
.community-empty-state strong { color:#273142; font-size:.82rem; }
.community-empty-state span { font-size:.72rem; line-height:1.4; }
.community-post-composer[data-state="loading"] { opacity:.78; }
.community-post-message[data-state="loading"]::before { content:""; display:inline-block; width:10px; height:10px; margin-right:6px; border:2px solid rgba(101,69,232,.25); border-top-color:#6545e8; border-radius:50%; vertical-align:-1px; animation:community-spin .7s linear infinite; }
.community-post-message[data-state="success"] { color:#087064; }
.community-post-message[data-state="error"] { color:#a22626; }
.community-post-composer-actions button[aria-busy="true"],
.community-moderation-controls button[aria-busy="true"] { cursor:wait; opacity:.68; }
@keyframes community-spin { to { transform:rotate(360deg); } }
@media (max-width:760px) {
  .community-workspace-hero { padding:15px; border-radius:13px; }
  .community-workspace-hero h1 { font-size:1.24rem; line-height:1.2; overflow-wrap:anywhere; }
  .community-workspace-hero-topline { align-items:flex-start; }
  .community-workspace-tabs { overflow-x:auto; gap:14px; padding:10px 2px; scrollbar-width:none; }
  .community-workspace-tabs::-webkit-scrollbar { display:none; }
  .community-workspace-tabs a { flex:0 0 auto; min-height:36px; display:inline-flex; align-items:center; }
  .community-workspace-section { margin-top:8px; }
  .community-post-composer { padding:10px; }
  .community-post-composer-actions { align-items:flex-end; }
  .community-post-composer-actions button { min-height:40px; padding:9px 17px; }
  .community-discussion-list article { padding:10px; }
  .community-discussion-meta { align-items:flex-start; }
  .community-discussion-actions { flex-wrap:wrap; }
  .community-moderation-controls { gap:12px; }
  .community-moderation-controls button, .community-reply-trigger { min-height:32px; }
  .community-member-list article { display:flex; justify-content:space-between; gap:10px; }
}
@media (prefers-reduced-motion:reduce) { .community-post-message[data-state="loading"]::before { animation:none; } }


/* Communities C23.2 — Activity Workspace UI */
.community-activity-list { display:grid; gap:0; }
.community-activity-item { display:grid; grid-template-columns:12px minmax(0,1fr); gap:10px; align-items:start; padding:11px 0; border-bottom:1px solid rgba(151,161,171,.18); }
.community-activity-item:last-child { border-bottom:0; }
.community-activity-dot { width:8px; height:8px; margin-top:6px; border-radius:50%; background:#6545e8; box-shadow:0 0 0 3px rgba(101,69,232,.12); }
.community-activity-item p { margin:0; color:#273142; font-size:.8rem; line-height:1.4; overflow-wrap:anywhere; }
.community-activity-item time { display:block; margin-top:3px; color:var(--muted); font-size:.68rem; }
@media (max-width:760px) {
  .community-activity-item { gap:9px; padding:10px 0; }
  .community-activity-item p { font-size:.78rem; }
}

/* C23.3 — Community Activity timeline completion */
.community-activity-item {
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:10px 0;
}
.community-activity-icon {
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:rgba(101,69,232,.08);
  font-size:.9rem;
  line-height:1;
}
.community-activity-copy { min-width:0; }
.community-activity-item--membership .community-activity-icon { background:rgba(30,160,105,.10); }
.community-activity-item--moderation .community-activity-icon { background:rgba(196,55,55,.09); }
.community-activity-item--media .community-activity-icon { background:rgba(41,119,190,.10); }
.community-activity-item--relation .community-activity-icon { background:rgba(196,133,20,.10); }
@media (max-width: 640px) {
  .community-activity-item { grid-template-columns:32px minmax(0,1fr); gap:8px; }
  .community-activity-icon { width:28px; height:28px; font-size:.84rem; }
}


/* C24.1 — Unified Community Search Foundation */
.community-unified-search { margin:0 0 16px; padding:16px; border:1px solid rgba(101,69,232,.18); border-radius:14px; background:#fff; }
.community-unified-search-form > label { display:block; margin:0 0 8px; color:#202936; font-size:.92rem; font-weight:700; }
.community-unified-search-control { display:grid; grid-template-columns:22px minmax(0,1fr) auto; align-items:center; gap:8px; padding:7px 7px 7px 12px; border:1px solid rgba(84,95,110,.24); border-radius:12px; background:#fbfcfd; }
.community-unified-search-control:focus-within { border-color:#6545e8; box-shadow:0 0 0 3px rgba(101,69,232,.10); }
.community-unified-search-control > span { color:#687385; font-size:1.1rem; }
.community-unified-search-control input { width:100%; min-width:0; padding:7px 0; border:0; outline:0; background:transparent; color:#202936; font:inherit; }
.community-unified-search-control button { padding:8px 14px; border:0; border-radius:9px; background:#6545e8; color:#fff; font-weight:700; cursor:pointer; }
.community-unified-search-control button:disabled { opacity:.55; cursor:wait; }
.community-unified-search-status { margin:8px 2px 0; color:var(--muted); font-size:.74rem; }
.community-unified-search-results { display:grid; gap:14px; margin-top:15px; padding-top:14px; border-top:1px solid rgba(151,161,171,.18); }
.community-search-group h3 { display:flex; justify-content:space-between; margin:0 0 7px; color:#273142; font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; }
.community-search-group h3 span { color:#6545e8; }
.community-search-group > div { display:grid; gap:6px; }
.community-search-result { display:grid; gap:3px; width:100%; padding:10px 11px; border:1px solid rgba(151,161,171,.18); border-radius:10px; background:#fff; color:#273142; text-align:left; text-decoration:none; font:inherit; cursor:default; }
button.community-search-result, a.community-search-result { cursor:pointer; }
button.community-search-result:hover, a.community-search-result:hover { border-color:rgba(101,69,232,.42); background:rgba(101,69,232,.035); }
.community-search-result strong { overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.82rem; line-height:1.35; }
.community-search-result small { color:var(--muted); font-size:.7rem; }
.community-search-result-type { color:#6545e8; font-size:.62rem; font-weight:800; letter-spacing:.07em; }
.community-search-highlight { animation:communitySearchHighlight 1.8s ease; }
@keyframes communitySearchHighlight { 0%,100% { box-shadow:none; } 20%,70% { box-shadow:0 0 0 4px rgba(101,69,232,.20); } }
@media (max-width:640px) {
  .community-unified-search { padding:13px; border-radius:12px; }
  .community-unified-search-control { grid-template-columns:18px minmax(0,1fr); }
  .community-unified-search-control button { grid-column:1 / -1; width:100%; }
}


/* C25.1 — Related Communities Foundation */
.community-related-communities-list { display:grid; gap:10px; }
.community-related-community-card { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px; border:1px solid rgba(79,70,229,.16); border-radius:12px; background:#fff; }
.community-related-community-copy { min-width:0; }
.community-related-community-copy h3 { margin:5px 0 6px; font-size:.95rem; line-height:1.25; }
.community-related-community-copy p { display:flex; gap:12px; margin:0; color:#5f6470; font-size:.78rem; }
.community-related-community-badge { display:inline-flex; max-width:100%; padding:3px 7px; border-radius:999px; background:#f1efff; color:#5637d8; font-size:.66rem; font-weight:700; letter-spacing:.03em; }
.community-related-community-open { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; padding:8px 11px; border:1px solid rgba(79,70,229,.28); border-radius:9px; color:#3f2bc5; background:#fff; font-size:.75rem; font-weight:700; text-decoration:none; }
.community-related-community-open:hover { background:#f6f4ff; }
@media (max-width: 640px) {
  .community-related-community-card { align-items:flex-start; flex-direction:column; }
  .community-related-community-open { width:100%; }
}


/* C25.1A — Related Entity audit visibility */
.community-related-entities-list { display:grid; gap:10px; }
.community-related-entity-card { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px; border:1px solid rgba(46,103,95,.18); border-radius:12px; background:#fff; }
.community-related-entity-card--primary { border-color:rgba(46,103,95,.38); background:rgba(46,103,95,.035); }
.community-related-entity-copy { min-width:0; }
.community-related-entity-labels { display:flex; flex-wrap:wrap; gap:6px; }
.community-related-entity-labels span { display:inline-flex; padding:3px 7px; border-radius:999px; background:#eef6f4; color:#17665e; font-size:.62rem; font-weight:800; letter-spacing:.06em; }
.community-related-entity-labels .community-related-entity-primary { background:#f1efff; color:#5637d8; }
.community-related-entity-copy h3 { margin:6px 0 4px; font-size:.94rem; line-height:1.3; overflow-wrap:anywhere; }
.community-related-entity-copy p { margin:0; color:#687385; font-size:.7rem; }
.community-related-entity-open { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; padding:8px 11px; border:1px solid rgba(46,103,95,.28); border-radius:9px; color:#17665e; background:#fff; font-size:.75rem; font-weight:700; text-decoration:none; }
.community-related-entity-open:hover { background:#f1f8f6; }
@media (max-width:640px) {
  .community-related-entity-card { align-items:flex-start; flex-direction:column; }
  .community-related-entity-open { width:100%; }
}


/* C25.1B — Primary Entity context card */
.community-built-around { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:11px; margin-top:15px; padding:12px 13px; border:1px solid rgba(46,103,95,.24); border-radius:12px; background:linear-gradient(135deg, rgba(238,248,245,.92), rgba(250,248,255,.92)); }
.community-built-around-marker { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:#e6f2ef; color:#17665e; font-size:1rem; font-weight:800; }
.community-built-around-copy { display:grid; min-width:0; gap:2px; }
.community-built-around-copy span { color:#64716f; font-size:.64rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.community-built-around-copy strong { color:#182c29; font-size:.87rem; line-height:1.3; overflow-wrap:anywhere; }
.community-built-around-copy small { color:#6750a4; font-size:.62rem; font-weight:800; letter-spacing:.08em; }
.community-built-around a { display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:0 11px; border:1px solid rgba(46,103,95,.3); border-radius:9px; background:#fff; color:#17665e; font-size:.72rem; font-weight:750; text-decoration:none; white-space:nowrap; }
.community-built-around a:hover { background:#f1f8f6; }
@media (max-width:640px) {
  .community-built-around { grid-template-columns:auto minmax(0,1fr); }
  .community-built-around a { grid-column:1 / -1; width:100%; }
}


/* C25.1C — explicit Primary Canonical Entity selection */
.community-primary-entity-help { margin: 0 0 10px !important; }
.community-primary-entity-search-label { display: grid; gap: 6px; }
.community-primary-entity-search-label > span { font-size: .78rem; font-weight: 700; color: #243c38; }
.community-primary-entity-search-label input { width: 100%; min-height: 42px; border: 1px solid #cfdcd8; border-radius: 10px; padding: 9px 11px; background: #fff; }
.community-primary-entity-suggestions { display: grid; gap: 7px; max-height: 230px; overflow-y: auto; margin-top: 9px; }
.community-primary-entity-suggestion { display: grid; grid-template-columns: auto 1fr; gap: 2px 9px; width: 100%; padding: 10px; border: 1px solid #dbe4e0; border-radius: 10px; background: #fff; text-align: left; cursor: pointer; }
.community-primary-entity-suggestion:hover, .community-primary-entity-suggestion:focus-visible { border-color: #6b4df6; outline: none; }
.community-primary-entity-suggestion span { grid-row: 1 / span 2; align-self: center; font-size: .68rem; font-weight: 800; color: #6b4df6; }
.community-primary-entity-suggestion strong { font-size: .85rem; color: #172824; }
.community-primary-entity-suggestion small { font-size: .68rem; color: #697975; }
.community-primary-entity-suggestion-message { margin: 0 !important; padding: 9px; border-radius: 8px; background: #f6f7f9; }
.community-primary-entity-selection { display: grid; grid-template-columns: auto 1fr auto; gap: 3px 9px; align-items: center; padding: 11px; border: 1px solid #bcd8d1; border-radius: 11px; background: #f1faf7; }
.community-primary-entity-selection-type { grid-row: 1 / span 2; font-size: .7rem; font-weight: 800; color: #6b4df6; }
.community-primary-entity-selection strong { font-size: .86rem; color: #172824; }
.community-primary-entity-selection small { font-size: .68rem; color: #697975; }
.community-primary-entity-selection button { grid-column: 3; grid-row: 1 / span 2; border: 1px solid #cfdcd8; border-radius: 999px; padding: 6px 10px; background: #fff; color: #263d39 !important; font-weight: 700; opacity: 1; cursor: pointer; }
.community-primary-entity-selection button:hover { background: #f4f8f6; border-color: #9fb4ad; color: #172d29 !important; }
.community-primary-entity-selection button:focus-visible { outline: 3px solid rgba(12,117,108,.24); outline-offset: 2px; color: #172d29 !important; }
.community-primary-entity-selection button:disabled { background: #f7f9f8; border-color: #dde5e2; color: #879590 !important; opacity: 1; cursor: not-allowed; }
@media (max-width: 640px) { .community-primary-entity-selection { grid-template-columns: 1fr auto; } .community-primary-entity-selection-type { grid-row: auto; } }


/* C26 — deterministic Community Discovery cards. */
.community-discovery-result-list {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}
.community-discovery-card {
  border: 1px solid rgba(15, 42, 67, .12);
  border-radius: 12px;
  padding: 12px;
  background: #fff;
}
.community-discovery-card h4 {
  margin: 7px 0 5px;
  font-size: 14px;
  line-height: 1.3;
}
.community-discovery-badge {
  display: inline-flex;
  border-radius: 999px;
  padding: 3px 7px;
  background: rgba(27, 91, 135, .09);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .02em;
}
.community-discovery-description {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.4;
  color: #536575;
}
.community-discovery-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 0 0 10px;
  font-size: 11px;
  color: #33485a;
}
.community-discovery-open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 11px;
  border-radius: 8px;
  background: #183f5b;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}
.community-discovery-open:hover,
.community-discovery-open:focus-visible { color: #fff; text-decoration: none; }

/* C22.2 — Homepage My Communities: restore independent left-rail scrolling. */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .left-column {
    max-height: calc(100vh - 72px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin !important;
  }

  body:not(.entity-workspace-lock) .left-column::-webkit-scrollbar {
    width: 4px !important;
    height: 0 !important;
    display: block;
  }
}

/* C27.1 — visible Notifications bell foundation. */
body.entity-workspace-lock .workspace-notifications-shell {
  position: relative;
  display: inline-flex;
  align-items: center;
}

body.entity-workspace-lock .workspace-notifications-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

body.entity-workspace-lock .workspace-notifications-btn:hover,
body.entity-workspace-lock .workspace-notifications-btn:focus-visible,
body.entity-workspace-lock .workspace-notifications-btn[aria-expanded="true"] {
  background: #f1f3f8;
}

body.entity-workspace-lock .workspace-notifications-btn:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

body.entity-workspace-lock .workspace-notifications-icon {
  display: inline-flex;
  width: 18px;
  height: 18px;
  line-height: 1;
}
body.entity-workspace-lock .workspace-notifications-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.entity-workspace-lock .workspace-notifications-badge {
  position: absolute;
  top: -4px;
  right: -5px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #613ce0;
  color: #fff;
  font-size: 0.64rem;
  font-weight: 800;
  line-height: 12px;
  text-align: center;
}

body.entity-workspace-lock .workspace-notifications-panel {
  position: absolute;
  z-index: 40;
  top: calc(100% + 10px);
  right: 0;
  width: max-content;
  max-width: 240px;
  padding: 10px 12px;
  border: 1px solid #e2e6f0;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(37, 44, 67, 0.14);
  color: #414b62;
  font-size: 0.82rem;
  line-height: 1.35;
}

body.entity-workspace-lock .workspace-notifications-panel[hidden] {
  display: none;
}


/* C27.2 — first real reply notification list. */
body.entity-workspace-lock .workspace-notifications-panel {
  width: min(360px, calc(100vw - 32px));
  max-width: 360px;
  padding: 0;
  overflow: hidden;
}
body.entity-workspace-lock .workspace-notifications-panel-title {
  padding: 12px 14px;
  border-bottom: 1px solid #edf0f5;
  color: #17213a;
  font-size: .9rem;
  font-weight: 800;
}
body.entity-workspace-lock .workspace-notifications-list {
  max-height: 360px;
  overflow-y: auto;
}
body.entity-workspace-lock .workspace-notification-item {
  display: grid;
  width: 100%;
  gap: 4px;
  padding: 12px 14px;
  border: 0;
  border-bottom: 1px solid #edf0f5;
  background: #fff;
  color: #26314b;
  text-align: left;
  cursor: pointer;
}
body.entity-workspace-lock .workspace-notification-item:hover,
body.entity-workspace-lock .workspace-notification-item:focus-visible { background: #f7f7fc; }
body.entity-workspace-lock .workspace-notification-item.is-unread { background: #f4f1ff; }
body.entity-workspace-lock .workspace-notification-message { font-size: .83rem; line-height: 1.35; }
body.entity-workspace-lock .workspace-notification-time { color: #7a8398; font-size: .72rem; }
body.entity-workspace-lock .workspace-notifications-empty { padding: 16px 14px; color: #657087; font-size: .82rem; }


/* C27.2 — Community-aware unread notification badge on Homepage MY COMMUNITIES. */
.community-entry-title-row { display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; }
.community-entry-notification-badge { display:inline-flex; align-items:center; gap:3px; flex:0 0 auto; padding:2px 7px; border-radius:999px; background:#6d43e8; color:#fff !important; font-size:11px !important; font-weight:800; line-height:1.35; }

.community-discussion-item.community-notification-highlight {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  animation: communityNotificationPulse 2.2s ease-out;
}
@keyframes communityNotificationPulse {
  0% { transform: scale(0.995); }
  30% { transform: scale(1.005); }
  100% { transform: scale(1); }
}


/* C28.1 Community invitations */
.community-membership-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.community-invite-button{border:1px solid #6d4aff;background:#fff;color:#5b34e8;border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer}
.community-invite-modal[hidden]{display:none!important}.community-invite-modal{position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:10020;display:grid;place-items:center;padding:20px}
.community-invite-dialog{position:relative;width:min(480px,100%);max-height:80vh;overflow:auto;background:#fff;border:1px solid #ddd8ff;border-radius:20px;box-shadow:0 24px 70px rgba(15,23,42,.25);padding:24px}
.community-invite-close{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:26px;cursor:pointer}.community-invite-kicker{font-size:12px;letter-spacing:.16em;font-weight:900;color:#6d4aff}.community-invite-dialog h2{margin:8px 32px 20px 0}.community-invite-dialog label{display:grid;gap:7px;margin:14px 0;font-weight:800}.community-invite-dialog input,.community-invite-dialog select{width:100%;border:1px solid #d7dce8;border-radius:12px;padding:12px;background:#fff;font:inherit}.community-invite-results{display:grid;gap:8px;margin-top:14px}.community-invite-user{display:flex;align-items:center;gap:10px;width:100%;border:1px solid #e5e7ef;border-radius:12px;background:#fff;padding:10px;text-align:left;cursor:pointer}.community-invite-user img{width:36px;height:36px;border-radius:50%;object-fit:cover}.community-invite-user span{flex:1;font-weight:800}.community-invite-user strong{color:#5b34e8}.community-invite-message{min-height:20px;margin-top:12px;font-weight:700}.community-invite-message[data-state="error"]{color:#b42318}.community-invite-message[data-state="success"]{color:#087a55}
.workspace-notification-actions{display:flex;gap:8px;margin-top:8px}.workspace-notification-actions [role="button"]{border:1px solid #6d4aff;border-radius:999px;padding:5px 11px;font-weight:800;color:#5b34e8;background:#fff}.workspace-notification-actions [data-invitation-decision="accept"]{background:#6d4aff;color:#fff}.workspace-notification-status{display:inline-block;margin-top:7px;font-size:11px;text-transform:uppercase;font-weight:800;color:#667085}


/* C28.2 Invitation notification UX polish */
.workspace-notification-item.is-invitation{display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left;padding:14px 14px 13px}
.workspace-invitation-heading{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:900;color:#312e81;text-transform:none;letter-spacing:0}
.workspace-invitation-detail{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;font-size:12px;line-height:1.35;color:#344054}
.workspace-invitation-detail strong{font-weight:800;color:#667085}
.workspace-invitation-detail span{font-weight:800;color:#101828;overflow-wrap:anywhere}
.workspace-notification-item.is-invitation .workspace-notification-time{margin-top:1px}
.workspace-notification-item.is-invitation .workspace-notification-actions{margin-top:2px}
.workspace-notification-item.is-invitation .workspace-notification-status{align-self:flex-start;margin-top:2px}

/* C28.3 — pending Community invitation badge in Homepage MY COMMUNITIES. */
.community-entry-notification-badge.is-invitation {
  background: #5b34e8;
  box-shadow: 0 0 0 1px rgba(91, 52, 232, .12);
}

/* C28.3.1 — invitation/unread badge in the always-visible Homepage Community directory. */
.community-directory-list .community-entry-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.community-directory-list .community-entry-title-row strong{min-width:0;overflow-wrap:anywhere}
.community-directory-list .community-entry-notification-badge{flex:0 0 auto}


/* C29 — personalized Recommended Communities, using existing deterministic runtime. */
.community-recommended{border-top:1px solid rgba(168,176,186,.22);padding-top:12px}
.community-recommended h3{margin:0 0 8px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.community-recommended-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.community-recommended-list li{margin:0;padding:0;border:0}
.community-recommended-list a{display:grid;gap:3px;padding:8px 0;border-bottom:1px solid rgba(168,176,186,.22);color:inherit;text-decoration:none}
.community-recommended-list a:hover strong{text-decoration:underline}
.community-recommended-list strong{font-size:.79rem;line-height:1.25}
.community-recommended-list span{font-size:.68rem;color:var(--muted);line-height:1.3}
.community-recommended-list .community-recommended-reason{color:#6d43e8;font-weight:700}

/* C30 — deterministic Trending Communities Homepage block. */
.community-trending{border-top:1px solid rgba(168,176,186,.22);padding-top:12px}
.community-trending h3{margin:0 0 8px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.community-trending-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.community-trending-list li{margin:0;padding:0;border:0}
.community-trending-list a{display:grid;gap:3px;padding:8px 0;border-bottom:1px solid rgba(168,176,186,.22);color:inherit;text-decoration:none}
.community-trending-list a:hover strong{text-decoration:underline}
.community-trending-list strong{font-size:.79rem;line-height:1.25}
.community-trending-list span{font-size:.68rem;color:var(--muted);line-height:1.3}
.community-trending-list .community-trending-reason{color:#d86616;font-weight:700}


/* Phase 2 — Sprint 2.2: Case Workspace Completion */
.case-workspace-completion{display:grid;gap:16px}
.case-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;font-size:12px;font-weight:800;letter-spacing:.06em;color:#667085}
.case-status-badge{display:inline-flex;align-items:center;border:1px solid #d0d5dd;border-radius:999px;padding:5px 10px;color:#344054;background:#fff;letter-spacing:0}
.case-overview-description{margin:0 0 16px;line-height:1.6;color:#344054}
.case-overview-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
.case-overview-meta>div{padding:11px;border:1px solid #eaecf0;border-radius:12px;background:#f9fafb}
.case-overview-meta dt{font-size:11px;font-weight:800;text-transform:uppercase;color:#667085}
.case-overview-meta dd{margin:5px 0 0;font-weight:700;color:#101828}

.case-resolution-context-intro{margin:-4px 0 14px;color:#667085;font-size:13px;line-height:1.5}
.case-resolution-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-resolution-context-group{min-width:0;padding:12px;border:1px solid #eaecf0;border-radius:14px;background:#f9fafb}
.case-resolution-context-group:last-child:nth-child(odd){grid-column:1/-1}
.case-resolution-context-group-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.case-resolution-context-group-heading h3{margin:0;font-size:13px;color:#101828}
.case-resolution-context-group-heading strong{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;font-size:11px}
.case-resolution-context-items{display:grid;gap:8px}
.case-resolution-context-items .case-workspace-related-item{background:#fff}
.case-resolution-context-items .case-workspace-empty{padding:12px;background:#fff}
.case-resolution-context-items .case-workspace-empty strong{font-size:12px}
.case-resolution-context-items .case-workspace-empty p{font-size:12px}

.case-knowledge-resolution-intro{margin:-4px 0 14px;color:#667085;font-size:13px;line-height:1.5}
.case-knowledge-resolution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-knowledge-resolution-group{min-width:0;padding:12px;border:1px solid #eaecf0;border-radius:14px;background:#f9fafb}
.case-knowledge-resolution-group:last-child:nth-child(odd){grid-column:1/-1}
.case-knowledge-resolution-group-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.case-knowledge-resolution-group-heading h3{margin:0;font-size:13px;color:#101828}
.case-knowledge-resolution-group-heading strong{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;font-size:11px}
.case-knowledge-resolution-items{display:grid;gap:8px}
.case-knowledge-resolution-item{display:grid;gap:6px;padding:0}
.case-knowledge-resolution-item .case-workspace-related-item{background:#fff}
.case-knowledge-resolution-item p{margin:0 4px;color:#475467;font-size:12px;line-height:1.45}
.case-knowledge-resolution-item small{margin:0 4px;color:#667085;font-size:11px;text-transform:capitalize}
.case-knowledge-resolution-items .case-workspace-empty{padding:12px;background:#fff}
.case-progress-track{height:9px;overflow:hidden;border-radius:999px;background:#eaecf0}
.case-progress-track span{display:block;height:100%;border-radius:inherit;background:currentColor;color:#6d4aff}
.case-progress-panel p{margin:10px 0 0;color:#667085;font-size:13px}
.case-people-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.case-people-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.case-people-panel li{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #eaecf0;border-radius:12px}
.case-people-panel img,.case-participant-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;display:grid;place-items:center}
.case-people-panel li div{display:grid;gap:2px}.case-people-panel small{color:#667085}
.case-runtime-timeline{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.case-runtime-timeline li{display:flex;gap:10px;align-items:flex-start}.case-runtime-timeline li>span{width:10px;height:10px;border-radius:50%;margin-top:5px;background:#6d4aff}.case-runtime-timeline li div{display:grid;gap:3px}.case-runtime-timeline small{color:#667085}
.case-workspace-empty{padding:16px;border:1px dashed #d0d5dd;border-radius:12px;background:#f9fafb}.case-workspace-empty p{margin:6px 0 0;color:#667085;line-height:1.5}
.case-related-list{display:grid;gap:10px}.case-workspace-related-item{display:grid;gap:4px;padding:12px;border:1px solid #eaecf0;border-radius:12px;text-decoration:none;color:#101828}.case-workspace-related-item span{font-size:10px;font-weight:800;color:#667085;letter-spacing:.06em}
.case-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.case-action-grid button{border:1px solid #6d4aff;border-radius:12px;padding:11px 12px;background:#fff;color:#5b34e8;font-weight:800;cursor:pointer}
.case-action-grid button:hover{background:#f4f0ff}
@media (max-width:760px){.case-overview-meta,.case-people-grid,.case-action-grid,.case-resolution-context-grid,.case-knowledge-resolution-grid{grid-template-columns:1fr}.case-resolution-context-group:last-child:nth-child(odd),.case-knowledge-resolution-group:last-child:nth-child(odd){grid-column:auto}.case-workspace-completion{gap:12px}}

/* Phase 2.4C — Case Lifecycle UI */
.case-lifecycle-heading{align-items:flex-start;gap:12px}
.case-lifecycle-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.case-lifecycle-advance{appearance:none;border:1px solid #344054;border-radius:999px;background:#101828;color:#fff;padding:6px 12px;font:inherit;font-weight:700;line-height:1.2;cursor:pointer}
.case-lifecycle-advance:hover{background:#344054}
.case-lifecycle-advance:disabled,.case-lifecycle-advance.is-loading{cursor:wait;opacity:.65}
.case-lifecycle-terminal{display:inline-flex;align-items:center;border:1px solid #d0d5dd;border-radius:999px;padding:5px 10px;color:#667085;background:#f9fafb;font-size:12px;font-weight:700}
.case-lifecycle-feedback{flex-basis:100%;min-height:16px;color:#475467;font-size:12px;text-align:right}
.case-status-badge[data-case-status="ACTIVE"]{border-color:#84adff;background:#eff4ff;color:#3538cd}
.case-status-badge[data-case-status="RESOLVED"]{border-color:#75e0a7;background:#ecfdf3;color:#067647}
.case-status-badge[data-case-status="CLOSED"]{border-color:#fdb022;background:#fffaeb;color:#b54708}
.case-status-badge[data-case-status="ARCHIVED"]{border-color:#d0d5dd;background:#f2f4f7;color:#475467}
@media (max-width:700px){.case-lifecycle-heading{align-items:flex-start}.case-lifecycle-controls{justify-content:flex-start;width:100%}.case-lifecycle-feedback{text-align:left}}

/* Phase 2.4C-R2 — Lifecycle UI Polish */
.case-status-badge{display:inline-flex;align-items:center;gap:5px}
.case-lifecycle-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.case-lifecycle-summary>div{padding:11px;border:1px solid #eaecf0;border-radius:12px;background:#f9fafb}
.case-lifecycle-summary dt{font-size:11px;font-weight:800;text-transform:uppercase;color:#667085}
.case-lifecycle-summary dd{margin:5px 0 0;font-weight:700;color:#101828}
@media (max-width:760px){.case-lifecycle-summary{grid-template-columns:1fr}}

.workspace-add-evidence { appearance:none; border:0; background:transparent; padding:0; color:inherit; font:inherit; cursor:pointer; text-align:left; }
.workspace-add-evidence:hover strong { text-decoration:underline; }
.workspace-add-evidence:disabled { opacity:.55; cursor:wait; }


/* EVIDENCE-2 — canonical Evidence list presentation */
.workspace-evidence-list { display:grid; gap:12px; }
.workspace-evidence-card { border:1px solid rgba(15,23,42,.12); border-radius:14px; padding:14px; background:#fff; }
.workspace-evidence-card-head, .workspace-evidence-card-meta { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.workspace-evidence-card-head span { font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.workspace-evidence-card-head small, .workspace-evidence-card-meta { color:#667085; font-size:12px; }
.workspace-evidence-card h3 { margin:8px 0 6px; font-size:16px; line-height:1.35; }
.workspace-evidence-card h3 a { color:inherit; text-decoration:none; }
.workspace-evidence-card h3 a:hover { text-decoration:underline; }
.workspace-evidence-card p { margin:0 0 10px; white-space:pre-wrap; }
.workspace-evidence-card-meta a { font-weight:700; }


/* Phase 3 — EVIDENCE-3: canonical Evidence Workspace presentation. */
.evidence-workspace-overview,
.evidence-workspace-related {
  margin-top: 12px;
  padding: 18px;
}
.evidence-workspace-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}
.evidence-workspace-section-heading h3 {
  margin: 0;
  font-size: 1.05rem;
}
.evidence-workspace-section-heading > strong,
.evidence-workspace-section-heading > span {
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .7;
}
.evidence-workspace-description p {
  margin: 0 0 16px;
  line-height: 1.6;
  white-space: pre-wrap;
}
.evidence-workspace-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 16px;
  margin: 0;
}
.evidence-workspace-facts > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(127, 127, 127, .2);
  border-radius: 10px;
}
.evidence-workspace-facts dt {
  margin-bottom: 5px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  opacity: .65;
}
.evidence-workspace-facts dd {
  margin: 0;
  overflow-wrap: anywhere;
}
.evidence-workspace-relations {
  display: grid;
  gap: 8px;
}
.evidence-workspace-relation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(127, 127, 127, .2);
  border-radius: 10px;
  text-decoration: none;
}
.evidence-workspace-relation span:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.evidence-workspace-relation strong,
.evidence-workspace-relation small {
  overflow-wrap: anywhere;
}
.evidence-workspace-relation small {
  opacity: .65;
  text-transform: capitalize;
}
@media (max-width: 720px) {
  .evidence-workspace-facts { grid-template-columns: 1fr; }
  .evidence-workspace-overview,
  .evidence-workspace-related { padding: 14px; }
}


/* EVIDENCE-4 — Discussion / Challenge */
.evidence-discussion-mode { display:flex; gap:8px; padding:0 0 12px; }
.evidence-discussion-mode button { border:1px solid rgba(151,161,171,.35); background:#fff; border-radius:999px; padding:7px 12px; font-size:.72rem; font-weight:700; cursor:pointer; }
.evidence-discussion-mode button.is-active { border-color:currentColor; box-shadow:0 0 0 1px currentColor inset; }
.evidence-challenge-badge { display:inline-flex; align-items:center; margin:0 0 8px; border:1px solid currentColor; border-radius:999px; padding:3px 8px; font-size:.62rem; font-weight:800; letter-spacing:.06em; }


/* EVIDENCE-5 — Verification Foundation */
.evidence-verification-foundation { display:grid; gap:16px; }
.evidence-verification-statement { margin:0; line-height:1.55; }
.evidence-verification-counts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.evidence-verification-counts div { border:1px solid rgba(15,23,42,.12); border-radius:12px; padding:10px; display:grid; gap:3px; }
.evidence-verification-counts strong { font-size:1.15rem; }
.evidence-verification-counts span { font-size:.68rem; font-weight:800; letter-spacing:.05em; }
.evidence-verification-actions { display:flex; flex-wrap:wrap; gap:8px; }
.evidence-verification-actions button { border:1px solid rgba(15,23,42,.18); border-radius:999px; background:#fff; padding:8px 12px; font-weight:700; cursor:pointer; }
.evidence-verification-actions button:disabled { opacity:.55; cursor:wait; }
.evidence-verification-list { display:grid; gap:8px; }
.evidence-verification-item { display:grid; gap:5px; border-top:1px solid rgba(15,23,42,.1); padding-top:10px; }
.evidence-verification-item span { font-size:.68rem; font-weight:800; letter-spacing:.06em; }
.evidence-verification-item a { font-weight:750; text-decoration:none; }
@media (max-width:680px) { .evidence-verification-counts { grid-template-columns:repeat(2,minmax(0,1fr)); } }


/* EVIDENCE-6 — Discovery / Search / Reuse */
.evidence-discovery-overlay{position:fixed;inset:0;z-index:99999;background:rgba(15,23,42,.58);display:grid;place-items:center;padding:18px}
.evidence-discovery-panel{width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:18px;box-shadow:0 24px 70px rgba(15,23,42,.28);display:grid;gap:16px}
.evidence-discovery-panel>header{display:flex;justify-content:space-between;gap:16px;align-items:start}.evidence-discovery-panel>header p{margin:4px 0 0;color:#64748b}.evidence-discovery-panel>header button{border:0;background:transparent;font-size:28px;cursor:pointer}
.evidence-discovery-controls{display:grid;grid-template-columns:1fr 220px;gap:10px}.evidence-discovery-controls input,.evidence-discovery-controls select,.evidence-create-new input,.evidence-create-new textarea,.evidence-create-new select{width:100%;box-sizing:border-box;border:1px solid rgba(15,23,42,.16);border-radius:10px;padding:10px;background:#fff}
.evidence-discovery-results,.evidence-duplicate-hint{display:grid;gap:8px}.evidence-discovery-card{display:flex;justify-content:space-between;gap:12px;border:1px solid rgba(15,23,42,.1);border-radius:12px;padding:12px}.evidence-discovery-card div{display:grid;gap:4px}.evidence-discovery-card span{font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.evidence-discovery-card p,.evidence-discovery-card small{margin:0;color:#64748b}.evidence-discovery-card button,.evidence-create-new>button{align-self:center;border:0;border-radius:999px;padding:9px 14px;font-weight:750;cursor:pointer}
.evidence-create-new{border-top:1px solid rgba(15,23,42,.1);padding-top:12px}.evidence-create-new summary{cursor:pointer;font-weight:800}.evidence-create-new[open]{display:grid;gap:10px}.evidence-create-new label{display:grid;gap:5px;font-weight:700}.evidence-create-new textarea{min-height:90px;resize:vertical}
@media(max-width:680px){.evidence-discovery-controls{grid-template-columns:1fr}.evidence-discovery-card{display:grid}.evidence-discovery-card button{justify-self:start}}


/* EVIDENCE-UI-1 — explicit Case Workspace integration */
.case-evidence-entry-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin:0 0 14px;border:1px solid rgba(15,118,110,.18);border-radius:16px;background:linear-gradient(135deg,rgba(236,253,245,.96),rgba(240,249,255,.96));box-shadow:0 8px 24px rgba(15,23,42,.05)}
.case-evidence-entry-copy{display:grid;gap:3px;min-width:0}.case-evidence-entry-copy>span{font-size:.68rem;font-weight:850;letter-spacing:.12em;color:#0f766e}.case-evidence-entry-copy>strong{font-size:1rem;color:#0f172a}.case-evidence-entry-copy>p{margin:0;color:#64748b;font-size:.82rem}
.case-evidence-entry-actions,.evidence-section-actions,.evidence-empty-actions{display:flex;gap:8px;flex-wrap:wrap}.case-evidence-entry-actions button,.evidence-section-actions button,.evidence-empty-actions button{border:1px solid rgba(15,118,110,.22);border-radius:999px;padding:9px 13px;background:#fff;color:#0f5f59;font-weight:780;cursor:pointer}.case-evidence-entry-actions button:hover,.evidence-section-actions button:hover,.evidence-empty-actions button:hover{background:#ecfdf5}
.evidence-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.evidence-section-heading>div:first-child{display:flex;align-items:center;gap:8px}.evidence-empty-state{display:grid;gap:8px;padding:22px;border:1px dashed rgba(15,118,110,.28);border-radius:14px;background:rgba(240,253,250,.45)}.evidence-empty-state p{margin:0;color:#64748b}.workspace-evidence-card h3 a{color:inherit;text-decoration:none}.workspace-evidence-card h3 a:hover{text-decoration:underline}
@media(max-width:760px){.case-evidence-entry-bar{align-items:flex-start;display:grid}.case-evidence-entry-actions{width:100%}.case-evidence-entry-actions button{flex:1 1 auto}.evidence-section-heading{align-items:flex-start;display:grid}.evidence-section-actions{width:100%}}
.evidence-existing-block{display:grid;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(15,23,42,.1)}
.evidence-existing-block h4{margin:0}
.evidence-input-modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.evidence-input-modes button{border:1px solid rgba(15,23,42,.14);background:#f8fafc;border-radius:10px;padding:10px 8px;cursor:pointer;font-weight:700}
.evidence-input-modes button.is-active{background:#ecfdf5;border-color:#0f766e;color:#0f766e}
.evidence-create-new [data-mode-panel]{display:grid;gap:6px}.evidence-create-new [data-mode-panel][hidden]{display:none}
.evidence-create-new small{color:#64748b}
@media(max-width:680px){.evidence-input-modes{grid-template-columns:1fr 1fr}}


/* EVIDENCE LOCK-1 — complete Case Evidence list */
.workspace-evidence-list{display:grid;gap:12px;margin-top:14px}
.workspace-evidence-card{display:grid;gap:10px;padding:16px;border:1px solid rgba(15,23,42,.11);border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.04)}
.workspace-evidence-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.workspace-evidence-card-head>span{font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#0f766e}
.workspace-evidence-card-head>small{color:#64748b}
.workspace-evidence-card h3{margin:0;color:#0f172a;font-size:1rem;line-height:1.35}
.workspace-evidence-card>p{margin:0;color:#475569;line-height:1.55}
.workspace-evidence-no-description{font-style:italic;color:#94a3b8!important}
.workspace-evidence-card-details{display:flex;gap:14px;flex-wrap:wrap;color:#64748b;font-size:.78rem}
.workspace-evidence-card-details strong{color:#334155}
.workspace-evidence-formats{display:flex;gap:7px;flex-wrap:wrap}
.workspace-evidence-format{display:inline-flex;align-items:center;border:1px solid rgba(15,118,110,.18);border-radius:999px;padding:5px 8px;background:#f0fdfa;color:#0f766e;font-size:.66rem;font-weight:800;letter-spacing:.04em}
.workspace-evidence-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:2px}
.workspace-evidence-card-actions a{display:inline-flex;align-items:center;border:1px solid rgba(15,23,42,.13);border-radius:999px;padding:8px 11px;background:#fff;color:#334155;text-decoration:none;font-size:.76rem;font-weight:760}
.workspace-evidence-card-actions a:hover{background:#f8fafc}
.workspace-evidence-card-actions .workspace-evidence-open{margin-left:auto;border-color:rgba(15,118,110,.28);background:#0f766e;color:#fff}
.workspace-evidence-card-actions .workspace-evidence-open:hover{background:#115e59}
@media(max-width:680px){
  .workspace-evidence-card{padding:14px}
  .workspace-evidence-card-head{align-items:flex-start}
  .workspace-evidence-card-details{display:grid;gap:5px}
  .workspace-evidence-card-actions{display:grid;grid-template-columns:1fr}
  .workspace-evidence-card-actions a,.workspace-evidence-card-actions .workspace-evidence-open{justify-content:center;margin-left:0;text-align:center}
}


/* Evidence upload runtime feedback */
.evidence-create-feedback {
  min-height: 20px;
  margin: 8px 0;
  font-size: 13px;
  line-height: 1.4;
}
.evidence-create-feedback[data-level="error"] { font-weight: 700; }
.evidence-create-feedback[data-level="success"] { font-weight: 700; }


/* EVIDENCE LOCK-2 — attachment and card polish */
.evidence-workspace-facts dd .evidence-attachment-mime{display:block;margin-top:4px;color:#64748b;font-size:.72rem;word-break:break-word}
.workspace-evidence-thumbnail{display:block;overflow:hidden;border:1px solid rgba(15,23,42,.1);border-radius:12px;background:#f8fafc;aspect-ratio:16/7}
.workspace-evidence-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.card-media-video .card-media-video-element{display:block;width:100%;height:100%;object-fit:contain;background:#0f172a}
.card-media-document .card-media-document-link{min-height:210px;justify-content:center;text-align:center;padding:24px}
@media (max-width:700px){.workspace-evidence-thumbnail{aspect-ratio:16/9}.evidence-workspace-facts{grid-template-columns:1fr}.card-media-document .card-media-document-link{min-height:160px}}


/* EVIDENCE LOCK-3 — Final Product Polish */
.workspace-evidence-thumbnail{display:block;width:100%;height:232px;overflow:hidden;border-radius:12px;background:#f1f5f9}
.workspace-evidence-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.workspace-evidence-card-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#475569;font-size:.78rem}
.workspace-evidence-card-summary span{display:inline-flex;align-items:center;gap:4px}
.workspace-evidence-empty-text,.evidence-unified-empty{color:#94a3b8;font-style:italic}
.evidence-workspace-back-nav{display:flex;align-items:center;gap:8px;padding:0 2px 10px;color:#64748b;font-size:.82rem}
.evidence-workspace-back-nav a{color:#0f766e;font-weight:800;text-decoration:none}
.evidence-workspace-back-nav a:hover{text-decoration:underline}
.evidence-workspace-back-nav strong{color:#334155}
.evidence-workspace-related .case-workspace-empty,.evidence-empty-state{border-color:rgba(15,118,110,.22);background:rgba(240,253,250,.45)}
@media (max-width:700px){
  .workspace-evidence-thumbnail{height:220px}
  .workspace-evidence-card-summary{display:grid;gap:6px}
  .evidence-workspace-back-nav{padding-inline:2px}
}

/* CRI-3 — Human Resolution */
.case-human-resolution-intro{margin:-4px 0 14px;color:#667085;font-size:13px;line-height:1.5}
.case-human-resolution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-human-resolution-group{min-width:0;padding:12px;border:1px solid #eaecf0;border-radius:14px;background:#f9fafb}
.case-human-resolution-group-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.case-human-resolution-group-heading h3{margin:0;font-size:13px;color:#101828}
.case-human-resolution-group-heading strong{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;font-size:11px}
.case-human-resolution-items{display:grid;gap:8px}
.case-human-resolution-item{display:grid;gap:6px;padding:0}
.case-human-resolution-item .case-workspace-related-item{background:#fff}
.case-human-resolution-item p{margin:0 4px;color:#475467;font-size:12px;line-height:1.45}
.case-human-resolution-item small{margin:0 4px;color:#667085;font-size:11px;text-transform:capitalize}
.case-human-resolution-items .case-workspace-empty{padding:12px;background:#fff}
@media (max-width:760px){.case-human-resolution-grid{grid-template-columns:1fr}}

/* CRI-4 — Resolution History */
.case-resolution-history-intro{margin:-4px 0 14px;color:#667085;font-size:13px;line-height:1.5}
.case-resolution-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-resolution-history-group{min-width:0;padding:12px;border:1px solid #eaecf0;border-radius:14px;background:#f9fafb}
.case-resolution-history-group-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.case-resolution-history-group-heading h3{margin:0;font-size:13px;color:#101828}
.case-resolution-history-group-heading strong{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;font-size:11px}
.case-resolution-history-items{display:grid;gap:8px}
.case-resolution-history-item{display:grid;gap:6px;padding:0}
.case-resolution-history-item .case-workspace-related-item{background:#fff}
.case-resolution-history-item p{margin:0 4px;color:#475467;font-size:12px;line-height:1.45}
.case-resolution-history-item small{margin:0 4px;color:#667085;font-size:11px;text-transform:capitalize}
.case-resolution-history-items .case-workspace-empty{padding:12px;background:#fff}
@media (max-width:760px){.case-resolution-history-grid{grid-template-columns:1fr}}

/* CRI-5 — Resolution Paths */
.case-resolution-paths-intro{margin:-4px 0 14px;color:#667085;font-size:13px;line-height:1.5}
.case-resolution-paths-list{display:grid;gap:12px}
.case-resolution-path-card{display:grid;gap:12px;padding:14px;border:1px solid #eaecf0;border-radius:14px;background:#f9fafb}
.case-resolution-path-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.case-resolution-path-heading div{min-width:0}
.case-resolution-path-heading span{display:block;margin-bottom:3px;color:#667085;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.case-resolution-path-heading h3{margin:0;color:#101828;font-size:14px;line-height:1.35}
.case-resolution-path-heading strong{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 8px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;font-size:11px}
.case-resolution-path-card>p{margin:0;color:#475467;font-size:12px;line-height:1.5}
.case-resolution-path-steps{display:grid;justify-items:stretch;gap:7px}
.case-resolution-path-step{display:grid;gap:4px;min-width:0}
.case-resolution-path-step .case-workspace-related-item{background:#fff}
.case-resolution-path-step small{margin:0 4px;color:#667085;font-size:11px;text-transform:capitalize}
.case-resolution-path-arrow{display:flex;align-items:center;justify-content:center;height:14px;color:#98a2b3;font-size:14px;line-height:1}
.case-resolution-paths-related-count{display:block;margin-top:12px;color:#667085;font-size:11px}
@media (min-width:900px){.case-resolution-paths-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.case-resolution-path-card{padding:12px}}


/* CRI-6 — Resolution Matching */
.case-resolution-matches-intro{margin:-4px 0 14px;color:#667085;font-size:13px;line-height:1.5}
.case-resolution-matches-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-resolution-matches-group{min-width:0;padding:12px;border:1px solid #eaecf0;border-radius:14px;background:#f9fafb}
.case-resolution-matches-group-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.case-resolution-matches-group-heading h3{margin:0;font-size:13px;color:#101828}
.case-resolution-matches-group-heading strong{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;font-size:11px}
.case-resolution-matches-items{display:grid;gap:8px}
.case-resolution-match-item{display:grid;gap:6px;min-width:0}
.case-resolution-match-item .case-workspace-related-item{background:#fff}
.case-resolution-match-item p{margin:0 4px;color:#475467;font-size:12px;line-height:1.45}
.case-resolution-match-item small{margin:0 4px;color:#667085;font-size:11px;text-transform:capitalize}
.case-resolution-matches-items .case-workspace-empty{padding:12px;background:#fff}
@media (max-width:760px){.case-resolution-matches-grid{grid-template-columns:1fr}}


/* CRI-7/8 — optional Rabbit Holes. CRI internals stay hidden from the user. */
.case-rabbit-holes{display:grid;gap:10px}
.case-rabbit-hole{border:1px solid #e4e7ec;border-radius:14px;background:#fff;overflow:hidden}
.case-rabbit-hole>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;cursor:pointer;list-style:none}
.case-rabbit-hole>summary::-webkit-details-marker{display:none}
.case-rabbit-hole>summary span{display:grid;gap:3px;min-width:0}
.case-rabbit-hole>summary strong{font-size:14px;color:#101828}
.case-rabbit-hole>summary small{font-size:12px;line-height:1.4;color:#667085;font-weight:400}
.case-rabbit-hole>summary b{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border:1px solid #d0d5dd;border-radius:999px;background:#f9fafb;color:#344054;font-size:12px}
.case-rabbit-hole[open]>summary{border-bottom:1px solid #eaecf0;background:#f9fafb}
.case-rabbit-hole-body{display:grid;gap:9px;padding:12px}
.case-rabbit-item{padding:10px;border:1px solid #eaecf0;border-radius:12px;background:#fff}
.case-rabbit-item p{margin:7px 0 0;color:#667085;font-size:12px;line-height:1.45}
.case-rabbit-item>small{display:block;margin-top:6px;color:#475467;font-size:10px;font-weight:700}
.case-rabbit-connections{margin-top:3px;border-top:1px solid #eaecf0;padding-top:10px}
.case-rabbit-connections>summary{cursor:pointer;color:#475467;font-size:12px;font-weight:700}
.case-rabbit-connections>div{display:grid;gap:12px;margin-top:10px}
.case-rabbit-connections section{display:grid;gap:7px}
.case-rabbit-connections h4{margin:0;color:#344054;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:760px){.case-rabbit-hole>summary{padding:13px}.case-rabbit-hole>summary small{display:none}}


/* CASE COMPLETION S2 — compact automatic, read-only Case Timeline */
.case-timeline-read-only{margin:0 0 12px;color:#667085;font-size:12px}
.case-runtime-timeline{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.case-runtime-timeline .case-timeline-event{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:11px 12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}
.case-runtime-timeline .case-timeline-icon{display:grid;place-items:center;width:34px;height:34px;margin:0;border-radius:10px;background:#f4f3ff;font-size:16px}
.case-runtime-timeline .case-timeline-event>div{display:grid;gap:3px;min-width:0}
.case-runtime-timeline .case-timeline-event small{order:0;color:#667085;font-size:11px}
.case-runtime-timeline .case-timeline-event strong{order:1;color:#101828;font-size:14px;line-height:1.25}
.case-runtime-timeline .case-timeline-transition{order:2;display:inline-flex;width:max-content;padding:3px 7px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:11px;font-weight:800;letter-spacing:.02em}
.case-runtime-timeline .case-timeline-event p{order:3;margin:0;color:#667085;font-size:12px}
.case-runtime-timeline .case-timeline-event--case_resolved{border-color:#b7e4c7;background:#f3fff7}
.case-runtime-timeline .case-timeline-event--case_resolved .case-timeline-icon{background:#dcfce7}
.case-runtime-timeline .case-timeline-empty{padding:12px;border:1px dashed #d0d5dd;border-radius:12px;color:#667085}
.case-runtime-timeline .case-timeline-empty div{display:grid;gap:3px}


/* CASE COMPLETION S3 — Resolution Summary */
.case-resolution-summary{display:grid;gap:16px}
.case-resolution-summary-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid #e5e7eb}
.case-resolution-summary-header>div{display:grid;gap:4px}.case-resolution-summary-status{font-weight:800;color:#166534;letter-spacing:.02em}.case-resolution-summary-header small{color:#667085}
.case-resolution-summary-header dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:12px}.case-resolution-summary-header dl div{display:grid;gap:3px}.case-resolution-summary-header dt{font-size:11px;text-transform:uppercase;color:#667085}.case-resolution-summary-header dd{margin:0;font-weight:700;color:#101828}
.case-resolution-summary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.case-resolution-summary-stats>div{padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:#fafafa;display:grid;gap:3px}.case-resolution-summary-stats strong{font-size:20px;color:#101828}.case-resolution-summary-stats span{font-size:12px;color:#667085}
.case-resolution-summary-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.case-resolution-summary-columns>section,.case-resolution-summary-related{padding:14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.case-resolution-summary h4{margin:0 0 10px;font-size:14px;color:#101828}.case-resolution-summary ul{margin:0;padding-left:18px;display:grid;gap:7px;color:#344054}.case-summary-empty{margin:0;color:#667085;font-size:13px}
.case-resolution-summary-related{display:grid;gap:12px}.case-summary-related-group{display:grid;gap:7px}.case-summary-related-group>strong{font-size:12px;text-transform:uppercase;color:#667085}
@media (max-width:760px){.case-resolution-summary-header{display:grid}.case-resolution-summary-header dl{grid-template-columns:1fr 1fr}.case-resolution-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.case-resolution-summary-columns{grid-template-columns:1fr}}

/* CASE COMPLETION S4 — solved Cases inside Rabbit Hole. */
.case-rabbit-item--solved{border-color:#b7e4c7;background:#fbfffc}
.case-rabbit-solved-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:8px 0 0}
.case-rabbit-solved-meta div{display:flex;align-items:baseline;gap:5px}
.case-rabbit-solved-meta dt{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#667085}
.case-rabbit-solved-meta dd{margin:0;font-size:12px;font-weight:600;color:#344054}
.case-rabbit-resolution-summary{margin:8px 0 0;color:#344054;font-size:13px;line-height:1.5}
.case-rabbit-resolution-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:10px;padding:8px 11px;border:1px solid #98d8ad;border-radius:9px;background:#f0fff4;color:#166534;font-size:12px;font-weight:700;text-decoration:none}
.case-rabbit-resolution-cta:hover,.case-rabbit-resolution-cta:focus-visible{background:#dcfce7;color:#14532d}


/* CASE COMPLETION S5 — reusable knowledge extraction */
.case-reusable-knowledge{display:grid;gap:16px}
.case-reusable-knowledge-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid #e5e7eb}
.case-reusable-knowledge-heading>div{display:grid;gap:4px}.case-reusable-knowledge-heading span{font-weight:800;letter-spacing:.04em;color:#344054}.case-reusable-knowledge-heading small{color:#667085}.case-reusable-knowledge-heading>strong{font-size:12px;color:#166534;background:#ecfdf3;border:1px solid #abefc6;border-radius:999px;padding:6px 10px;white-space:nowrap}
.case-reusable-knowledge-statement{margin:0;padding:14px 16px;border-left:3px solid #667085;background:#f9fafb;border-radius:8px;color:#344054;line-height:1.55}
.case-reusable-knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.case-reusable-knowledge-grid>section{padding:14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}.case-reusable-knowledge-grid h4{margin:0 0 10px;font-size:14px;color:#101828}.case-reusable-knowledge-grid ul{margin:0;padding-left:18px;display:grid;gap:7px;color:#344054}
.case-reusable-knowledge-caution{margin:0;color:#667085;font-size:12px}
@media (max-width:760px){.case-reusable-knowledge-heading{display:grid}.case-reusable-knowledge-heading>strong{justify-self:start}.case-reusable-knowledge-grid{grid-template-columns:1fr}}

/* F6-2B — Need-specific sections inside the existing Shared Workspace. */
.workspace-need-collaboration__heading {
  margin-bottom: 16px;
}

.workspace-need-collaboration__heading p {
  margin: 6px 0 0;
  color: #64748b;
  font-size: 14px;
  line-height: 1.5;
}

.workspace-need-section-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.workspace-need-section {
  min-width: 0;
  padding: 16px;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
}

.workspace-need-section--primary {
  grid-column: 1 / -1;
  background: #f8fafc;
}

.workspace-need-section__eyebrow {
  display: block;
  margin-bottom: 7px;
  color: #0f766e;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
}

.workspace-need-section h4 {
  margin: 0 0 8px;
  color: #0f172a;
  font-size: 16px;
  line-height: 1.3;
}

.workspace-need-section p {
  margin: 0;
  color: #475569;
  font-size: 14px;
  line-height: 1.55;
}

.workspace-need-section-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.workspace-need-section-list li {
  display: grid;
  gap: 2px;
  padding-top: 9px;
  border-top: 1px solid #eef2f7;
}

.workspace-need-section-list li:first-child {
  padding-top: 0;
  border-top: 0;
}

.workspace-need-section-list a,
.workspace-need-section-list strong {
  color: #0f172a;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

.workspace-need-section-list a:hover {
  text-decoration: underline;
}

.workspace-need-section-list span,
.workspace-need-section-empty {
  color: #64748b;
  font-size: 12px;
}

@media (max-width: 760px) {
  .workspace-need-section-grid {
    grid-template-columns: 1fr;
  }

  .workspace-need-section--primary {
    grid-column: auto;
  }
}


/* F6-2C — Need participation completion */
.workspace-need-participation{display:grid;gap:16px}
.workspace-need-participant-list{display:grid;gap:10px}
.workspace-need-participant{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(15,118,110,.15);border-radius:12px;background:#fff}
.workspace-need-participant div{display:grid;gap:2px}.workspace-need-participant small{color:#60706d}
.workspace-need-participation-actions{display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding-top:4px}
.workspace-need-participation-actions label{display:grid;gap:6px;min-width:min(100%,260px);font-size:12px;font-weight:700;color:#315b55}
.workspace-need-participation-actions select{width:100%;padding:10px;border:1px solid #cbd8d5;border-radius:10px;background:#fff}
.workspace-need-help-button,.workspace-need-discussion-button{border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer}
.workspace-need-help-button{background:#6d28d9;color:#fff}.workspace-need-discussion-button{background:#eef2ff;color:#4c1d95}
.workspace-need-participation-feedback{flex-basis:100%;margin:0;color:#9a3412;font-size:13px}


/* F6-2B.1 — Need Discovery & canonical Workspace entry. */
.need-discovery {
  display: grid;
  gap: 12px;
}
.need-discovery-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}
.need-discovery-heading h3 { margin: 2px 0 0; }
.need-discovery-kicker {
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  color: #6d28d9;
}
.need-discovery-count {
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ede9fe;
  color: #5b21b6;
  font-size: 12px;
  font-weight: 700;
}
.need-discovery-filters {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}
.need-discovery-filters label { display: grid; gap: 4px; }
.need-discovery-filters label > span {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #64748b;
}
.need-discovery-filters select,
.need-discovery-filters input {
  width: 100%;
  min-width: 0;
  padding: 8px 9px;
  border: 1px solid #dbe2ea;
  border-radius: 9px;
  background: #fff;
  color: #172033;
  font: inherit;
  font-size: 12px;
}
.need-discovery-list { display: grid; gap: 9px; }
.need-discovery-card {
  display: grid;
  gap: 7px;
  padding: 11px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
}
.need-discovery-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.need-discovery-card-meta span {
  padding: 3px 7px;
  border-radius: 999px;
  background: #f5f3ff;
  color: #5b21b6;
  font-size: 10px;
  font-weight: 700;
}
.need-discovery-card h4 { margin: 0; font-size: 14px; line-height: 1.3; }
.need-discovery-card p {
  margin: 0;
  color: #526173;
  font-size: 12px;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.need-discovery-card small { color: #64748b; font-size: 10px; }
.need-discovery-open {
  display: inline-flex;
  justify-content: center;
  padding: 8px 10px;
  border-radius: 9px;
  background: #6d28d9;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}
.need-discovery-open:hover { background: #5b21b6; color: #fff; }
.need-discovery-empty { margin: 0; color: #64748b; font-size: 12px; line-height: 1.45; }

/* F6-2C-R1 — active Need match discussion entry. */
.workspace-match-discussion:not(:disabled) {
  border-color: #84cc16;
  background: #a3d915;
  color: #ffffff;
  cursor: pointer;
}
.workspace-match-discussion:not(:disabled):hover,
.workspace-match-discussion:not(:disabled):focus-visible {
  border-color: #65a30d;
  background: #84cc16;
  color: #ffffff;
}
.workspace-match-discussion:not(:disabled) span {
  filter: none;
  opacity: 1;
}


/* F6-3A — Need lifecycle inside the existing Shared Workspace. */
.workspace-need-lifecycle { display: grid; gap: 14px; }
.workspace-need-status-badge { display:inline-flex; align-items:center; justify-content:center; min-width:110px; padding:8px 12px; border-radius:999px; font-size:12px; font-weight:800; background:#e2e8f0; color:#334155; }
.workspace-need-lifecycle--open .workspace-need-status-badge { background:#dcfce7; color:#166534; }
.workspace-need-lifecycle--in_progress .workspace-need-status-badge { background:#fef3c7; color:#92400e; }
.workspace-need-lifecycle--partially_addressed .workspace-need-status-badge { background:#ffedd5; color:#9a3412; }
.workspace-need-lifecycle--resolved .workspace-need-status-badge { background:#dbeafe; color:#1d4ed8; }
.workspace-need-lifecycle--closed .workspace-need-status-badge { background:#e5e7eb; color:#374151; }
.workspace-need-lifecycle-actions { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; }
.workspace-need-lifecycle-actions label { display:grid; gap:6px; flex:1 1 240px; color:#475569; font-size:12px; font-weight:700; }
.workspace-need-lifecycle-actions select { width:100%; min-height:40px; border:1px solid #cbd5e1; border-radius:10px; background:#fff; padding:8px 10px; }
.workspace-need-lifecycle-actions button { min-height:40px; border:0; border-radius:10px; padding:9px 14px; background:#0f766e; color:#fff; font-weight:800; cursor:pointer; }
.workspace-need-lifecycle-actions button:disabled { opacity:.55; cursor:wait; }

/* STORY PAGE — replace workspace tabs with the canonical short description. */
.story-workspace-short-description {
  padding: 16px 18px;
  border-top: 1px solid rgba(31, 45, 71, 0.08);
  border-bottom: 1px solid rgba(31, 45, 71, 0.10);
  background: #fff;
}
.story-workspace-short-description p {
  margin: 0;
  color: #263650;
  font-size: 0.96rem;
  line-height: 1.65;
}
.story-workspace-short-description .story-workspace-short-description-empty {
  color: #7b8799;
  font-style: italic;
}

/* STORY PAGE R3 — title fallback and Reddit-style engagement row below the hero. */
.story-workspace-lead {
  background: #fff;
  border-bottom: 1px solid rgba(31, 45, 71, 0.10);
}
.story-workspace-lead .story-workspace-short-description {
  border-bottom: 0;
  padding-bottom: 12px;
}
.story-workspace-lead .story-workspace-short-description p {
  color: #15233b;
  font-size: 1rem;
  font-weight: 650;
  line-height: 1.45;
}
.story-workspace-metrics {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  padding: 0 18px 16px;
}
.story-workspace-vote-counter,
.story-workspace-comment-count {
  display: inline-flex;
  align-items: center;
  color: #667085;
  font-size: 0.78rem;
  line-height: 1;
}
.story-workspace-vote-counter {
  gap: 4px;
}
.story-workspace-vote-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #7a8699;
  font: inherit;
  font-size: 0.93rem;
  line-height: 1;
  cursor: pointer;
}
.story-workspace-vote-arrow:hover,
.story-workspace-vote-arrow:focus-visible {
  background: #f1f4f8;
  color: #344054;
}
.story-workspace-vote-arrow--up.is-active {
  background: #eaf8f2;
  color: #08775d;
}
.story-workspace-vote-arrow--down.is-active {
  background: #fff0f0;
  color: #b42318;
}
.story-workspace-vote-arrow:disabled {
  opacity: 0.45;
  cursor: default;
}
.story-workspace-vote-score,
.story-workspace-comment-count strong {
  color: #344054;
  font-weight: 700;
}
.story-workspace-vote-score {
  min-width: 18px;
  text-align: center;
}
.story-workspace-comment-count {
  gap: 5px;
}
@media (max-width: 640px) {
  .story-workspace-metrics {
    gap: 12px;
    padding-inline: 14px;
  }
  .story-workspace-vote-counter,
  .story-workspace-comment-count {
    font-size: 0.75rem;
  }
}

/* Story Workspace: Reddit-style compact discussion entry. */
.workspace-composer--compact {
  padding: 12px 14px;
  gap: 0;
  border-bottom: 1px solid #eceff6;
}

.workspace-composer--compact .workspace-composer-head {
  align-items: center;
  gap: 10px;
}

.workspace-composer--compact .workspace-composer-head .workspace-avatar {
  width: 34px;
  height: 34px;
  flex-basis: 34px;
  margin-top: 0;
}

.workspace-composer--compact .workspace-composer-head textarea[data-workspace-compose-input] {
  min-height: 44px;
  height: 44px;
  max-height: 44px;
  resize: none;
  overflow: hidden;
  border: 1px solid #d7dce5;
  border-radius: 999px;
  background: #f6f7f8;
  padding: 10px 18px;
  line-height: 22px;
  transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, border-radius 160ms ease, min-height 160ms ease, max-height 160ms ease;
}

.workspace-composer--compact .workspace-composer-head textarea[data-workspace-compose-input]::placeholder {
  color: #687386;
  opacity: 1;
}

.workspace-composer--compact .workspace-composer-tools,
.workspace-composer--compact .workspace-composer-image-preview,
.workspace-composer--compact .workspace-composer-video-preview,
.workspace-composer--compact .workspace-composer-message,
.workspace-composer--compact .workspace-composer-actions {
  display: none;
}

.workspace-composer--compact:focus-within,
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)),
.workspace-composer--compact:has(.workspace-composer-image-preview:not([hidden])),
.workspace-composer--compact:has(.workspace-composer-video-preview:not([hidden])) {
  gap: 9px;
}

.workspace-composer--compact:focus-within .workspace-composer-head,
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-head,
.workspace-composer--compact:has(.workspace-composer-image-preview:not([hidden])) .workspace-composer-head,
.workspace-composer--compact:has(.workspace-composer-video-preview:not([hidden])) .workspace-composer-head {
  align-items: flex-start;
}

.workspace-composer--compact:focus-within .workspace-composer-head textarea[data-workspace-compose-input],
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-head textarea[data-workspace-compose-input],
.workspace-composer--compact:has(.workspace-composer-image-preview:not([hidden])) .workspace-composer-head textarea[data-workspace-compose-input],
.workspace-composer--compact:has(.workspace-composer-video-preview:not([hidden])) .workspace-composer-head textarea[data-workspace-compose-input] {
  min-height: 96px;
  height: auto;
  max-height: 180px;
  overflow-y: auto;
  border-radius: 18px;
  background: #fff;
  border-color: #cbd3df;
  box-shadow: 0 0 0 2px rgba(106, 82, 222, 0.08);
  padding: 13px 15px;
  line-height: 1.45;
}

.workspace-composer--compact:focus-within .workspace-composer-tools,
.workspace-composer--compact:focus-within .workspace-composer-image-preview,
.workspace-composer--compact:focus-within .workspace-composer-video-preview,
.workspace-composer--compact:focus-within .workspace-composer-message,
.workspace-composer--compact:focus-within .workspace-composer-actions,
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-tools,
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-image-preview,
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-video-preview,
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-message,
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-actions,
.workspace-composer--compact:has(.workspace-composer-image-preview:not([hidden])) .workspace-composer-tools,
.workspace-composer--compact:has(.workspace-composer-image-preview:not([hidden])) .workspace-composer-image-preview,
.workspace-composer--compact:has(.workspace-composer-image-preview:not([hidden])) .workspace-composer-message,
.workspace-composer--compact:has(.workspace-composer-image-preview:not([hidden])) .workspace-composer-actions,
.workspace-composer--compact:has(.workspace-composer-video-preview:not([hidden])) .workspace-composer-tools,
.workspace-composer--compact:has(.workspace-composer-video-preview:not([hidden])) .workspace-composer-video-preview,
.workspace-composer--compact:has(.workspace-composer-video-preview:not([hidden])) .workspace-composer-message,
.workspace-composer--compact:has(.workspace-composer-video-preview:not([hidden])) .workspace-composer-actions {
  display: flex;
}

.workspace-composer--compact:focus-within .workspace-composer-image-preview[hidden],
.workspace-composer--compact:focus-within .workspace-composer-video-preview[hidden],
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-image-preview[hidden],
.workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-video-preview[hidden] {
  display: none;
}

.workspace-composer--compact .workspace-composer-tools,
.workspace-composer--compact .workspace-composer-image-preview,
.workspace-composer--compact .workspace-composer-video-preview,
.workspace-composer--compact .workspace-composer-message,
.workspace-composer--compact .workspace-composer-actions {
  padding-left: 44px;
}

@media (max-width: 760px) {
  .workspace-composer--compact {
    padding: 10px 11px;
  }

  .workspace-composer--compact .workspace-composer-head textarea[data-workspace-compose-input] {
    min-height: 42px;
    height: 42px;
    max-height: 42px;
    padding: 9px 15px;
  }

  .workspace-composer--compact:focus-within .workspace-composer-head textarea[data-workspace-compose-input],
  .workspace-composer--compact:has(textarea[data-workspace-compose-input]:not(:placeholder-shown)) .workspace-composer-head textarea[data-workspace-compose-input] {
    min-height: 88px;
    height: auto;
    max-height: 160px;
  }
}

/* STORY DISCUSSION R5 — Reddit-inspired readable thread geometry. */
.story-workspace-discussion .workspace-feed-list {
  gap: 0;
  padding: 0 14px 14px;
}

.story-workspace-discussion .workspace-feed-card {
  position: relative;
  border: 0;
  border-radius: 0;
  border-top: 1px solid #edf0f5;
  padding: 14px 10px 14px 48px;
  gap: 7px;
  box-shadow: none;
  background: #fff;
}

.story-workspace-discussion .workspace-feed-card:first-child {
  border-top: 0;
}

.story-workspace-discussion .workspace-feed-card::before {
  content: "";
  position: absolute;
  left: 27px;
  top: 48px;
  bottom: 10px;
  width: 1px;
  background: #d9dee7;
}

.story-workspace-discussion .workspace-post-author {
  min-height: 30px;
  gap: 8px;
}

.story-workspace-discussion .workspace-post-author .workspace-avatar {
  position: absolute;
  left: 9px;
  top: 12px;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 8px;
  border: 1px solid #dfe4ec;
  background: #f4f6f9;
  box-shadow: 0 1px 2px rgba(20, 30, 48, 0.06);
}

.story-workspace-discussion .workspace-post-author strong {
  font-size: 0.91rem;
}

.story-workspace-discussion .workspace-post-author span {
  font-size: 0.73rem;
}

.story-workspace-discussion .workspace-feed-summary {
  padding: 0;
  font-size: 0.94rem;
  line-height: 1.55;
  color: #232b38;
}

.story-workspace-discussion .workspace-feed-stats.workspace-post-actions-row {
  gap: 2px;
  margin-top: 1px;
}

.story-workspace-discussion .workspace-feed-stats.workspace-post-actions-row span,
.story-workspace-discussion .workspace-feed-stats.workspace-post-actions-row button {
  min-height: 28px;
  padding: 0 7px;
  border-radius: 999px;
  font-size: 0.79rem;
}

.story-workspace-discussion .workspace-post-reply-composer,
.story-workspace-discussion .workspace-post-replies {
  margin-left: 0;
  padding-left: 25px;
  border-left: 1px solid #d9dee7;
}

.story-workspace-discussion .workspace-post-reply-composer::before,
.story-workspace-discussion .workspace-post-replies::before {
  left: -1px;
  top: 13px;
  width: 15px;
  height: 14px;
  border-color: #d9dee7;
  border-bottom-left-radius: 10px;
}

.story-workspace-discussion .workspace-post-replies {
  gap: 0;
  padding-top: 2px;
}

.story-workspace-discussion .workspace-post-reply-item {
  position: relative;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 8px 4px 10px 38px;
  gap: 4px;
}

.story-workspace-discussion .workspace-post-reply-item::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 38px;
  bottom: -1px;
  width: 1px;
  background: #d9dee7;
}

.story-workspace-discussion .workspace-post-reply-item:last-child::before {
  bottom: 9px;
}

.story-workspace-discussion .workspace-avatar.workspace-avatar--reply {
  position: absolute;
  left: 0;
  top: 7px;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 7px;
  border: 1px solid #dfe4ec;
  background: #f4f6f9;
}

.story-workspace-discussion .workspace-post-reply-author {
  min-height: 28px;
  gap: 5px;
}

.story-workspace-discussion .workspace-post-reply-body {
  font-size: 0.9rem;
  line-height: 1.5;
  color: #273142;
}

.story-workspace-discussion .workspace-post-reply-meta {
  display: flex;
  align-items: center;
  gap: 5px;
  min-height: 26px;
  color: #687386;
  font-size: 0.75rem;
}

.story-workspace-discussion .workspace-post-reply-meta button {
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  padding: 4px 6px;
  border-radius: 999px;
}

.story-workspace-discussion .workspace-post-reply-meta button:hover {
  background: #f1f3f6;
  color: #283243;
}

.story-workspace-discussion .workspace-post-replies-toggle,
.story-workspace-discussion [data-workspace-replies-toggle] {
  margin-left: 24px;
  font-size: 0.79rem;
}

@media (max-width: 760px) {
  .story-workspace-discussion .workspace-feed-list {
    padding: 0 7px 10px;
  }

  .story-workspace-discussion .workspace-feed-card {
    padding: 12px 5px 12px 42px;
  }

  .story-workspace-discussion .workspace-feed-card::before {
    left: 23px;
  }

  .story-workspace-discussion .workspace-post-author .workspace-avatar {
    left: 6px;
    width: 28px;
    height: 28px;
  }

  .story-workspace-discussion .workspace-post-reply-composer,
  .story-workspace-discussion .workspace-post-replies {
    margin-left: 0;
    padding-left: 17px;
  }
}


/* STORY REPLY R6 — compact, reliable reply controls. */
.story-workspace-discussion .workspace-post-reply-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  padding-top: 2px;
}

.story-workspace-discussion .workspace-post-reply-publish,
.story-workspace-discussion .workspace-post-reply-cancel {
  width: auto !important;
  min-width: 0 !important;
  min-height: 30px !important;
  height: 30px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  font-size: 0.76rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  cursor: pointer !important;
  position: relative;
  z-index: 2;
}

.story-workspace-discussion .workspace-post-reply-publish {
  border: 1px solid #6545e8 !important;
  background: #6545e8 !important;
  color: #fff !important;
}

.story-workspace-discussion .workspace-post-reply-cancel {
  border: 1px solid #d9dee7 !important;
  background: #fff !important;
  color: #4b5565 !important;
}

.story-workspace-discussion .workspace-post-reply-publish:hover,
.story-workspace-discussion .workspace-post-reply-publish:focus-visible {
  background: #5638d4 !important;
}

.story-workspace-discussion .workspace-post-reply-cancel:hover,
.story-workspace-discussion .workspace-post-reply-cancel:focus-visible {
  background: #f3f5f8 !important;
}


/* STORY HEADER CLEANUP R8 — keep only the compact Story label, title and utility controls. */
.case-workspace[data-entity-type="story"] .workspace-story-type {
  font-size: 0.62rem;
  letter-spacing: 0.07em;
}
.case-workspace[data-entity-type="story"] .workspace-story-badge {
  font-size: 0.58rem;
}

/* R13 — Story Workspace center-column fit: keep all header text and media inside the 580px column. */
body.entity-workspace-lock .center-column,
body.entity-workspace-lock .case-workspace,
body.entity-workspace-lock .case-workspace-primary-surface,
body.entity-workspace-lock .case-workspace-header,
body.entity-workspace-lock .workspace-story-head {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

body.entity-workspace-lock .case-workspace-title,
body.entity-workspace-lock .workspace-story-head,
body.entity-workspace-lock .workspace-story-head * {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  white-space: normal;
}

@media (min-width: 1121px) {
  body.entity-workspace-lock .case-workspace-media-hit,
  body.entity-workspace-lock .case-workspace-media {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  body.entity-workspace-lock .case-workspace-media {
    height: auto;
    min-height: 0;
    aspect-ratio: 580 / 297;
  }
}

/* R14 — Workspace left navigation */
body.entity-workspace-lock .left-column .workspace-left-navigation {
  display: grid;
  gap: 18px;
  padding: 14px 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.entity-workspace-lock .workspace-home-link {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  width: fit-content;
  color: #222b3e;
  text-decoration: none;
  font-size: .86rem;
  font-weight: 750;
  letter-spacing: .08em;
}

body.entity-workspace-lock .workspace-home-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #e6e9f0;
  box-shadow: 0 5px 14px rgba(33, 42, 65, .08);
}

body.entity-workspace-lock .workspace-home-icon svg {
  width: 23px;
  height: 23px;
  fill: #5d3ee0;
}

body.entity-workspace-lock .workspace-left-menu {
  display: grid;
  gap: 10px;
}

body.entity-workspace-lock .workspace-left-menu-item {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 0 16px;
  border: 1px solid #e5e8ef;
  border-radius: 999px;
  background: #fff;
  color: #273044;
  font: inherit;
  font-size: .98rem;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 3px 10px rgba(32, 42, 64, .045);
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

body.entity-workspace-lock .workspace-left-menu-item:hover,
body.entity-workspace-lock .workspace-left-menu-item:focus-visible {
  border-color: #cfc7f7;
  box-shadow: 0 6px 16px rgba(56, 44, 130, .09);
  transform: translateY(-1px);
  outline: none;
}

body.entity-workspace-lock .workspace-left-menu-icon {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #f1eefe;
  color: #5d3ee0;
  font-size: 1rem;
  line-height: 1;
}


/* R16 — Primary person identity below Story hero */
body.entity-workspace-lock .workspace-primary-person-wrap {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 10px 12px 2px;
  box-sizing: border-box;
}

body.entity-workspace-lock .workspace-primary-person-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 100%;
  min-height: 30px;
  padding: 5px 13px;
  border: 1px solid rgba(101, 84, 180, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 3px 12px rgba(35, 28, 72, 0.06);
  color: #312a50;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  overflow-wrap: anywhere;
}

body.entity-workspace-lock .workspace-primary-person-icon {
  flex: 0 0 auto;
  color: #6d55d9;
  font-size: 14px;
  line-height: 1;
}

/* R17 — Story Workspace right rail: related and similar posts only. */
.workspace-story-sidebar {
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
  min-width: 0;
}

.workspace-story-sidebar-section {
  border: 1px solid rgba(15, 23, 42, 0.09);
  border-radius: 18px;
  background: #fff;
  padding: 15px 14px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.workspace-story-sidebar-section h3 {
  margin: 0 0 11px;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 700;
  color: #273043;
}

.workspace-story-list {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.workspace-story-list-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  padding: 9px 10px;
  border-radius: 13px;
  color: #30384a;
  text-decoration: none;
  background: #f7f8fb;
  transition: background .16s ease, transform .16s ease;
}

.workspace-story-list-item:hover,
.workspace-story-list-item:focus-visible {
  background: #eef1f7;
  transform: translateY(-1px);
}

.workspace-story-list-icon {
  flex: 0 0 auto;
  margin-top: 1px;
  font-size: 12px;
  color: #788196;
}

.workspace-story-list-title {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 12.5px;
  line-height: 1.35;
  font-weight: 600;
}

.workspace-story-list-empty {
  margin: 0;
  color: #8b93a3;
  font-size: 12px;
  line-height: 1.4;
}

/* R19 — Story Workspace media frame: Reddit-style 620 × 300 presentation. */
body.entity-workspace-lock .case-workspace-media-hit,
body.entity-workspace-lock .case-workspace-media {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  height: 300px;
  min-height: 300px;
  aspect-ratio: auto;
  box-sizing: border-box;
}

body.entity-workspace-lock .case-workspace-media {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.entity-workspace-lock .case-workspace-media > img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

body.entity-workspace-lock .case-workspace-media > video,
body.entity-workspace-lock .workspace-post-media.workspace-post-media--video {
  width: 620px;
  max-width: 100%;
  height: 300px;
  min-height: 300px;
  box-sizing: border-box;
  background: #000;
}

body.entity-workspace-lock .case-workspace-media > video,
body.entity-workspace-lock .workspace-post-video {
  width: 100%;
  height: 100%;
  display: block;
  background: #000;
  object-position: center;
}

body.entity-workspace-lock video.tsemou-media-video--portrait {
  object-fit: contain;
}

body.entity-workspace-lock video.tsemou-media-video--landscape {
  object-fit: cover;
}

@media (max-width: 1120px) {
  body.entity-workspace-lock .case-workspace-media-hit,
  body.entity-workspace-lock .case-workspace-media,
  body.entity-workspace-lock .case-workspace-media > video,
  body.entity-workspace-lock .workspace-post-media.workspace-post-media--video {
    width: 100%;
    max-width: 100%;
  }
}

/* R24 — category-configured Story Workspace modules */
.story-workspace-configured-modules{
  display:grid;
  gap:12px;
  padding:14px 14px 0;
}
.story-workspace-module{
  border:1px solid #e4e7ec;
  border-radius:14px;
  background:#fff;
  padding:14px 16px;
}
.story-workspace-module h3{
  margin:0 0 8px;
  font-size:15px;
  line-height:1.35;
  color:#172033;
}
.story-workspace-module-empty{
  margin:0;
  color:#8b94a7;
  font-size:13px;
}
.story-workspace-module-list{
  display:grid;
  gap:7px;
}
.story-workspace-module-item{
  display:block;
  padding:8px 10px;
  border-radius:10px;
  background:#f7f8fb;
  font-size:13px;
  color:#293247;
  text-decoration:none;
}
a.story-workspace-module-item:hover,
a.story-workspace-module-item:focus-visible{
  background:#eef1f6;
  color:#172033;
  text-decoration:none;
  outline:none;
}

/* R26 — visible Story source on Homepage and Story Workspace */
.homepage-story-source,
.story-source-line{
  display:flex;
  align-items:center;
  gap:5px;
  min-width:0;
  color:#6d7587;
  font-size:12px;
  line-height:1.4;
}
.homepage-story-source{
  padding:0 0 9px;
}
.story-source-line{
  margin:5px 0 9px;
}
.homepage-story-source span,
.story-source-line span{
  color:#8b93a3;
}
.homepage-story-source a,
.story-source-line a,
.homepage-story-source strong,
.story-source-line strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#3c465c;
  font-weight:700;
  text-decoration:none;
}
.homepage-story-source a:hover,
.story-source-line a:hover{
  text-decoration:underline;
}

/* LN-21B — Living Node Real Composer Integration */
.living-node-composer-companion {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 8px 10px;
  border: 1px solid #e4e7ef;
  border-radius: 14px;
  background: linear-gradient(135deg, #faf9ff 0%, #f7fbff 100%);
}
.living-node-composer-copy { min-width: 0; display: grid; gap: 2px; }
.living-node-composer-copy > strong { color: #3f356b; font-size: .78rem; line-height: 1.2; letter-spacing: .01em; }
.workspace-composer-input-shell { position: relative; flex: 1 1 auto; min-width: 0; }
.living-node-composer-assistant {
  position: relative; flex: 0 0 46px; width: 46px; height: 46px; padding: 3px;
  border: 1px solid #d9d3f5; border-radius: 15px; background: #fff;
  box-shadow: 0 4px 14px rgba(43,52,72,.10); cursor: pointer;
  display: grid; place-items: center;
  transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease;
}
.living-node-composer-assistant:hover,
.living-node-composer-assistant:focus-visible {
  transform: translateY(-1px); border-color: #8d7be8;
  box-shadow: 0 6px 18px rgba(83,56,211,.16); outline: 2px solid transparent;
}
.living-node-composer-assistant img { display:block; width:38px; height:38px; object-fit:contain; }
.living-node-composer-dot {
  position:absolute; right:-2px; bottom:-2px; width:11px; height:11px;
  border:2px solid #fff; border-radius:50%; background:#9aa3b5;
}
.living-node-composer-assistant[data-state="attention"] .living-node-composer-dot,
.living-node-composer-assistant[data-state="listening"] .living-node-composer-dot { background:#6a52de; }
.living-node-composer-assistant[data-state="thinking"] .living-node-composer-dot,
.living-node-composer-assistant[data-state="loading"] .living-node-composer-dot { background:#e79a31; }
.living-node-composer-assistant[data-state="success"] .living-node-composer-dot { background:#28a66a; }
.living-node-composer-assistant[data-state="warning"] .living-node-composer-dot,
.living-node-composer-assistant[data-state="error"] .living-node-composer-dot { background:#c94d43; }
.living-node-composer-guidance { min-height:18px; margin:0; color:#707a8e; font-size:.79rem; line-height:1.35; }
.living-node-composer-guidance[data-state="success"] { color:#247a52; }
.living-node-composer-guidance[data-state="warning"],
.living-node-composer-guidance[data-state="error"] { color:#a63b33; }
.workspace-composer--compact { gap: 9px; }
.workspace-composer--compact .living-node-composer-companion { min-height:54px; padding:6px 9px; }
@media (prefers-reduced-motion: reduce) {
  .living-node-composer-assistant { transition:none; }
  .living-node-composer-assistant:hover,
  .living-node-composer-assistant:focus-visible { transform:none; }
}
@media (max-width:760px) {
  .living-node-composer-companion { min-height:42px; padding:6px 8px; border-radius:12px; }
  .living-node-composer-assistant { flex-basis:40px; width:40px; height:40px; border-radius:12px; }
  .living-node-composer-assistant img { width:32px; height:32px; }
  .living-node-composer-copy > strong { font-size:.74rem; }
  .living-node-composer-guidance { font-size:.75rem; }
}

/* LN-22A — Page Companion (Form 1) */
.living-node-page-companion{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:1200;
  display:flex;
  align-items:flex-end;
  gap:10px;
  pointer-events:none;
}
.living-node-page-button{
  position:relative;
  width:68px;
  height:68px;
  padding:5px;
  border:1px solid #ded8f5;
  border-radius:22px;
  background:rgba(255,255,255,.96);
  box-shadow:0 10px 30px rgba(35,43,68,.18);
  display:grid;
  place-items:center;
  cursor:pointer;
  pointer-events:auto;
  transition:transform .18s ease, box-shadow .18s ease;
}
.living-node-page-button:hover,
.living-node-page-button:focus-visible{
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 14px 34px rgba(35,43,68,.24);
  outline:3px solid rgba(106,82,222,.18);
  outline-offset:2px;
}
.living-node-page-button img{
  width:58px;
  height:58px;
  display:block;
  object-fit:contain;
}
.living-node-page-presence{
  position:absolute;
  right:2px;
  bottom:2px;
  width:13px;
  height:13px;
  border:3px solid #fff;
  border-radius:50%;
  background:#33a66b;
}
.living-node-page-bubble{
  width:min(260px, calc(100vw - 116px));
  padding:11px 13px;
  border:1px solid #e4e2ee;
  border-radius:15px 15px 4px 15px;
  background:rgba(255,255,255,.98);
  box-shadow:0 10px 28px rgba(35,43,68,.14);
  opacity:0;
  transform:translateY(8px) scale(.97);
  transform-origin:bottom right;
  visibility:hidden;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  pointer-events:auto;
}
.living-node-page-companion[data-open="true"] .living-node-page-bubble{
  opacity:1;
  transform:none;
  visibility:visible;
}
.living-node-page-bubble strong{
  display:block;
  margin:0 0 3px;
  color:#40366a;
  font-size:12px;
  line-height:1.25;
}
.living-node-page-bubble p{
  margin:0;
  color:#606a7e;
  font-size:13px;
  line-height:1.38;
}
.living-node-page-companion[data-state="helping"] .living-node-page-presence,
.living-node-page-companion[data-state="guiding"] .living-node-page-presence{background:#6a52de}
.living-node-page-companion[data-state="discovering"] .living-node-page-presence,
.living-node-page-companion[data-state="reading"] .living-node-page-presence{background:#e79a31}
@media (max-width:760px){
  .living-node-page-companion{right:10px;bottom:10px;gap:7px}
  .living-node-page-button{width:56px;height:56px;border-radius:18px}
  .living-node-page-button img{width:47px;height:47px}
  .living-node-page-bubble{width:min(225px, calc(100vw - 86px));padding:9px 11px}
  .living-node-page-bubble p{font-size:12px}
}
@media (prefers-reduced-motion:reduce){
  .living-node-page-button,.living-node-page-bubble{transition:none}
  .living-node-page-button:hover,.living-node-page-button:focus-visible{transform:none}
}

/* LN-22B — Living Node Gallery Mode (temporary visual evaluation only). */
body.living-node-gallery-mode .living-node-page-companion { display:none !important; }
.living-node-gallery-anchor { position:relative !important; overflow:visible !important; }
.living-node-gallery-figure {
  position:absolute;
  z-index:80;
  width:160px;
  height:180px;
  margin:0;
  pointer-events:none;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-direction:column;
  filter:drop-shadow(0 9px 13px rgba(31, 25, 55, .22));
}
.living-node-gallery-figure img {
  display:block;
  width:150px;
  height:150px;
  object-fit:contain;
}
.living-node-gallery-figure figcaption {
  max-width:155px;
  margin-top:-4px;
  padding:4px 8px;
  border:1px solid rgba(73, 58, 130, .22);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#493a82;
  font:700 10px/1.1 "Space Grotesk", sans-serif;
  text-align:center;
  white-space:nowrap;
  box-shadow:0 4px 10px rgba(31, 25, 55, .1);
}

/* Header figures. */
.logo > .living-node-gallery-figure--logo {
  left:100%;
  top:-46px;
  transform:translateX(-12px) scale(.82);
  transform-origin:bottom left;
}
.header-nav a > .living-node-gallery-figure--topics {
  left:50%;
  top:24px;
  transform:translateX(-50%) scale(.72);
  transform-origin:top center;
}
.hero-identity > .living-node-gallery-figure--identity {
  left:100%;
  bottom:-48px;
  transform:translateX(16px) scale(.9);
  transform-origin:bottom left;
}

/* Three figures in each side column. They intentionally overlap the rail edge for visibility. */
.left-column > .living-node-gallery-figure.is-column-top { right:-62px; top:28px; }
.left-column > .living-node-gallery-figure.is-column-middle { left:-55px; top:38%; }
.left-column > .living-node-gallery-figure.is-column-bottom { right:-64px; bottom:24px; }
.right-column > .living-node-gallery-figure.is-column-top { left:-62px; top:18px; }
.right-column > .living-node-gallery-figure.is-column-middle { right:-56px; top:39%; }
.right-column > .living-node-gallery-figure.is-column-bottom { left:-65px; bottom:22px; }

/* Two figures around the first title. */
.story-title > .living-node-gallery-figure--title-left,
#storyFeed article:first-child h2 > .living-node-gallery-figure--title-left,
#storyFeed article:first-child h3 > .living-node-gallery-figure--title-left,
#storyFeed > *:first-child [class*="title"] > .living-node-gallery-figure--title-left {
  right:100%;
  top:-56px;
  transform:translateX(18px) scale(.78);
  transform-origin:center right;
}
.story-title > .living-node-gallery-figure--title-right,
#storyFeed article:first-child h2 > .living-node-gallery-figure--title-right,
#storyFeed article:first-child h3 > .living-node-gallery-figure--title-right,
#storyFeed > *:first-child [class*="title"] > .living-node-gallery-figure--title-right {
  left:100%;
  top:-50px;
  transform:translateX(-18px) scale(.78);
  transform-origin:center left;
}

/* Make the temporary test obvious and keep all figures on-screen on common desktop widths. */
@media (min-width: 1100px) and (max-width: 1450px) {
  .living-node-gallery-figure { width:140px; height:160px; }
  .living-node-gallery-figure img { width:132px; height:132px; }
  .left-column > .living-node-gallery-figure.is-column-top,
  .left-column > .living-node-gallery-figure.is-column-bottom { right:-42px; }
  .left-column > .living-node-gallery-figure.is-column-middle { left:-38px; }
  .right-column > .living-node-gallery-figure.is-column-top,
  .right-column > .living-node-gallery-figure.is-column-bottom { left:-42px; }
  .right-column > .living-node-gallery-figure.is-column-middle { right:-38px; }
}
@media (max-width: 1099px) {
  .living-node-gallery-figure { width:112px; height:128px; }
  .living-node-gallery-figure img { width:104px; height:104px; }
  .living-node-gallery-figure figcaption { max-width:110px; font-size:8px; }
  .left-column > .living-node-gallery-figure.is-column-top,
  .left-column > .living-node-gallery-figure.is-column-middle,
  .left-column > .living-node-gallery-figure.is-column-bottom,
  .right-column > .living-node-gallery-figure.is-column-top,
  .right-column > .living-node-gallery-figure.is-column-middle,
  .right-column > .living-node-gallery-figure.is-column-bottom { left:auto; right:4px; transform:none; }
  .left-column > .living-node-gallery-figure.is-column-top,
  .right-column > .living-node-gallery-figure.is-column-top { top:6px; }
  .left-column > .living-node-gallery-figure.is-column-middle,
  .right-column > .living-node-gallery-figure.is-column-middle { top:42%; }
  .left-column > .living-node-gallery-figure.is-column-bottom,
  .right-column > .living-node-gallery-figure.is-column-bottom { bottom:8px; }
}
@media (max-width: 720px) {
  /* Gallery remains visible, but avoids covering the whole mobile feed. */
  .living-node-gallery-figure figcaption { display:none; }
  .living-node-gallery-figure { width:82px; height:88px; }
  .living-node-gallery-figure img { width:78px; height:78px; }
  .header-nav a > .living-node-gallery-figure--topics { display:none; }
  .logo > .living-node-gallery-figure--logo { left:78%; top:-22px; transform:scale(.52); }
  .hero-identity > .living-node-gallery-figure--identity { left:auto; right:-10px; bottom:-22px; transform:scale(.55); }
}


/* LN-22C — Compact integrated-frame gallery refinement.
   Characters are smaller, have no circular badge and visually sit on / emerge from UI frames. */
body.living-node-gallery-mode .living-node-gallery-figure {
  width:88px !important;
  height:96px !important;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
  overflow:visible !important;
  pointer-events:none;
}
body.living-node-gallery-mode .living-node-gallery-figure img {
  position:absolute;
  z-index:2;
  left:50%;
  bottom:7px;
  width:82px !important;
  height:82px !important;
  transform:translateX(-50%);
  object-fit:contain;
  filter:drop-shadow(0 3px 4px rgba(27,39,56,.16));
}
body.living-node-gallery-mode .living-node-gallery-figure figcaption { display:none !important; }
body.living-node-gallery-mode .living-node-gallery-frame {
  position:absolute;
  z-index:1;
  left:5px;
  right:5px;
  bottom:0;
  height:22px;
  border-bottom:2px solid rgba(69,84,108,.34);
  border-left:2px solid rgba(69,84,108,.24);
  border-right:2px solid rgba(69,84,108,.24);
  border-radius:0 0 8px 8px;
  background:linear-gradient(to bottom, transparent 0 45%, rgba(255,255,255,.92) 46% 100%);
}
body.living-node-gallery-mode .living-node-gallery-frame::before,
body.living-node-gallery-mode .living-node-gallery-frame::after {
  content:"";
  position:absolute;
  top:-1px;
  width:18px;
  height:2px;
  background:rgba(69,84,108,.28);
}
body.living-node-gallery-mode .living-node-gallery-frame::before { left:-2px; }
body.living-node-gallery-mode .living-node-gallery-frame::after { right:-2px; }

/* Header: the character grips / sits on the adjacent header edge rather than floating in a badge. */
body.living-node-gallery-mode .logo > .living-node-gallery-figure--logo {
  left:100% !important;
  top:-18px !important;
  transform:translateX(-8px) rotate(-2deg) !important;
}
body.living-node-gallery-mode .header-nav a > .living-node-gallery-figure--topics {
  left:50% !important;
  top:18px !important;
  transform:translateX(-50%) rotate(2deg) !important;
}
body.living-node-gallery-mode .hero-identity > .living-node-gallery-figure--identity {
  left:100% !important;
  bottom:-18px !important;
  transform:translateX(4px) !important;
}

/* Side rails: compact figures overlap the card edge by about 20%, as if emerging from it. */
body.living-node-gallery-mode .left-column > .living-node-gallery-figure.is-column-top { right:-18px !important; top:18px !important; }
body.living-node-gallery-mode .left-column > .living-node-gallery-figure.is-column-middle { left:-18px !important; top:39% !important; }
body.living-node-gallery-mode .left-column > .living-node-gallery-figure.is-column-bottom { right:-18px !important; bottom:18px !important; }
body.living-node-gallery-mode .right-column > .living-node-gallery-figure.is-column-top { left:-18px !important; top:18px !important; }
body.living-node-gallery-mode .right-column > .living-node-gallery-figure.is-column-middle { right:-18px !important; top:39% !important; }
body.living-node-gallery-mode .right-column > .living-node-gallery-figure.is-column-bottom { left:-18px !important; bottom:18px !important; }

/* First title: both figures sit directly on the title-card frame. */
body.living-node-gallery-mode .story-title > .living-node-gallery-figure--title-left,
body.living-node-gallery-mode #storyFeed article:first-child h2 > .living-node-gallery-figure--title-left,
body.living-node-gallery-mode #storyFeed article:first-child h3 > .living-node-gallery-figure--title-left,
body.living-node-gallery-mode #storyFeed > *:first-child [class*="title"] > .living-node-gallery-figure--title-left {
  right:100% !important;
  top:-26px !important;
  transform:translateX(28px) rotate(-3deg) !important;
}
body.living-node-gallery-mode .story-title > .living-node-gallery-figure--title-right,
body.living-node-gallery-mode #storyFeed article:first-child h2 > .living-node-gallery-figure--title-right,
body.living-node-gallery-mode #storyFeed article:first-child h3 > .living-node-gallery-figure--title-right,
body.living-node-gallery-mode #storyFeed > *:first-child [class*="title"] > .living-node-gallery-figure--title-right {
  left:100% !important;
  top:-24px !important;
  transform:translateX(-28px) rotate(3deg) !important;
}

@media (max-width:1099px) {
  body.living-node-gallery-mode .living-node-gallery-figure { width:76px !important; height:84px !important; }
  body.living-node-gallery-mode .living-node-gallery-figure img { width:70px !important; height:70px !important; }
}
@media (max-width:720px) {
  body.living-node-gallery-mode .living-node-gallery-figure { width:62px !important; height:69px !important; }
  body.living-node-gallery-mode .living-node-gallery-figure img { width:58px !important; height:58px !important; bottom:6px; }
  body.living-node-gallery-mode .living-node-gallery-frame { height:17px; }
  body.living-node-gallery-mode .header-nav a > .living-node-gallery-figure--topics { display:none !important; }
  body.living-node-gallery-mode .logo > .living-node-gallery-figure--logo { left:86% !important; top:-10px !important; transform:scale(.9) !important; }
  body.living-node-gallery-mode .hero-identity > .living-node-gallery-figure--identity { right:-3px !important; left:auto !important; bottom:-12px !important; transform:none !important; }
}

/* LN-22D — 52px compact gallery refinement.
   No badge, caption, shadow or artificial base. Each character overlaps its UI edge by 10–15px. */
body.living-node-gallery-mode .living-node-gallery-figure {
  width:42px !important;
  height:42px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
  overflow:visible !important;
}
body.living-node-gallery-mode .living-node-gallery-figure img {
  position:absolute !important;
  inset:0 !important;
  width:42px !important;
  height:42px !important;
  transform:none !important;
  object-fit:contain !important;
  filter:none !important;
}
body.living-node-gallery-mode .living-node-gallery-figure figcaption,
body.living-node-gallery-mode .living-node-gallery-frame {
  display:none !important;
}

/* Header placements: attached to nearby UI, never floating in a badge. */
body.living-node-gallery-mode .logo > .living-node-gallery-figure--logo {
  left:calc(100% - 10px) !important;
  top:-12px !important;
  transform:rotate(-2deg) !important;
}
body.living-node-gallery-mode .header-nav a > .living-node-gallery-figure--topics {
  left:calc(100% - 14px) !important;
  top:-13px !important;
  transform:rotate(2deg) !important;
}
body.living-node-gallery-mode .hero-identity > .living-node-gallery-figure--identity {
  left:auto !important;
  right:-12px !important;
  bottom:-12px !important;
  transform:none !important;
}

/* Side rails: 10–15px overlap on the nearest card edge. */
body.living-node-gallery-mode .left-column > .living-node-gallery-figure.is-column-top { right:-12px !important; top:20px !important; }
body.living-node-gallery-mode .left-column > .living-node-gallery-figure.is-column-middle { left:-12px !important; top:39% !important; }
body.living-node-gallery-mode .left-column > .living-node-gallery-figure.is-column-bottom { right:-12px !important; bottom:20px !important; }
body.living-node-gallery-mode .right-column > .living-node-gallery-figure.is-column-top { left:-12px !important; top:20px !important; }
body.living-node-gallery-mode .right-column > .living-node-gallery-figure.is-column-middle { right:-12px !important; top:39% !important; }
body.living-node-gallery-mode .right-column > .living-node-gallery-figure.is-column-bottom { left:-12px !important; bottom:20px !important; }

/* First title: two small figures grip the title edge. */
body.living-node-gallery-mode .story-title > .living-node-gallery-figure--title-left,
body.living-node-gallery-mode #storyFeed article:first-child h2 > .living-node-gallery-figure--title-left,
body.living-node-gallery-mode #storyFeed article:first-child h3 > .living-node-gallery-figure--title-left,
body.living-node-gallery-mode #storyFeed > *:first-child [class*="title"] > .living-node-gallery-figure--title-left {
  right:calc(100% - 14px) !important;
  top:-18px !important;
  transform:rotate(-3deg) !important;
}
body.living-node-gallery-mode .story-title > .living-node-gallery-figure--title-right,
body.living-node-gallery-mode #storyFeed article:first-child h2 > .living-node-gallery-figure--title-right,
body.living-node-gallery-mode #storyFeed article:first-child h3 > .living-node-gallery-figure--title-right,
body.living-node-gallery-mode #storyFeed > *:first-child [class*="title"] > .living-node-gallery-figure--title-right {
  left:calc(100% - 14px) !important;
  top:-18px !important;
  transform:rotate(3deg) !important;
}

@media (max-width:720px) {
  body.living-node-gallery-mode .living-node-gallery-figure,
  body.living-node-gallery-mode .living-node-gallery-figure img {
    width:42px !important;
    height:42px !important;
  }
  body.living-node-gallery-mode .header-nav a > .living-node-gallery-figure--topics {
    display:none !important;
  }
}

.living-node-slot{background:#FFF6E8;border:1px solid rgba(255,153,0,.10);border-radius:10px;padding:4px;}


/* CSW-ENTITY-REVIEW-1 — visible, non-confirmed Canonical relation suggestions */
.story-workspace-suggested-note{
  margin:-3px 0 10px;
  color:#747d91;
  font-size:12px;
  line-height:1.4;
}
.story-workspace-suggested-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.story-workspace-suggested-label{
  min-width:0;
  overflow-wrap:anywhere;
}
.story-workspace-suggested-badge{
  flex:0 0 auto;
  padding:3px 7px;
  border:1px solid #d8dce5;
  border-radius:999px;
  background:#fff;
  color:#697286;
  font-size:10px;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
}

/* CE-01 — Canonical Entities directly below the Story summary. */
.story-workspace-canonical-entities {
  padding: 0 18px 14px;
  background: #fff;
}
.story-workspace-canonical-entities-title {
  display: block;
  margin-bottom: 8px;
  color: #667085;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.story-workspace-canonical-entities-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.story-workspace-canonical-entity {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid rgba(31, 45, 71, 0.12);
  border-radius: 999px;
  background: #f8fafc;
  color: #263650;
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
}



/* D2.1 — Canonical Evolution tab foundation (read-only). */
.workspace-evolution-panel { padding: 0 0 24px; }
.workspace-evolution-foundation { background: #fff; border: 1px solid rgba(15,23,42,.10); border-radius: 14px; padding: 18px; }
.workspace-evolution-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px; }
.workspace-evolution-heading h3 { margin:4px 0 5px; font-size:20px; }
.workspace-evolution-heading p { margin:0; color:#64748b; }
.workspace-evolution-lock { flex:0 0 auto; border-radius:999px; background:#f1f5f9; color:#475569; font-size:12px; font-weight:700; padding:7px 10px; }
.workspace-evolution-lock.is-locked { background:#ecfdf5; color:#047857; }
.workspace-evolution-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.workspace-evolution-summary > div { border:1px solid rgba(15,23,42,.09); border-radius:12px; padding:14px; background:#f8fafc; }
.workspace-evolution-summary strong { display:block; font-size:22px; line-height:1; margin-bottom:7px; }
.workspace-evolution-summary span { color:#64748b; font-size:12px; }
.workspace-evolution-empty, .workspace-evolution-ready { margin-top:14px; border-radius:12px; padding:15px; background:#f8fafc; }
.workspace-evolution-ready { background:#f0fdf4; }
.workspace-evolution-empty p, .workspace-evolution-ready p { margin:5px 0 0; color:#64748b; }
@media (max-width: 720px) { .workspace-evolution-heading { display:block; } .workspace-evolution-lock { display:inline-block; margin-top:12px; } .workspace-evolution-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } }


/* D2.2 — Canonical Evolution Timeline (read-only). */
.workspace-evolution-timeline {
  position: relative;
  display: grid;
  gap: 14px;
  margin-top: 18px;
  padding-left: 18px;
}
.workspace-evolution-timeline::before {
  content: "";
  position: absolute;
  top: 8px;
  bottom: 8px;
  left: 5px;
  width: 2px;
  background: #d9dee7;
}
.workspace-evolution-record {
  position: relative;
}
.workspace-evolution-marker {
  position: absolute;
  top: 18px;
  left: -18px;
  width: 12px;
  height: 12px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #667085;
  box-shadow: 0 0 0 1px #cfd5df;
}
.workspace-evolution-record--event .workspace-evolution-marker { background: #8b5cf6; }
.workspace-evolution-record--delivery .workspace-evolution-marker { background: #0ea5e9; }
.workspace-evolution-record--read_model_update .workspace-evolution-marker { background: #10b981; }
.workspace-evolution-record--workspace_sync .workspace-evolution-marker { background: #f59e0b; }
.workspace-evolution-record-body {
  padding: 15px 16px;
  border: 1px solid #e1e5ec;
  border-radius: 12px;
  background: #fff;
}
.workspace-evolution-record-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.workspace-evolution-record-head h4 {
  margin: 3px 0 0;
  font-size: 15px;
  line-height: 1.35;
}
.workspace-evolution-record-type {
  color: #667085;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.workspace-evolution-state {
  flex: 0 0 auto;
  padding: 4px 8px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #344054;
  font-size: 11px;
  font-weight: 700;
}
.workspace-evolution-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-top: 9px;
  color: #667085;
  font-size: 11px;
}
.workspace-evolution-record-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.workspace-evolution-record-summary span {
  min-width: 110px;
  padding: 8px 10px;
  border-radius: 8px;
  background: #f8fafc;
}
.workspace-evolution-record-summary small,
.workspace-evolution-record-summary strong {
  display: block;
}
.workspace-evolution-record-summary small {
  color: #667085;
  font-size: 10px;
}
.workspace-evolution-record-summary strong {
  margin-top: 2px;
  color: #101828;
  font-size: 12px;
}
.workspace-evolution-reason {
  margin: 12px 0 0;
  padding: 9px 10px;
  border-left: 3px solid #d0d5dd;
  background: #f9fafb;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}
.workspace-evolution-record-body code {
  display: block;
  margin-top: 11px;
  overflow-wrap: anywhere;
  color: #98a2b3;
  font-size: 10px;
}
@media (max-width: 640px) {
  .workspace-evolution-record-head { display: block; }
  .workspace-evolution-state { display: inline-block; margin-top: 8px; }
  .workspace-evolution-record-summary { display: grid; grid-template-columns: 1fr 1fr; }
  .workspace-evolution-record-summary span { min-width: 0; }
}

/* D2.3 — read-only Evolution record details. */
.workspace-evolution-details {
  margin-top: 14px;
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: 10px;
  background: #f8fafc;
  overflow: hidden;
}
.workspace-evolution-details > summary {
  cursor: pointer;
  list-style: none;
  padding: 11px 13px;
  color: #334155;
  font-size: 13px;
  font-weight: 700;
}
.workspace-evolution-details > summary::-webkit-details-marker { display: none; }
.workspace-evolution-details > summary::after {
  content: "+";
  float: right;
  font-size: 16px;
  line-height: 1;
}
.workspace-evolution-details[open] > summary::after { content: "−"; }
.workspace-evolution-details-body {
  border-top: 1px solid rgba(15, 23, 42, .08);
  padding: 13px;
}
.workspace-evolution-details-identity {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}
.workspace-evolution-details-identity span {
  min-width: 0;
  border-radius: 8px;
  background: #fff;
  padding: 9px;
}
.workspace-evolution-details-identity small,
.workspace-evolution-details-identity strong { display: block; }
.workspace-evolution-details-identity small {
  margin-bottom: 4px;
  color: #64748b;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.workspace-evolution-details-identity strong {
  overflow-wrap: anywhere;
  color: #0f172a;
  font-size: 12px;
}
.workspace-evolution-details pre {
  max-height: 360px;
  margin: 0;
  overflow: auto;
  border-radius: 8px;
  background: #0f172a;
  padding: 12px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.workspace-evolution-details pre code {
  padding: 0;
  background: transparent;
  color: #e2e8f0;
  font-size: 11px;
  line-height: 1.55;
}
.workspace-evolution-record-id { display: inline-block; margin-top: 11px; }
@media (max-width: 720px) {
  .workspace-evolution-details-identity { grid-template-columns: 1fr; }
}



/* D2.4 — read-only Evolution change summary */
.workspace-evolution-change-summary {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #dbe4ee;
  border-radius: 12px;
  background: #f8fafc;
}
.workspace-evolution-change-summary > strong {
  display: block;
  margin-bottom: 9px;
  font-size: 12px;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #475569;
}
.workspace-evolution-change-list { display: grid; gap: 8px; }
.workspace-evolution-change-row {
  display: grid;
  grid-template-columns: minmax(90px, .8fr) minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}
.workspace-evolution-change-field { font-weight: 700; color: #334155; text-transform: capitalize; }
.workspace-evolution-change-value {
  min-width: 0;
  padding: 8px 9px;
  border-radius: 9px;
  background: #fff;
  border: 1px solid #e2e8f0;
}
.workspace-evolution-change-value small { display: block; margin-bottom: 3px; color: #64748b; }
.workspace-evolution-change-value code { display: block; overflow-wrap: anywhere; white-space: normal; color: #0f172a; }
.workspace-evolution-change-value.is-after { border-color: #bbf7d0; background: #f0fdf4; }
.workspace-evolution-change-arrow { color: #94a3b8; font-weight: 700; }
@media (max-width: 720px) {
  .workspace-evolution-change-row { grid-template-columns: 1fr; }
  .workspace-evolution-change-arrow { transform: rotate(90deg); justify-self: center; }
}


/* D2.5 — Evolution Source & Provenance View */
.workspace-evolution-provenance { margin-top: 12px; border: 1px solid #dbeafe; border-radius: 10px; background: #eff6ff; }
.workspace-evolution-provenance > summary { cursor: pointer; list-style: none; padding: 11px 13px; font-weight: 700; color: #1e3a8a; }
.workspace-evolution-provenance > summary::-webkit-details-marker { display: none; }
.workspace-evolution-provenance > summary::after { content: "+"; float: right; color: #3b82f6; }
.workspace-evolution-provenance[open] > summary::after { content: "−"; }
.workspace-evolution-provenance-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; padding: 0 13px 13px; }
.workspace-evolution-provenance-grid span { min-width: 0; padding: 9px 10px; border: 1px solid #dbeafe; border-radius: 8px; background: #fff; }
.workspace-evolution-provenance-grid small, .workspace-evolution-provenance-grid strong { display: block; }
.workspace-evolution-provenance-grid small { margin-bottom: 4px; color: #64748b; }
.workspace-evolution-provenance-grid strong { overflow-wrap: anywhere; color: #0f172a; font-size: 13px; }
@media (max-width: 720px) { .workspace-evolution-provenance-grid { grid-template-columns: 1fr; } }

/* D2.6 — Evolution Filters & Navigation */
.workspace-evolution-controls { margin-top: 14px; padding: 12px; border: 1px solid rgba(15,23,42,.09); border-radius: 12px; background: #fff; }
.workspace-evolution-filter-group, .workspace-evolution-navigation { display: flex; flex-wrap: wrap; gap: 8px; }
.workspace-evolution-navigation { margin-top: 9px; }
.workspace-evolution-filter-group button, .workspace-evolution-navigation button { appearance: none; border: 1px solid #cbd5e1; border-radius: 999px; background: #fff; color: #334155; cursor: pointer; font: inherit; font-size: 12px; font-weight: 700; padding: 7px 10px; }
.workspace-evolution-filter-group button:hover, .workspace-evolution-navigation button:hover { border-color: #94a3b8; background: #f8fafc; }
.workspace-evolution-filter-group button.is-active { border-color: #7c3aed; background: #f5f3ff; color: #6d28d9; }
.workspace-evolution-filter-group button span { margin-left: 4px; opacity: .72; }
.workspace-evolution-filter-status { margin: 10px 0 0; color: #64748b; font-size: 12px; }
.workspace-evolution-record[hidden] { display: none !important; }
.workspace-evolution-record.is-navigation-target .workspace-evolution-record-body { outline: 3px solid rgba(124,58,237,.22); outline-offset: 3px; transition: outline-color .3s ease; }
@media (max-width: 720px) { .workspace-evolution-filter-group button, .workspace-evolution-navigation button { flex: 1 1 auto; } }


/* D2.8 — Evolution Timeline Deep-Linking */
.workspace-evolution-record-head { position: relative; }
.workspace-evolution-record-link {
  margin-left: auto;
  padding: 5px 9px;
  border: 1px solid #d9dce3;
  border-radius: 8px;
  background: #fff;
  color: #4b5563;
  font: inherit;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
}
.workspace-evolution-record-link:hover,
.workspace-evolution-record-link:focus-visible { border-color: #8b5cf6; color: #6d28d9; outline: none; }
.workspace-evolution-record.is-deep-link-target .workspace-evolution-record-body {
  outline: 3px solid rgba(124,58,237,.34);
  outline-offset: 4px;
  box-shadow: 0 0 0 7px rgba(124,58,237,.08);
  transition: outline-color .35s ease, box-shadow .35s ease;
}
@media (max-width: 700px) {
  .workspace-evolution-record-link { margin: 8px 0 0; }
}


/* D3.1 — Entity confidence (read-only Entity_Engine signal). */
.workspace-confidence-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px 18px; align-items:center; margin:0 0 16px; padding:16px; border:1px solid rgba(15,23,42,.10); border-radius:14px; background:#fff; }
.workspace-confidence-copy h3 { margin:3px 0 4px; font-size:18px; line-height:1.2; }
.workspace-confidence-copy p { margin:0; color:#64748b; font-size:12px; line-height:1.45; }
.workspace-confidence-score { min-width:82px; text-align:right; }
.workspace-confidence-score strong { display:block; font-size:28px; line-height:1; color:#0f172a; }
.workspace-confidence-score span { display:block; margin-top:5px; color:#64748b; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.workspace-confidence-meter { grid-column:1 / -1; height:7px; overflow:hidden; border-radius:999px; background:#e2e8f0; }
.workspace-confidence-meter span { display:block; height:100%; border-radius:inherit; background:currentColor; color:#0f766e; transition:width .2s ease; }
.workspace-confidence-card.is-medium .workspace-confidence-meter span { color:#b45309; }
.workspace-confidence-card.is-low .workspace-confidence-meter span { color:#b91c1c; }
.workspace-confidence-card.is-unavailable .workspace-confidence-meter span { color:#94a3b8; }
.workspace-confidence-review { grid-column:1 / -1; margin:0; color:#b45309; font-size:12px; font-weight:700; }
@media (max-width:640px) { .workspace-confidence-card { grid-template-columns:minmax(0,1fr) auto; padding:14px; } .workspace-confidence-score strong { font-size:24px; } }

/* D3.2 — Evidence sources already connected by canonical supports relations. */
.workspace-trust-evidence-card { margin:0 0 16px; padding:16px; border:1px solid rgba(15,23,42,.10); border-radius:14px; background:#fff; }
.workspace-trust-evidence-heading { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
.workspace-trust-evidence-heading h3 { margin:3px 0 4px; font-size:18px; line-height:1.2; }
.workspace-trust-evidence-heading p { margin:0; color:#64748b; font-size:12px; line-height:1.45; }
.workspace-trust-evidence-heading > strong { min-width:38px; height:38px; display:grid; place-items:center; border-radius:999px; background:#f1f5f9; color:#0f172a; font-size:15px; }
.workspace-trust-evidence-list { display:grid; gap:8px; margin-top:14px; }
.workspace-trust-evidence-source { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 12px; padding:11px 12px; border:1px solid #e2e8f0; border-radius:11px; color:#0f172a; text-decoration:none; background:#f8fafc; }
.workspace-trust-evidence-source:hover { border-color:#cbd5e1; background:#fff; }
.workspace-trust-evidence-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:750; }
.workspace-trust-evidence-meta { grid-column:1; color:#64748b; font-size:11px; text-transform:capitalize; }
.workspace-trust-evidence-source > [aria-hidden="true"] { grid-column:2; grid-row:1 / span 2; align-self:center; color:#64748b; }
.workspace-trust-evidence-empty { margin:14px 0 0; color:#64748b; font-size:12px; }
.workspace-trust-evidence-card.is-unavailable .workspace-trust-evidence-heading > strong { color:#94a3b8; }

/* D3.3 — persisted source and attribution provenance, read-only. */
.workspace-trust-provenance-card{margin-top:16px;padding:18px;border:1px solid rgba(15,23,42,.1);border-radius:16px;background:#fff}
.workspace-trust-provenance-card.is-unavailable{background:#f8fafc}
.workspace-trust-provenance-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.workspace-trust-provenance-heading h3{margin:3px 0 5px}
.workspace-trust-provenance-heading p{margin:0;color:#64748b}
.workspace-trust-provenance-heading>strong{min-width:34px;text-align:center;padding:6px 9px;border-radius:999px;background:#eef2ff}
.workspace-trust-provenance-list{display:grid;gap:12px;margin-top:16px}
.workspace-trust-provenance-record{padding:14px;border:1px solid rgba(15,23,42,.09);border-radius:12px;background:#fbfdff}
.workspace-trust-provenance-record-title{display:flex;align-items:center;gap:8px;text-transform:capitalize}
.workspace-trust-provenance-record-title span{font-size:12px;color:#64748b;font-family:monospace}
.workspace-trust-provenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-top:12px}
.workspace-trust-provenance-field{display:grid;gap:3px;min-width:0}
.workspace-trust-provenance-field span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b}
.workspace-trust-provenance-field strong,.workspace-trust-provenance-field a{overflow-wrap:anywhere;color:#0f172a}
.workspace-trust-provenance-empty{margin:16px 0 0;color:#64748b}
@media(max-width:700px){.workspace-trust-provenance-grid{grid-template-columns:1fr}}

/* D3.4 — Trust Layer Validation (read-only) */
.workspace-trust-validation-card{margin-top:16px;padding:18px;border:1px solid rgba(15,23,42,.1);border-radius:16px;background:#fff}
.workspace-trust-validation-card.is-unavailable{background:#f8fafc}
.workspace-trust-validation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.workspace-trust-validation-heading h3{margin:3px 0 5px}
.workspace-trust-validation-heading p{margin:0;color:#64748b}
.workspace-trust-validation-heading>strong{min-width:34px;text-align:center;padding:6px 9px;border-radius:999px;background:#ecfdf5}
.workspace-trust-validation-list{display:grid;gap:12px;margin-top:16px}
.workspace-trust-validation-record{padding:14px;border:1px solid rgba(15,23,42,.09);border-radius:12px;background:#fbfefc}
.workspace-trust-validation-record-title{display:flex;align-items:center;gap:8px;text-transform:capitalize}
.workspace-trust-validation-record-title span{font-size:12px;color:#64748b;font-family:monospace}
.workspace-trust-validation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-top:12px}
.workspace-trust-validation-field{display:grid;gap:3px;min-width:0}
.workspace-trust-validation-field span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b}
.workspace-trust-validation-field strong{overflow-wrap:anywhere;color:#0f172a}
.workspace-trust-validation-empty{margin:16px 0 0;color:#64748b}
@media(max-width:700px){.workspace-trust-validation-grid{grid-template-columns:1fr}}

/* D3.5 — Trust Layer Trust Summary (read-only aggregate of D3.1–D3.4) */
.workspace-trust-summary-card{margin-top:16px;padding:18px;border:1px solid rgba(15,23,42,.12);border-radius:16px;background:#fff}
.workspace-trust-summary-card.is-unavailable{background:#f8fafc}
.workspace-trust-summary-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.workspace-trust-summary-heading h3{margin:3px 0 5px}
.workspace-trust-summary-heading p{margin:0;color:#64748b}
.workspace-trust-summary-heading>strong{white-space:nowrap;padding:6px 10px;border-radius:999px;background:#f1f5f9;color:#334155}
.workspace-trust-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}
.workspace-trust-summary-item{display:grid;gap:5px;padding:12px;border:1px solid rgba(15,23,42,.09);border-radius:12px;background:#fbfdff}
.workspace-trust-summary-item span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b}
.workspace-trust-summary-item strong{overflow-wrap:anywhere;color:#0f172a}
.workspace-trust-summary-item.is-unavailable strong{color:#94a3b8}
.workspace-trust-summary-review{margin:12px 0 0;color:#92400e}
.workspace-trust-summary-empty{margin:16px 0 0;color:#64748b}
@media(max-width:700px){.workspace-trust-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* D4.1 — Homepage Evolution Cards */
.homepage-evolution-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 14px;
  padding: 12px 14px;
  border: 1px solid rgba(93, 91, 255, 0.2);
  border-radius: 14px;
  background: rgba(93, 91, 255, 0.06);
}

.homepage-evolution-card__copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.homepage-evolution-card__eyebrow {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #5d5bff;
}

.homepage-evolution-card__copy strong {
  overflow: hidden;
  color: var(--ink, #141421);
  font-size: 14px;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.homepage-evolution-card__copy > span:last-child {
  color: var(--muted, #66697a);
  font-size: 12px;
}

.homepage-evolution-card__link {
  flex: 0 0 auto;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

@media (max-width: 640px) {
  .homepage-evolution-card {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* D4.2 — Homepage New Evidence Cards */
.homepage-new-evidence-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 10px;
  padding: 12px 14px;
  border: 1px solid rgba(14, 116, 144, 0.22);
  border-radius: 14px;
  background: rgba(14, 116, 144, 0.06);
}
.homepage-new-evidence-card__copy { display: grid; gap: 3px; min-width: 0; }
.homepage-new-evidence-card__eyebrow {
  font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #0e7490;
}
.homepage-new-evidence-card__copy strong {
  overflow: hidden; color: var(--ink, #141421); font-size: 14px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap;
}
.homepage-new-evidence-card__copy > span:last-child { color: var(--muted, #66697a); font-size: 12px; }
.homepage-new-evidence-card__link { flex: 0 0 auto; font-size: 12px; font-weight: 800; text-decoration: none; }
@media (max-width: 640px) { .homepage-new-evidence-card { align-items: flex-start; flex-direction: column; } }


/* D4.3 — Homepage Conflict Cards */
.homepage-conflict-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0 0;
  padding: 12px 14px;
  border: 1px solid rgba(180, 83, 9, 0.24);
  border-radius: 12px;
  background: rgba(255, 247, 237, 0.78);
}
.homepage-conflict-card__copy { display: grid; gap: 3px; min-width: 0; }
.homepage-conflict-card__eyebrow {
  color: #9a3412;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.homepage-conflict-card__copy strong { color: #7c2d12; font-size: 14px; line-height: 1.3; }
.homepage-conflict-card__copy > span:last-child { color: var(--muted, #66697a); font-size: 12px; }
.homepage-conflict-card__link { flex: 0 0 auto; color: #9a3412; font-size: 12px; font-weight: 800; text-decoration: none; }
@media (max-width: 640px) { .homepage-conflict-card { align-items: flex-start; flex-direction: column; } }


/* D4.4 — Homepage Approved Evolution Cards */
.homepage-approved-evolution-card {
  align-items: center;
  background: #ecfdf3;
  border: 1px solid #a7f3d0;
  border-radius: 12px;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin-top: 12px;
  padding: 12px 14px;
}
.homepage-approved-evolution-card__copy { display: grid; gap: 3px; min-width: 0; }
.homepage-approved-evolution-card__eyebrow {
  color: #047857;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.homepage-approved-evolution-card__copy strong { color: #065f46; font-size: 14px; line-height: 1.3; }
.homepage-approved-evolution-card__copy > span:last-child { color: var(--muted, #66697a); font-size: 12px; }
.homepage-approved-evolution-card__link { flex: 0 0 auto; color: #047857; font-size: 12px; font-weight: 800; text-decoration: none; }
@media (max-width: 640px) { .homepage-approved-evolution-card { align-items: flex-start; flex-direction: column; } }

/* D4.5 — subtle confirmation that Homepage entity summaries refreshed live. */
.homepage-live-entity-summaries.is-live-updated { animation: tsemou-live-summary-refresh .8s ease-out; }
@keyframes tsemou-live-summary-refresh { from { opacity: .55; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .homepage-live-entity-summaries.is-live-updated { animation: none; } }


/* D5.1 — Living Entity Workspace Evolution Section */
.workspace-living-evolution-section {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  align-items: center;
  gap: 16px;
  margin: 14px 0;
  padding: 16px 18px;
  border: 1px solid rgba(124,58,237,.18);
  border-radius: 14px;
  background: linear-gradient(135deg,#faf5ff 0%,#ffffff 68%);
}
.workspace-living-evolution-section.is-locked { border-color: rgba(5,150,105,.24); background: linear-gradient(135deg,#ecfdf5 0%,#ffffff 68%); }
.workspace-living-evolution-section__copy { min-width: 0; }
.workspace-living-evolution-section__copy h3 { margin: 3px 0 4px; font-size: 18px; color: #1e1b4b; }
.workspace-living-evolution-section__copy p { margin: 0; color: #64748b; font-size: 13px; overflow-wrap: anywhere; }
.workspace-living-evolution-section__metrics { display: flex; gap: 8px; }
.workspace-living-evolution-section__metrics > span { min-width: 70px; padding: 9px 10px; border: 1px solid rgba(15,23,42,.08); border-radius: 10px; background: rgba(255,255,255,.86); text-align: center; }
.workspace-living-evolution-section__metrics strong, .workspace-living-evolution-section__metrics small { display: block; }
.workspace-living-evolution-section__metrics strong { color: #4c1d95; font-size: 15px; }
.workspace-living-evolution-section__metrics small { margin-top: 2px; color: #64748b; font-size: 10px; text-transform: uppercase; letter-spacing: .04em; }
.workspace-living-evolution-section__open { appearance: none; border: 0; border-radius: 999px; background: #6d28d9; color: #fff; cursor: pointer; font: inherit; font-size: 12px; font-weight: 800; padding: 9px 13px; white-space: nowrap; }
.workspace-living-evolution-section__open:hover, .workspace-living-evolution-section__open:focus-visible { background: #5b21b6; outline: 3px solid rgba(124,58,237,.18); outline-offset: 2px; }
@media (max-width: 720px) {
  .workspace-living-evolution-section { grid-template-columns: 1fr; align-items: stretch; }
  .workspace-living-evolution-section__metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .workspace-living-evolution-section__metrics > span { min-width: 0; }
  .workspace-living-evolution-section__open { width: 100%; }
}


/* D5.2 — Living Entity Workspace / History Section */
.workspace-living-history-section { margin: 0 0 18px; padding: 18px; border: 1px solid rgba(15,23,42,.10); border-radius: 14px; background: #fff; }
.workspace-living-history-section__heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.workspace-living-history-section__heading h3 { margin:4px 0 5px; font-size:20px; }
.workspace-living-history-section__heading p { margin:0; color:#64748b; }
.workspace-living-history-section__heading > strong { min-width:42px; text-align:center; border-radius:999px; padding:8px 11px; background:#f1f5f9; color:#334155; font-size:16px; }
.workspace-living-history-section__counts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-top:15px; }
.workspace-living-history-section__counts span { padding:11px; border:1px solid rgba(15,23,42,.08); border-radius:10px; background:#f8fafc; }
.workspace-living-history-section__counts strong, .workspace-living-history-section__counts small { display:block; }
.workspace-living-history-section__counts strong { font-size:18px; color:#0f172a; }
.workspace-living-history-section__counts small { margin-top:4px; color:#64748b; }
.workspace-living-history-section__records { position:relative; display:grid; gap:0; margin:16px 0 0; padding:0; list-style:none; }
.workspace-living-history-section__records::before { content:""; position:absolute; left:6px; top:9px; bottom:9px; width:2px; background:#e2e8f0; }
.workspace-living-history-section__records li { position:relative; display:grid; grid-template-columns:14px 1fr; gap:11px; padding:9px 0; }
.workspace-living-history-section__marker { position:relative; z-index:1; width:12px; height:12px; margin-top:4px; border:2px solid #fff; border-radius:50%; background:#64748b; box-shadow:0 0 0 1px #cbd5e1; }
.workspace-living-history-section__records small, .workspace-living-history-section__records strong, .workspace-living-history-section__records time { display:block; }
.workspace-living-history-section__records small { color:#64748b; text-transform:capitalize; }
.workspace-living-history-section__records strong { margin-top:2px; color:#0f172a; text-transform:capitalize; }
.workspace-living-history-section__records p { margin:4px 0 0; color:#475569; }
.workspace-living-history-section__records time { margin-top:4px; color:#94a3b8; font-size:12px; }
.workspace-living-history-section__empty { margin-top:15px; padding:14px; border-radius:10px; background:#f8fafc; color:#64748b; }
@media (max-width:720px) { .workspace-living-history-section__heading { display:block; } .workspace-living-history-section__heading > strong { display:inline-block; margin-top:10px; } .workspace-living-history-section__counts { grid-template-columns:repeat(2,minmax(0,1fr)); } }


/* D5.3 — Living Entity Workspace / Relations Section */
.workspace-living-relations-section { margin:0 0 18px; padding:18px; border:1px solid rgba(15,23,42,.10); border-radius:14px; background:#fff; }
.workspace-living-relations-section__heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.workspace-living-relations-section__heading h3 { margin:4px 0 5px; font-size:20px; }
.workspace-living-relations-section__heading p { margin:0; color:#64748b; }
.workspace-living-relations-section__heading > strong { min-width:42px; text-align:center; border-radius:999px; padding:8px 11px; background:#eef2ff; color:#4338ca; font-size:16px; }
.workspace-living-relations-section__counts { display:flex; flex-wrap:wrap; gap:8px; margin-top:15px; }
.workspace-living-relations-section__counts span { min-width:92px; padding:10px 12px; border:1px solid rgba(15,23,42,.08); border-radius:10px; background:#f8fafc; }
.workspace-living-relations-section__counts strong, .workspace-living-relations-section__counts small { display:block; }
.workspace-living-relations-section__counts strong { color:#0f172a; font-size:17px; }
.workspace-living-relations-section__counts small { margin-top:3px; color:#64748b; text-transform:capitalize; }
.workspace-living-relations-section__records { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:16px 0 0; padding:0; list-style:none; }
.workspace-living-relations-section__records li { display:grid; grid-template-columns:34px 1fr; gap:10px; padding:12px; border:1px solid rgba(15,23,42,.08); border-radius:11px; background:#f8fafc; }
.workspace-living-relations-section__direction { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:#e0e7ff; color:#4338ca; font-weight:900; }
.workspace-living-relations-section__records small, .workspace-living-relations-section__records strong, .workspace-living-relations-section__records a { display:block; }
.workspace-living-relations-section__records small { color:#64748b; text-transform:capitalize; }
.workspace-living-relations-section__records strong, .workspace-living-relations-section__records a { margin-top:3px; color:#0f172a; font-weight:800; text-decoration:none; }
.workspace-living-relations-section__records a:hover, .workspace-living-relations-section__records a:focus-visible { color:#4f46e5; text-decoration:underline; }
.workspace-living-relations-section__records p { margin:4px 0 0; color:#94a3b8; font-size:12px; text-transform:capitalize; }
.workspace-living-relations-section__empty { margin-top:15px; padding:14px; border-radius:10px; background:#f8fafc; color:#64748b; }
@media (max-width:720px) { .workspace-living-relations-section__heading { display:block; } .workspace-living-relations-section__heading > strong { display:inline-block; margin-top:10px; } .workspace-living-relations-section__records { grid-template-columns:1fr; } }


/* D5.4 — Living Entity Workspace / Evidence Section */
.workspace-living-evidence-section { margin:0 0 18px; padding:18px; border:1px solid rgba(5,150,105,.16); border-radius:14px; background:linear-gradient(180deg,#f0fdf4 0%,#ffffff 72%); }
.workspace-living-evidence-section__heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.workspace-living-evidence-section__heading h3 { margin:4px 0 5px; font-size:20px; }
.workspace-living-evidence-section__heading p { margin:0; color:#64748b; }
.workspace-living-evidence-section__heading > strong { min-width:42px; text-align:center; border-radius:999px; padding:8px 11px; background:#dcfce7; color:#047857; font-size:16px; }
.workspace-living-evidence-section__records { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:16px 0 0; padding:0; list-style:none; }
.workspace-living-evidence-section__records li { display:grid; grid-template-columns:34px 1fr; gap:10px; padding:12px; border:1px solid rgba(5,150,105,.12); border-radius:11px; background:rgba(255,255,255,.9); }
.workspace-living-evidence-section__icon { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:#d1fae5; color:#047857; font-weight:900; }
.workspace-living-evidence-section__records small, .workspace-living-evidence-section__records strong, .workspace-living-evidence-section__records a { display:block; }
.workspace-living-evidence-section__records small { color:#64748b; text-transform:capitalize; overflow-wrap:anywhere; }
.workspace-living-evidence-section__records strong, .workspace-living-evidence-section__records a { margin-top:3px; color:#0f172a; font-weight:800; text-decoration:none; overflow-wrap:anywhere; }
.workspace-living-evidence-section__records a:hover, .workspace-living-evidence-section__records a:focus-visible { color:#047857; text-decoration:underline; }
.workspace-living-evidence-section__records p { margin:4px 0 0; color:#64748b; font-size:12px; }
.workspace-living-evidence-section__empty { margin-top:15px; padding:14px; border-radius:10px; background:rgba(255,255,255,.82); color:#64748b; }
.workspace-living-evidence-section__empty code { color:#047857; }
@media (max-width:720px) { .workspace-living-evidence-section__heading { display:block; } .workspace-living-evidence-section__heading > strong { display:inline-block; margin-top:10px; } .workspace-living-evidence-section__records { grid-template-columns:1fr; } }


/* D5.5 — Living Entity Workspace / Knowledge Section */
.workspace-living-knowledge-section { margin:0 0 18px; padding:18px; border:1px solid rgba(37,99,235,.16); border-radius:14px; background:linear-gradient(180deg,#eff6ff 0%,#ffffff 74%); }
.workspace-living-knowledge-section__heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.workspace-living-knowledge-section__heading h3 { margin:4px 0 5px; font-size:20px; }
.workspace-living-knowledge-section__heading p { margin:0; color:#64748b; }
.workspace-living-knowledge-section__heading > strong { min-width:42px; text-align:center; border-radius:999px; padding:8px 11px; background:#dbeafe; color:#1d4ed8; font-size:16px; }
.workspace-living-knowledge-section__counts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-top:15px; }
.workspace-living-knowledge-section__counts span { padding:10px 12px; border:1px solid rgba(37,99,235,.10); border-radius:10px; background:rgba(255,255,255,.86); }
.workspace-living-knowledge-section__counts strong, .workspace-living-knowledge-section__counts small { display:block; }
.workspace-living-knowledge-section__counts strong { color:#1e3a8a; font-size:17px; }
.workspace-living-knowledge-section__counts small { margin-top:3px; color:#64748b; }
.workspace-living-knowledge-section__records { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:16px 0 0; }
.workspace-living-knowledge-section__records > div { padding:12px; border:1px solid rgba(37,99,235,.10); border-radius:11px; background:rgba(255,255,255,.9); min-width:0; }
.workspace-living-knowledge-section__records dt { color:#1d4ed8; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.workspace-living-knowledge-section__records dd { margin:5px 0 0; color:#0f172a; font-weight:700; overflow-wrap:anywhere; white-space:pre-wrap; }
.workspace-living-knowledge-section__records small { display:block; margin-top:6px; color:#64748b; overflow-wrap:anywhere; }
.workspace-living-knowledge-section__versions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:14px; padding-top:12px; border-top:1px solid rgba(37,99,235,.10); }
.workspace-living-knowledge-section__versions > strong { color:#1e3a8a; }
.workspace-living-knowledge-section__versions span { padding:5px 8px; border-radius:999px; background:#dbeafe; color:#1d4ed8; font-size:12px; }
.workspace-living-knowledge-section__empty { margin-top:15px; padding:14px; border-radius:10px; background:rgba(255,255,255,.82); color:#64748b; }
@media (max-width:720px) { .workspace-living-knowledge-section__heading { display:block; } .workspace-living-knowledge-section__heading > strong { display:inline-block; margin-top:10px; } .workspace-living-knowledge-section__counts, .workspace-living-knowledge-section__records { grid-template-columns:1fr; } }

/* D-INT.1 — Always-visible Living Entity snapshot in the real Homepage renderer. */
.homepage-living-entity-snapshot {
  margin: 12px 0 0;
  padding: 12px 14px;
  border: 1px solid rgba(18, 112, 101, 0.18);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(240, 252, 249, 0.96), rgba(250, 253, 252, 0.96));
}
.homepage-living-entity-snapshot__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.homepage-living-entity-snapshot__heading > span {
  color: #0a695f;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.homepage-living-entity-snapshot__heading a {
  color: #0a695f;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}
.homepage-living-entity-snapshot__metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.homepage-living-entity-snapshot__metrics > span {
  min-width: 0;
  padding: 8px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.82);
  text-align: center;
}
.homepage-living-entity-snapshot__metrics strong,
.homepage-living-entity-snapshot__metrics small {
  display: block;
}
.homepage-living-entity-snapshot__metrics strong {
  color: #173b37;
  font-size: 15px;
  line-height: 1.1;
}
.homepage-living-entity-snapshot__metrics small {
  margin-top: 4px;
  overflow: hidden;
  color: #5d706d;
  font-size: 10px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.homepage-living-entity-snapshot__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-top: 8px;
  color: #667875;
  font-size: 10px;
}
@media (max-width: 760px) {
  .homepage-living-entity-snapshot__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* D-INT.2 — Workspace Living Sections Integration */
.story-workspace-living-sections {
  margin: 12px 0 14px;
  border: 1px solid rgba(36, 55, 80, .14);
  border-radius: 14px;
  background: rgba(255, 255, 255, .86);
  overflow: hidden;
}
.story-workspace-living-sections > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 15px;
  cursor: pointer;
  list-style: none;
}
.story-workspace-living-sections > summary::-webkit-details-marker { display: none; }
.story-workspace-living-sections > summary > span:first-child {
  display: grid;
  gap: 2px;
}
.story-workspace-living-sections > summary strong { font-size: 14px; }
.story-workspace-living-sections > summary small {
  color: #64748b;
  font-size: 11px;
}
.story-workspace-living-sections__status {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #eef5ff;
  color: #315b88;
  font-size: 11px;
  font-weight: 700;
}
.story-workspace-living-sections[open] > summary {
  border-bottom: 1px solid rgba(36, 55, 80, .1);
}
.story-workspace-living-sections__body {
  display: grid;
  gap: 12px;
  padding: 12px;
}
.workspace-living-trust-section {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid rgba(70, 80, 180, .16);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(245, 246, 255, .96), rgba(255, 255, 255, .96));
}
.workspace-living-trust-section__heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}
.workspace-living-trust-section__heading h3,
.workspace-living-trust-section__heading p { margin: 0; }
.workspace-living-trust-section__heading p {
  margin-top: 4px;
  color: #64748b;
  font-size: 12px;
}
.workspace-living-trust-section__heading > strong {
  font-size: 22px;
  line-height: 1;
}
.workspace-living-trust-section__counts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.workspace-living-trust-section__counts > span {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 9px;
  border-radius: 10px;
  background: rgba(255, 255, 255, .82);
}
.workspace-living-trust-section__counts strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  text-transform: capitalize;
}
.workspace-living-trust-section__counts small {
  color: #64748b;
  font-size: 10px;
}
@media (max-width: 720px) {
  .story-workspace-living-sections > summary {
    align-items: flex-start;
    flex-direction: column;
  }
  .workspace-living-trust-section__counts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* D-INT.3 — direct navigation target for Living Entity workspace sections. */
[data-workspace-living-section].is-navigation-target {
  outline: 3px solid rgba(124,58,237,.24);
  outline-offset: 4px;
  transition: outline-color .3s ease;
  scroll-margin-top: 24px;
}

/* D-INT.4 — Living Entity data visibility audit. */
.workspace-living-visibility-audit {
  margin: 0 0 14px;
  padding: 14px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 14px;
  background: rgba(248, 250, 252, 0.92);
}
.workspace-living-visibility-audit__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}
.workspace-living-visibility-audit__heading strong,
.workspace-living-visibility-audit__heading > span {
  display: block;
  color: #0f172a;
}
.workspace-living-visibility-audit__heading > span {
  font-size: 12px;
  white-space: nowrap;
}
.workspace-living-visibility-audit__items {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.workspace-living-visibility-audit__items > span {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr);
  gap: 2px 8px;
  align-items: center;
  min-width: 0;
  padding: 9px 10px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.08);
}
.workspace-living-visibility-audit__items i {
  grid-row: 1 / span 2;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #94a3b8;
}
.workspace-living-visibility-audit__items strong,
.workspace-living-visibility-audit__items small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.workspace-living-visibility-audit__items strong { font-size: 12px; color: #0f172a; }
.workspace-living-visibility-audit__items small { font-size: 11px; color: #64748b; }
.workspace-living-visibility-audit__items .is-data i { background: #16a34a; }
.workspace-living-visibility-audit__items .is-empty i { background: #f59e0b; }
.workspace-living-visibility-audit__items .is-missing i { background: #dc2626; }
.workspace-living-visibility-audit.is-degraded {
  border-color: rgba(220, 38, 38, 0.3);
}
@media (max-width: 720px) {
  .workspace-living-visibility-audit__items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-living-visibility-audit__heading { align-items: flex-start; }
}
/* Entities Directory entry point */
.tsemou-home-entities-link{display:flex;flex-direction:column;gap:2px;margin:10px 12px;padding:11px 12px;border:1px solid rgba(100,116,139,.24);border-radius:12px;text-decoration:none;color:inherit;background:rgba(255,255,255,.72);font-weight:800}.tsemou-home-entities-link:hover{border-color:rgba(79,115,255,.55);background:rgba(238,243,255,.9)}.tsemou-home-entities-link small{font-size:10px;font-weight:600;opacity:.65;line-height:1.3}


/* HOME-LAYOUT-FIX-2 — final approved Home desktop geometry.
   This intentionally overrides the retired focus/collapse experiment. */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .homepage-grid {
    grid-template-columns: 300px 580px 320px !important;
    width: 1232px !important;
    max-width: 1232px !important;
    column-gap: 16px !important;
  }
  body:not(.entity-workspace-lock) .header-inner {
    grid-template-columns: 300px 580px 320px !important;
    width: 1232px !important;
    max-width: 1232px !important;
    column-gap: 16px !important;
  }
  body:not(.entity-workspace-lock) .left-column,
  body:not(.entity-workspace-lock) .center-column,
  body:not(.entity-workspace-lock) .right-column {
    display: block !important;
    min-width: 0 !important;
  }
  body:not(.entity-workspace-lock) .left-column { width: 300px !important; }
  body:not(.entity-workspace-lock) .center-column { width: 580px !important; max-width: 580px !important; }
  body:not(.entity-workspace-lock) .right-column { width: 320px !important; max-width: 320px !important; }
  body:not(.entity-workspace-lock) .right-column > * { display: block; }
  body:not(.entity-workspace-lock) .tsemou-layout-toggle { display: none !important; }
}

/* LN-FLASH-FIX-1 — legacy gallery nodes are never painted, even under stale cache. */
[data-living-node-gallery],
[data-living-node-gallery-figure],
.living-node-gallery-figure {
  display: none !important;
  visibility: hidden !important;
}

/* HOME-STORY-HOVER-3 — color-intensity feedback only; no motion, shadow or border change. */
@media (hover: hover) and (pointer: fine) {
  body:not(.entity-workspace-lock) .center-column .living-case-card,
  body:not(.entity-workspace-lock) .center-column .story-card {
    transition: background-color 160ms ease !important;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card:hover,
  body:not(.entity-workspace-lock) .center-column .story-card:hover {
    background-color: #f4f6f8 !important;
    box-shadow: none !important;
    border-color: transparent !important;
    transform: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.entity-workspace-lock) .center-column .living-case-card,
  body:not(.entity-workspace-lock) .center-column .story-card {
    transition: none !important;
  }
}

/* RS-1 — Right Sidebar Visual Foundation
 * Visual-only structure. No data queries or entity binding are introduced here.
 */
body:not(.entity-workspace-lock) .right-column.tsemou-right-rail {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0 4px 18px 0;
}

body:not(.entity-workspace-lock) .tsemou-right-panel {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  border: 1px solid #e6e9ed;
  border-radius: 14px;
  background: #ffffff;
  color: #20252b;
  box-shadow: 0 2px 10px rgba(24, 33, 43, 0.035);
}

.tsemou-right-panel-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 15px 15px 11px;
}

.tsemou-right-panel-heading--compact {
  padding-bottom: 9px;
}

.tsemou-right-panel-kicker {
  margin: 0 0 3px;
  color: #7d8792;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1;
}

.tsemou-right-panel h2 {
  margin: 0;
  color: #1d242b;
  font-size: 0.91rem;
  font-weight: 720;
  line-height: 1.25;
}

.tsemou-right-panel-count {
  flex: 0 0 auto;
  border: 1px solid #dbe8e4;
  border-radius: 999px;
  background: #eff7f4;
  color: #26705f;
  padding: 3px 7px;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.tsemou-entity-type-list {
  display: grid;
  gap: 0;
  padding: 0 11px;
}

.tsemou-entity-type-group {
  padding: 10px 4px 11px;
  border-top: 1px solid #f0f2f4;
}

.tsemou-entity-type-group:first-child {
  border-top: 0;
}

.tsemou-entity-type-head {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  color: #343c45;
  font-size: 0.74rem;
}

.tsemou-entity-type-head > span:last-child {
  color: #a1a8b0;
  font-size: 0.66rem;
}

.tsemou-entity-type-icon {
  display: inline-grid;
  width: 22px;
  height: 22px;
  place-items: center;
  border-radius: 7px;
  background: #f0f4f7;
  color: #607080;
  font-size: 0.62rem;
  font-weight: 800;
}

.tsemou-entity-type-group[data-entity-type="person"] .tsemou-entity-type-icon { background: #edf5ff; color: #4479ae; }
.tsemou-entity-type-group[data-entity-type="organization"] .tsemou-entity-type-icon { background: #f2efff; color: #6d5aa3; }
.tsemou-entity-type-group[data-entity-type="place"] .tsemou-entity-type-icon { background: #eef8f1; color: #4e8060; }
.tsemou-entity-type-group[data-entity-type="event"] .tsemou-entity-type-icon { background: #fff4e9; color: #9a6c3a; }
.tsemou-entity-type-group[data-entity-type="case"] .tsemou-entity-type-icon { background: #fff0f1; color: #9b5960; }

.tsemou-entity-placeholder {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 7px 0 0 32px;
  color: #9099a3;
  font-size: 0.67rem;
  line-height: 1.25;
}

.tsemou-entity-placeholder i {
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #c7cdd3;
}

.tsemou-right-text-button {
  width: calc(100% - 28px);
  margin: 2px 14px 13px;
  border: 0;
  background: transparent;
  color: #7c8791;
  padding: 5px 0 0;
  text-align: left;
  font: inherit;
  font-size: 0.68rem;
}

.tsemou-community-placeholder-list {
  padding: 0 14px 14px;
}

.tsemou-community-placeholder {
  display: flex;
  align-items: center;
  gap: 9px;
  border-top: 1px solid #f0f2f4;
  padding-top: 11px;
}

.tsemou-community-placeholder-avatar {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  background: linear-gradient(135deg, #e9f5f1, #eaf0f7);
}

.tsemou-community-placeholder strong,
.tsemou-community-placeholder small {
  display: block;
}

.tsemou-community-placeholder strong {
  color: #4f5963;
  font-size: 0.72rem;
}

.tsemou-community-placeholder small {
  margin-top: 2px;
  color: #99a1aa;
  font-size: 0.62rem;
}

.tsemou-right-collapsible {
  overflow: hidden;
}

.tsemou-right-collapsible > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 46px;
  padding: 0 14px;
  cursor: pointer;
  list-style: none;
  color: #262d34;
  font-size: 0.82rem;
  font-weight: 700;
}

.tsemou-right-collapsible > summary::-webkit-details-marker {
  display: none;
}

.tsemou-right-collapsible > summary::after {
  content: "⌄";
  order: 3;
  color: #88929c;
  font-size: 0.83rem;
  transition: transform 150ms ease;
}

.tsemou-right-collapsible[open] > summary::after {
  transform: rotate(180deg);
}

.tsemou-right-summary-meta {
  margin-left: auto;
  color: #8a949e;
  font-size: 0.63rem;
  font-weight: 650;
}

.tsemou-right-collapsible-body {
  border-top: 1px solid #f0f2f4;
  padding: 11px 14px 13px;
}

.tsemou-right-collapsible-body p {
  margin: 0;
  color: #77818b;
  font-size: 0.68rem;
  line-height: 1.45;
}

.tsemou-right-participation-actions {
  margin: 0;
  padding: 0 14px 14px;
}

.tsemou-right-participation-actions .right-news-cta-button {
  width: 100%;
  margin: 0;
}

.tsemou-rs1-legacy-live-news {
  display: none !important;
}

@media (max-width: 1040px) {
  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail {
    display: none;
  }
}


/* RS-2 — Related Entities Preview
 * Binds the right rail to the Story's existing knowledge_context payload.
 * No new query, resolver path, or entity ownership is introduced.
 */
.tsemou-related-entity-list {
  display: grid;
  gap: 3px;
  margin: 7px 0 0 30px;
}

.tsemou-related-entity-link {
  display: grid;
  grid-template-columns: 6px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  min-width: 0;
  border-radius: 8px;
  padding: 6px 7px;
  color: #46515c;
  font-size: 0.69rem;
  font-weight: 620;
  line-height: 1.25;
  text-decoration: none;
  transition: background-color 140ms ease, color 140ms ease;
}

.tsemou-related-entity-link:hover,
.tsemou-related-entity-link:focus-visible {
  background: #f3f6f8;
  color: #17212a;
  outline: none;
}

.tsemou-related-entity-link > span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tsemou-related-entity-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #aab4bd;
}

.tsemou-entity-type-group[data-entity-type="person"] .tsemou-related-entity-dot { background: #6c9bd0; }
.tsemou-entity-type-group[data-entity-type="organization"] .tsemou-related-entity-dot { background: #8a76bd; }
.tsemou-entity-type-group[data-entity-type="place"] .tsemou-related-entity-dot { background: #6da07b; }
.tsemou-entity-type-group[data-entity-type="event"] .tsemou-related-entity-dot { background: #bd8954; }
.tsemou-entity-type-group[data-entity-type="case"] .tsemou-related-entity-dot { background: #b96d75; }

.tsemou-related-entity-more {
  padding: 3px 7px 0 13px;
  color: #7c8791;
  font-size: 0.64rem;
  line-height: 1.2;
}

#tsemouRelatedEntitiesOpenAll:not([hidden]) {
  display: block;
  cursor: pointer;
  color: #496473;
}

#tsemouRelatedEntitiesOpenAll:hover,
#tsemouRelatedEntitiesOpenAll:focus-visible {
  color: #17212a;
  outline: none;
}


/* RS-P1 — Home Personal Discovery Foundation
 * The Home right rail is user-oriented, never bound to the currently visible Story.
 * Existing signals only: TSEMIT state, recent feed context and user-specific Community recommendations.
 */
.tsemou-personal-discovery-groups {
  display: grid;
}

.tsemou-personal-discovery-group {
  padding: 10px 12px 12px;
  border-top: 1px solid #edf0f2;
}

.tsemou-personal-discovery-group:first-child {
  border-top: 0;
}

.tsemou-personal-discovery-head {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-height: 28px;
}

.tsemou-personal-discovery-head h3 {
  margin: 0;
  color: #303941;
  font-size: 0.76rem;
  font-weight: 760;
}

.tsemou-personal-discovery-head > span:last-child {
  color: #88939c;
  font-size: 0.64rem;
  font-weight: 700;
}

.tsemou-personal-discovery-icon,
.tsemou-personal-discovery-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  background: #eef7f3;
  color: #397760;
  font-size: 0.63rem;
  font-weight: 800;
}

.tsemou-personal-discovery-icon {
  width: 24px;
  height: 24px;
}

.tsemou-personal-discovery-list {
  display: grid;
  gap: 3px;
  margin-top: 7px;
}

.tsemou-personal-discovery-link {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  border-radius: 10px;
  padding: 7px 6px;
  color: #263039;
  text-decoration: none;
  transition: background-color 140ms ease;
}

.tsemou-personal-discovery-link:hover,
.tsemou-personal-discovery-link:focus-visible {
  background: #f2f6f4;
  outline: none;
}

.tsemou-personal-discovery-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
}

[data-personal-discovery-group="community"] .tsemou-personal-discovery-icon,
[data-personal-discovery-group="community"] .tsemou-personal-discovery-avatar {
  background: #eef4fb;
  color: #47749b;
}

[data-personal-discovery-group="place"] .tsemou-personal-discovery-icon,
[data-personal-discovery-group="place"] .tsemou-personal-discovery-avatar {
  background: #f7f1e8;
  color: #8a6841;
}

.tsemou-personal-discovery-copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.tsemou-personal-discovery-copy strong,
.tsemou-personal-discovery-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tsemou-personal-discovery-copy strong {
  font-size: 0.69rem;
  font-weight: 720;
}

.tsemou-personal-discovery-copy small {
  color: #89939c;
  font-size: 0.59rem;
}

.tsemou-personal-discovery-arrow {
  color: #98a2aa;
  font-size: 1rem;
}

.tsemou-personal-discovery-empty {
  margin: 2px 0 0 32px;
  color: #929ba3;
  font-size: 0.62rem;
  line-height: 1.4;
}


/* CDE-9 — Explicit recommendation feedback controls. */
.tsemou-personal-discovery-item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: center;
  border-radius: 10px;
}

.tsemou-personal-discovery-item .tsemou-personal-discovery-link {
  min-width: 0;
}

.tsemou-personal-feedback-toggle {
  width: 24px;
  height: 24px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #7f8a92;
  font-size: 0.9rem;
  line-height: 1;
  cursor: pointer;
}

.tsemou-personal-feedback-toggle:hover,
.tsemou-personal-feedback-toggle:focus-visible {
  background: #edf2ef;
  color: #34423b;
  outline: none;
}

.tsemou-personal-feedback-menu {
  position: absolute;
  z-index: 30;
  top: 32px;
  right: 2px;
  width: 170px;
  padding: 5px;
  border: 1px solid #dfe5e1;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(28, 40, 34, 0.14);
}

.tsemou-personal-feedback-menu[hidden] { display: none; }

.tsemou-personal-feedback-menu button {
  display: block;
  width: 100%;
  padding: 7px 8px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #344039;
  text-align: left;
  font-size: 0.64rem;
  cursor: pointer;
}

.tsemou-personal-feedback-menu button:hover,
.tsemou-personal-feedback-menu button:focus-visible {
  background: #f0f5f2;
  outline: none;
}

.tsemou-personal-discovery-item.is-feedback-loading { opacity: 0.55; }
.tsemou-personal-discovery-item.is-feedback-muted { opacity: 0.68; }
.tsemou-personal-discovery-item.is-feedback-interested { background: #eef8f2; }
.tsemou-personal-discovery-item.is-feedback-error { outline: 1px solid #d55b5b; }

/* HOME-RIGHT-RAIL-SCROLL-1 — desktop Home right rail scrolls independently
 * while keeping the scrollbar visually hidden. Workspace behavior is untouched. */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail {
    position: sticky !important;
    top: 64px !important;
    max-height: calc(100vh - 64px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none !important;
    scrollbar-width: none !important;
  }

  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
  }
}

/* REG-R2B — Registration UX refinement */
.tsemou-register-intro{margin:0 0 12px;color:#66707a;font-size:.82rem;line-height:1.4}
.tsemou-register-open,.tsemou-register-primary{width:100%;border:0;border-radius:12px;padding:13px 18px;background:#0f6c5c;color:#fff;font:inherit;font-weight:750;cursor:pointer;transition:transform .15s ease,background .15s ease}
.tsemou-register-open:hover,.tsemou-register-primary:hover{background:#0b5a4d;transform:translateY(-1px)}
body.tsemou-registration-open{overflow:hidden!important}
.tsemou-register-modal{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:2147483000!important;background:#f7f6f1!important;display:block;overflow:auto!important;isolation:isolate;transform:none!important;contain:layout paint style}
.tsemou-register-modal[hidden]{display:none}
.tsemou-register-dialog{position:relative!important;z-index:1!important;width:100%!important;min-height:100dvh;background:radial-gradient(circle at 50% 0,#fff 0,#f7f6f1 58%,#f0eee8 100%);display:grid;place-items:center;padding:88px 24px 40px;box-sizing:border-box}
.tsemou-register-close{position:fixed;z-index:2;right:28px;top:22px;width:44px;height:44px;border:1px solid #d8ddd9;border-radius:50%;background:rgba(255,255,255,.88);color:#32413a;font-size:27px;line-height:1;cursor:pointer;box-shadow:0 8px 28px rgba(29,48,39,.08)}
.tsemou-register-progress{position:fixed;z-index:2;top:28px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:28px;color:#929b95;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.tsemou-register-progress span{position:relative;padding:0 0 11px;transition:color .2s ease}
.tsemou-register-progress span:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:99px;background:#d7ddd9;transition:background .2s ease}
.tsemou-register-progress span.is-active{color:#0f6c5c}.tsemou-register-progress span.is-active:after{background:#0f6c5c}
.tsemou-register-progress span.is-complete{color:#46685d}.tsemou-register-progress span.is-complete:after{background:#7ba99a}
.tsemou-register-form{position:relative!important;z-index:3!important;width:min(520px,100%);transform:translateY(-4vh)}
.tsemou-register-step{display:none;animation:tsemou-register-in .25s ease both}
.tsemou-register-step.is-active{display:grid;gap:16px}
@keyframes tsemou-register-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.tsemou-register-brand{width:54px;height:54px;margin:0 auto 5px;border-radius:17px;display:grid;place-items:center;background:#0f6c5c;color:#fff;font-size:25px;font-weight:800;box-shadow:0 12px 30px rgba(15,108,92,.2)}
.tsemou-register-step h1{margin:0;color:#15251e;font-size:clamp(2rem,5vw,3.25rem);line-height:1.04;letter-spacing:-.04em;text-align:center}
.tsemou-register-step>p{margin:0 0 14px;color:#657169;font-size:1rem;line-height:1.55;text-align:center}
.tsemou-register-kicker{text-align:center;color:#0f6c5c;font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.tsemou-register-step label{display:grid;gap:7px;color:#28372f;font-size:.88rem;font-weight:700}
.tsemou-register-step label small{float:right;color:#879089;font-weight:500}
.tsemou-register-step input[type=email],.tsemou-register-step input[type=text],.tsemou-register-step input[type=password]{width:100%;box-sizing:border-box;border:1px solid #cfd7d2;border-radius:12px;padding:14px 15px;background:#fff;font:inherit;color:#18241e;outline:none;box-shadow:0 3px 14px rgba(30,45,37,.04)}
.tsemou-register-step input:focus{border-color:#0f6c5c;box-shadow:0 0 0 4px rgba(15,108,92,.11)}
.tsemou-register-google{width:100%}.tsemou-register-google>*{width:100%!important;box-sizing:border-box}
.tsemou-register-divider{display:flex;align-items:center;gap:12px;margin:2px 0;color:#8a948d;font-size:.76rem}.tsemou-register-divider:before,.tsemou-register-divider:after{content:"";height:1px;background:#d9dfdb;flex:1}
.tsemou-register-back{justify-self:start;border:0;background:transparent;color:#536159;font-size:1rem;font-weight:700;cursor:pointer;padding:5px 0;margin-bottom:4px}
.tsemou-register-consent{grid-template-columns:auto 1fr!important;align-items:start!important;font-weight:500!important;line-height:1.4}
.tsemou-register-consent input{margin-top:3px}
.tsemou-register-error{min-height:20px;color:#b42318;font-size:.84rem;text-align:center}
.tsemou-register-submit[disabled]{opacity:.6;cursor:wait;transform:none}
@media(max-width:640px){.tsemou-register-dialog{padding:86px 20px 28px;align-items:center}.tsemou-register-form{margin-top:0;transform:translateY(-2vh)}.tsemou-register-close{right:16px;top:16px;width:40px;height:40px}.tsemou-register-progress{top:25px;gap:15px;font-size:.62rem}.tsemou-register-step h1{font-size:2.15rem}.tsemou-register-step>p{font-size:.92rem}.tsemou-register-brand{width:50px;height:50px;border-radius:16px;font-size:23px}}

/* REG-R2A — body-root isolation guard */
body>.tsemou-register-modal,body>.tsemou-register-modal *{box-sizing:border-box}
body>.tsemou-register-modal img,body>.tsemou-register-modal video,body>.tsemou-register-modal iframe{position:static!important;z-index:auto!important;max-width:100%}
body.tsemou-registration-open>.tsemou-homepage-beta{pointer-events:none;user-select:none}

/* REG-R3 — Identity Experience */
.tsemou-register-reassurance{display:block;margin-top:4px;color:#879089;font-size:.86rem}
.tsemou-register-inline-error{min-height:22px;color:#b42318;font-size:.86rem;text-align:center;line-height:1.45}
.tsemou-register-inline-error>div{display:flex;justify-content:center;gap:16px;margin-top:7px}
.tsemou-register-inline-error a{color:#0f6c5c;font-weight:750;text-decoration:none}
.tsemou-register-inline-error a:hover{text-decoration:underline}
.tsemou-username-shell{display:flex;align-items:center;border:1px solid #cfd7d2;border-radius:12px;background:#fff;box-shadow:0 3px 14px rgba(30,45,37,.04);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
.tsemou-username-shell:focus-within{border-color:#0f6c5c;box-shadow:0 0 0 4px rgba(15,108,92,.11)}
.tsemou-username-shell>span{padding:0 0 0 15px;color:#0f6c5c;font-weight:800;font-size:1rem}
.tsemou-username-shell input[type=text]{border:0!important;border-radius:0!important;box-shadow:none!important;padding-left:2px!important;background:transparent!important}
.tsemou-username-status{min-height:22px;text-align:center;font-size:.86rem;font-weight:700}
.tsemou-username-status.is-checking{color:#68746d}
.tsemou-username-status.is-available{color:#13795b}
.tsemou-username-status.is-taken{color:#b42318}
.tsemou-register-secondary{width:100%;border:1px solid #0f6c5c;border-radius:12px;padding:12px 18px;background:transparent;color:#0f6c5c;font:inherit;font-weight:760;cursor:pointer}
.tsemou-register-secondary:hover{background:rgba(15,108,92,.06)}
.tsemou-username-alternatives{padding:13px 14px;border:1px solid #d9dfdb;border-radius:14px;background:rgba(255,255,255,.62)}
.tsemou-username-alternatives>p{margin:0 0 10px;color:#647068;font-size:.82rem;text-align:center}
.tsemou-username-alternatives>div{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.tsemou-username-alternatives button{border:1px solid #bfd0c8;border-radius:999px;padding:8px 12px;background:#fff;color:#0f6c5c;font:inherit;font-size:.84rem;font-weight:750;cursor:pointer}
.tsemou-username-alternatives button:hover{border-color:#0f6c5c;background:#eef7f4}
.tsemou-register-celebration{text-align:center;font-size:3.2rem;line-height:1}
.tsemou-register-ready{text-align:center}
@media(max-width:640px){.tsemou-register-inline-error>div{flex-direction:column;gap:6px}.tsemou-username-alternatives>div{display:grid;grid-template-columns:1fr}.tsemou-username-alternatives button{width:100%}}

/* REG-R4 — Interests Experience */
.tsemou-register-interests{width:min(720px,calc(100vw - 40px));margin-left:50%;transform:translateX(-50%)}
.tsemou-interest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:2px}
.tsemou-interest-grid button{min-height:94px;border:1px solid #d2dad5;border-radius:16px;padding:15px 12px;background:rgba(255,255,255,.78);color:#26362e;font:inherit;font-size:.92rem;font-weight:760;cursor:pointer;display:grid;place-items:center;gap:8px;transition:border-color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease}
.tsemou-interest-grid button span{font-size:1.65rem;line-height:1}
.tsemou-interest-grid button:hover{border-color:#91b7aa;transform:translateY(-1px);box-shadow:0 7px 20px rgba(27,53,42,.07)}
.tsemou-interest-grid button.is-selected{border-color:#0f6c5c;background:#e7f4ef;color:#0b5a4d;box-shadow:0 0 0 2px rgba(15,108,92,.12)}
.tsemou-interest-count{text-align:center;color:#68746d;font-size:.86rem;font-weight:650;min-height:20px}
.tsemou-interest-error{margin-top:-7px}
.tsemou-register-save-interests[disabled]{opacity:.5;cursor:not-allowed;transform:none}
@media(max-width:640px){.tsemou-register-interests{width:100%;margin-left:0;transform:none}.tsemou-interest-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tsemou-interest-grid button{min-height:82px;padding:12px 8px}.tsemou-register-modal{overflow-y:auto!important}.tsemou-register-interests h1{font-size:2rem}}

/* REG-R4A — Interest Drill-down */
.tsemou-register-interests,.tsemou-register-drilldown{width:min(920px,calc(100vw - 48px));margin:0 auto;transform:none}
.tsemou-register-interests h1,.tsemou-register-drilldown h1{max-width:760px;margin-left:auto;margin-right:auto}
.tsemou-register-interests>p,.tsemou-register-drilldown>p{max-width:680px;margin-left:auto;margin-right:auto}
.tsemou-interest-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.tsemou-interest-grid button{position:relative;min-height:138px;border-radius:22px;padding:24px 18px;background:#fff;overflow:hidden}
.tsemou-interest-grid button span{font-size:2.2rem}
.tsemou-interest-grid button strong{font-size:1rem;letter-spacing:.08em}
.tsemou-interest-grid button i{position:absolute;right:14px;top:12px;width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:#0f6c5c;color:#fff;font-style:normal;font-weight:800;opacity:0;transform:scale(.7);transition:opacity .16s ease,transform .16s ease}
.tsemou-interest-grid button.is-selected{background:#dff2ea;border-color:#0f6c5c;transform:translateY(-3px) scale(1.015);box-shadow:0 14px 30px rgba(15,108,92,.15)}
.tsemou-interest-grid button.is-selected i{opacity:1;transform:scale(1)}
.tsemou-interest-selection{margin:24px auto 10px;text-align:left;max-width:760px}
.tsemou-interest-selection>b{display:block;margin-bottom:10px;color:#22352d;font-size:.83rem;letter-spacing:.08em;text-transform:uppercase}
.tsemou-interest-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:36px}
.tsemou-interest-chips>span{color:#7b8580;font-size:.9rem}
.tsemou-interest-chips button{border:1px solid #b7d4ca;background:#eef8f4;color:#0f5f51;border-radius:999px;padding:8px 12px;font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}
.tsemou-interest-chips button::after{content:' ×';opacity:.65}
.tsemou-drilldown-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:26px auto 18px;max-width:800px}
.tsemou-drilldown-grid button{min-height:92px;border:1px solid #d2dad5;border-radius:18px;background:#fff;color:#26362e;padding:16px;font:inherit;font-weight:750;cursor:pointer;transition:.16s ease}
.tsemou-drilldown-grid button:hover{border-color:#91b7aa;transform:translateY(-2px)}
.tsemou-drilldown-grid button.is-selected{background:#dff2ea;border-color:#0f6c5c;color:#0b5a4d;box-shadow:0 0 0 2px rgba(15,108,92,.1)}
.tsemou-drilldown-progress{text-align:center;color:#718078;font-size:.86rem;margin-bottom:12px}
.tsemou-drilldown-skip{display:block;margin:12px auto 0;border:0;background:transparent;color:#65736c;text-decoration:underline;cursor:pointer;font:inherit;font-size:.9rem}
@media(max-width:760px){
  .tsemou-register-interests,.tsemou-register-drilldown{width:100%;padding-left:18px;padding-right:18px}
  .tsemou-interest-grid,.tsemou-drilldown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .tsemou-interest-grid button{min-height:112px;padding:18px 10px}
  .tsemou-drilldown-grid button{min-height:76px}
}


/* REG-R5 — Personalized Home */
.tsemou-personal-home{max-width:1200px;margin:18px auto 12px;padding:24px;border:1px solid #dce6e1;border-radius:22px;background:linear-gradient(135deg,#f7fbf9 0%,#fffdfa 100%);box-shadow:0 10px 30px rgba(24,61,50,.06)}
.tsemou-personal-home__intro p{margin:0 0 5px;color:#0f7a68;font-size:12px;font-weight:800;letter-spacing:.14em}.tsemou-personal-home__intro h1{margin:0;color:#102b23;font-size:clamp(28px,4vw,46px);line-height:1.05}.tsemou-personal-home__intro>span{display:block;margin-top:8px;color:#64746f}
.tsemou-personal-home__paths{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:22px}.tsemou-personal-home__paths a{display:flex;min-height:92px;flex-direction:column;justify-content:center;padding:14px;border:1px solid #d8e3de;border-radius:16px;background:#fff;color:#17362d;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.tsemou-personal-home__paths a:hover,.tsemou-personal-home__paths a:focus-visible{transform:translateY(-2px);border-color:#14816e;box-shadow:0 8px 20px rgba(20,129,110,.10)}.tsemou-personal-home__paths strong{font-size:16px}.tsemou-personal-home__paths small{margin-top:5px;color:#6c7b76;line-height:1.3}
.tsemou-personal-home__topics{display:flex;align-items:center;gap:12px;margin-top:16px}.tsemou-personal-home__topics>b{white-space:nowrap;font-size:13px;color:#47635a}.tsemou-personal-home__topics>div{display:flex;flex-wrap:wrap;gap:7px}.tsemou-personal-home__topics span{padding:7px 10px;border-radius:999px;background:#e7f4ef;color:#0e6f5f;font-size:12px;font-weight:700}
@media(max-width:900px){.tsemou-personal-home{margin:10px 12px;padding:19px}.tsemou-personal-home__paths{grid-template-columns:repeat(2,minmax(0,1fr))}.tsemou-personal-home__paths a:last-child{grid-column:1/-1}.tsemou-personal-home__topics{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.tsemou-personal-home__paths{grid-template-columns:1fr}.tsemou-personal-home__paths a:last-child{grid-column:auto}.tsemou-personal-home__paths a{min-height:72px}}

/* REG-R6 — Suggested Communities onboarding */
.tsemou-community-onboarding {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid rgba(18, 32, 61, .12);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(18, 32, 61, .08);
}
.tsemou-community-onboarding__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}
.tsemou-community-onboarding__head p {
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  color: #d06428;
}
.tsemou-community-onboarding__head h2 { margin: 0; font-size: 21px; line-height: 1.2; }
.tsemou-community-onboarding__head span { display: block; margin-top: 5px; color: #667085; font-size: 13px; }
.tsemou-community-onboarding__head > button {
  border: 0;
  background: transparent;
  color: #667085;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
}
.tsemou-community-onboarding__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.tsemou-community-suggestion {
  display: flex;
  min-height: 142px;
  flex-direction: column;
  justify-content: space-between;
  gap: 14px;
  padding: 15px;
  border: 1px solid rgba(18, 32, 61, .12);
  border-radius: 15px;
  background: #fbfcff;
  transition: transform .18s ease, border-color .18s ease, opacity .18s ease;
}
.tsemou-community-suggestion:hover { transform: translateY(-2px); border-color: rgba(208, 100, 40, .4); }
.tsemou-community-suggestion.is-handled { opacity: .45; transform: scale(.98); }
.tsemou-community-suggestion p { margin: 0 0 7px; color: #d06428; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.tsemou-community-suggestion h3 { margin: 0; font-size: 16px; line-height: 1.25; }
.tsemou-community-suggestion span { display: block; margin-top: 6px; color: #667085; font-size: 12px; }
.tsemou-community-suggestion__actions { display: flex; align-items: center; gap: 8px; }
.tsemou-community-suggestion__actions a,
.tsemou-community-suggestion__actions button {
  flex: 1;
  min-height: 36px;
  border-radius: 10px;
  font-weight: 800;
  text-align: center;
}
.tsemou-community-suggestion__actions a { display: grid; place-items: center; border: 1px solid rgba(18, 32, 61, .15); color: #1d2939; text-decoration: none; }
.tsemou-community-suggestion__actions button { border: 0; background: #d06428; color: #fff; cursor: pointer; }
.tsemou-community-suggestion__actions button:disabled { cursor: wait; opacity: .7; }
.tsemou-community-onboarding__message { min-height: 18px; margin-top: 10px; color: #475467; font-size: 12px; }
@media (max-width: 760px) {
  .tsemou-community-onboarding { padding: 15px; border-radius: 15px; }
  .tsemou-community-onboarding__head { align-items: flex-start; }
  .tsemou-community-onboarding__list { grid-template-columns: 1fr; }
  .tsemou-community-suggestion { min-height: 0; }
}


/* REG-R7 — First Contribution */
.tsemou-first-contribution{margin-top:18px;padding:20px;border:1px solid rgba(15,108,92,.18);border-radius:18px;background:linear-gradient(135deg,#f6fbf9,#fff);box-shadow:0 12px 34px rgba(15,108,92,.08)}
.tsemou-first-contribution__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.tsemou-first-contribution__head p{margin:0 0 4px;color:#0f7a68;font-size:11px;font-weight:800;letter-spacing:.12em}.tsemou-first-contribution__head h2{margin:0;font-size:22px;line-height:1.2;color:#17362d}.tsemou-first-contribution__head span{display:block;margin-top:5px;color:#66766f;font-size:13px}.tsemou-first-contribution__head>button{border:0;background:transparent;color:#667085;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}
.tsemou-first-contribution__choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tsemou-first-contribution__choices button{min-height:118px;padding:17px;border:1px solid #d7e4df;border-radius:15px;background:#fff;color:#17362d;text-align:left;font:inherit;cursor:pointer;transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease}.tsemou-first-contribution__choices button:hover,.tsemou-first-contribution__choices button:focus-visible{transform:translateY(-2px);border-color:#0f7a68;box-shadow:0 9px 22px rgba(15,122,104,.10)}.tsemou-first-contribution__choices b{display:block;font-size:16px}.tsemou-first-contribution__choices span{display:block;margin-top:7px;color:#6b7b75;font-size:12px;line-height:1.45}.tsemou-first-contribution__message{min-height:18px;margin-top:10px;color:#52635d;font-size:12px}.tsemou-first-contribution.is-complete{opacity:.55;transform:scale(.99);transition:.2s ease}
@media(max-width:760px){.tsemou-first-contribution{padding:15px}.tsemou-first-contribution__choices{grid-template-columns:1fr}.tsemou-first-contribution__choices button{min-height:82px}.tsemou-first-contribution__head{gap:10px}}


/* REG-R8 — Progressive Profile Evolution */
.tsemou-profile-evolution{margin-top:18px;padding:20px;border:1px solid rgba(99,63,160,.18);border-radius:18px;background:linear-gradient(135deg,#faf8ff,#fff);box-shadow:0 12px 34px rgba(99,63,160,.08)}
.tsemou-profile-evolution__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.tsemou-profile-evolution__head p{margin:0 0 4px;color:#7048a8;font-size:11px;font-weight:800;letter-spacing:.11em}.tsemou-profile-evolution__head h2{margin:0;font-size:22px;line-height:1.2;color:#302243}.tsemou-profile-evolution__head span{display:block;margin-top:5px;color:#71677d;font-size:13px}.tsemou-profile-evolution__head>button{border:0;background:transparent;color:#667085;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}
.tsemou-profile-evolution__choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tsemou-profile-evolution__choices button{min-height:96px;padding:16px;border:1px solid #e2d9ef;border-radius:15px;background:#fff;color:#302243;text-align:left;font:inherit;cursor:pointer;transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease}.tsemou-profile-evolution__choices button:hover,.tsemou-profile-evolution__choices button:focus-visible{transform:translateY(-2px);border-color:#7048a8;box-shadow:0 9px 22px rgba(112,72,168,.10)}.tsemou-profile-evolution__choices b{display:block;font-size:15px}.tsemou-profile-evolution__choices span{display:block;margin-top:6px;color:#776d82;font-size:12px;line-height:1.4}
.tsemou-profile-evolution__form[hidden],.tsemou-profile-evolution__choices[hidden]{display:none!important}.tsemou-profile-evolution__form label span{display:block;margin-bottom:8px;color:#302243;font-size:14px;font-weight:800}.tsemou-profile-evolution__form input{width:100%;min-height:46px;padding:0 13px;border:1px solid #d7cbe6;border-radius:12px;background:#fff;font:inherit;color:#302243;box-sizing:border-box}.tsemou-profile-evolution__form input:focus{outline:3px solid rgba(112,72,168,.14);border-color:#7048a8}.tsemou-profile-evolution__form>div{display:flex;justify-content:flex-end;gap:9px;margin-top:11px}.tsemou-profile-evolution__form button{min-height:38px;padding:0 16px;border-radius:10px;font:inherit;font-weight:800;cursor:pointer}.tsemou-profile-evolution__form button[data-profile-evolution-back]{border:1px solid #d7cbe6;background:#fff;color:#4a3b5d}.tsemou-profile-evolution__form button[type=submit]{border:0;background:#7048a8;color:#fff}.tsemou-profile-evolution__form button:disabled{opacity:.65;cursor:wait}.tsemou-profile-evolution__message{min-height:18px;margin-top:10px;color:#675b73;font-size:12px}.tsemou-profile-evolution.is-complete{opacity:.55;transform:scale(.99);transition:.2s ease}
@media(max-width:760px){.tsemou-profile-evolution{padding:15px}.tsemou-profile-evolution__choices{grid-template-columns:1fr}.tsemou-profile-evolution__choices button{min-height:78px}.tsemou-profile-evolution__head{gap:10px}}


/* REG-R9 — First Impression Polish */
.tsemou-register-modal{min-height:100vh;min-height:100dvh;overscroll-behavior:contain}
.tsemou-register-dialog{max-height:100vh;max-height:100dvh;overflow:auto;scrollbar-gutter:stable}
.tsemou-register-step[aria-hidden="true"]{display:none!important}
.tsemou-register-progress span[aria-current="step"]{font-weight:900}
.tsemou-register-primary:focus-visible,.tsemou-register-secondary:focus-visible,.tsemou-register-back:focus-visible,.tsemou-register-close:focus-visible,.tsemou-interest-grid button:focus-visible,.tsemou-drilldown-grid button:focus-visible{outline:3px solid rgba(20,129,110,.28);outline-offset:3px}
.tsemou-register-primary:disabled,.tsemou-register-secondary:disabled{cursor:wait;opacity:.62}
.tsemou-register-step.is-active{animation:tsemouRegisterStepIn .22s ease both}
@keyframes tsemouRegisterStepIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:640px){.tsemou-register-dialog{padding-bottom:max(22px,env(safe-area-inset-bottom));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}}
@media(prefers-reduced-motion:reduce){.tsemou-register-step.is-active,.tsemou-interest-grid button,.tsemou-drilldown-grid button,.tsemou-register-primary,.tsemou-register-secondary{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* COMMUNITY-CATEGORIES-1 — Purpose-led categories page */
.tsemou-homepage-beta--categories{min-height:100vh;background:linear-gradient(180deg,#f7faff 0,#fff 44%,#f8fbff 100%);color:#102044;font-family:"Space Grotesk",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.tsemou-purpose-categories{min-height:100vh}.tsemou-purpose-categories-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px clamp(20px,4vw,52px);background:rgba(255,255,255,.96);border-bottom:1px solid #e8edf5;box-shadow:0 3px 14px rgba(18,43,88,.05);backdrop-filter:blur(14px)}
.tsemou-purpose-brand{display:inline-flex;align-items:center;gap:10px;color:#102044;text-decoration:none;font-size:24px;font-weight:900;letter-spacing:-.04em}.tsemou-purpose-brand-mark{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#1769ff;color:#fff;font-size:15px;box-shadow:0 8px 18px rgba(23,105,255,.24)}
.tsemou-purpose-categories-header nav{display:flex;align-items:center;gap:28px}.tsemou-purpose-categories-header nav a{position:relative;padding:10px 0;color:#17233f;text-decoration:none;font-size:14px;font-weight:750}.tsemou-purpose-categories-header nav a.is-active{color:#1769ff}.tsemou-purpose-categories-header nav a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-15px;height:3px;border-radius:3px;background:#1769ff}
.tsemou-purpose-categories-main{width:min(1320px,calc(100% - 40px));margin:0 auto;padding:34px 0 36px}.tsemou-purpose-identity{margin:0 0 20px;text-align:center;color:#1769ff;font-size:13px;font-weight:900;letter-spacing:.38em}
.tsemou-purpose-category-search{display:flex;align-items:center;gap:12px;width:min(620px,100%);height:56px;margin:0 auto 28px;padding:0 18px;border:1px solid #dce4f0;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(22,49,96,.06);box-sizing:border-box}.tsemou-purpose-category-search span{font-size:28px;color:#8c9ab2;line-height:1}.tsemou-purpose-category-search input{width:100%;border:0;outline:0;background:transparent;color:#17233f;font:inherit;font-size:15px}.tsemou-purpose-category-search input::placeholder{color:#9aa7bc}
.tsemou-purpose-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tsemou-purpose-category-card{display:flex;min-height:160px;padding:22px 18px;flex-direction:column;align-items:center;justify-content:center;gap:16px;border:1px solid #e7ecf4;border-radius:17px;background:#fff;color:#101c3b;text-align:center;text-decoration:none;box-shadow:0 8px 26px rgba(20,43,83,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.tsemou-purpose-category-card:hover,.tsemou-purpose-category-card:focus-visible{transform:translateY(-3px);border-color:#b9cdf7;box-shadow:0 14px 32px rgba(20,67,151,.12);outline:none}.tsemou-purpose-category-card[hidden]{display:none}.tsemou-purpose-category-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#e8f0ff;color:#1769ff;font-size:35px;font-weight:800}.tsemou-purpose-category-card:nth-child(4n+2) .tsemou-purpose-category-icon{background:#ffe7eb;color:#df2649}.tsemou-purpose-category-card:nth-child(4n+3) .tsemou-purpose-category-icon{background:#e4f5eb;color:#15955a}.tsemou-purpose-category-card:nth-child(4n+4) .tsemou-purpose-category-icon{background:#fff0df;color:#ef7600}.tsemou-purpose-category-card strong{max-width:280px;font-size:17px;line-height:1.28}.tsemou-purpose-empty{text-align:center;color:#64748b;font-weight:700}


/* 5.63.85 — Minimal left rail: guest join + Knowledge/Help feeds only. */
.left-column > .column-title-wrap {
  margin-bottom: 10px;
}
.left-column > .column-title-wrap p {
  display: none;
}
.topic-feed-section {
  border-top: 1px solid rgba(19, 47, 38, 0.12);
  padding: 14px 0 4px;
}
.topic-feed-section + .topic-feed-section {
  margin-top: 10px;
}
.topic-feed-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}
.topic-feed-heading h3 {
  margin: 0;
  font-size: 16px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.topic-feed-heading span {
  min-width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #f1ecff;
  color: #5c24cf;
  font-size: 12px;
  font-weight: 700;
}
.topic-feed-list {
  display: grid;
  gap: 10px;
}
.topic-feed-card {
  border: 1px solid rgba(19, 47, 38, 0.12);
  border-radius: 14px;
  padding: 12px;
  background: #fff;
}
.topic-feed-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}
.topic-feed-card-meta span {
  border-radius: 999px;
  padding: 4px 7px;
  background: #f4efff;
  color: #5c24cf;
  font-size: 10px;
  font-weight: 700;
}
.topic-feed-card h4 {
  margin: 0 0 6px;
  font-size: 14px;
}
.topic-feed-card p {
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.45;
}
.topic-feed-card small {
  display: block;
  margin-bottom: 9px;
  color: #66736f;
}
.topic-feed-open {
  display: block;
  border-radius: 10px;
  padding: 8px 10px;
  text-align: center;
  background: #6f25df;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}
.topic-feed-empty {
  margin: 0;
  padding: 10px 0;
  color: #68746f;
  font-size: 12px;
}


/* 5.63.86 — Minimal left navigation: titles only. */
.tsemou-left-topic-nav {
  display: flex;
  flex-direction: column;
  margin: 0;
  border-top: 1px solid var(--line, #d9ddd8);
}

.tsemou-left-topic-nav a {
  display: block;
  padding: 16px 4px;
  border-bottom: 1px solid var(--line, #d9ddd8);
  color: var(--ink, #10261e);
  font-family: "Space Grotesk", sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .06em;
  text-decoration: none;
  text-transform: uppercase;
}

.tsemou-left-topic-nav a:hover,
.tsemou-left-topic-nav a:focus-visible {
  color: var(--accent, #087d67);
}


/* HOME-STORY-NO-IMAGE — image-less Stories render as compact text-only cards. */
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
  min-height: 0;
  padding-bottom: 2px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .living-case-topline {
  align-items: flex-start;
}

body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .living-case-title {
  font-size: clamp(1.04rem, 1.55vw, 1.28rem);
  line-height: 1.3;
}

body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .homepage-story-source {
  margin-bottom: 10px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .living-case-meta,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .homepage-knowledge-context,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .homepage-live-entity-summaries {
  margin-top: 12px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .living-case-footer {
  margin-top: 14px;
}

@media (max-width: 700px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .living-case-title {
    font-size: 1.02rem;
  }
}

/* HOME-RIGHT-TITLE-CLEANUP — keep only the proposal count after removing the title. */
.tsemou-personal-discovery > .tsemou-right-panel-heading--compact {
  justify-content: flex-end;
  padding-bottom: 6px;
}


/* 5.63.90 — Left rail application style (approved Mockup Γ). */
body:not(.entity-workspace-lock) .left-column {
  padding: 18px 14px 20px;
  background: linear-gradient(180deg, #faf5ee 0%, #f8f2ea 100%);
}
.tsemou-guest-login--application {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 0 24px;
  padding: 16px 12px 20px;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid rgba(16, 38, 30, .14);
  background: transparent;
  box-shadow: none;
  text-align: center;
}
.tsemou-guest-login--application h2 {
  margin: 0 0 12px;
  font-size: 1.05rem;
  font-weight: 750;
  letter-spacing: -.01em;
}
.tsemou-guest-login__icon {
  width: 58px;
  height: 58px;
  margin: 0 0 14px;
  color: var(--accent, #087d67);
}
.tsemou-guest-login__icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.tsemou-guest-login--application .tsemou-register-open {
  min-width: 166px;
  min-height: 48px;
  padding: 0 22px;
  border: 0;
  border-radius: 12px;
  background: linear-gradient(180deg, #0f866f 0%, #08745f 100%);
  color: #fff;
  font: inherit;
  font-size: .94rem;
  font-weight: 800;
  letter-spacing: .01em;
  box-shadow: 0 8px 18px rgba(8, 116, 95, .16);
  cursor: pointer;
}
.tsemou-guest-login--application .tsemou-register-open:hover,
.tsemou-guest-login--application .tsemou-register-open:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(8, 116, 95, .22);
}
.tsemou-left-topic-nav--application {
  border-top: 0;
  gap: 2px;
}
.tsemou-left-topic-nav__label {
  padding: 0 8px 12px;
  color: #7b8185;
  font-size: .77rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.tsemou-left-topic-nav--application a,
.tsemou-left-topic-nav--application .tsemou-left-topic-nav__create {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 52px;
  padding: 0 8px;
  border-bottom: 0;
  border-radius: 11px;
  color: #17231f;
  font-size: 1rem;
  font-weight: 720;
  letter-spacing: 0;
  text-transform: none;
  transition: background-color .16s ease, color .16s ease, transform .16s ease;
}
.tsemou-left-topic-nav--application a:hover,
.tsemou-left-topic-nav--application a:focus-visible,
.tsemou-left-topic-nav--application .tsemou-left-topic-nav__create:hover,
.tsemou-left-topic-nav--application .tsemou-left-topic-nav__create:focus-visible {
  background: rgba(8, 125, 103, .08);
  color: var(--accent, #087d67);
  transform: translateX(2px);
  outline: none;
}

.tsemou-left-topic-nav--application .tsemou-left-topic-nav__create {
  width: 100%;
  border: 0;
  background: rgba(8, 125, 103, .07);
  cursor: pointer;
  text-align: left;
  font-family: inherit;
}
.tsemou-left-topic-nav__icon {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  color: var(--accent, #087d67);
}
.tsemou-left-topic-nav__icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 980px) {
  .tsemou-guest-login--application { padding-left: 8px; padding-right: 8px; }
  .tsemou-left-topic-nav--application a { min-height: 48px; }
}


/* 5.63.93 — Home rails structural height lock.
 * The Home grid owns the rail height. Both side rails occupy the same
 * available desktop viewport height; the right discovery panel stretches
 * inside its rail instead of ending at its intrinsic content height. */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .homepage-grid {
    align-items: stretch;
  }

  body:not(.entity-workspace-lock) .left-column,
  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail {
    align-self: stretch;
    height: calc(100dvh - 108px);
    min-height: calc(100dvh - 108px);
    max-height: calc(100dvh - 108px);
    box-sizing: border-box;
  }

  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail {
    display: flex;
    flex-direction: column;
  }

  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail > .tsemou-right-panel {
    flex: 1 0 auto;
    min-height: 100%;
  }
}

/* 5.63.93 install-optimized mascot presentation — no functional layout changes. */
.tsemou-guest-login__mascot {
  width: min(190px, 92%);
  margin: 0 auto 14px;
  line-height: 0;
}
.tsemou-guest-login__mascot img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
  object-fit: contain;
}
.tsemou-guest-login--application h2 {
  margin-bottom: 8px;
}
.tsemou-guest-login--application .tsemou-register-open {
  margin-top: 2px;
}
@media (max-width: 980px) {
  .tsemou-guest-login__mascot {
    width: min(160px, 88%);
  }
}

/* ACT-1 — Common Category + Action Workspace identity */
.tsemou-action-shell{min-height:100vh;background:#f6f8fb;color:#12203c}.tsemou-action-shell__topbar{height:76px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4e9f1;background:#fff}.tsemou-action-shell__topbar nav{display:flex;gap:24px}.tsemou-action-shell__topbar nav a{color:#475569;text-decoration:none;font-weight:700}.tsemou-action-shell__main{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:34px 0 70px}.tsemou-action-shell__back{display:inline-flex;margin-bottom:26px;color:#356150;text-decoration:none;font-weight:800}.tsemou-action-shell__identity{display:flex;align-items:center;gap:18px;margin-bottom:30px}.tsemou-action-shell__identity>span{display:grid;place-items:center;width:76px;height:76px;border-radius:22px;background:#dff1e8;color:#285e4a;font-size:38px}.tsemou-action-shell__identity p,.tsemou-workspace-identity__action p{margin:0 0 5px;font-size:11px;letter-spacing:.16em;font-weight:900;color:#668173}.tsemou-action-shell__identity h1,.tsemou-workspace-identity__action h1{margin:0;font-size:34px;line-height:1.1}.tsemou-action-shell__question>p{margin:0 0 18px;font-size:21px;font-weight:850}.tsemou-category-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.tsemou-category-action-card{min-height:180px;padding:21px;display:flex;flex-direction:column;gap:12px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;color:#14213d;text-decoration:none;box-shadow:0 8px 24px rgba(28,54,84,.06);transition:.18s ease}.tsemou-category-action-card:hover,.tsemou-category-action-card:focus-visible{transform:translateY(-3px);border-color:#91b9aa;box-shadow:0 14px 30px rgba(34,94,71,.12);outline:none}.tsemou-category-action-card__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#e8f4ef;color:#2f684f;font-size:25px;font-weight:900}.tsemou-category-action-card strong{font-size:18px}.tsemou-category-action-card small{color:#64748b;line-height:1.5}.tsemou-workspace-identity{display:flex;align-items:stretch;gap:14px;margin-bottom:26px}.tsemou-workspace-identity__category{width:150px;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #dce8e2;border-radius:18px;background:#edf7f2;color:#285e4a;text-align:center}.tsemou-workspace-identity__category>span{font-size:32px}.tsemou-workspace-identity__category small{font-weight:800}.tsemou-workspace-identity__action{flex:1;padding:22px 25px;display:flex;align-items:center;gap:18px;border:1px solid #e1e7ee;border-radius:18px;background:#fff}.tsemou-workspace-identity__action>span{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;background:#dff1e8;color:#285e4a;font-size:29px;font-weight:900}.tsemou-workspace-identity__action strong{display:block;margin-top:7px;color:#64748b;font-size:14px}.tsemou-workspace-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.tsemou-workspace-body__primary,.tsemou-workspace-body__context{border:1px solid #e1e7ee;border-radius:18px;background:#fff}.tsemou-workspace-body__primary{padding:24px}.tsemou-workspace-body__primary h2{margin:0 0 16px;font-size:21px}.tsemou-workspace-choice-list{display:grid;gap:11px}.tsemou-workspace-choice{padding:17px 18px;display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:center;border:1px solid #e5eaf0;border-radius:14px;color:#14213d;text-decoration:none;transition:.16s ease}.tsemou-workspace-choice:hover,.tsemou-workspace-choice:focus-visible{border-color:#91b9aa;background:#f4faf7;outline:none}.tsemou-workspace-choice strong{font-size:16px}.tsemou-workspace-choice span{grid-column:1;color:#64748b;font-size:13px}.tsemou-workspace-choice i{grid-column:2;grid-row:1/3;font-style:normal;font-size:21px;color:#356150}.tsemou-workspace-body__context{padding:24px;height:max-content;background:#eef7f3}.tsemou-workspace-body__context p{margin:0 0 8px;font-size:11px;letter-spacing:.14em;font-weight:900;color:#5e7d6f}.tsemou-workspace-body__context h3{margin:0 0 10px;font-size:20px}.tsemou-workspace-body__context span{color:#5f6f69;line-height:1.55;font-size:14px}
@media(max-width:900px){.tsemou-category-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tsemou-workspace-body{grid-template-columns:1fr}.tsemou-workspace-identity{flex-direction:column}.tsemou-workspace-identity__category{width:auto;align-items:flex-start}.tsemou-action-shell__topbar{padding:0 18px}.tsemou-action-shell__main{width:min(100% - 24px,1120px)}}
@media(max-width:560px){.tsemou-category-action-grid{grid-template-columns:1fr}.tsemou-category-action-card{min-height:140px}.tsemou-action-shell__identity h1,.tsemou-workspace-identity__action h1{font-size:28px}.tsemou-action-shell__topbar nav{gap:12px;font-size:13px}}

/* ACT-2 — Help Workspace destination focus */
.tsemou-action-path-target{outline:3px solid rgba(52,126,92,.45)!important;outline-offset:6px;box-shadow:0 0 0 10px rgba(93,170,135,.10)!important;transition:outline-color .2s ease,box-shadow .2s ease}.tsemou-workspace-body--help .tsemou-workspace-choice:first-child{border-color:#8fbda9;background:#f3faf6}.tsemou-workspace-body--help .tsemou-workspace-choice:nth-child(2){border-color:#bad6c9}

/* ACT-3 — Knowledge Workspace visual emphasis */
.tsemou-workspace-body--knowledge .tsemou-workspace-choice:first-child{border-color:#8fbda9;background:#f3faf6}.tsemou-workspace-body--knowledge .tsemou-workspace-choice:nth-child(2){border-color:#bad6c9}.tsemou-workspace-body--knowledge .tsemou-workspace-choice:nth-child(3) .tsemou-workspace-choice__icon{color:#356150}


/* ACT-4 — Communities Workspace visual emphasis */
.tsemou-workspace-body--communities .tsemou-workspace-choice:first-child,
.tsemou-workspace-body--communities .tsemou-workspace-choice:nth-child(2) {
  border-color: rgba(31, 139, 91, .34);
  background: linear-gradient(135deg, rgba(238, 249, 243, .96), rgba(255, 255, 255, .98));
}
.tsemou-workspace-body--communities .tsemou-workspace-choice:first-child strong,
.tsemou-workspace-body--communities .tsemou-workspace-choice:nth-child(2) strong {
  color: #176f4b;
}

/* MATCH-1 — Category Connection Foundation */
.tsemou-related-connections{margin-top:22px;padding:24px;border:1px solid #e1e7ee;border-radius:20px;background:#fff}.tsemou-related-connections__heading{margin-bottom:18px}.tsemou-related-connections__heading p{margin:0 0 5px;color:#5e7d6f;font-size:11px;font-weight:900;letter-spacing:.14em}.tsemou-related-connections__heading h2{margin:0 0 7px;font-size:23px;color:#14213d}.tsemou-related-connections__heading span{color:#64748b;font-size:14px}.tsemou-related-connections__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tsemou-connection-card{min-height:104px;padding:16px;display:grid;grid-template-columns:44px 1fr auto;gap:13px;align-items:center;border:1px solid #e3e9ef;border-radius:15px;color:#14213d;text-decoration:none;background:#fbfdfc;transition:.16s ease}.tsemou-connection-card:hover,.tsemou-connection-card:focus-visible{border-color:#8eb7a7;background:#f1f8f5;transform:translateY(-2px);outline:none}.tsemou-connection-card__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#e4f2ec;color:#2e654e;font-size:22px;font-weight:900}.tsemou-connection-card strong{display:block;margin-bottom:4px;font-size:15px}.tsemou-connection-card small{display:block;color:#64748b;font-size:12px;line-height:1.4}.tsemou-connection-card i{font-style:normal;color:#356150;font-size:20px}@media(max-width:700px){.tsemou-related-connections{padding:18px}.tsemou-related-connections__grid{grid-template-columns:1fr}}

/* MATCH-2 — Person-to-person suggestions from existing user-owned declarations. */
.tsemou-people-matches{margin-top:24px;padding:24px;border:1px solid #dfe7e3;border-radius:18px;background:#fff}
.tsemou-people-matches__heading{margin-bottom:16px}.tsemou-people-matches__heading p{margin:0 0 5px;font-size:11px;letter-spacing:.15em;font-weight:900;color:#5e7d6f}.tsemou-people-matches__heading h2{margin:0 0 7px;font-size:22px;color:#14213d}.tsemou-people-matches__heading span{display:block;color:#64748b;font-size:14px;line-height:1.5}
.tsemou-people-matches__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tsemou-person-match-card{min-width:0;padding:15px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #e3e9e6;border-radius:15px;background:#f9fcfa;color:#14213d;text-decoration:none;transition:.16s ease}.tsemou-person-match-card:hover,.tsemou-person-match-card:focus-visible{border-color:#86ad9e;background:#f1f8f5;transform:translateY(-2px);outline:none}.tsemou-person-match-card img{width:48px;height:48px;border-radius:50%;object-fit:cover;background:#e4eee9}.tsemou-person-match-card span{min-width:0;display:grid;gap:3px}.tsemou-person-match-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.tsemou-person-match-card small{color:#3d755f;font-weight:800;font-size:12px}.tsemou-person-match-card em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-style:normal;font-size:12px}.tsemou-person-match-card i{font-style:normal;font-size:19px;color:#356150}
@media(max-width:700px){.tsemou-people-matches__grid{grid-template-columns:1fr}.tsemou-people-matches{padding:18px}}


/* MATCH-3 — User-to-Community suggestions from existing public discovery cards. */
.tsemou-community-matches{margin-top:24px;padding:24px;border:1px solid #dfe7e3;border-radius:18px;background:#fff}.tsemou-community-matches__heading{margin-bottom:16px}.tsemou-community-matches__heading p{margin:0 0 5px;font-size:11px;letter-spacing:.15em;font-weight:900;color:#5e7d6f}.tsemou-community-matches__heading h2{margin:0 0 7px;font-size:22px;color:#14213d}.tsemou-community-matches__heading span{display:block;color:#64748b;font-size:14px;line-height:1.5}.tsemou-community-matches__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tsemou-community-match-card{min-width:0;padding:15px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #e3e9e6;border-radius:15px;background:#f9fcfa;color:#14213d;text-decoration:none;transition:.16s ease}.tsemou-community-match-card:hover,.tsemou-community-match-card:focus-visible{border-color:#86ad9e;background:#f1f8f5;transform:translateY(-2px);outline:none}.tsemou-community-match-card__mark{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#e3f2eb;color:#2f684f;font-size:25px;font-weight:900}.tsemou-community-match-card>span:nth-child(2){min-width:0;display:grid;gap:3px}.tsemou-community-match-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.tsemou-community-match-card small{color:#3d755f;font-weight:800;font-size:12px}.tsemou-community-match-card em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-style:normal;font-size:12px}.tsemou-community-match-card i{font-style:normal;font-size:19px;color:#356150}@media(max-width:700px){.tsemou-community-matches__grid{grid-template-columns:1fr}.tsemou-community-matches{padding:18px}}

/* MATCH-4 — Category context to existing Cases and Solutions. */
.tsemou-case-solution-matches{margin-top:24px;padding:24px;border:1px solid #dfe7e3;border-radius:18px;background:#fff}
.tsemou-case-solution-matches__heading{margin-bottom:16px}
.tsemou-case-solution-matches__heading p{margin:0 0 5px;font-size:11px;letter-spacing:.15em;font-weight:900;color:#5e7d6f}
.tsemou-case-solution-matches__heading h2{margin:0 0 7px;font-size:22px;color:#14213d}
.tsemou-case-solution-matches__heading span{display:block;color:#64748b;font-size:14px;line-height:1.5}
.tsemou-case-solution-matches__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tsemou-case-solution-card{min-width:0;padding:15px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #e3e9e6;border-radius:15px;background:#f9fcfa;color:#14213d;text-decoration:none;transition:.16s ease}
.tsemou-case-solution-card:hover,.tsemou-case-solution-card:focus-visible{border-color:#86ad9e;background:#f1f8f5;transform:translateY(-2px);outline:none}
.tsemou-case-solution-card__mark{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#e9efe8;color:#315f50;font-size:23px;font-weight:900}
.tsemou-case-solution-card>span:nth-child(2){min-width:0;display:grid;gap:3px}
.tsemou-case-solution-card small{color:#3d755f;font-weight:900;font-size:10px;letter-spacing:.04em}
.tsemou-case-solution-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.tsemou-case-solution-card em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-style:normal;font-size:12px}
.tsemou-case-solution-card i{font-style:normal;font-size:19px;color:#356150}
@media(max-width:700px){.tsemou-case-solution-matches__grid{grid-template-columns:1fr}.tsemou-case-solution-matches{padding:18px}}

/* MATCH-5 — safe connection request controls; no contact data is exposed. */
.tsemou-person-match-card{grid-template-columns:48px minmax(0,1fr);align-items:start}
.tsemou-person-match-profile{color:inherit;text-decoration:none}.tsemou-person-match-profile:hover{text-decoration:underline}
.tsemou-person-match-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;padding-top:10px;border-top:1px solid #e6ece9}
.tsemou-person-match-actions>a,.tsemou-person-match-request{appearance:none;padding:8px 11px;border:1px solid #b8cdc4;border-radius:10px;background:#fff;color:#285e4a;text-decoration:none;font:inherit;font-size:12px;font-weight:850;cursor:pointer}
.tsemou-person-match-request{background:#e6f3ed;border-color:#86ad9e}.tsemou-person-match-request:hover,.tsemou-person-match-request:focus-visible{background:#d8ece3;outline:none}.tsemou-person-match-request.is-sent,.tsemou-person-match-request:disabled{cursor:default;opacity:.78}


/* ACT-8A — In-workspace discovery targets */
.tsemou-workspace-target {
  scroll-margin-top: 96px;
  outline: none;
  transition: box-shadow .22s ease, transform .22s ease, background-color .22s ease;
}
.tsemou-workspace-target.is-workspace-target-active,
.tsemou-workspace-target:target {
  box-shadow: 0 0 0 3px rgba(20, 125, 103, .18), 0 18px 40px rgba(20, 56, 48, .08);
  transform: translateY(-2px);
}
@media (prefers-reduced-motion: reduce) {
  .tsemou-workspace-target { transition: none; }
  .tsemou-workspace-target.is-workspace-target-active,
  .tsemou-workspace-target:target { transform: none; }
}

/* D6.6 — Minimal Help for All workspace: only the two help directions. */
.tsemou-action-shell--help-minimal .tsemou-action-shell__main{width:min(760px,calc(100% - 40px));}
.tsemou-workspace-body--help-minimal{display:block;}
.tsemou-workspace-body--help-minimal .tsemou-workspace-body__primary{padding:0;border:0;background:transparent;}
.tsemou-workspace-body--help-minimal .tsemou-workspace-choice-list{gap:14px;}
.tsemou-workspace-body--help-minimal .tsemou-workspace-choice{padding:22px 24px;background:#fff;border-radius:18px;}
.tsemou-workspace-body--help-minimal .tsemou-workspace-choice strong{font-size:19px;}
.tsemou-workspace-body--help-minimal .tsemou-workspace-choice span{font-size:14px;}
@media(max-width:700px){.tsemou-action-shell--help-minimal .tsemou-action-shell__main{width:min(100% - 24px,760px);}.tsemou-workspace-body--help-minimal .tsemou-workspace-choice{padding:18px;}}


/* D6.7 — Help selection is replaced by one centered native composer. */
.tsemou-action-shell--help-minimal .tsemou-workspace-body__primary.is-domain-composer-open > .tsemou-workspace-choice-list {
  display: none !important;
}
.tsemou-action-shell--help-minimal .tsemou-domain-native-composer.entity-action-panel--domain-workspace {
  position: static;
  inset: auto;
  z-index: auto;
  width: min(100%, 640px);
  max-width: 640px;
  max-height: none;
  margin: 0 auto;
  overflow: visible;
  padding: 24px;
  border-radius: 18px;
  box-sizing: border-box;
  box-shadow: 0 10px 30px rgba(18, 32, 60, .08);
}
.tsemou-action-shell--help-minimal .tsemou-workspace-body__primary.is-domain-composer-open {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
@media (max-width: 680px) {
  .tsemou-action-shell--help-minimal .tsemou-domain-native-composer.entity-action-panel--domain-workspace {
    width: 100%;
    padding: 18px;
  }
}


/* 5.66.9 — Actions & Help: equal ACTION and HELP containers. */
.tsemou-purpose-actions-main{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:28px 0 72px}
.tsemou-purpose-actions-main>.tsemou-purpose-identity{margin:0 0 24px;text-align:center;color:#728094;font-size:11px;font-weight:800;letter-spacing:.22em}
.tsemou-purpose-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.tsemou-purpose-actions-panel{padding:30px;border:1px solid #e1e7ee;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(28,54,84,.07)}
.tsemou-purpose-actions-kicker{margin:0 0 18px;color:#5e7d6f;font-size:12px;font-weight:900;letter-spacing:.16em}
.tsemou-purpose-actions-panel--help .tsemou-purpose-actions-kicker{color:#b72d61}
.tsemou-purpose-actions-options{display:grid;gap:14px}
.tsemou-purpose-actions-option{width:100%;padding:22px 24px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;border:1px solid #dce4ec;border-radius:16px;background:#fff;color:#14213d;text-align:left;font:inherit;cursor:default}
.tsemou-purpose-actions-option span{display:grid;gap:7px}
.tsemou-purpose-actions-option strong{font-size:20px;line-height:1.25}
.tsemou-purpose-actions-option small{color:#64748b;font-size:14px;line-height:1.55}
.tsemou-purpose-actions-option i{font-style:normal;color:#356150;font-size:24px}
.tsemou-purpose-actions-panel--help .tsemou-purpose-actions-option i{color:#b72d61}
@media(max-width:900px){.tsemou-purpose-actions-grid{grid-template-columns:1fr}.tsemou-purpose-actions-main{width:min(820px,calc(100% - 40px))}}
@media(max-width:700px){.tsemou-purpose-actions-main{width:min(100% - 24px,820px);padding-top:20px}.tsemou-purpose-actions-grid{gap:16px}.tsemou-purpose-actions-panel{padding:20px}.tsemou-purpose-actions-option{padding:19px 18px}.tsemou-purpose-actions-option strong{font-size:18px}}


/* 5.67.0 — Be the Journalist native Post/Story composer. */
.tsemou-purpose-actions-option{cursor:pointer;text-decoration:none;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.tsemou-purpose-actions-option:hover,.tsemou-purpose-actions-option:focus-visible{border-color:#7ca995;transform:translateY(-2px);box-shadow:0 10px 24px rgba(28,76,57,.08);outline:none}
.tsemou-purpose-actions-grid[hidden],.tsemou-journalist-composer[hidden]{display:none!important}
.tsemou-journalist-composer{width:min(780px,100%);margin:0 auto}
.tsemou-journalist-composer__card{padding:30px;border:1px solid #e1e7ee;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(28,54,84,.07)}
.tsemou-journalist-composer__heading{margin-bottom:24px}.tsemou-journalist-composer__heading p{margin:0 0 7px;color:#47715f;font-size:11px;font-weight:900;letter-spacing:.18em}.tsemou-journalist-composer__heading h2{margin:0 0 7px;color:#14213d;font-size:28px}.tsemou-journalist-composer__heading span{color:#64748b;line-height:1.5}
.tsemou-journalist-composer form{display:grid;gap:18px}.tsemou-journalist-composer label{display:grid;gap:8px;color:#25364e;font-size:14px;font-weight:800}.tsemou-journalist-composer label small{font-weight:500;color:#718096}.tsemou-journalist-composer input,.tsemou-journalist-composer textarea{width:100%;box-sizing:border-box;border:1px solid #ccd7e2;border-radius:12px;background:#fbfcfe;color:#14213d;font:inherit;font-weight:500;padding:13px 14px}.tsemou-journalist-composer textarea{resize:vertical;min-height:190px;line-height:1.55}.tsemou-journalist-composer input:focus,.tsemou-journalist-composer textarea:focus{border-color:#4c8c72;box-shadow:0 0 0 3px rgba(76,140,114,.13);outline:none}
.tsemou-journalist-composer__feedback{min-height:20px;margin:0;color:#b42318;font-size:13px}.tsemou-journalist-composer__actions{display:flex;justify-content:flex-end;gap:10px}.tsemou-journalist-composer__actions button,.tsemou-journalist-success button,.tsemou-journalist-success a{appearance:none;border:1px solid #285e4a;border-radius:11px;background:#285e4a;color:#fff;padding:11px 17px;font:inherit;font-size:14px;font-weight:850;text-decoration:none;cursor:pointer}.tsemou-journalist-composer__actions .is-secondary{background:#fff;color:#285e4a}.tsemou-journalist-composer__actions button:disabled{opacity:.65;cursor:wait}
.tsemou-journalist-success{padding:40px 30px;text-align:center;border:1px solid #cfe2d8;border-radius:20px;background:#f6fbf8}.tsemou-journalist-success>span{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 14px;border-radius:50%;background:#dff2e8;color:#246449;font-size:28px;font-weight:900}.tsemou-journalist-success h2{margin:0 0 8px;color:#14213d}.tsemou-journalist-success p{margin:0 auto 22px;max-width:560px;color:#64748b;line-height:1.55}.tsemou-journalist-success div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.tsemou-journalist-success button{background:#fff;color:#285e4a}
@media(max-width:700px){.tsemou-journalist-composer__card{padding:20px}.tsemou-journalist-composer__heading h2{font-size:24px}.tsemou-journalist-composer__actions{flex-direction:column-reverse}.tsemou-journalist-composer__actions button{width:100%}}

.tsemou-journalist-composer__actions a{display:inline-flex;align-items:center;justify-content:center}.tsemou-journalist-composer__actions a.is-secondary{background:#fff;color:#285e4a}

/* 5.67.3 — Be the Journalist media fields */
.tsemou-journalist-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tsemou-journalist-media>div{padding:14px;border:1px solid #dbe4ec;border-radius:14px;background:#f8fafc}
.tsemou-journalist-composer input[type=file]{padding:10px;background:#fff;font-size:13px;font-weight:600}
.tsemou-journalist-composer input[type=file]::file-selector-button{margin-right:10px;border:1px solid #9bb7aa;border-radius:9px;background:#edf7f2;color:#285e4a;padding:8px 11px;font:inherit;font-weight:800;cursor:pointer}
@media(max-width:700px){.tsemou-journalist-media{grid-template-columns:1fr}}

/* CASE-03 — Optional initial Canonical Evidence in the Case creation flow. */
.tsemou-case-evidence-fields {
  margin: 22px 0 0;
  padding: 20px;
  border: 1px solid rgba(40, 54, 48, .14);
  border-radius: 18px;
  background: rgba(248, 251, 249, .96);
}
.tsemou-case-evidence-fields legend {
  padding: 0 8px;
  font-weight: 800;
  color: #27352f;
}
.tsemou-case-evidence-fields legend small,
.tsemou-case-evidence-fields > p {
  color: #68756f;
  font-weight: 500;
}
.tsemou-case-evidence-fields > p { margin: 0 0 16px; }
.tsemou-case-evidence-fields label { display: block; margin-top: 14px; }
.tsemou-case-evidence-fields select {
  width: 100%;
  margin-top: 7px;
  padding: 12px 14px;
  border: 1px solid rgba(40, 54, 48, .18);
  border-radius: 12px;
  background: #fff;
  color: #27352f;
  font: inherit;
}

/* CASE-07 — specific user invitation UI inside the canonical Case Workspace. */
.case-invitations-panel{display:grid;gap:16px}
.case-incoming-invitations{display:grid;gap:10px}
.case-incoming-invitations h4{margin:0;font-size:15px}
.case-invitation-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid rgba(15,118,110,.18);border-radius:14px;background:#fff}
.case-invitation-card>div:first-child{display:grid;gap:4px}.case-invitation-card p{margin:4px 0 0;color:#52615e}
.case-invitation-actions{display:flex;gap:8px;flex-wrap:wrap}.case-invitation-actions button,.case-invite-result{border:1px solid rgba(15,118,110,.22);border-radius:10px;background:#fff;padding:9px 12px;cursor:pointer}
.case-invite-form{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(150px,.6fr);gap:12px;align-items:start}
.case-invite-form label{display:grid;gap:6px}.case-invite-form label:nth-of-type(3){grid-column:1/-1}.case-invite-form input,.case-invite-form select,.case-invite-form textarea{width:100%;box-sizing:border-box;border:1px solid rgba(15,118,110,.2);border-radius:10px;padding:10px;background:#fff}
.case-invite-results{grid-column:1/-1;display:grid;gap:8px}.case-invite-result{display:flex;align-items:center;gap:10px;text-align:left}.case-invite-result img{width:34px;height:34px;border-radius:50%;object-fit:cover}.case-invite-result span{flex:1}.case-invite-result strong{font-size:12px;color:#0f766e}
.case-invite-feedback{grid-column:1/-1;min-height:20px;font-size:13px;color:#0f766e}.case-invite-feedback.is-error{color:#b42318}
@media(max-width:760px){.case-invite-form{grid-template-columns:1fr}.case-invite-form label:nth-of-type(3){grid-column:auto}.case-invitation-card{align-items:flex-start;flex-direction:column}}

/* CASE-10 — Community invitations inside the canonical Case Workspace. */
.case-community-invitations-panel .case-community-invitation-status ul{list-style:none;margin:10px 0 18px;padding:0;display:grid;gap:8px}
.case-community-invitations-panel .case-community-invitation-status li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(15,23,42,.1);border-radius:10px;background:#fff}
.case-community-invitations-panel .case-community-invitation-status li small{color:#64748b;text-transform:capitalize}
.case-community-invite-result>span{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;flex:1}
.case-community-invite-result>span strong,.case-community-invite-result>span small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.case-community-invite-result>span small{font-weight:400;color:#64748b}
.case-community-invite-result>b{margin-left:auto}

/* CASE-11 — Review before canonical Case creation. */
.tsemou-case-review{display:grid;gap:20px;padding:22px;border:1px solid #cfdce7;border-radius:16px;background:#f8fbfd}
.tsemou-case-review[hidden]{display:none!important}
.tsemou-case-review__heading p{margin:0 0 6px;color:#47715f;font-size:11px;font-weight:900;letter-spacing:.15em}
.tsemou-case-review__heading h3{margin:0 0 5px;color:#14213d;font-size:22px}
.tsemou-case-review__heading span{color:#64748b;font-size:13px}
.tsemou-case-review__list{display:grid;grid-template-columns:minmax(145px,190px) 1fr;gap:0;margin:0;border:1px solid #dce5ed;border-radius:13px;overflow:hidden;background:#fff}
.tsemou-case-review__list dt,.tsemou-case-review__list dd{margin:0;padding:12px 14px;border-bottom:1px solid #edf1f5;overflow-wrap:anywhere}
.tsemou-case-review__list dt{background:#f5f8fa;color:#526579;font-size:12px;font-weight:850}
.tsemou-case-review__list dd{color:#17263c;font-size:13px;line-height:1.5;white-space:pre-wrap}
.tsemou-case-review__list dt:last-of-type,.tsemou-case-review__list dd:last-of-type{border-bottom:0}
.tsemou-case-review__actions{display:flex;justify-content:flex-end;gap:10px}
.tsemou-case-review__actions button{appearance:none;border:1px solid #285e4a;border-radius:11px;background:#285e4a;color:#fff;padding:11px 17px;font:inherit;font-size:14px;font-weight:850;cursor:pointer}
.tsemou-case-review__actions button.is-secondary{background:#fff;color:#285e4a}
.tsemou-case-review__actions button:disabled{opacity:.65;cursor:wait}
@media(max-width:700px){.tsemou-case-review__list{grid-template-columns:1fr}.tsemou-case-review__list dt{border-bottom:0;padding-bottom:4px}.tsemou-case-review__list dd{padding-top:4px}.tsemou-case-review__actions{flex-direction:column-reverse}.tsemou-case-review__actions button{width:100%}}

/* CASE-13 — lifecycle status accents */
[data-case-status="DRAFT"]{--case-status-accent:#94a3b8}
[data-case-status="OPEN"]{--case-status-accent:#16a34a}
[data-case-status="INVESTIGATING"]{--case-status-accent:#2563eb}
[data-case-status="COLLABORATING"]{--case-status-accent:#7c3aed}
[data-case-status="SOLVING"]{--case-status-accent:#ea580c}
[data-case-status="MONITORING"]{--case-status-accent:#0891b2}
[data-case-status="COMPLETED"]{--case-status-accent:#15803d}
[data-case-status="ARCHIVED"]{--case-status-accent:#64748b}
[data-case-status-badge]{border-color:var(--case-status-accent,currentColor);color:var(--case-status-accent,currentColor)}

/* CASE-13.1 — visible lifecycle workspace controls */
.case-lifecycle-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:16px 18px;border:1px solid #d0d5dd;border-radius:16px;background:linear-gradient(135deg,#f8fafc 0%,#ffffff 100%)}
.case-lifecycle-card-copy{min-width:0}
.case-lifecycle-card-copy small{display:block;margin-bottom:7px;color:#667085;font-size:11px;font-weight:800;letter-spacing:.08em}
.case-lifecycle-card-copy p{margin:7px 0 0;color:#667085;font-size:13px}
.case-lifecycle-timeline-link{appearance:none;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#344054;padding:6px 12px;font:inherit;font-weight:700;line-height:1.2;cursor:pointer}
.case-lifecycle-timeline-link:hover{background:#f2f4f7}
.case-status-badge[data-case-status="DRAFT"]{background:#f2f4f7;color:#475467}
.case-status-badge[data-case-status="OPEN"]{background:#ecfdf3;color:#027a48}
.case-status-badge[data-case-status="INVESTIGATING"]{background:#eff8ff;color:#175cd3}
.case-status-badge[data-case-status="COLLABORATING"]{background:#f4f3ff;color:#5925dc}
.case-status-badge[data-case-status="SOLVING"]{background:#fffaeb;color:#b54708}
.case-status-badge[data-case-status="MONITORING"]{background:#fdf2fa;color:#c11574}
.case-status-badge[data-case-status="COMPLETED"]{background:#ecfdf3;color:#027a48}
.case-status-badge[data-case-status="ARCHIVED"]{background:#f2f4f7;color:#344054}
@media (max-width:700px){.case-lifecycle-card{align-items:flex-start;flex-direction:column}.case-lifecycle-controls{justify-content:flex-start;width:100%}}


/* CASE-13.2 — Canonical Case Workspace consolidation */
.case-consolidated-tabs{margin:0 0 14px;position:sticky;top:0;z-index:4;background:#fff;border:1px solid #e4e7ec;border-radius:14px;padding:4px;box-shadow:0 8px 22px rgba(16,24,40,.05)}
.case-consolidated-tabs .workspace-tab{flex:1 1 auto;min-width:max-content;padding:10px 12px;border-radius:10px}
.case-overview-summaries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.case-overview-summary{appearance:none;text-align:left;border:1px solid #e4e7ec;border-radius:14px;background:#f9fafb;padding:13px 14px;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:4px 10px;color:#101828}
.case-overview-summary:hover{background:#f2f4f7;border-color:#d0d5dd}
.case-overview-summary span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#667085}
.case-overview-summary strong{font-size:20px;line-height:1;color:#101828}
.case-overview-summary small{grid-column:1/-1;color:#667085;font-size:12px}
.case-entity-panel-intro{margin:0 0 14px;color:#667085}
.case-entity-panel-sections{display:grid;gap:12px}
.case-entity-panel-sections>.workspace-living-visibility-audit,
.case-entity-panel-sections>[data-workspace-living-section],
.case-entity-panel-sections>.workspace-living-trust-section{margin:0}
.case-workspace-completion>[data-workspace-panel][hidden],
.case-workspace-primary-surface [data-workspace-panel][hidden]{display:none!important}
@media (max-width:760px){
  .case-consolidated-tabs{overflow-x:auto;justify-content:flex-start;position:static}
  .case-consolidated-tabs .workspace-tab{flex:0 0 auto}
  .case-overview-summaries{grid-template-columns:1fr}
}


/* CASE-13.3 — activated Case workspace controls. */
.case-workspace-header [data-case-follow].is-active{border-color:#12b76a;background:#ecfdf3;color:#067647}
.case-workspace-header [data-case-follow]:disabled,.case-workspace-header [data-case-share]:disabled{opacity:.65;cursor:wait}
.case-workspace .workspace-tab{cursor:pointer}
.case-workspace [data-open-case-tab],.case-workspace [data-open-evidence-tab],.case-workspace [data-open-evidence-discovery],.case-workspace [data-case-view-timeline]{cursor:pointer}

/* CASE-13.5 — Case Health read model. */
.case-health-card{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 18px;padding:14px 18px;border:1px solid #d0d5dd;border-radius:16px;background:#fff}
.case-health-card-copy{min-width:0}
.case-health-card-copy>small:first-child{display:block;margin-bottom:7px;color:#667085;font-size:11px;font-weight:800;letter-spacing:.08em}
.case-health-card-copy p{margin:7px 0 0;color:#475467;font-size:13px;line-height:1.45}
.case-health-next{display:block;margin-top:7px;color:#667085;font-size:12px}
.case-health-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid currentColor;border-radius:999px;padding:5px 10px;font-size:13px}
.case-health-card[data-case-health="HEALTHY"] .case-health-badge{background:#ecfdf3;color:#067647}
.case-health-card[data-case-health="NEEDS_EVIDENCE"] .case-health-badge{background:#fffaeb;color:#b54708}
.case-health-card[data-case-health="WAITING_FOR_PARTICIPANTS"] .case-health-badge,.case-health-card[data-case-health="WAITING_FOR_ASSIGNMENT"] .case-health-badge{background:#fff6ed;color:#c4320a}
.case-health-card[data-case-health="BLOCKED"] .case-health-badge{background:#fef3f2;color:#b42318}
.case-health-card[data-case-health="INACTIVE"] .case-health-badge,.case-health-card[data-case-health="DRAFT"] .case-health-badge{background:#f2f4f7;color:#475467}

/* CASE-14.5 — Action Plan / Tasks UI */
.case-tasks-panel{display:grid;gap:16px}
.case-task-create-form{display:grid;gap:12px;padding:14px;border:1px solid #e4e7ec;border-radius:14px;background:#f9fafb}
.case-task-form-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(130px,1fr));gap:10px}
.case-task-create-form label,.case-task-assignment{display:grid;gap:6px;color:#344054;font-size:12px;font-weight:700}
.case-task-create-form input,.case-task-create-form select,.case-task-create-form textarea,.case-task-assignment select{width:100%;border:1px solid #d0d5dd;border-radius:10px;background:#fff;padding:10px 11px;color:#101828;font:inherit}
.case-task-form-actions{display:flex;align-items:center;gap:12px}.case-task-create-button{border:0;border-radius:10px;background:#ff5a1f;color:#fff;padding:10px 16px;font-weight:800;cursor:pointer}
.case-task-filters{display:flex;gap:7px;overflow-x:auto}.case-task-filters button{border:1px solid #d0d5dd;border-radius:999px;background:#fff;padding:7px 11px;color:#475467;font-weight:700;cursor:pointer;white-space:nowrap}.case-task-filters button.is-active{background:#101828;color:#fff;border-color:#101828}
.case-task-list{display:grid;gap:12px}.case-task-card{display:grid;gap:10px;padding:14px;border:1px solid #e4e7ec;border-radius:14px;background:#fff}.case-task-card h4,.case-task-card p{margin:0}.case-task-card p{color:#475467;line-height:1.5}
.case-task-card-head,.case-task-card-actions,.case-task-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.case-task-card-head>div,.case-task-transitions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.case-task-status,.case-task-priority{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.case-task-status{background:#eef2ff;color:#3730a3}.case-task-priority{background:#f2f4f7;color:#344054}.case-task-priority--high{background:#fff4e5;color:#b54708}.case-task-priority--critical{background:#fee4e2;color:#b42318}.case-task-priority--low{background:#ecfdf3;color:#027a48}
.case-task-overdue{color:#b42318;font-size:12px}.case-task-meta{justify-content:flex-start;color:#667085;font-size:12px}.case-task-assignment{min-width:190px}.case-task-assignee-label{color:#475467;font-size:12px;font-weight:700}
.case-task-transition{border:1px solid #d0d5dd;border-radius:9px;background:#fff;padding:8px 10px;color:#344054;font-weight:800;cursor:pointer}.case-task-transition:hover{background:#f9fafb}.case-task-feedback,[data-case-task-create-feedback]{color:#667085;font-size:12px}.case-task-empty{padding:20px;border:1px dashed #d0d5dd;border-radius:14px;text-align:center;color:#667085}.case-task-empty p{margin:5px 0 0}
@media(max-width:900px){.case-task-form-grid{grid-template-columns:1fr 1fr}.case-task-card-actions{align-items:stretch}.case-task-assignment{min-width:100%}}
@media(max-width:560px){.case-task-form-grid{grid-template-columns:1fr}.case-task-card-actions{display:grid}.case-task-transitions{display:grid;grid-template-columns:1fr}.case-task-transition{width:100%}}

/* CASE-16.1 — Information Architecture Lock */
.case-consolidated-tabs{scrollbar-width:thin}
.case-consolidated-tabs .workspace-tab[aria-selected="true"]{background:#101828;color:#fff;box-shadow:0 1px 2px rgba(16,24,40,.12)}
.case-consolidated-tabs .workspace-tab:focus-visible{outline:3px solid rgba(255,90,31,.3);outline-offset:2px}
.case-overview-summaries{grid-template-columns:repeat(4,minmax(0,1fr))}
.case-panel-intro{margin:-4px 0 4px;color:#667085;font-size:13px;line-height:1.5}
.case-solutions-panel,.case-outcomes-panel{display:grid;gap:14px}
.case-solution-list,.case-outcome-list{display:grid;gap:12px}
.case-solution-card,.case-outcome-card{padding:14px;border:1px solid #e4e7ec;border-radius:14px;background:#fff}
.case-solution-card>div,.case-outcome-card>div{display:grid;gap:6px}
.case-solution-card small,.case-outcome-card small{color:#667085;font-size:11px;font-weight:800;letter-spacing:.06em}
.case-solution-card strong,.case-outcome-card strong{font-size:15px;color:#101828}
.case-solution-card a,.case-outcome-card a{color:inherit;text-decoration:none}
.case-solution-card a:hover,.case-outcome-card a:hover{text-decoration:underline}
.case-solution-card p,.case-outcome-card p{margin:0;color:#475467;line-height:1.5}
.case-workspace-completion>[data-workspace-panel]{scroll-margin-top:92px}
@media (max-width:1050px){.case-overview-summaries{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.case-overview-summaries{grid-template-columns:1fr}.case-consolidated-tabs{padding-bottom:6px}}

/* CASE-16.2 — Overview Consolidation */
.case-overview-panel{display:grid;gap:18px}
.case-overview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid #eaecf0}
.case-overview-header small,.case-overview-summary-copy>small,.case-overview-next-step>small{display:block;color:#667085;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.case-overview-header h2{margin:5px 0 4px;color:#101828;font-size:24px;line-height:1.2}
.case-overview-header p{margin:0;max-width:620px;color:#667085;font-size:13px;line-height:1.5}
.case-overview-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.case-overview-status-grid .case-lifecycle-card,.case-overview-status-grid .case-health-card{margin:0;min-height:150px}
.case-overview-status-grid .case-lifecycle-card{align-items:flex-start;flex-direction:column;justify-content:space-between}
.case-overview-status-grid .case-health-card{align-items:flex-start}
.case-lifecycle-advance--secondary{background:#fff;color:#344054;border-color:#d0d5dd}
.case-lifecycle-advance--secondary:hover{background:#f2f4f7}
.case-overview-summary-block{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:18px;padding:18px;border:1px solid #e4e7ec;border-radius:16px;background:#fff}
.case-overview-summary-copy{min-width:0}
.case-overview-summary-copy .case-overview-description{margin:8px 0 0;color:#344054;font-size:15px;line-height:1.65}
.case-overview-updated{margin:12px 0 0;color:#98a2b3;font-size:12px}
.case-overview-next-step{display:flex;align-items:flex-start;flex-direction:column;justify-content:center;gap:8px;padding:15px;border-radius:14px;background:#f8fafc;border:1px solid #eaecf0}
.case-overview-next-step strong{color:#101828;font-size:15px;line-height:1.4}
.case-overview-next-action{appearance:none;width:100%;border:1px solid #101828;border-radius:10px;background:#101828;color:#fff;padding:10px 14px;font:inherit;font-weight:800;cursor:pointer;text-align:center}
.case-overview-next-action:hover{background:#344054}
.case-overview-next-action--secondary{background:#fff;color:#344054;border-color:#d0d5dd}
.case-overview-next-action--secondary:hover{background:#f2f4f7}
.case-overview-summaries{margin-top:0}
.case-overview-summary{min-height:112px;background:#fff}
.case-overview-summary:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(16,24,40,.06)}
@media (max-width:900px){
  .case-overview-status-grid,.case-overview-summary-block{grid-template-columns:1fr}
  .case-overview-next-step{align-items:stretch}
}
@media (max-width:700px){
  .case-overview-header{align-items:stretch;flex-direction:column}
  .case-overview-header .case-lifecycle-timeline-link{align-self:flex-start}
  .case-overview-status-grid .case-lifecycle-card,.case-overview-status-grid .case-health-card{min-height:0}
  .case-overview-summary-block{padding:14px}
}

/* CASE-16.3 — Functional Workspace Tabs */
.case-functional-tab-panel{min-width:0}
.case-discussion-panel{display:grid;gap:14px}
.case-discussion-panel>.workspace-composer{margin:0}
.case-discussion-panel>.workspace-feed-list{margin:0}
.case-participants-workspace,.case-outcomes-workspace{display:grid;gap:18px}
.case-functional-tab-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid #eaecf0}
.case-functional-tab-header small{display:block;margin-bottom:4px;font-size:11px;font-weight:800;letter-spacing:.08em;color:#667085}
.case-functional-tab-header h3{margin:0;color:#101828;font-size:20px;line-height:1.25}
.case-functional-tab-header p{margin:6px 0 0;color:#667085;max-width:680px}
.case-functional-tab-body{display:grid;gap:16px}
.case-functional-tab-section{margin:0;box-shadow:none}
.case-participants-workspace .case-people-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.case-outcomes-workspace .case-resolution-summary,
.case-outcomes-workspace .case-reusable-knowledge,
.case-outcomes-workspace .case-outcomes-panel{border:0;padding:0;background:transparent}
.case-workspace [data-workspace-panel][hidden]{display:none!important}
@media (max-width:760px){
  .case-functional-tab-header{display:block}
  .case-participants-workspace .case-people-grid{grid-template-columns:1fr}
  .case-functional-tab-body{gap:12px}
}


/* CASE-16.4 — Primary actions */
.case-primary-action-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:-2px 0 20px;padding:0 0 16px;border-bottom:1px solid #eaecf0}
.case-primary-action-header small{display:block;margin:0 0 4px;color:#667085;font-size:11px;font-weight:800;letter-spacing:.08em}
.case-primary-action-header h3{margin:0;color:#101828;font-size:20px;line-height:1.25}
.case-primary-action-header p{max-width:680px;margin:6px 0 0;color:#667085;line-height:1.5}
.case-primary-action-button{flex:0 0 auto;min-height:40px;padding:9px 15px;border:1px solid #f07d34;border-radius:999px;background:#f07d34;color:#fff;font-weight:800;cursor:pointer;box-shadow:0 1px 2px rgba(16,24,40,.08);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.case-primary-action-button:hover{background:#dc6b25;box-shadow:0 4px 12px rgba(240,125,52,.22);transform:translateY(-1px)}
.case-primary-action-button:focus-visible{outline:3px solid rgba(240,125,52,.28);outline-offset:3px}
.case-primary-action-button:active{transform:translateY(0)}
.case-solution-composer-host{margin:0 0 20px;padding:16px;border:1px solid #e4e7ec;border-radius:14px;background:#f9fafb}
.case-solution-composer-host[hidden]{display:none!important}
@media (max-width:700px){.case-primary-action-header{display:block}.case-primary-action-button{width:100%;margin-top:14px}.case-solution-composer-host{padding:12px}}


/* CASE-16.5 — Guided empty states */
.case-guided-empty-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:20px;border:1px dashed #d0d5dd;border-radius:16px;background:linear-gradient(180deg,#fff 0%,#f9fafb 100%);color:#344054}
.case-guided-empty-state__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#fff4ed;color:#e56f25;font-size:20px;font-weight:900}
.case-guided-empty-state__copy strong{display:block;margin:0;color:#101828;font-size:16px;line-height:1.35}
.case-guided-empty-state__copy p{max-width:680px;margin:5px 0 0;color:#667085;line-height:1.5}
.case-guided-empty-state__action{min-height:40px;padding:9px 14px;border:1px solid #f07d34;border-radius:999px;background:#f07d34;color:#fff;font:inherit;font-weight:800;cursor:pointer;white-space:nowrap;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.case-guided-empty-state__action:hover{background:#dc6b25;box-shadow:0 4px 12px rgba(240,125,52,.2);transform:translateY(-1px)}
.case-guided-empty-state__action:focus-visible{outline:3px solid rgba(240,125,52,.28);outline-offset:3px}
.case-participant-guidance{order:-1}
.case-timeline-empty{list-style:none}
.case-timeline-empty .case-guided-empty-state{margin:0}
.workspace-feed-list>.case-guided-empty-state{margin-top:4px}
@media (max-width:700px){.case-guided-empty-state{grid-template-columns:auto minmax(0,1fr);padding:16px}.case-guided-empty-state__action{grid-column:1/-1;width:100%}}

/* CASE-16.6 — Visual Hierarchy Lock */
.case-workspace[data-entity-type="case"]{
  --case-ink:#101828;
  --case-copy:#344054;
  --case-muted:#667085;
  --case-line:#e4e7ec;
  --case-soft:#f8fafc;
  --case-accent:#f07d34;
  --case-accent-strong:#dc6b25;
  --case-radius-lg:18px;
  --case-radius-md:14px;
  --case-shadow-soft:0 10px 30px rgba(16,24,40,.06);
}
.case-workspace[data-entity-type="case"] .case-workspace-primary-surface{color:var(--case-copy)}
.case-workspace[data-entity-type="case"] .case-workspace-primary-surface>.case-workspace-header{margin-bottom:14px}
.case-workspace[data-entity-type="case"] .case-workspace-title{color:var(--case-ink);letter-spacing:-.025em}
.case-workspace[data-entity-type="case"] .case-workspace-description{color:var(--case-copy);line-height:1.62}

.case-workspace[data-entity-type="case"] .case-consolidated-tabs{
  gap:3px;
  margin-bottom:20px;
  padding:5px;
  border-color:var(--case-line);
  border-radius:16px;
  background:rgba(255,255,255,.96);
  box-shadow:0 8px 24px rgba(16,24,40,.055);
  backdrop-filter:saturate(140%) blur(8px);
}
.case-workspace[data-entity-type="case"] .case-consolidated-tabs .workspace-tab{
  min-height:42px;
  padding:10px 14px;
  border:0;
  color:var(--case-muted);
  font-size:13px;
  font-weight:750;
  letter-spacing:-.01em;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.case-workspace[data-entity-type="case"] .case-consolidated-tabs .workspace-tab:hover{background:#f2f4f7;color:var(--case-ink)}
.case-workspace[data-entity-type="case"] .case-consolidated-tabs .workspace-tab[aria-selected="true"]{
  background:var(--case-ink);
  color:#fff;
  box-shadow:0 4px 10px rgba(16,24,40,.16);
}

.case-workspace[data-entity-type="case"] [data-workspace-panel]{
  min-width:0;
  padding:22px;
  border:1px solid var(--case-line);
  border-radius:var(--case-radius-lg);
  background:#fff;
  box-shadow:var(--case-shadow-soft);
}
.case-workspace[data-entity-type="case"] [data-workspace-panel="overview"]{padding:0;border:0;background:transparent;box-shadow:none}
.case-workspace[data-entity-type="case"] [data-workspace-panel="discussion"]{padding:20px}

.case-workspace[data-entity-type="case"] .case-overview-panel{gap:20px}
.case-workspace[data-entity-type="case"] .case-overview-header{padding:0 2px 18px}
.case-workspace[data-entity-type="case"] .case-overview-header h2{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.03em}
.case-workspace[data-entity-type="case"] .case-overview-header p{font-size:14px;line-height:1.6}
.case-workspace[data-entity-type="case"] .case-overview-status-grid{gap:16px}
.case-workspace[data-entity-type="case"] .case-overview-status-grid .case-lifecycle-card,
.case-workspace[data-entity-type="case"] .case-overview-status-grid .case-health-card{
  border-color:var(--case-line);
  border-radius:var(--case-radius-lg);
  box-shadow:0 8px 24px rgba(16,24,40,.045);
}
.case-workspace[data-entity-type="case"] .case-lifecycle-card-copy small,
.case-workspace[data-entity-type="case"] .case-health-card-copy>small:first-child,
.case-workspace[data-entity-type="case"] .case-overview-summary-copy>small,
.case-workspace[data-entity-type="case"] .case-overview-next-step>small,
.case-workspace[data-entity-type="case"] .case-primary-action-header small,
.case-workspace[data-entity-type="case"] .case-functional-tab-header small{
  color:var(--case-muted);
  font-size:10.5px;
  font-weight:850;
  letter-spacing:.095em;
  text-transform:uppercase;
}
.case-workspace[data-entity-type="case"] .case-lifecycle-badge,
.case-workspace[data-entity-type="case"] .case-health-badge{font-weight:800;letter-spacing:-.01em}
.case-workspace[data-entity-type="case"] .case-overview-summary-block{
  padding:20px;
  border-radius:var(--case-radius-lg);
  box-shadow:0 8px 24px rgba(16,24,40,.04);
}
.case-workspace[data-entity-type="case"] .case-overview-summary-copy .case-overview-description{font-size:15.5px;line-height:1.7}
.case-workspace[data-entity-type="case"] .case-overview-next-step{
  border-color:#fed7c3;
  background:linear-gradient(180deg,#fffaf7 0%,#fff4ed 100%);
}
.case-workspace[data-entity-type="case"] .case-overview-next-step strong{font-size:16px;letter-spacing:-.015em}
.case-workspace[data-entity-type="case"] .case-overview-next-action{
  min-height:42px;
  border-color:var(--case-accent);
  background:var(--case-accent);
  box-shadow:0 4px 12px rgba(240,125,52,.2);
}
.case-workspace[data-entity-type="case"] .case-overview-next-action:hover{background:var(--case-accent-strong);border-color:var(--case-accent-strong)}

.case-workspace[data-entity-type="case"] .case-overview-summaries{gap:12px}
.case-workspace[data-entity-type="case"] .case-overview-summary{
  min-height:118px;
  padding:15px 16px;
  border-color:var(--case-line);
  border-radius:var(--case-radius-md);
  background:#fff;
  box-shadow:0 4px 14px rgba(16,24,40,.035);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.case-workspace[data-entity-type="case"] .case-overview-summary:hover{
  transform:translateY(-2px);
  border-color:#f7b58e;
  box-shadow:0 12px 24px rgba(16,24,40,.075);
}
.case-workspace[data-entity-type="case"] .case-overview-summary span{font-size:10.5px;letter-spacing:.085em}
.case-workspace[data-entity-type="case"] .case-overview-summary strong{font-size:24px;letter-spacing:-.035em}
.case-workspace[data-entity-type="case"] .case-overview-summary small{line-height:1.45}

.case-workspace[data-entity-type="case"] .case-primary-action-header,
.case-workspace[data-entity-type="case"] .case-functional-tab-header{
  margin:0 0 20px;
  padding-bottom:18px;
  border-bottom-color:var(--case-line);
}
.case-workspace[data-entity-type="case"] .case-primary-action-header h3,
.case-workspace[data-entity-type="case"] .case-functional-tab-header h3{
  color:var(--case-ink);
  font-size:22px;
  letter-spacing:-.025em;
}
.case-workspace[data-entity-type="case"] .case-primary-action-header p,
.case-workspace[data-entity-type="case"] .case-functional-tab-header p{font-size:13.5px;line-height:1.58}
.case-workspace[data-entity-type="case"] .case-primary-action-button,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__action{
  min-height:42px;
  border-color:var(--case-accent);
  background:var(--case-accent);
  box-shadow:0 4px 12px rgba(240,125,52,.18);
}
.case-workspace[data-entity-type="case"] .case-primary-action-button:hover,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__action:hover{
  border-color:var(--case-accent-strong);
  background:var(--case-accent-strong);
}

.case-workspace[data-entity-type="case"] .case-functional-tab-body{gap:18px}
.case-workspace[data-entity-type="case"] .case-functional-tab-section{
  border:1px solid var(--case-line);
  border-radius:var(--case-radius-md);
  background:#fff;
}
.case-workspace[data-entity-type="case"] .case-guided-empty-state{
  min-height:128px;
  border-color:#d0d5dd;
  border-radius:var(--case-radius-lg);
  background:linear-gradient(180deg,#fff 0%,var(--case-soft) 100%);
}
.case-workspace[data-entity-type="case"] .case-guided-empty-state__icon{box-shadow:inset 0 0 0 1px rgba(240,125,52,.12)}
.case-workspace[data-entity-type="case"] .case-guided-empty-state__copy strong{font-size:17px;letter-spacing:-.015em}
.case-workspace[data-entity-type="case"] .case-guided-empty-state__copy p{font-size:13.5px}

.case-workspace[data-entity-type="case"] button:focus-visible,
.case-workspace[data-entity-type="case"] [role="tab"]:focus-visible,
.case-workspace[data-entity-type="case"] a:focus-visible{
  outline:3px solid rgba(240,125,52,.3);
  outline-offset:3px;
}

@media (max-width:900px){
  .case-workspace[data-entity-type="case"] [data-workspace-panel]{padding:18px}
  .case-workspace[data-entity-type="case"] [data-workspace-panel="overview"]{padding:0}
  .case-workspace[data-entity-type="case"] .case-overview-summary-block{padding:18px}
}
@media (max-width:700px){
  .case-workspace[data-entity-type="case"] .case-consolidated-tabs{margin-bottom:14px;border-radius:13px;box-shadow:none}
  .case-workspace[data-entity-type="case"] .case-consolidated-tabs .workspace-tab{min-height:40px;padding:9px 12px}
  .case-workspace[data-entity-type="case"] [data-workspace-panel]{padding:15px;border-radius:15px;box-shadow:none}
  .case-workspace[data-entity-type="case"] [data-workspace-panel="overview"]{padding:0}
  .case-workspace[data-entity-type="case"] .case-overview-panel{gap:14px}
  .case-workspace[data-entity-type="case"] .case-overview-summary-block{padding:15px}
  .case-workspace[data-entity-type="case"] .case-overview-summaries{gap:9px}
  .case-workspace[data-entity-type="case"] .case-overview-summary{min-height:102px;padding:13px 14px}
  .case-workspace[data-entity-type="case"] .case-primary-action-header h3,
.case-workspace[data-entity-type="case"] .case-functional-tab-header h3{font-size:20px}
}


/* CASE-16.7 — Responsive & Interaction Consistency */
.case-workspace[data-entity-type="case"],
.case-workspace[data-entity-type="case"] .case-workspace-primary-surface,
.case-workspace[data-entity-type="case"] .case-workspace-completion,
.case-workspace[data-entity-type="case"] [data-workspace-panel],
.case-workspace[data-entity-type="case"] .case-functional-tab-body,
.case-workspace[data-entity-type="case"] .case-functional-tab-section{min-width:0;max-width:100%}
.case-workspace[data-entity-type="case"] [data-workspace-panel][hidden],
.case-workspace[data-entity-type="case"] [data-workspace-panel][aria-hidden="true"]{display:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}
.case-workspace[data-entity-type="case"] [data-workspace-panel].is-active{display:block}
.case-workspace[data-entity-type="case"] .case-consolidated-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.case-workspace[data-entity-type="case"] .case-consolidated-tabs .workspace-tab{flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;touch-action:manipulation}
.case-workspace[data-entity-type="case"] img,
.case-workspace[data-entity-type="case"] video,
.case-workspace[data-entity-type="case"] iframe,
.case-workspace[data-entity-type="case"] canvas,
.case-workspace[data-entity-type="case"] svg{max-width:100%}
.case-workspace[data-entity-type="case"] img,
.case-workspace[data-entity-type="case"] video{height:auto}
.case-workspace[data-entity-type="case"] table{width:100%;max-width:100%;border-collapse:collapse}
.case-workspace[data-entity-type="case"] .case-task-list,
.case-workspace[data-entity-type="case"] .workspace-evidence-list,
.case-workspace[data-entity-type="case"] .case-solution-list,
.case-workspace[data-entity-type="case"] .case-outcome-list,
.case-workspace[data-entity-type="case"] .case-runtime-timeline{min-width:0;max-width:100%;overflow-wrap:anywhere}
.case-workspace[data-entity-type="case"] .case-task-form-grid,
.case-workspace[data-entity-type="case"] .case-invite-form,
.case-workspace[data-entity-type="case"] .case-community-invite-form{min-width:0;max-width:100%}
.case-workspace[data-entity-type="case"] input,
.case-workspace[data-entity-type="case"] textarea,
.case-workspace[data-entity-type="case"] select,
.case-workspace[data-entity-type="case"] button{max-width:100%;box-sizing:border-box}
.case-workspace[data-entity-type="case"] input,
.case-workspace[data-entity-type="case"] textarea,
.case-workspace[data-entity-type="case"] select{min-width:0;width:100%}
.case-workspace[data-entity-type="case"] .case-primary-action-header>div,
.case-workspace[data-entity-type="case"] .case-functional-tab-header>div,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__copy{min-width:0}
.case-workspace[data-entity-type="case"] .case-primary-action-button,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__action,
.case-workspace[data-entity-type="case"] .case-overview-next-action{touch-action:manipulation}
.case-workspace[data-entity-type="case"] .case-functional-tab-section{margin:0!important}
.case-workspace[data-entity-type="case"] .case-functional-tab-body>.case-functional-tab-section:empty{display:none}
.case-workspace[data-entity-type="case"] .case-guided-empty-state[hidden],
.case-workspace[data-entity-type="case"] .case-workspace-empty[hidden]{display:none!important}
@media (max-width:760px){
  .case-workspace[data-entity-type="case"],
.case-workspace[data-entity-type="case"] .case-workspace-primary-surface{overflow-x:clip}
  .case-workspace[data-entity-type="case"] .case-consolidated-tabs{position:relative;top:auto;max-width:100%;padding:4px;margin-inline:0;scroll-padding-inline:4px}
  .case-workspace[data-entity-type="case"] .case-consolidated-tabs .workspace-tab{min-height:44px;padding:10px 13px}
  .case-workspace[data-entity-type="case"] .case-primary-action-header,
.case-workspace[data-entity-type="case"] .case-functional-tab-header{display:flex;flex-direction:column;align-items:stretch;gap:12px}
  .case-workspace[data-entity-type="case"] .case-primary-action-header>div,
.case-workspace[data-entity-type="case"] .case-functional-tab-header>div{order:0}
  .case-workspace[data-entity-type="case"] .case-primary-action-button{order:1;width:100%;min-height:44px;margin:0}
  .case-workspace[data-entity-type="case"] .case-functional-tab-body{order:2;width:100%;gap:12px}
  .case-workspace[data-entity-type="case"] .case-guided-empty-state{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:12px;min-height:0;padding:15px}
  .case-workspace[data-entity-type="case"] .case-guided-empty-state__icon{width:44px;height:44px}
  .case-workspace[data-entity-type="case"] .case-guided-empty-state__action{grid-column:1/-1;width:100%;min-height:44px;margin:0}
  .case-workspace[data-entity-type="case"] .case-section-heading,
.case-workspace[data-entity-type="case"] .evidence-section-heading,
.case-workspace[data-entity-type="case"] .case-task-form-actions,
.case-workspace[data-entity-type="case"] .workspace-evidence-card-actions{flex-wrap:wrap;min-width:0}
  .case-workspace[data-entity-type="case"] .case-section-heading>*,
.case-workspace[data-entity-type="case"] .evidence-section-heading>*{min-width:0}
  .case-workspace[data-entity-type="case"] table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .case-workspace[data-entity-type="case"] .workspace-evidence-card,
.case-workspace[data-entity-type="case"] .case-task-card,
.case-workspace[data-entity-type="case"] .case-people-panel,
.case-workspace[data-entity-type="case"] .case-invitations-panel{max-width:100%;overflow:hidden}
}

/* CASE-16.8 — Final UX Validation & Product Lock */
.case-workspace[data-entity-type="case"]{
  --case-control-height:44px;
  --case-section-gap:18px;
}
.case-workspace[data-entity-type="case"] *{box-sizing:border-box}
.case-workspace[data-entity-type="case"] [role="tabpanel"]{outline:none}
.case-workspace[data-entity-type="case"] [role="tabpanel"]:focus-visible{
  outline:3px solid rgba(240,125,52,.24);
  outline-offset:3px;
}
.case-workspace[data-entity-type="case"] .case-primary-action-button,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__action,
.case-workspace[data-entity-type="case"] .case-overview-next-action,
.case-workspace[data-entity-type="case"] .case-lifecycle-advance{
  min-height:var(--case-control-height);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  line-height:1.2;
}
.case-workspace[data-entity-type="case"] .case-primary-action-header,
.case-workspace[data-entity-type="case"] .case-functional-tab-header{
  align-items:center;
  gap:16px;
}
.case-workspace[data-entity-type="case"] .case-functional-tab-body,
.case-workspace[data-entity-type="case"] .case-overview-panel{
  gap:var(--case-section-gap);
}
.case-workspace[data-entity-type="case"] .case-functional-tab-section,
.case-workspace[data-entity-type="case"] .case-guided-empty-state,
.case-workspace[data-entity-type="case"] .case-workspace-empty,
.case-workspace[data-entity-type="case"] .case-task-card,
.case-workspace[data-entity-type="case"] .workspace-evidence-card{
  border-radius:var(--case-radius-md);
}
.case-workspace[data-entity-type="case"] button,
.case-workspace[data-entity-type="case"] a,
.case-workspace[data-entity-type="case"] input,
.case-workspace[data-entity-type="case"] textarea,
.case-workspace[data-entity-type="case"] select{
  font-family:inherit;
}
.case-workspace[data-entity-type="case"] button:not(:disabled),
.case-workspace[data-entity-type="case"] [role="tab"]:not([aria-disabled="true"]){cursor:pointer}
.case-workspace[data-entity-type="case"] button:disabled,
.case-workspace[data-entity-type="case"] [aria-disabled="true"]{cursor:not-allowed;opacity:.62}
.case-workspace[data-entity-type="case"] .workspace-tab,
.case-workspace[data-entity-type="case"] .case-primary-action-button,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__action,
.case-workspace[data-entity-type="case"] .case-overview-next-action{
  transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.case-workspace[data-entity-type="case"] .workspace-tab:active,
.case-workspace[data-entity-type="case"] .case-primary-action-button:active,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__action:active,
.case-workspace[data-entity-type="case"] .case-overview-next-action:active{transform:translateY(0)}
.case-workspace[data-entity-type="case"] [data-workspace-panel][hidden],
.case-workspace[data-entity-type="case"] [data-workspace-panel][aria-hidden="true"]{display:none!important}
.case-workspace[data-entity-type="case"] .case-guided-empty-state[hidden],
.case-workspace[data-entity-type="case"] .case-workspace-empty[hidden],
.case-workspace[data-entity-type="case"] .case-functional-tab-section:empty{display:none!important}
.case-workspace[data-entity-type="case"] .case-functional-tab-section:last-child,
.case-workspace[data-entity-type="case"] .case-guided-empty-state:last-child,
.case-workspace[data-entity-type="case"] .case-workspace-empty:last-child{margin-bottom:0}
.case-workspace[data-entity-type="case"] h2,
.case-workspace[data-entity-type="case"] h3,
.case-workspace[data-entity-type="case"] h4,
.case-workspace[data-entity-type="case"] p{overflow-wrap:anywhere}
.case-workspace[data-entity-type="case"] svg,
.case-workspace[data-entity-type="case"] img,
.case-workspace[data-entity-type="case"] video,
.case-workspace[data-entity-type="case"] iframe{display:block;max-width:100%}
.case-workspace[data-entity-type="case"] .case-consolidated-tabs{scrollbar-gutter:stable both-edges}
@media (max-width:1024px){
  .case-workspace[data-entity-type="case"] [data-workspace-panel]{max-width:100%}
  .case-workspace[data-entity-type="case"] .case-primary-action-header,
.case-workspace[data-entity-type="case"] .case-functional-tab-header{flex-wrap:wrap}
}
@media (max-width:760px){
  .case-workspace[data-entity-type="case"]{--case-section-gap:14px}
  .case-workspace[data-entity-type="case"] .case-primary-action-header,
.case-workspace[data-entity-type="case"] .case-functional-tab-header{align-items:stretch}
  .case-workspace[data-entity-type="case"] .case-primary-action-button,
.case-workspace[data-entity-type="case"] .case-guided-empty-state__action,
.case-workspace[data-entity-type="case"] .case-overview-next-action{width:100%}
  .case-workspace[data-entity-type="case"] .case-consolidated-tabs{scrollbar-gutter:auto}
}
@media (orientation:landscape) and (max-height:520px){
  .case-workspace[data-entity-type="case"] .case-consolidated-tabs{position:static}
  .case-workspace[data-entity-type="case"] [data-workspace-panel]{scroll-margin-top:16px}
}
@media (prefers-reduced-motion:reduce){
  .case-workspace[data-entity-type="case"] *,
.case-workspace[data-entity-type="case"] *::before,
.case-workspace[data-entity-type="case"] *::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}


/* STORY-WORKSPACE-REGRESSION-R1 — isolate Case UX locks and restore Story runtime. */
.case-workspace.story-workspace[data-entity-type="story"] {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow: visible;
}
.case-workspace.story-workspace[data-entity-type="story"] .case-workspace-primary-surface,
.case-workspace.story-workspace[data-entity-type="story"] .story-workspace-configured-modules,
.case-workspace.story-workspace[data-entity-type="story"] .story-workspace-module,
.case-workspace.story-workspace[data-entity-type="story"] .story-workspace-discussion {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  visibility: visible;
  opacity: 1;
}
.case-workspace.story-workspace[data-entity-type="story"] [data-workspace-panel]:not([hidden]):not([aria-hidden="true"]) {
  display: block;
}
.case-workspace.story-workspace[data-entity-type="story"] [data-workspace-panel][hidden],
.case-workspace.story-workspace[data-entity-type="story"] [data-workspace-panel][aria-hidden="true"] {
  display: none;
}

@media (min-width:1121px) {
  .homepage-grid,
  body.entity-workspace-lock .homepage-grid,
  body:not(.entity-workspace-lock) .homepage-grid {
    grid-template-columns:
      minmax(240px, 280px)
      minmax(0, 1fr)
      minmax(260px, 300px) !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .homepage-grid > .left-column,
  .homepage-grid > .center-column,
  .homepage-grid > .right-column {
    min-width: 0;
    max-width: 100%;
  }
  body.entity-workspace-lock .center-column,
  body.entity-workspace-lock .case-workspace,
  body.entity-workspace-lock .case-workspace-primary-surface {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }
}

/* Switch away from three columns before the grid can clip the right rail. */
@media (max-width:1120px) {
  .homepage-grid,
  body.entity-workspace-lock .homepage-grid,
  body:not(.entity-workspace-lock) .homepage-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .homepage-grid > .left-column,
  .homepage-grid > .center-column,
  .homepage-grid > .right-column {
    grid-column: 1;
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }
}


/* 5.71.9 — Case creation: optional Evidence progressive disclosure. */
.tsemou-case-evidence-disclosure {
  margin: 4px 0 0;
  border: 1px solid rgba(40, 54, 48, .14);
  border-radius: 16px;
  background: rgba(248, 251, 249, .96);
  overflow: clip;
}
.tsemou-case-evidence-disclosure > summary {
  position: relative;
  display: grid;
  gap: 5px;
  min-height: 44px;
  padding: 16px 48px 16px 18px;
  color: #27352f;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.tsemou-case-evidence-disclosure > summary::-webkit-details-marker { display: none; }
.tsemou-case-evidence-disclosure > summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 18px;
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  transform: translateY(-50%);
  border: 1px solid rgba(40, 94, 74, .22);
  border-radius: 50%;
  background: #fff;
  color: #285e4a;
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
}
.tsemou-case-evidence-disclosure[open] > summary::after { content: "−"; }
.tsemou-case-evidence-disclosure > summary > span {
  font-size: 15px;
  font-weight: 850;
}
.tsemou-case-evidence-disclosure > summary > span small {
  color: #718096;
  font-weight: 600;
}
.tsemou-case-evidence-disclosure > summary > small {
  color: #68756f;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.45;
}
.tsemou-case-evidence-disclosure > summary:hover { background: rgba(237, 247, 242, .72); }
.tsemou-case-evidence-disclosure > summary:focus-visible {
  outline: 3px solid rgba(76, 140, 114, .22);
  outline-offset: -3px;
}
.tsemou-case-evidence-disclosure .tsemou-case-evidence-fields {
  margin: 0;
  border: 0;
  border-top: 1px solid rgba(40, 54, 48, .12);
  border-radius: 0;
  background: #fff;
}
.tsemou-journalist-composer textarea[name="case_purpose"] { min-height: 145px; }
@media (max-width: 700px) {
  .tsemou-case-evidence-disclosure > summary { padding: 14px 46px 14px 15px; }
  .tsemou-case-evidence-disclosure .tsemou-case-evidence-fields { padding: 16px; }
}

/* 5.71.10 — Case creation: compact media and reference controls. */
/* 5.71.11 — Hide redundant native “no file selected” copy in compact media controls. */
.tsemou-case-media-section {
  display: grid;
  gap: 10px;
  padding: 16px;
  border: 1px solid #dfe7e2;
  border-radius: 16px;
  background: #fbfdfc;
}
.tsemou-case-media-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.tsemou-case-media-heading h3 {
  margin: 0;
  color: #20342c;
  font-size: 15px;
  font-weight: 850;
  line-height: 1.3;
}
.tsemou-case-media-heading p {
  margin: 3px 0 0;
  color: #718096;
  font-size: 12.5px;
  line-height: 1.4;
}
.tsemou-case-media-heading > span {
  flex: 0 0 auto;
  padding: 4px 8px;
  border-radius: 999px;
  background: #edf5f1;
  color: #4e6f61;
  font-size: 11px;
  font-weight: 750;
}
.tsemou-case-media-section .tsemou-case-media-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.tsemou-case-media-section .tsemou-case-media-field {
  min-width: 0;
  padding: 0;
  border: 1px solid #dce5e0;
  border-radius: 12px;
  background: #fff;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.tsemou-case-media-section .tsemou-case-media-field:hover {
  border-color: #a9c2b7;
  background: #fdfefe;
}
.tsemou-case-media-section .tsemou-case-media-field:focus-within {
  border-color: #4c8c72;
  box-shadow: 0 0 0 3px rgba(76, 140, 114, .12);
}
.tsemou-case-media-section .tsemou-case-media-field > label {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 9px;
  padding: 11px 12px;
  color: #25364e;
}
.tsemou-case-media-field__copy {
  position: relative;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding-left: 42px;
}
.tsemou-case-media-field__copy::before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  transform: translateY(-50%);
  border-radius: 9px;
  background: #edf5f1;
  color: #315f4d;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
}
.tsemou-case-media-field--image .tsemou-case-media-field__copy::before { content: "IMG"; }
.tsemou-case-media-field--video .tsemou-case-media-field__copy::before { content: "MP4"; }
.tsemou-case-media-field--document .tsemou-case-media-field__copy::before { content: "PDF"; }
.tsemou-case-media-field--link .tsemou-case-media-field__copy::before { content: "URL"; }
.tsemou-case-media-field__copy strong {
  overflow: hidden;
  color: #27372f;
  font-size: 13px;
  font-weight: 820;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tsemou-case-media-field__copy small {
  overflow: hidden;
  color: #77847e;
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tsemou-case-media-section .tsemou-case-media-field input[type="file"],
.tsemou-case-media-section .tsemou-case-media-field input[type="url"] {
  min-height: 38px;
  margin: 0;
  border-radius: 9px;
  font-size: 12px;
}
.tsemou-case-media-section .tsemou-case-media-field input[type="file"] {
  padding: 4px 6px;
  border-color: #d6e0db;
  background: #f8faf9;
  color: transparent;
  font-weight: 550;
  text-shadow: none;
}
.tsemou-case-media-section .tsemou-case-media-field input[type="file"]::file-selector-button {
  min-height: 28px;
  margin-right: 8px;
  padding: 5px 9px;
  border: 0;
  border-radius: 7px;
  background: #e6f1eb;
  color: #285e4a;
  font-size: 11.5px;
  font-weight: 800;
}
.tsemou-case-media-section .tsemou-case-media-field input[type="file"]::file-selector-button:hover {
  background: #dbece3;
}
.tsemou-case-media-section .tsemou-case-media-field input[type="url"] {
  padding: 8px 10px;
  background: #f8faf9;
}
.tsemou-case-media-section .tsemou-case-media-note {
  margin: 0;
  color: #78857f;
  font-size: 11.5px;
  line-height: 1.4;
}
@media (max-width: 700px) {
  .tsemou-case-media-section { padding: 14px; }
  .tsemou-case-media-heading { gap: 10px; }
  .tsemou-case-media-section .tsemou-case-media-fields { grid-template-columns: 1fr; }
  .tsemou-case-media-section .tsemou-case-media-field > label { padding: 10px 11px; }
  .tsemou-case-media-field__copy strong,
  .tsemou-case-media-field__copy small { white-space: normal; }
}

/* NEED-1.2 — Minimal one-sentence Need intake. */
.entity-action-panel--minimal-need .entity-need-composer-heading { margin-bottom: 6px; }
.entity-action-panel--minimal-need .entity-need-composer-hint { margin: 0 0 16px; color: #667085; font-size: 14px; line-height: 1.45; }
.entity-action-panel--minimal-need .entity-need-composer-textarea--minimal { min-height: 108px; resize: vertical; }
@media (max-width: 640px) {
  .entity-action-panel--minimal-need .entity-need-composer-actions { display: grid; grid-template-columns: 1fr; }
  .entity-action-panel--minimal-need .entity-need-composer-submit,
  .entity-action-panel--minimal-need .entity-need-composer-cancel { width: 100%; min-height: 44px; }
}

/* NEED-1.5 — Mobile Creation Lock.
 * Frontend-only reachability, keyboard and overflow safeguards for the minimal
 * Need composer. No backend, entity or persistence contract changes.
 */
.entity-action-panel--minimal-need {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  overflow-x: clip;
  overflow-wrap: anywhere;
}
.entity-action-panel--minimal-need .entity-need-composer-label,
.entity-action-panel--minimal-need .entity-need-composer-input,
.entity-action-panel--minimal-need .entity-need-composer-textarea,
.entity-action-panel--minimal-need .entity-action-feedback,
.entity-action-panel--minimal-need .entity-need-composer-actions {
  min-width: 0;
  max-width: 100%;
}
.entity-action-panel--minimal-need .entity-need-composer-input,
.entity-action-panel--minimal-need .entity-need-composer-textarea {
  font-size: 16px; /* prevents automatic iOS zoom */
  line-height: 1.45;
}
.entity-action-panel--minimal-need .entity-need-composer-textarea--minimal {
  height: auto;
  max-height: min(42vh, 360px);
  resize: none;
  overscroll-behavior: contain;
}
.entity-action-panel--minimal-need .entity-need-composer-cancel,
.entity-action-panel--minimal-need .entity-need-composer-submit {
  min-width: 44px;
  min-height: 44px;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.entity-action-panel--minimal-need .entity-need-composer-input:focus-visible,
.entity-action-panel--minimal-need .entity-need-composer-textarea:focus-visible,
.entity-action-panel--minimal-need .entity-need-composer-cancel:focus-visible,
.entity-action-panel--minimal-need .entity-need-composer-submit:focus-visible {
  outline: 3px solid rgba(37, 99, 235, 0.24);
  outline-offset: 2px;
}

@media (max-width: 900px) {
  .right-column-native-need-composer {
    width: 100%;
    max-width: 100%;
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }
  .entity-action-panel--minimal-need {
    width: 100%;
    padding-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right));
    padding-bottom: max(12px, env(safe-area-inset-bottom));
  }
  .entity-action-panel--minimal-need .entity-need-composer-actions {
    position: sticky;
    z-index: 4;
    bottom: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    margin-inline: 0;
    padding: 10px 0 max(10px, env(safe-area-inset-bottom));
    background: linear-gradient(to bottom, rgba(255,255,255,0.92), #fff 24%);
  }
  .entity-action-panel--minimal-need.is-virtual-keyboard-open .entity-need-composer-actions {
    position: static;
    padding-bottom: 0;
  }
  .entity-action-panel--minimal-need .entity-need-composer-submit,
  .entity-action-panel--minimal-need .entity-need-composer-cancel {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .entity-action-panel--minimal-need .entity-need-composer-heading {
    font-size: 1rem;
    line-height: 1.3;
  }
  .entity-action-panel--minimal-need .entity-need-composer-hint {
    font-size: 0.875rem;
  }
  .entity-action-panel--minimal-need .entity-need-composer-textarea--minimal {
    min-height: 116px;
    max-height: 38vh;
  }
}

@media (orientation: landscape) and (max-height: 520px) {
  .entity-action-panel--minimal-need .entity-need-composer-textarea--minimal {
    min-height: 88px;
    max-height: 32vh;
  }
  .entity-action-panel--minimal-need .entity-need-composer-actions {
    position: static;
    padding-bottom: max(8px, env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: reduce) {
  .entity-action-panel--minimal-need * {
    scroll-behavior: auto !important;
  }
}

/* NEED-2.1 — Official Need Workspace shell foundation. */
.need-workspace .need-workspace-shell {
  display: grid;
  gap: 18px;
  padding: 22px;
  border: 1px solid rgba(109, 40, 217, 0.16);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(250, 248, 255, 0.96), #fff 62%);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
}

.need-workspace-shell__topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
}

.need-workspace-shell__topline > div { min-width: 0; }

.need-workspace-shell__topline h2 {
  margin: 6px 0 0;
  font-size: clamp(1.2rem, 2.2vw, 1.65rem);
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.need-workspace-shell__facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.need-workspace-shell__facts > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(15, 42, 67, 0.1);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.82);
}

.need-workspace-shell__facts span,
.need-workspace-shell__facts strong {
  display: block;
  overflow-wrap: anywhere;
}

.need-workspace-shell__facts span {
  margin-bottom: 4px;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.need-workspace-shell__facts strong {
  color: #172033;
  font-size: 0.92rem;
}

.need-workspace-shell__principle {
  margin: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(15, 42, 67, 0.1);
  color: #475569;
  font-size: 0.9rem;
  line-height: 1.55;
}

@media (max-width: 900px) {
  .need-workspace-shell__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
  .need-workspace .need-workspace-shell { padding: 16px; gap: 14px; border-radius: 14px; }
  .need-workspace-shell__topline { flex-direction: column; gap: 10px; }
  .need-workspace-shell__facts { grid-template-columns: minmax(0, 1fr); }
  .need-workspace-shell__facts > div { padding: 10px 12px; }
}

/* NEED-2.2 — Need Workspace tabs foundation. */
.need-workspace-tabs-host {
  min-width: 0;
  display: grid;
  gap: 14px;
}

.need-workspace-tabs-host .workspace-tabs--foundation {
  display: flex;
  align-items: stretch;
  gap: 4px;
  min-width: 0;
  max-width: 100%;
  padding: 4px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scroll-snap-type: x proximity;
  border: 1px solid rgba(15, 42, 67, 0.1);
  border-radius: 14px;
  background: #fff;
  -webkit-overflow-scrolling: touch;
}

.need-workspace-tabs-host .workspace-tab {
  flex: 0 0 auto;
  min-height: 44px;
  min-width: max-content;
  padding: 9px 15px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #5b6474;
  font: inherit;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  scroll-snap-align: start;
  white-space: nowrap;
  transition: background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.need-workspace-tabs-host .workspace-tab:hover {
  background: rgba(109, 40, 217, 0.07);
  color: #4c1d95;
}

.need-workspace-tabs-host .workspace-tab.is-active {
  background: #6d28d9;
  color: #fff;
  box-shadow: 0 5px 14px rgba(109, 40, 217, 0.2);
}

.need-workspace-tabs-host .workspace-tab:focus-visible {
  outline: 3px solid rgba(109, 40, 217, 0.3);
  outline-offset: 2px;
}

.need-workspace-tabs-host .workspace-tab-panels,
.need-workspace-tabs-host .workspace-tab-panel {
  min-width: 0;
  max-width: 100%;
}

.need-workspace-tabs-host .workspace-tab-panel[hidden] {
  display: none !important;
}

.need-workspace-tabs-host .workspace-tab-panel.is-active {
  display: grid;
  gap: 14px;
}

.need-workspace-tabs-host .workspace-tab-empty-state {
  display: grid;
  gap: 6px;
  min-height: 132px;
  place-content: center;
  padding: 24px;
  border: 1px dashed rgba(109, 40, 217, 0.26);
  border-radius: 16px;
  background: rgba(250, 248, 255, 0.72);
  color: #475569;
  text-align: center;
}

.need-workspace-tabs-host .workspace-tab-empty-state strong {
  color: #312e81;
  font-size: 1rem;
}

.need-workspace-tabs-host .workspace-tab-empty-state p {
  max-width: 44rem;
  margin: 0;
  line-height: 1.55;
}

@media (max-width: 560px) {
  .need-workspace-tabs-host { gap: 10px; }
  .need-workspace-tabs-host .workspace-tabs--foundation {
    margin-inline: -2px;
    border-radius: 12px;
  }
  .need-workspace-tabs-host .workspace-tab {
    min-height: 44px;
    padding-inline: 13px;
  }
  .need-workspace-tabs-host .workspace-tab-empty-state {
    min-height: 116px;
    padding: 18px 14px;
    border-radius: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .need-workspace-tabs-host .workspace-tab { transition: none; }
}

/* NEED-2.3 — Overview consolidation. */
.need-workspace-overview {
  gap: 16px;
}

.need-workspace-overview__statement {
  margin: 0;
  padding: 18px 20px;
  border: 0;
  border-inline-start: 4px solid #6d28d9;
  border-radius: 0 14px 14px 0;
  background: linear-gradient(135deg, rgba(109, 40, 217, 0.075), rgba(255, 255, 255, 0.94));
  color: #172033;
}

.need-workspace-overview__statement p {
  margin: 0;
  font-size: clamp(1rem, 1.25vw, 1.12rem);
  font-weight: 650;
  line-height: 1.62;
  overflow-wrap: anywhere;
}

.need-workspace-overview__progress {
  display: grid;
  grid-template-columns: minmax(0, 2fr) repeat(2, minmax(120px, 0.8fr));
  gap: 10px;
}

.need-workspace-overview__progress > div {
  min-width: 0;
  display: grid;
  gap: 5px;
  padding: 12px 14px;
  border: 1px solid rgba(15, 42, 67, 0.09);
  border-radius: 12px;
  background: rgba(248, 250, 252, 0.9);
}

.need-workspace-overview__progress span {
  color: #6b7280;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.need-workspace-overview__progress strong {
  min-width: 0;
  color: #172033;
  font-size: 0.9rem;
  line-height: 1.42;
  overflow-wrap: anywhere;
}

@media (max-width: 820px) {
  .need-workspace-overview__progress {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .need-workspace-overview__progress > div:first-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 560px) {
  .need-workspace-overview__statement {
    padding: 15px 16px;
    border-radius: 0 12px 12px 0;
  }
  .need-workspace-overview__progress {
    grid-template-columns: minmax(0, 1fr);
  }
  .need-workspace-overview__progress > div:first-child {
    grid-column: auto;
  }
}

/* NEED-2.4 — Discussion Integration */
.need-workspace-discussion {
  display: grid;
  gap: 16px;
  min-width: 0;
  padding: 18px;
  overflow: hidden;
}
.need-workspace-discussion__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.need-workspace-discussion__heading > div { min-width: 0; }
.need-workspace-discussion__heading h2 {
  margin: 4px 0 6px;
  font-size: clamp(1.05rem, 2vw, 1.3rem);
  line-height: 1.25;
}
.need-workspace-discussion__heading p {
  margin: 0;
  max-width: 64ch;
  color: var(--tsemou-muted, #64748b);
  line-height: 1.5;
}
.need-workspace-discussion .workspace-composer,
.need-workspace-discussion .workspace-feed-list {
  min-width: 0;
  width: 100%;
}
.need-workspace-discussion .workspace-composer textarea {
  width: 100%;
  min-width: 0;
  resize: vertical;
}
.need-workspace-discussion__timeline {
  display: grid;
  gap: 12px;
  overflow-wrap: anywhere;
}
.need-workspace-discussion__empty {
  margin: 0;
}
.need-workspace-discussion :is(button, textarea, input):focus-visible {
  outline: 3px solid rgba(37, 99, 235, .28);
  outline-offset: 2px;
}
@media (max-width: 720px) {
  .need-workspace-discussion {
    padding: 14px;
    gap: 14px;
    border-radius: 14px;
  }
  .need-workspace-discussion .workspace-composer-tools,
  .need-workspace-discussion .workspace-composer-actions {
    flex-wrap: wrap;
    min-width: 0;
  }
  .need-workspace-discussion :is(button, [role="button"]) {
    min-height: 44px;
  }
  .need-workspace-discussion .workspace-composer textarea {
    font-size: 16px;
  }
  .need-workspace-discussion img,
  .need-workspace-discussion video {
    max-width: 100%;
    height: auto;
  }
}


/* NEED-2.5 — Activity & History */
.need-workspace-activity {
  display: grid;
  gap: 18px;
  min-width: 0;
}
.need-workspace-activity__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.need-workspace-activity__heading > div { min-width: 0; }
.need-workspace-activity__heading h2 {
  margin: 4px 0 0;
  color: #0f172a;
  font-size: 20px;
  line-height: 1.25;
}
.need-workspace-activity__heading p {
  margin: 7px 0 0;
  color: #64748b;
  line-height: 1.55;
}
.need-workspace-activity__timeline {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
.need-workspace-activity__event {
  position: relative;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 12px;
  min-width: 0;
  padding: 0 0 20px;
}
.need-workspace-activity__event:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 16px;
  bottom: 0;
  width: 2px;
  background: #e2e8f0;
}
.need-workspace-activity__marker {
  position: relative;
  z-index: 1;
  width: 16px;
  height: 16px;
  margin-top: 3px;
  border: 3px solid #fff;
  border-radius: 999px;
  background: #64748b;
  box-shadow: 0 0 0 1px #cbd5e1;
}
.need-workspace-activity__event--open .need-workspace-activity__marker { background: #16a34a; }
.need-workspace-activity__event--in_progress .need-workspace-activity__marker { background: #d97706; }
.need-workspace-activity__event--partially_addressed .need-workspace-activity__marker { background: #ea580c; }
.need-workspace-activity__event--resolved .need-workspace-activity__marker { background: #2563eb; }
.need-workspace-activity__event--closed .need-workspace-activity__marker { background: #475569; }
.need-workspace-activity__content {
  min-width: 0;
  padding: 0 0 2px;
}
.need-workspace-activity__event-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}
.need-workspace-activity__event-heading strong {
  min-width: 0;
  color: #0f172a;
  font-size: 14px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.need-workspace-activity__event-heading time {
  flex: 0 0 auto;
  color: #64748b;
  font-size: 12px;
  white-space: nowrap;
}
.need-workspace-activity__content p {
  margin: 5px 0 0;
  color: #475569;
  font-size: 13px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
@media (max-width: 640px) {
  .need-workspace-activity { gap: 14px; }
  .need-workspace-activity__heading { gap: 10px; }
  .need-workspace-activity__heading h2 { font-size: 18px; }
  .need-workspace-activity__event-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }
  .need-workspace-activity__event-heading time { white-space: normal; }
}


/* NEED-2.6 — Workspace Responsive Lock */
.need-workspace,
.need-workspace * {
  box-sizing: border-box;
}

.need-workspace,
.need-workspace .case-workspace-primary-surface,
.need-workspace-tabs-host,
.need-workspace-tabs-host .workspace-tab-panels,
.need-workspace-tabs-host .workspace-tab-panel,
.need-workspace-tabs-host .workspace-tab-panel > * {
  min-width: 0;
  max-width: 100%;
}

.need-workspace {
  width: 100%;
  overflow-x: clip;
}

.need-workspace :is(p, h1, h2, h3, h4, strong, span, a, li, blockquote) {
  overflow-wrap: anywhere;
  word-break: normal;
}

.need-workspace :is(img, video, iframe, svg, canvas) {
  max-width: 100%;
}

.need-workspace :is(img, video) {
  height: auto;
}

.need-workspace :is(input, select, textarea, button) {
  max-width: 100%;
}

.need-workspace table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
}

.need-workspace .workspace-tabs--foundation {
  scroll-padding-inline: 8px;
  scrollbar-gutter: stable;
}

.need-workspace .workspace-tab-panel.is-active {
  align-content: start;
}

.need-workspace .case-workspace-card,
.need-workspace .workspace-tab-empty-state {
  width: 100%;
}

.need-workspace :is(.workspace-needs-heading, .workspace-need-lifecycle-actions, .workspace-composer-actions, .workspace-composer-tools) {
  min-width: 0;
}

.need-workspace :is(button, [role="button"], .workspace-tab) {
  min-height: 44px;
}

.need-workspace :is(button, [role="button"], a, input, select, textarea):focus-visible {
  outline: 3px solid rgba(109, 40, 217, 0.34);
  outline-offset: 2px;
}

@media (max-width: 1120px) {
  .need-workspace .case-workspace-primary-surface {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .need-workspace-tabs-host .workspace-tab-panel.is-active {
    gap: 12px;
  }
}

@media (max-width: 820px) {
  .need-workspace-tabs-host {
    gap: 10px;
  }

  .need-workspace-tabs-host .workspace-tabs--foundation {
    width: 100%;
    padding: 4px;
    scroll-padding-inline: 4px;
  }

  .need-workspace-tabs-host .workspace-tab {
    min-height: 44px;
    padding: 9px 13px;
  }

  .need-workspace .case-workspace-card,
  .need-workspace-discussion,
  .need-workspace-activity {
    border-radius: 14px;
  }

  .need-workspace :is(.workspace-needs-heading, .need-workspace-discussion__heading, .need-workspace-activity__heading) {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .need-workspace :is(.workspace-needs-heading, .need-workspace-discussion__heading, .need-workspace-activity__heading) > * {
    min-width: 0;
  }
}

@media (max-width: 560px) {
  .need-workspace {
    overflow-x: hidden;
  }

  .need-workspace-tabs-host .workspace-tabs--foundation {
    gap: 2px;
    margin-inline: 0;
    border-radius: 12px;
    scrollbar-width: none;
  }

  .need-workspace-tabs-host .workspace-tabs--foundation::-webkit-scrollbar {
    display: none;
  }

  .need-workspace-tabs-host .workspace-tab {
    min-width: auto;
    padding-inline: 12px;
    font-size: 0.86rem;
  }

  .need-workspace-tabs-host .workspace-tab-panel.is-active {
    gap: 10px;
  }

  .need-workspace .case-workspace-card,
  .need-workspace-discussion,
  .need-workspace-activity {
    padding: 14px;
  }

  .need-workspace-overview__statement {
    padding: 14px 15px;
  }

  .need-workspace :is(.workspace-needs-heading, .need-workspace-discussion__heading, .need-workspace-activity__heading) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .need-workspace :is(.workspace-composer-actions, .workspace-composer-tools, .workspace-need-lifecycle-actions) {
    width: 100%;
    flex-wrap: wrap;
  }

  .need-workspace :is(.workspace-composer-actions, .workspace-need-lifecycle-actions) > button {
    width: 100%;
  }

  .need-workspace textarea,
  .need-workspace input,
  .need-workspace select {
    font-size: 16px;
  }

  .need-workspace-activity__event {
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 9px;
  }

  .need-workspace-activity__event:not(:last-child)::before {
    left: 6px;
  }

  .need-workspace-activity__marker {
    width: 14px;
    height: 14px;
  }
}

@media (max-height: 520px) and (orientation: landscape) {
  .need-workspace-tabs-host .workspace-tabs--foundation {
    position: static;
  }

  .need-workspace .case-workspace-card,
  .need-workspace-discussion,
  .need-workspace-activity {
    padding-block: 12px;
  }

  .need-workspace textarea {
    max-height: 34vh;
  }
}

@supports (padding: max(0px)) {
  @media (max-width: 560px) {
    .need-workspace-tabs-host {
      padding-inline: max(0px, env(safe-area-inset-left));
    }

    .need-workspace-tabs-host .workspace-tab-panels {
      padding-bottom: max(0px, env(safe-area-inset-bottom));
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  .need-workspace *,
  .need-workspace *::before,
  .need-workspace *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* CONTRIBUTION-1.3 — concrete "Μπορώ να βοηθήσω" action */
.need-workspace .workspace-need-participation-actions{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}
.need-workspace .workspace-need-participation-actions>label{flex:1 1 260px;min-width:0}
.need-workspace .workspace-need-help-button,.need-workspace .workspace-need-secondary-action,.need-workspace .workspace-need-discussion-button{min-height:44px}
.need-workspace .workspace-need-secondary-action{border:1px solid #d5ddd9;border-radius:10px;background:#fff;color:#52635d;padding:10px 14px;font:inherit;font-weight:700;cursor:pointer}
.need-workspace .workspace-need-secondary-action:hover,.need-workspace .workspace-need-secondary-action:focus-visible{border-color:#0f7a68;color:#0f6c5c;outline:3px solid rgba(15,122,104,.16);outline-offset:2px}
.need-workspace .workspace-need-participation-feedback{flex-basis:100%;margin:0}
@media(max-width:640px){.need-workspace .workspace-need-participation-actions>*{width:100%}.need-workspace .workspace-need-participation-actions>label{flex-basis:100%}}


/* CONTRIBUTION-1.4 — controlled contribution types */
.need-workspace .workspace-contribution-type-field{display:grid;gap:6px;font-weight:700;color:#263b34}
.need-workspace .workspace-contribution-type-field select{width:100%;min-height:44px;border:1px solid #cbd7d2;border-radius:10px;background:#fff;padding:9px 36px 9px 11px;font:inherit;color:#20352e}
.need-workspace .workspace-contribution-type-field select:focus-visible{outline:3px solid rgba(15,122,104,.16);outline-offset:2px;border-color:#0f7a68}


/* CONTRIBUTION-1.5 — lifecycle controls */
.workspace-contribution-lifecycle-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.workspace-contribution-lifecycle-actions button{min-height:36px;padding:7px 12px;border:1px solid rgba(15,23,42,.16);border-radius:10px;background:#fff;font:inherit;font-weight:700;cursor:pointer}
.workspace-contribution-lifecycle-actions button:hover{background:#f8fafc}
.workspace-contribution-lifecycle-actions button:focus-visible{outline:3px solid rgba(59,130,246,.28);outline-offset:2px}
.workspace-contribution-lifecycle-actions button:disabled{opacity:.6;cursor:wait}
@media (max-width:640px){.workspace-contribution-lifecycle-actions button{min-height:44px;flex:1 1 auto}}

/* CONTRIBUTION-1.6 — canonical Contribution list in Need Workspace */
.need-workspace .workspace-contribution-list{display:grid;gap:16px}
.need-workspace .workspace-contribution-list__heading{align-items:flex-start}
.need-workspace .workspace-contribution-cards{display:grid;gap:12px;min-width:0}
.need-workspace .workspace-contribution-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;padding:14px;border:1px solid #dbe5e1;border-radius:14px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.04);min-width:0}
.need-workspace .workspace-contribution-card__identity{display:flex;align-items:center;gap:10px;min-width:0}
.need-workspace .workspace-contribution-card__identity>div{display:grid;gap:2px;min-width:0}
.need-workspace .workspace-contribution-card__identity strong,.need-workspace .workspace-contribution-card__identity small{overflow-wrap:anywhere}
.need-workspace .workspace-contribution-card__identity small{color:#64748b;text-transform:capitalize}
.need-workspace .workspace-contribution-card__summary{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.need-workspace .workspace-contribution-type-badge,.need-workspace .workspace-contribution-status-badge{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:800;line-height:1.2;white-space:normal;text-align:center}
.need-workspace .workspace-contribution-type-badge{background:#eff6ff;color:#1d4ed8}
.need-workspace .workspace-contribution-status-badge{background:#f1f5f9;color:#475569}
.need-workspace .workspace-contribution-status-badge--accepted{background:#ecfdf5;color:#047857}
.need-workspace .workspace-contribution-status-badge--in_progress{background:#fff7ed;color:#c2410c}
.need-workspace .workspace-contribution-status-badge--completed{background:#ecfdf5;color:#166534}
.need-workspace .workspace-contribution-status-badge--withdrawn,.need-workspace .workspace-contribution-status-badge--declined{background:#fef2f2;color:#b91c1c}
.need-workspace .workspace-contribution-card__meta{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;padding-top:10px;border-top:1px solid #edf2f0}
.need-workspace .workspace-contribution-card__meta>div{display:flex;gap:6px;min-width:0}
.need-workspace .workspace-contribution-card__meta dt{font-size:12px;font-weight:800;color:#64748b}
.need-workspace .workspace-contribution-card__meta dd{margin:0;font-size:12px;color:#334155;overflow-wrap:anywhere}
.need-workspace .workspace-contribution-card .workspace-contribution-lifecycle-actions{grid-column:1/-1;margin-top:0}
.need-workspace .workspace-need-participation-actions{display:grid;gap:10px;padding-top:14px;border-top:1px solid #e5ece9}
@media (max-width:640px){
  .need-workspace .workspace-contribution-card{grid-template-columns:1fr;padding:12px}
  .need-workspace .workspace-contribution-card__summary{justify-content:flex-start}
  .need-workspace .workspace-contribution-card__meta{grid-column:1;display:grid;gap:6px}
  .need-workspace .workspace-contribution-card__meta>div{justify-content:space-between;gap:12px}
  .need-workspace .workspace-contribution-card .workspace-contribution-lifecycle-actions{grid-column:1}
}


/* RIGHT-NEEDS-1.2 — compact canonical Need cards */
.tsemou-right-needs {
  display: grid;
  gap: 10px;
}

.tsemou-right-needs-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.tsemou-right-needs-kicker {
  display: block;
  margin-bottom: 2px;
  color: #b42318;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
}

.tsemou-right-needs-heading h2 {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
}

.tsemou-right-needs-list {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.tsemou-right-need-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(16, 24, 40, .10);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.tsemou-right-need-card:hover {
  border-color: rgba(180, 35, 24, .28);
  box-shadow: 0 5px 14px rgba(16, 24, 40, .08);
  transform: translateY(-1px);
}

.tsemou-right-need-link {
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 11px 12px;
  color: inherit;
  text-decoration: none;
}

.tsemou-right-need-link:focus-visible {
  outline: 3px solid rgba(22, 119, 255, .32);
  outline-offset: -3px;
  border-radius: 12px;
}

.tsemou-right-need-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.tsemou-right-need-status {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 7px;
  border-radius: 999px;
  background: #fff1f0;
  color: #b42318;
  font-size: 10px;
  font-weight: 750;
  white-space: nowrap;
}

.tsemou-right-need-status.is-in_progress {
  background: #eef4ff;
  color: #175cd3;
}

.tsemou-right-need-status.is-partially_addressed {
  background: #fff8e8;
  color: #9a6700;
}

.tsemou-right-need-time {
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tsemou-right-need-title {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: #101828;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.35;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.tsemou-right-need-description {
  display: -webkit-box;
  overflow: hidden;
  margin: 0;
  color: #475467;
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.tsemou-right-need-location {
  display: block;
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tsemou-right-need-location::before {
  content: "⌖ ";
}

.tsemou-right-needs-empty {
  margin: 0;
  padding: 12px;
  border: 1px dashed rgba(16, 24, 40, .16);
  border-radius: 12px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

@media (max-width: 1120px) {
  .tsemou-right-need-link {
    padding: 10px;
  }
}

@media (max-width: 760px) {
  .tsemou-right-need-link {
    min-height: 44px;
  }

  .tsemou-right-need-title {
    -webkit-line-clamp: 2;
  }
}

@media (prefers-reduced-motion: reduce) {
  .tsemou-right-need-card {
    transition: none;
  }
}


/* RIGHT-NEEDS-1.4 — Unified Human Pulse */
.tsemou-right-pulse-card.is-contribution {
  border-color: rgba(2, 122, 72, .18);
  background: linear-gradient(180deg, #ffffff 0%, #f7fcf9 100%);
}
.tsemou-right-pulse-card.is-contribution:hover {
  border-color: rgba(2, 122, 72, .34);
}
.tsemou-right-pulse-status.is-contribution {
  background: #ecfdf3;
  color: #027a48;
}
.tsemou-right-pulse-status.is-contribution.is-in_progress {
  background: #eef4ff;
  color: #175cd3;
}
.tsemou-right-pulse-status.is-contribution.is-completed {
  background: #f0fdf4;
  color: #166534;
}
.tsemou-right-contribution-detail {
  color: #356150;
  font-weight: 650;
}
.tsemou-right-pulse-card.is-need .tsemou-right-pulse-status::before,
.tsemou-right-pulse-card.is-contribution .tsemou-right-pulse-status::before {
  width: 6px;
  height: 6px;
  margin-right: 5px;
  border-radius: 999px;
  background: currentColor;
  content: "";
  opacity: .72;
}

/* NEED-STORY-1.2 — Create Story from Need */
.need-workspace-overview__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--workspace-border, rgba(15, 23, 42, 0.12));
}
.need-workspace-overview__actions p {
  flex: 1 1 240px;
  min-width: 0;
  margin: 0;
  color: var(--workspace-muted, #64748b);
  font-size: 0.9rem;
  line-height: 1.45;
}
.need-workspace-overview__actions .workspace-action-button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 700;
}
.tsemou-need-story-origin {
  margin-bottom: 18px;
}
@media (max-width: 640px) {
  .need-workspace-overview__actions,
  .need-workspace-overview__actions .workspace-action-button {
    width: 100%;
  }
}

/* NEED-STORY-1.3 — Existing Canonical Story linking */
.need-linked-stories{margin-top:16px;padding-top:16px;border-top:1px solid rgba(15,23,42,.1)}
.need-linked-stories__heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.need-linked-stories__heading h3{margin:2px 0 0}.need-linked-stories__list{display:grid;gap:8px}.need-linked-story-card{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border:1px solid rgba(15,23,42,.12);border-radius:10px;text-decoration:none;color:inherit;background:#fff}.need-linked-story-card:hover{border-color:rgba(37,99,235,.4)}.need-linked-story-card>span{font-size:10px;font-weight:800;letter-spacing:.08em}.need-linked-story-card>small{opacity:.65}
.need-story-linker{position:fixed;inset:0;z-index:100050;display:grid;place-items:center;padding:16px}.need-story-linker__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55)}.need-story-linker__panel{position:relative;width:min(620px,100%);max-height:min(720px,calc(100vh - 32px));overflow:auto;background:#fff;border-radius:16px;padding:20px;box-shadow:0 24px 80px rgba(15,23,42,.3)}.need-story-linker__close{position:absolute;right:12px;top:10px;width:44px;height:44px;border:0;background:transparent;font-size:28px}.need-story-linker label{display:grid;gap:6px;margin-top:14px}.need-story-linker input{min-height:46px;width:100%;font-size:16px;padding:10px 12px;border:1px solid rgba(15,23,42,.2);border-radius:10px}.need-story-linker__status{min-height:24px;padding:8px 0}.need-story-linker__results{display:grid;gap:8px}.need-story-search-result{display:grid;text-align:left;gap:4px;width:100%;padding:12px;border:1px solid rgba(15,23,42,.12);border-radius:10px;background:#fff;cursor:pointer}.need-story-search-result:hover,.need-story-search-result:focus-visible{border-color:#2563eb;outline:none}.need-story-search-result span{font-size:10px;font-weight:800;letter-spacing:.08em}.need-story-search-result small{opacity:.7}.need-story-linker-open{overflow:hidden}
@media(max-width:640px){.need-linked-stories__heading{align-items:stretch;flex-direction:column}.need-linked-stories__heading .workspace-action-button{width:100%;min-height:44px}.need-story-linker{padding:8px}.need-story-linker__panel{max-height:calc(100vh - 16px);border-radius:12px;padding:18px 14px}}

/* NEED-STORY-1.4 — shared bidirectional canonical relation renderer */
.workspace-canonical-relations {
  padding: 16px;
  border: 1px solid rgba(15, 42, 67, .12);
  border-radius: 14px;
  background: #fff;
  min-width: 0;
}
.workspace-canonical-relations__heading,
.workspace-canonical-relations__tools,
.workspace-canonical-relation-card {
  display: flex;
  align-items: center;
}
.workspace-canonical-relations__heading {
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}
.workspace-canonical-relations__heading h3 { margin: 3px 0 0; font-size: 17px; }
.workspace-canonical-relations__tools { gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.workspace-canonical-relations__list { display: grid; gap: 10px; min-width: 0; }
.workspace-canonical-relation-card {
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(15, 42, 67, .13);
  border-radius: 12px;
  background: #fff;
}
.workspace-canonical-relation-card__copy { min-width: 0; }
.workspace-canonical-relation-card h4 { margin: 3px 0 4px; font-size: 15px; overflow-wrap: anywhere; }
.workspace-canonical-relation-card p { margin: 0 0 5px; color: #475569; font-size: 13px; white-space: pre-wrap; overflow-wrap: anywhere; }
.workspace-canonical-relation-card small { color: #64748b; overflow-wrap: anywhere; }
.workspace-canonical-relation-card .workspace-related-open:focus-visible,
.workspace-canonical-relations button:focus-visible {
  outline: 3px solid rgba(37, 99, 235, .28);
  outline-offset: 2px;
}
@media (max-width: 720px) {
  .workspace-canonical-relations { padding: 13px; }
  .workspace-canonical-relations__heading,
  .workspace-canonical-relation-card { align-items: stretch; flex-direction: column; }
  .workspace-canonical-relations__tools { justify-content: flex-start; }
  .workspace-canonical-relation-card .workspace-related-open { align-self: stretch; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
}

/* MATCH-1.3 — Suggestions, never automatic assignment. */
.workspace-match-policy {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(14, 116, 144, .18);
  border-radius: 12px;
  background: rgba(236, 254, 255, .72);
  color: #155e75;
  font-size: 12px;
  line-height: 1.5;
}
.workspace-match-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.workspace-match-actions > * { min-height: 44px; }
@media (max-width: 720px) {
  .workspace-match-actions > * { width: 100%; }
}


/* MATCH-1.4 — Community Matching */
.workspace-need-section--communities{grid-column:1/-1}
.workspace-need-community-match-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.workspace-need-community-match{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px;border:1px solid rgba(148,163,184,.28);border-radius:12px;background:rgba(255,255,255,.7);min-width:0}
.workspace-need-community-match>div{min-width:0;display:grid;gap:4px}
.workspace-need-community-match strong,.workspace-need-community-match p,.workspace-need-community-match small{overflow-wrap:anywhere}
.workspace-need-community-match p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.4}
.workspace-need-community-match small{color:#6d43e8;font-weight:650;line-height:1.35}
.workspace-need-community-match a{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid rgba(109,67,232,.3);border-radius:10px;text-decoration:none;font-weight:750}
.workspace-need-community-match a:focus-visible{outline:3px solid rgba(109,67,232,.35);outline-offset:2px}
.workspace-need-community-policy{margin:10px 0 0;color:var(--muted);font-size:.76rem;line-height:1.4}
@media(max-width:680px){.workspace-need-community-match{display:grid}.workspace-need-community-match a{width:100%}}

/* NEED-SAFETY-1.4 — verification without exclusion */
.need-verification-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.need-verification-badge{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border:1px solid #d7dde5;border-radius:999px;font-weight:700;font-size:12px}.need-verification-badge--community_verified,.need-verification-badge--organization_verified,.need-verification-badge--officially_verified{border-color:#a8d5b5}.need-verification-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.need-verification-meta div{padding:10px;border:1px solid #e5e7eb;border-radius:10px}.need-verification-meta dt{font-size:12px;color:#667085}.need-verification-meta dd{margin:3px 0 0;font-weight:700;overflow-wrap:anywhere}.need-verification-card [data-need-verification-actions]{display:flex;gap:8px;flex-wrap:wrap}.need-verification-card select,.need-verification-card input{min-height:44px;max-width:100%}@media(max-width:700px){.need-verification-card__heading{display:grid}.need-verification-meta{grid-template-columns:1fr}.need-verification-card [data-need-verification-actions]{display:grid}.need-verification-card select,.need-verification-card input,.need-verification-card button{width:100%;font-size:16px}}


/* NEED-LOCK-1.2 — Need Workspace UX consolidation */
.need-workspace {
  --need-ux-radius: 14px;
  --need-ux-gap: 16px;
  --need-ux-border: rgba(15, 42, 67, .13);
  --need-ux-focus: rgba(15, 122, 104, .28);
}
.need-workspace .case-workspace-card,
.need-workspace .workspace-canonical-relations,
.need-workspace .workspace-tab-empty-state {
  border-radius: var(--need-ux-radius);
}
.need-workspace .workspace-tab-panel.is-active {
  display: grid;
  gap: var(--need-ux-gap);
  min-width: 0;
}
.need-workspace .need-ux-action {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 44px;
  padding: 10px 15px;
  border: 1px solid transparent;
  border-radius: 10px;
  font: inherit;
  font-weight: 750;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease;
}
.need-workspace .need-ux-action::before {
  content: "";
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  background: currentColor;
  -webkit-mask: radial-gradient(circle at 50% 50%, #000 0 32%, transparent 34%) center/100% 100% no-repeat;
  mask: radial-gradient(circle at 50% 50%, #000 0 32%, transparent 34%) center/100% 100% no-repeat;
  opacity: .78;
}
.need-workspace .need-ux-action[data-need-ux-icon="link"]::before { -webkit-mask: linear-gradient(#000 0 0) center/14px 4px no-repeat; mask: linear-gradient(#000 0 0) center/14px 4px no-repeat; }
.need-workspace .need-ux-action[data-need-ux-icon="report"]::before { -webkit-mask: linear-gradient(#000 0 0) center/4px 16px no-repeat; mask: linear-gradient(#000 0 0) center/4px 16px no-repeat; }
.need-workspace .need-ux-action--primary { background: #0f7a68; color: #fff; border-color: #0f7a68; }
.need-workspace .need-ux-action--secondary { background: #fff; color: #31534a; border-color: #cbd8d3; }
.need-workspace .need-ux-action--danger { background: #fff; color: #a63a3a; border-color: #e5bcbc; }
.need-workspace .need-ux-action:hover:not(:disabled) { transform: translateY(-1px); }
.need-workspace .need-ux-action:focus-visible,
.need-workspace :is(button, a, input, select, textarea):focus-visible {
  outline: 3px solid var(--need-ux-focus);
  outline-offset: 2px;
}
.need-workspace .need-ux-action:disabled,
.need-workspace .need-ux-action[aria-disabled="true"] { opacity: .58; cursor: not-allowed; transform: none; }
.need-workspace .need-ux-action.is-loading::after {
  content: "";
  width: 14px;
  height: 14px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: needUxSpin .7s linear infinite;
}
@keyframes needUxSpin { to { transform: rotate(360deg); } }
.need-workspace .need-ux-empty-state {
  display: grid;
  gap: 5px;
  min-width: 0;
  margin: 0;
  padding: 16px;
  border: 1px dashed #cbd8d3;
  border-radius: 12px;
  background: #f8fbfa;
  color: #52635d;
}
.need-workspace .need-ux-empty-state strong { color: #263b34; overflow-wrap: anywhere; }
.need-workspace .need-ux-live-region { min-height: 1.25em; overflow-wrap: anywhere; }
.need-workspace :is(.workspace-needs-heading, .need-workspace-shell__topline, .need-verification-card__heading, .need-moderation-card__heading) h2,
.need-workspace :is(.workspace-needs-heading, .workspace-canonical-relations__heading) h3 { line-height: 1.25; }
.need-workspace :is(.workspace-canonical-relations__tools, .need-workspace-overview__actions, .workspace-need-participation-actions, [data-need-verification-actions], [data-need-moderation-actions]) {
  min-width: 0;
}
@media (max-width: 860px) {
  .need-workspace :is(.workspace-canonical-relations__tools, .need-workspace-overview__actions) { align-items: stretch; }
}
@media (max-width: 700px) {
  .need-workspace { --need-ux-gap: 12px; }
  .need-workspace .case-workspace-card,
  .need-workspace .workspace-canonical-relations { padding: 14px; }
  .need-workspace :is(.need-ux-action, .workspace-related-open, .workspace-need-secondary-action, .workspace-need-discussion-button) { width: 100%; min-height: 44px; }
  .need-workspace :is(.workspace-canonical-relations__tools, .need-workspace-overview__actions, .workspace-need-participation-actions, [data-need-verification-actions], [data-need-moderation-actions]) { display: grid; width: 100%; }
  .need-workspace :is(input, select, textarea) { width: 100%; max-width: 100%; font-size: 16px; }
}
@media (max-width: 700px) and (orientation: landscape) {
  .need-workspace .workspace-tab-panel.is-active { gap: 10px; }
  .need-workspace .case-workspace-card,
  .need-workspace .workspace-canonical-relations { padding: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .need-workspace .need-ux-action { transition: none; }
  .need-workspace .need-ux-action.is-loading::after { animation-duration: 1.4s; }
}

/* COMMUNITY-ENTRY-1.1 — Category → existing Community creation workflow. */
.tsemou-action-shell--community-create .tsemou-action-shell__main{display:grid;align-content:start}
.tsemou-community-create-entry{width:min(720px,100%);margin:10px auto 0;padding:40px 36px;border:1px solid #d7e3de;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(28,54,84,.08);text-align:center}
.tsemou-community-create-entry__icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 16px;border-radius:22px;background:#e8f4ef;color:#2f684f;font-size:34px}
.tsemou-community-create-entry__kicker{margin:0 0 8px;color:#356150;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.tsemou-community-create-entry h1{margin:0;font-size:clamp(28px,4vw,40px);line-height:1.12;color:#12203c}
.tsemou-community-create-entry>p:not(.tsemou-community-create-entry__kicker){max-width:620px;margin:18px auto 26px;color:#60706c;font-size:16px;line-height:1.65}
.tsemou-community-create-entry__button{min-height:48px;padding:12px 24px;border:1px solid #0c756c;border-radius:999px;background:#0c756c;color:#fff;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(12,117,108,.18)}
.tsemou-community-create-entry__button:hover{transform:translateY(-1px)}
.tsemou-community-create-entry__button:focus-visible,.tsemou-community-create-entry__secondary:focus-visible{outline:3px solid rgba(31,111,235,.28);outline-offset:3px}
.tsemou-community-create-entry__secondary{display:block;width:max-content;margin:16px auto 0;color:#356150;font-weight:750;text-decoration:none}
@media(max-width:640px){.tsemou-community-create-entry{padding:30px 20px;border-radius:18px}.tsemou-community-create-entry__button{width:100%}}

/* COMMUNITY-ENTRY-1.2 — Category Community Discovery */
.tsemou-community-category-discovery{display:grid;gap:24px}
.tsemou-community-category-discovery__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.tsemou-community-category-discovery__head p,.tsemou-community-category-create p{margin:0 0 7px;color:#356150;font-size:11px;font-weight:900;letter-spacing:.14em}
.tsemou-community-category-discovery__head h1{margin:0 0 8px;color:#12203c;font-size:clamp(27px,4vw,38px);line-height:1.15}
.tsemou-community-category-discovery__head span,.tsemou-community-category-create span{color:#64748b;line-height:1.55}
.tsemou-community-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tsemou-community-category-card{min-width:0;padding:22px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;border:1px solid #dbe5e1;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(28,54,84,.05)}
.tsemou-community-category-card__body{min-width:0}
.tsemou-community-category-card__eyebrow{display:block;margin-bottom:8px;color:#0c756c;font-size:10px;font-weight:900;letter-spacing:.13em}
.tsemou-community-category-card h2{margin:0 0 9px;color:#12203c;font-size:20px;line-height:1.3;overflow-wrap:anywhere}
.tsemou-community-category-card p{margin:0 0 14px;color:#64748b;line-height:1.55;overflow-wrap:anywhere}
.tsemou-community-category-card__meta{color:#52635e;font-size:13px;font-weight:750}
.tsemou-community-category-card__link{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid #b9d7cd;border-radius:12px;background:#f3faf7;color:#245f4b;font-weight:800;text-decoration:none}
.tsemou-community-category-card__link:hover{background:#e7f5ef;border-color:#7eb7a3}
.tsemou-community-category-card__link:focus-visible,.tsemou-community-category-create .tsemou-community-create-entry__button:focus-visible{outline:3px solid rgba(31,111,235,.28);outline-offset:3px}
.tsemou-community-category-empty{grid-column:1/-1;padding:30px;border:1px dashed #b8ccc4;border-radius:18px;background:#f7fbf9;text-align:center}
.tsemou-community-category-empty h2{margin:0 0 9px;color:#12203c;font-size:21px}
.tsemou-community-category-empty p{max-width:650px;margin:0 auto;color:#64748b;line-height:1.6}
.tsemou-community-category-create{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #d7e3de;border-radius:18px;background:#eef7f3}
.tsemou-community-category-create h2{margin:0 0 7px;color:#12203c;font-size:21px}
.tsemou-community-category-create .tsemou-community-create-entry__button{flex:0 0 auto}
@media(max-width:760px){.tsemou-community-category-grid{grid-template-columns:1fr}.tsemou-community-category-create{align-items:stretch;flex-direction:column}.tsemou-community-category-create .tsemou-community-create-entry__button{width:100%}}
@media(max-width:520px){.tsemou-community-category-card,.tsemou-community-category-empty,.tsemou-community-category-create{padding:18px;border-radius:15px}.tsemou-community-category-discovery{gap:18px}}

/* HFP-1 — Homepage Feed Deconstruction (Card Presence Reduction)
 * CSS-only. Scope: Homepage center feed cards; Entity Workspaces and sidebars excluded.
 */
body:not(.entity-workspace-lock) .center-column .story-feed {
  gap: 8px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card,
body:not(.entity-workspace-lock) .center-column .story-card {
  border: 1px solid rgba(132, 146, 159, 0.16) !important;
  border-left: 1px solid rgba(132, 146, 159, 0.16) !important;
  border-radius: 9px;
  padding: 10px;
  box-shadow: 0 1px 2px rgba(22, 34, 49, 0.025) !important;
}

body:not(.entity-workspace-lock) .center-column .living-case-card:hover,
body:not(.entity-workspace-lock) .center-column .story-card:hover {
  border-color: rgba(132, 146, 159, 0.22) !important;
  border-left-color: rgba(132, 146, 159, 0.22) !important;
  box-shadow: 0 2px 5px rgba(22, 34, 49, 0.04) !important;
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .story-feed {
    gap: 7px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card,
  body:not(.entity-workspace-lock) .center-column .story-card {
    border-radius: 8px;
    padding: 9px;
  }
}

/* HFP-2 — Homepage Vertical Density
 * CSS-only. Scope: Homepage center feed cards and their internal vertical rhythm.
 * No typography, media geometry, runtime, actions, voting or workspace behavior changes.
 */
body:not(.entity-workspace-lock) .center-column .story-feed {
  gap: 5px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card,
body:not(.entity-workspace-lock) .center-column .story-card {
  gap: 5px;
  padding-top: 8px;
  padding-bottom: 7px;
}

body:not(.entity-workspace-lock) .center-column .living-case-topline {
  gap: 7px;
}

body:not(.entity-workspace-lock) .center-column .homepage-story-source {
  padding-top: 0;
  padding-bottom: 3px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .card-media {
  margin-top: 0;
  margin-bottom: 0;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-meta {
  margin-top: 0;
  row-gap: 4px;
  padding-bottom: 0;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
  margin-top: 2px;
  padding-top: 5px;
  gap: 6px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
  margin-top: 0 !important;
  gap: 6px;
  align-items: center;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill {
  width: 68px;
  min-width: 68px;
  height: 30px;
  min-height: 30px;
  border-radius: 15px;
  flex-basis: 68px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill .vote-btn {
  width: 22px;
  min-width: 22px;
  height: 28px;
  min-height: 28px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-total-score {
  min-width: 22px;
  height: 28px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .case-action {
  min-height: 30px;
  padding-top: 0.22rem;
  padding-bottom: 0.22rem;
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .story-feed {
    gap: 5px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card,
  body:not(.entity-workspace-lock) .center-column .story-card {
    gap: 5px;
    padding-top: 8px;
    padding-bottom: 7px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-topline {
    gap: 3px;
  }

  body:not(.entity-workspace-lock) .center-column .homepage-story-source {
    padding-bottom: 2px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
    gap: 4px;
    margin-top: 1px;
    padding-top: 4px;
  }
}

/* HFP-3 — Homepage Metadata Consolidation
 * CSS-only. Scope: Homepage center Story cards.
 * Visually groups Story type, source and update time into one compact metadata row,
 * then gives the title a dedicated full-width row before media.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
  grid-template-columns: auto minmax(0, 1fr) auto;
  column-gap: 7px;
  row-gap: 3px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card > * {
  grid-column: 1 / -1;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-topline {
  display: contents;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-topline .case-pill {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  padding-top: 0.12rem;
  padding-bottom: 0.12rem;
  opacity: 0.86;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  min-width: 0;
  padding: 0;
  line-height: 1.2;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
  grid-column: 3;
  grid-row: 1;
  align-self: center;
  color: #7d8796;
  line-height: 1.2;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
  grid-column: 1 / -1;
  grid-row: 2;
  width: 100%;
  margin: 0;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .card-media,
body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-meta,
body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-knowledge-context,
body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-live-entity-summaries,
body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
  grid-column: 1 / -1;
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
    grid-template-columns: auto minmax(0, 1fr);
    column-gap: 6px;
    row-gap: 3px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: end;
    margin-top: -1px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
    grid-row: 3;
  }
}

/* HFP-4 — Homepage Action Bar Hierarchy + Metadata Cleanup
 * Scope: Homepage center feed only. Keeps interaction logic and media geometry unchanged.
 * The source label was removed in the homepage template; only the canonical source/domain remains.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
  margin-top: 0;
  padding-top: 3px;
  min-height: 0;
  gap: 4px;
  border-top-color: rgba(132, 146, 159, 0.16);
}

body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only .living-case-footer {
  margin-top: 5px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer-action {
  line-height: 1;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
  gap: 5px;
  min-height: 28px;
  line-height: 1;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill {
  width: 66px;
  min-width: 66px;
  height: 28px;
  min-height: 28px;
  flex-basis: 66px;
  border-radius: 14px;
  background: rgba(244, 246, 250, 0.72);
  border-color: rgba(174, 184, 198, 0.55);
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill .vote-btn {
  width: 22px;
  min-width: 22px;
  height: 28px;
  min-height: 28px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-total-score {
  min-width: 20px;
  height: 28px;
  padding-bottom: 1px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action {
  min-height: 26px;
  padding: 0.12rem 0.58rem;
  border-radius: 7px;
  border-color: rgba(173, 190, 181, 0.58);
  background: rgba(247, 249, 245, 0.62);
  color: #327365;
  font-weight: 650;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:hover {
  background: rgba(236, 245, 241, 0.78);
  border-color: rgba(156, 186, 176, 0.72);
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
    margin-top: 0;
    padding-top: 3px;
    gap: 4px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
    min-height: 30px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action {
    min-height: 28px;
    padding-left: 0.62rem;
    padding-right: 0.62rem;
  }
}


/* HFP-5 — Homepage Information Hierarchy
 * CSS-only. Scope: Homepage center Story cards.
 * Turns type, source and update time into one quiet metadata sentence while
 * making the Story title the first dominant reading target.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
  grid-template-columns: auto minmax(0, auto) minmax(0, 1fr);
  column-gap: 5px;
  row-gap: 2px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-topline .case-pill {
  grid-column: 1;
  grid-row: 1;
  opacity: 0.72;
  border-color: rgba(177, 191, 181, 0.55);
  background: rgba(245, 249, 246, 0.72);
}

body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: #697587;
  font-weight: 600;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source::before,
body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated::before {
  content: "•";
  display: inline-block;
  margin-right: 5px;
  color: #a0a9b4;
  font-weight: 400;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source a,
body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: inherit;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
  display: flex;
  align-items: center;
  min-width: 0;
  color: #8a94a2;
  font-weight: 400;
  white-space: nowrap;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
  grid-column: 1 / -1;
  grid-row: 2;
  color: #172033;
  font-weight: 700;
  line-height: 1.24;
  margin-top: 1px;
  margin-bottom: 1px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .card-media {
  margin-top: 0;
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
    grid-template-columns: auto minmax(0, 1fr) auto;
    column-gap: 4px;
    row-gap: 2px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source {
    grid-column: 2;
    grid-row: 1;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    margin-top: 0;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
    grid-row: 2;
  }
}

@media (max-width: 460px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
    max-width: 42vw;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}


/* HFP-6 — Homepage Feed Rhythm Final + Story Symbol Lock
 * Scope: Homepage center Story cards only.
 * Locks Story representation to the compact symbol “S”, aligns all metadata
 * to one left-reading sentence, and reduces the visual weight of feed actions
 * without changing their interaction targets or behavior.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
  grid-template-columns: auto auto auto minmax(0, 1fr);
  column-gap: 4px;
  row-gap: 2px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-topline .case-pill.type-pill-story {
  grid-column: 1;
  grid-row: 1;
  min-width: 22px;
  min-height: 20px;
  padding: 0.05rem 0.38rem;
  justify-content: center;
  border-radius: 6px;
  font-size: 0.72rem;
  line-height: 1;
  font-weight: 750;
  letter-spacing: 0.01em;
  opacity: 0.66;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source {
  grid-column: 2;
  grid-row: 1;
  justify-self: start;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
  grid-column: 3;
  grid-row: 1;
  justify-self: start;
  max-width: none;
  overflow: visible;
  text-overflow: clip;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
  grid-column: 1 / -1;
  grid-row: 2;
  margin-top: 0;
  margin-bottom: 1px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
  margin-top: -1px;
  padding-top: 2px;
  border-top-color: rgba(132, 146, 159, 0.12);
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
  gap: 4px;
  min-height: 28px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill {
  width: 62px;
  min-width: 62px;
  flex-basis: 62px;
  height: 28px;
  min-height: 28px;
  border-color: rgba(174, 184, 198, 0.42);
  background: rgba(248, 249, 251, 0.48);
  box-shadow: none;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action {
  min-height: 28px;
  padding: 0.1rem 0.38rem;
  border-color: transparent;
  background: transparent;
  border-radius: 5px;
  color: #4f6f68;
  font-weight: 620;
  box-shadow: none;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:hover,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus-visible {
  border-color: rgba(156, 186, 176, 0.35);
  background: rgba(236, 245, 241, 0.42);
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
    grid-template-columns: auto auto minmax(0, 1fr);
    column-gap: 4px;
    row-gap: 2px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source {
    grid-column: 2;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
    grid-column: 3;
    justify-self: start;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
    grid-row: 2;
  }
}

@media (max-width: 460px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
    grid-template-columns: auto minmax(0, auto) minmax(0, 1fr);
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
    white-space: nowrap;
  }
}

/* HFP-7 — Homepage Metadata Minimalism
 * Scope: Homepage center Story cards only.
 * Shows only the canonical Story prefix and human relative time: “S/ • πριν 1 ώρα”.
 * Source/domain remains available in the entity data but is intentionally omitted here.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
  grid-template-columns: auto auto minmax(0, 1fr);
  column-gap: 5px;
  row-gap: 1px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-topline .case-pill.type-pill-story {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  min-height: 18px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #3f6f63;
  font-size: 0.76rem;
  font-weight: 800;
  opacity: 0.9;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .homepage-story-source {
  display: none;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
  grid-column: 2;
  grid-row: 1;
  justify-self: start;
  display: block;
  max-width: none;
  overflow: visible;
  color: #7d8794;
  font-size: 0.78rem;
  font-weight: 450;
  line-height: 1.15;
  white-space: nowrap;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated::before {
  content: none;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
  grid-column: 1 / -1;
  grid-row: 2;
  margin-top: 2px;
  margin-bottom: 1px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
  margin-top: -2px;
  padding-top: 1px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
  min-height: 26px;
  gap: 3px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill {
  width: 60px;
  min-width: 60px;
  flex-basis: 60px;
  height: 26px;
  min-height: 26px;
  border-radius: 13px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill .vote-btn,
body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-total-score {
  height: 26px;
  min-height: 26px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action {
  min-height: 26px;
  padding: 0.08rem 0.34rem;
  border: 0;
  background: transparent;
  color: #58736d;
  font-size: 0.76rem;
  font-weight: 600;
  text-transform: none;
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
  body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only {
    grid-template-columns: auto auto minmax(0, 1fr);
    column-gap: 4px;
    row-gap: 1px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
    grid-column: 2;
    grid-row: 1;
    max-width: calc(100vw - 120px);
    overflow: hidden;
    text-overflow: ellipsis;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
    min-height: 28px;
  }
}

/* HFP-8 — Final Feed Micro-Polish
 * Scope: Homepage center Story cards only.
 * Final lock: “S/ πριν 1 ώρα”, quiet namespace, pure text Discussion,
 * and a tighter media-to-action transition without changing behavior.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-topline .case-pill.type-pill-story {
  min-height: 16px;
  color: #66837b;
  font-size: 0.65rem;
  font-weight: 700;
  opacity: 0.82;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .case-updated {
  color: #818b96;
  font-size: 0.76rem;
  font-weight: 430;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
  margin-top: 0;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
  margin-top: -5px;
  padding-top: 0;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
  min-height: 24px;
  gap: 2px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill {
  width: 58px;
  min-width: 58px;
  flex-basis: 58px;
  height: 24px;
  min-height: 24px;
  border-radius: 12px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-score-pill .vote-btn,
body:not(.entity-workspace-lock) .center-column .living-case-footer .tsemit-total-score {
  height: 24px;
  min-height: 24px;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:hover,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus-visible {
  min-height: 24px;
  padding: 0 0.28rem;
  border: 0;
  border-color: transparent;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #607870;
  font-size: 0.75rem;
  font-weight: 520;
  text-decoration: none;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:hover,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus-visible {
  color: #245f52;
  text-decoration: underline;
  text-underline-offset: 2px;
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-footer {
    margin-top: -4px;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-footer .entry-actions {
    min-height: 26px;
  }
}



/* HFP-9 Final Polish */
.homepage-story-badge,.story-badge,.entity-badge-story{
 color:#6b7280!important;
 background:transparent!important;
 border:none!important;
 font-size:.82em!important;
 font-weight:600!important;
 padding:0!important;
}
.homepage-story-badge::after,.story-badge::after{content:"/"}
.homepage-metadata,.story-meta,.feed-meta{
 display:flex!important;
 align-items:center!important;
 gap:4px!important;
 color:#6b7280!important;
}
.homepage-discussion,.discussion-button,.feed-discussion{
 background:none!important;
 border:none!important;
 padding:0!important;
 color:#4b5563!important;
 border-radius:0!important;
 box-shadow:none!important;
}
.homepage-discussion:hover,.discussion-button:hover,.feed-discussion:hover{
 text-decoration:underline;
}

/* HFP-10 — Homepage Geometry Separation
 * Scope: desktop Homepage only. Create a real visual buffer between the
 * center feed and the right Human Pulse rail, widen the feed, and slightly
 * reduce both side rails. No Workspace or mobile geometry changes.
 */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .homepage-grid {
    grid-template-columns:
      minmax(240px, 280px)
      minmax(580px, 620px)
      20px
      minmax(260px, 284px) !important;
    column-gap: 16px !important;
    width: calc(100% - 24px) !important;
    max-width: 1252px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .left-column {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 280px !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .center-column {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 620px !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .right-column {
    grid-column: 4 !important;
    width: 100% !important;
    max-width: 284px !important;
  }

  body:not(.entity-workspace-lock) .header-inner {
    grid-template-columns:
      minmax(240px, 280px)
      minmax(580px, 620px)
      20px
      minmax(260px, 284px) !important;
    column-gap: 16px !important;
    width: calc(100% - 24px) !important;
    max-width: 1252px !important;
  }

  body:not(.entity-workspace-lock) .logo {
    grid-column: 1 !important;
  }

  body:not(.entity-workspace-lock) .homepage-feed-search {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 620px !important;
  }

  body:not(.entity-workspace-lock) .header-nav {
    grid-column: 4 !important;
  }
}

/* HFP-11 — Full-Width Homepage Geometry Fix
 * Scope: desktop Homepage only.
 * Root cause addressed: the Home grid remained centered inside a fixed-width
 * shell, leaving a large unused gutter before Explore. The Home now uses the
 * available viewport width, keeps a small 8px outer gutter, and preserves a
 * stronger visual separation between the center feed and Human Pulse.
 */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) {
    --app-gutter: 16px;
  }

  body:not(.entity-workspace-lock) main,
  body:not(.entity-workspace-lock) .header-inner {
    width: calc(100% - 16px) !important;
    max-width: none !important;
    margin-left: 8px !important;
    margin-right: 8px !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid {
    grid-template-columns:
      260px
      minmax(0, 1fr)
      24px
      284px !important;
    column-gap: 12px !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-content: stretch !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .left-column {
    grid-column: 1 !important;
    width: 260px !important;
    max-width: 260px !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .center-column {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .right-column {
    grid-column: 4 !important;
    width: 284px !important;
    max-width: 284px !important;
  }

  body:not(.entity-workspace-lock) .header-inner {
    display: grid !important;
    grid-template-columns:
      260px
      minmax(0, 1fr)
      24px
      284px !important;
    column-gap: 12px !important;
  }

  body:not(.entity-workspace-lock) .logo {
    grid-column: 1 !important;
  }

  body:not(.entity-workspace-lock) .homepage-feed-search {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body:not(.entity-workspace-lock) .header-nav {
    grid-column: 4 !important;
    justify-self: end !important;
  }
}

/* HFP-12 — Homepage Story Container Border Removal
 * Scope: Homepage center-column Story containers only.
 * Removes the visible outer border line without changing layout, media,
 * metadata, actions, voting, runtime, sidebars or Entity Workspace.
 */
body:not(.entity-workspace-lock) .center-column .story-feed > .living-case-card,
body:not(.entity-workspace-lock) .center-column .story-feed > .living-case-card:hover,
body:not(.entity-workspace-lock) .center-column .story-feed > .story-card,
body:not(.entity-workspace-lock) .center-column .story-feed > .story-card:hover,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--has-media:hover,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only,
body:not(.entity-workspace-lock) .center-column .living-case-card.story-card--text-only:hover {
  border: 0 !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* HFP-17 — Stable Homepage Header + transient publish-notice isolation
 * The header remains sticky in normal flow. A transient external "Published"
 * notice is removed from layout by script, so it cannot redefine the header's
 * natural position or create the top-of-page jump.
 */
body:not(.entity-workspace-lock) .site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 10000 !important;
  margin: 0 !important;
  background: rgba(248, 248, 245, 0.98) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

body.admin-bar:not(.entity-workspace-lock) .site-header {
  top: var(--wp-admin--admin-bar--height, 32px) !important;
}

/* No fixed-header compensation. The sticky header keeps its own footprint. */
body:not(.entity-workspace-lock) .tsemou-homepage-beta > main {
  padding-top: 0 !important;
}

[data-tsemou-transient-published-notice="true"] {
  display: none !important;
}

@media screen and (max-width: 782px) {
  body.admin-bar:not(.entity-workspace-lock) .site-header {
    top: var(--wp-admin--admin-bar--height, 46px) !important;
  }
}

/* RLS-1 — Live Ecosystem Stream Foundation
 * One low-fatigue, mixed snapshot stream in the Homepage right column.
 */
body:not(.entity-workspace-lock) .right-column.tsemou-right-rail {
  display: block;
  padding: 0 4px 18px 0;
  background: transparent;
}

.tsemou-live-ecosystem-stream {
  width: 100%;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.tsemou-live-stream-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 2px 4px 10px;
}

.tsemou-live-stream-head h2 {
  margin: 0;
  color: #5f6973;
  font-size: .72rem;
  font-weight: 760;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.tsemou-live-stream-status {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #198754;
  font-size: .58rem;
  font-weight: 780;
  letter-spacing: .08em;
}

.tsemou-live-stream-status i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #25a866;
  box-shadow: 0 0 0 3px rgba(37,168,102,.10);
}

.tsemou-live-stream-list {
  max-height: calc(100vh - 150px);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  scroll-behavior: smooth;
  padding: 0 2px 26px;
}

.tsemou-live-stream-list::-webkit-scrollbar { display: none; }

.tsemou-stream-snapshot {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 66px;
  margin: 0 0 10px;
  padding: 6px 2px;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.tsemou-stream-snapshot.is-story { min-height: 88px; }
.tsemou-stream-snapshot.is-community { min-height: 76px; }
.tsemou-stream-snapshot.is-entity { min-height: 58px; }
.tsemou-stream-snapshot.is-need,
.tsemou-stream-snapshot.is-give { min-height: 68px; }

.tsemou-stream-snapshot-main {
  min-width: 0;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 10px;
  color: inherit;
  text-decoration: none;
}

.tsemou-stream-snapshot-main:hover strong { color: #0f6c5c; }

.tsemou-stream-snapshot-visual {
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 12px;
  background: #f0f3f5;
  color: #65717b;
  font-size: .72rem;
  font-weight: 800;
}

.tsemou-stream-snapshot.is-story .tsemou-stream-snapshot-visual {
  flex-basis: 66px;
  width: 66px;
  height: 66px;
  border-radius: 11px;
}

.tsemou-stream-snapshot.is-entity .tsemou-stream-snapshot-visual {
  flex-basis: 42px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
}

.tsemou-stream-snapshot-visual img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tsemou-stream-snapshot-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.tsemou-stream-snapshot-label {
  color: #75818b;
  font-size: .55rem;
  font-weight: 790;
  letter-spacing: .08em;
}

.tsemou-stream-snapshot.is-need .tsemou-stream-snapshot-label { color: #7654c6; }
.tsemou-stream-snapshot.is-give .tsemou-stream-snapshot-label { color: #198754; }
.tsemou-stream-snapshot.is-story .tsemou-stream-snapshot-label { color: #3376b9; }
.tsemou-stream-snapshot.is-community .tsemou-stream-snapshot-label { color: #0f7f83; }
.tsemou-stream-snapshot.is-entity .tsemou-stream-snapshot-label { color: #bc6a22; }

.tsemou-stream-snapshot-copy strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #20272e;
  font-size: .77rem;
  font-weight: 720;
  line-height: 1.28;
  transition: color .15s ease;
}

.tsemou-stream-snapshot.is-entity .tsemou-stream-snapshot-copy strong {
  -webkit-line-clamp: 1;
}

.tsemou-stream-snapshot-subtitle {
  overflow: hidden;
  color: #7d8790;
  font-size: .63rem;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tsemou-stream-entity-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 5px;
}

.tsemou-stream-entity-score {
  min-width: 24px;
  color: #56616a;
  font-size: .63rem;
  font-weight: 760;
  text-align: right;
}

.tsemou-stream-entity-actions .vote-btn {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  padding: 0;
  font: inherit;
  font-size: .62rem;
  font-weight: 820;
  cursor: pointer;
}

.tsemou-stream-entity-actions .tsemit-action { background: #e8f7ef; color: #13814f; }
.tsemou-stream-entity-actions .untsemit-action { background: #fff0f0; color: #c23c3c; }
.tsemou-stream-entity-actions .vote-btn:hover { transform: translateY(-1px); }

.tsemou-live-stream-empty {
  margin: 0;
  padding: 18px 4px;
  color: #8a949d;
  font-size: .7rem;
  line-height: 1.45;
}

@media (prefers-reduced-motion: reduce) {
  .tsemou-live-stream-list { scroll-behavior: auto; }
  .tsemou-stream-entity-actions .vote-btn { transition: none; }
}


/* RLS-2 — Real media contract for Homepage right rail.
 * Canonical Story media is used when present. Text-only records do not render
 * placeholder tiles or generated initials.
 */
body:not(.entity-workspace-lock) .tsemou-stream-snapshot.is-text-only {
  min-height: 58px;
}

body:not(.entity-workspace-lock) .tsemou-stream-snapshot.is-text-only .tsemou-stream-snapshot-main {
  padding-left: 2px;
}

body:not(.entity-workspace-lock) .tsemou-stream-snapshot.has-real-media.is-story .tsemou-stream-snapshot-visual {
  flex: 0 0 72px;
  width: 72px;
  height: 58px;
  border-radius: 9px;
  background: transparent;
}

body:not(.entity-workspace-lock) .tsemou-stream-snapshot.has-real-media .tsemou-stream-snapshot-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* RLS-3 — Right rail usable-width lock
 * Scope: desktop Homepage right rail only.
 * Keep the right grid track fixed; remove only nested horizontal inset that
 * was compressing the Live Ecosystem Stream inside the already available rail.
 * No center/left geometry, media sizing, runtime, scrolling or Workspace change.
 */
@media (min-width: 1201px) {
  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail {
    box-sizing: border-box !important;
    width: 284px !important;
    max-width: 284px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail .tsemou-live-ecosystem-stream {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }

  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail .tsemou-live-stream-list {
    box-sizing: border-box;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail .tsemou-stream-snapshot {
    box-sizing: border-box;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}


/* FPS-5.1 — TSEMOU Compact Feed Controls.
 * Quiet, compact native controls in the same low-noise philosophy as modern
 * feeds, without reproducing Reddit geometry or styling. No result counter.
 */
body:not(.entity-workspace-lock) .tsemou-feed-perspective-selector {
  width: 100%;
  margin: 0 0 8px;
  padding: 2px 0 7px;
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-controls {
  display: flex; align-items: center; gap: 6px; min-width: 0;
}
body:not(.entity-workspace-lock) .tsemou-feed-select-wrap {
  position: relative; display: inline-flex; min-width: 0; flex: 0 1 auto;
}
body:not(.entity-workspace-lock) .tsemou-feed-select {
  width: auto; min-width: 0; min-height: 30px; max-width: 190px;
  padding: 0 28px 0 10px; border: 1px solid rgba(15, 23, 42, 0.11);
  border-radius: 9px; background-color: rgba(255,255,255,.82); color: #334155;
  font: inherit; font-size: 11.5px; font-weight: 650; line-height: 1; cursor: pointer;
  box-shadow: none; transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease;
}
body:not(.entity-workspace-lock) .tsemou-feed-select:hover {
  border-color: rgba(15,118,110,.28); background-color: rgba(13,148,136,.035); color: #0f766e;
}
body:not(.entity-workspace-lock) .tsemou-feed-select:focus-visible {
  outline: 2px solid rgba(20,184,166,.22); outline-offset: 2px; border-color: #0f766e;
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset {
  min-height: 28px; margin-left: 2px; padding: 0 7px; border: 0; border-radius: 7px;
  background: transparent; color: #64748b; font: inherit; font-size: 10.5px; font-weight: 650; cursor: pointer;
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset:hover { background: rgba(13,148,136,.06); color:#0f766e; }
@media (max-width: 782px) {
  body:not(.entity-workspace-lock) .tsemou-feed-selector-controls { gap:5px; overflow-x:auto; scrollbar-width:none; }
  body:not(.entity-workspace-lock) .tsemou-feed-selector-controls::-webkit-scrollbar { display:none; }
  body:not(.entity-workspace-lock) .tsemou-feed-select { min-height:32px; max-width:165px; font-size:11px; }
}
@media (prefers-reduced-motion: reduce) { body:not(.entity-workspace-lock) .tsemou-feed-select { transition:none; } }


/* FPS-3 — Feed Perspective Explainability & Interaction Lock.
 * One compact reason per canonical card. No geometry or media changes.
 */
body:not(.entity-workspace-lock) .feed-perspective-reason {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
  max-width: 100%;
  margin: 1px 0 7px;
  padding: 4px 8px;
  border: 1px solid #d9e2ec;
  border-radius: 999px;
  background: #f8fafc;
  color: #52606d;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .01em;
}
body:not(.entity-workspace-lock) .feed-perspective-reason__dot {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: currentColor;
}
body:not(.entity-workspace-lock) .feed-perspective-reason--important { color: #a23b2a; background: #fff7f5; border-color: #f3d2ca; }
body:not(.entity-workspace-lock) .feed-perspective-reason--useful { color: #176b4d; background: #f2fbf7; border-color: #ccebdd; }
body:not(.entity-workspace-lock) .feed-perspective-reason--collaboration,
body:not(.entity-workspace-lock) .feed-perspective-reason--can-help { color: #5a3aa5; background: #f8f5ff; border-color: #ded4f5; }
body:not(.entity-workspace-lock) .feed-perspective-reason--need { color: #9a5b00; background: #fff9ed; border-color: #f1dfb8; }
body:not(.entity-workspace-lock) .feed-perspective-reason--participation { color: #185e8a; background: #f2f8fc; border-color: #cde2ef; }
body:not(.entity-workspace-lock) .feed-perspective-reason--new { color: #44546a; }


/* FPS-4 — Feed Perspective State, Accessibility & Recovery Lock. */
body:not(.entity-workspace-lock) .tsemou-feed-selector-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 22px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.3;
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset {
  border: 0;
  padding: 3px 0;
  background: transparent;
  color: #0f766e;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset:hover { text-decoration: underline; }
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset:focus-visible {
  outline: 3px solid rgba(20, 184, 166, .28);
  outline-offset: 2px;
  border-radius: 4px;
}
body:not(.entity-workspace-lock) .feed-perspective-empty {
  display: grid;
  justify-items: start;
  gap: 7px;
  margin: 12px 0 20px;
  padding: 22px;
  border: 1px solid #dbe5ea;
  border-radius: 12px;
  background: #f8fbfb;
  color: #334155;
}
body:not(.entity-workspace-lock) .feed-perspective-empty strong { color: #0f172a; font-size: 15px; }
body:not(.entity-workspace-lock) .feed-perspective-empty span { font-size: 13px; line-height: 1.5; }
body:not(.entity-workspace-lock) .feed-perspective-empty button {
  min-height: 34px;
  margin-top: 3px;
  padding: 0 13px;
  border: 1px solid #0f766e;
  border-radius: 999px;
  background: #0f766e;
  color: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}


/* FPS-5.2 — Feed Perspective Micro Controls Lock.
 * Narrows only the two selectors and reduces reset to a quiet icon action.
 * Feed geometry, columns, cards and responsive layout remain untouched.
 */
body:not(.entity-workspace-lock) .tsemou-feed-perspective-selector {
  margin-bottom: 7px;
  padding-top: 1px;
  padding-bottom: 6px;
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-controls {
  gap: 5px;
}
body:not(.entity-workspace-lock) .tsemou-feed-select-wrap:first-child .tsemou-feed-select {
  width: 142px;
  max-width: 142px;
}
body:not(.entity-workspace-lock) .tsemou-feed-select-wrap:nth-child(2) .tsemou-feed-select {
  width: 154px;
  max-width: 154px;
}
body:not(.entity-workspace-lock) .tsemou-feed-select {
  min-height: 28px;
  padding-left: 9px;
  padding-right: 25px;
  border-radius: 8px;
  font-size: 11px;
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset {
  display: inline-grid;
  place-items: center;
  width: 26px;
  min-width: 26px;
  height: 26px;
  min-height: 26px;
  margin-left: 1px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset:hover {
  border-color: rgba(15,118,110,.16);
}
body:not(.entity-workspace-lock) .tsemou-feed-selector-reset:focus-visible {
  outline: 2px solid rgba(20,184,166,.22);
  outline-offset: 2px;
}
@media (max-width: 782px) {
  body:not(.entity-workspace-lock) .tsemou-feed-select-wrap:first-child .tsemou-feed-select { width: 132px; max-width: 132px; }
  body:not(.entity-workspace-lock) .tsemou-feed-select-wrap:nth-child(2) .tsemou-feed-select { width: 145px; max-width: 145px; }
  body:not(.entity-workspace-lock) .tsemou-feed-select { min-height: 30px; }
  body:not(.entity-workspace-lock) .tsemou-feed-selector-reset { width: 28px; min-width: 28px; height: 28px; min-height: 28px; }
}

/* FPS-5.3 — Workspace Boundary Lock.
 * Feed perspective controls belong only to the Homepage feed.
 * Entity Workspaces must begin directly with the canonical entity surface.
 */
body.entity-workspace-lock .tsemou-feed-perspective-selector {
  display: none !important;
}

/* 5.71.316 — Story Workspace Needs compact disclosure boundary. */
.workspace-canonical-relations--compact-toggle {
  padding: 0;
  border-top: 1px solid rgba(15, 42, 67, .12);
  background: transparent;
  box-shadow: none;
}
.workspace-canonical-relations--compact-toggle > summary {
  list-style: none;
}
.workspace-canonical-relations--compact-toggle > summary::-webkit-details-marker {
  display: none;
}
.workspace-canonical-relations__summary {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  margin: 8px 0;
  padding: 5px 10px;
  border: 1px solid rgba(15, 42, 67, .14);
  border-radius: 999px;
  background: #fff;
  color: #0f2a43;
  cursor: pointer;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  user-select: none;
}
.workspace-canonical-relations__summary:hover {
  border-color: rgba(15, 118, 110, .38);
  background: rgba(240, 253, 250, .72);
}
.workspace-canonical-relations__summary:focus-visible {
  outline: 2px solid #0f766e;
  outline-offset: 2px;
}
.workspace-canonical-relations__summary-label {
  letter-spacing: .04em;
  text-transform: uppercase;
}
.workspace-canonical-relations--compact-toggle .workspace-needs-count {
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  font-size: 11px;
}
.workspace-canonical-relations__summary-icon {
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transition: transform .16s ease;
}
.workspace-canonical-relations--compact-toggle[open] .workspace-canonical-relations__summary-icon {
  transform: rotate(225deg) translate(-1px, -1px);
}
.workspace-canonical-relations__content {
  padding: 2px 0 12px;
}
.workspace-canonical-relations--compact-toggle .workspace-related-empty {
  padding: 10px 12px;
  text-align: left;
  border-left: 2px solid rgba(15, 118, 110, .22);
  font-size: 13px;
}


/* HFP-10 — Compact discussion icon
 * Homepage Story cards only: replace the visible “Discussion” word with a
 * quiet, accessible comment glyph while preserving the existing link target.
 */
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:hover,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus-visible {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  min-width: 26px;
  height: 24px;
  min-height: 24px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #607870;
  text-decoration: none;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-icon {
  width: 16px;
  height: 16px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:hover,
body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus-visible {
  background: #eef5f2;
  color: #245f52;
  text-decoration: none;
}

body:not(.entity-workspace-lock) .center-column .living-case-footer .feed-story-discussion-action:focus-visible {
  outline: 2px solid rgba(36, 95, 82, 0.35);
  outline-offset: 2px;
}

/* HFP-19 — Homepage Story Title Hierarchy Lock
 * Scope: Homepage center-column Story cards only.
 * Gives the real Story headline clear editorial weight above the media while
 * preserving the existing compact metadata, media geometry and runtime.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
  margin: 4px 0 8px !important;
  color: #111827 !important;
  font-size: clamp(1.04rem, 1.15vw, 1.18rem) !important;
  font-weight: 720 !important;
  line-height: 1.28 !important;
  letter-spacing: -0.012em !important;
  text-wrap: pretty;
  overflow-wrap: anywhere;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title a {
  display: block;
  color: inherit !important;
  font: inherit;
  text-decoration: none !important;
  text-underline-offset: 3px;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title a:hover {
  color: #0f5f55 !important;
}

body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title a:focus-visible {
  border-radius: 4px;
  outline: 2px solid rgba(15, 118, 110, .38);
  outline-offset: 2px;
}

@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card .living-case-title {
    margin: 3px 0 7px !important;
    font-size: 1rem !important;
    line-height: 1.3 !important;
    letter-spacing: -0.008em !important;
  }
}


/* HFP-20 — Homepage Nature Tone Action Bar R1
 * Selected visual direction: proposal 6.
 * Homepage Story cards only; no participation or navigation behaviour changes.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer {
  margin-top: 0 !important;
  padding: 7px 0 6px !important;
  border-top: 0 !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .entry-actions {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 38px !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill {
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 112px !important;
  flex: 0 0 auto !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 5px !important;
  overflow: hidden !important;
  border: 1px solid rgba(67, 111, 56, .08) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #f2f8ee 0%, #eaf4e5 100%) !important;
  color: #365f2f !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill .vote-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  min-width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #426f38 !important;
  box-shadow: none !important;
  transition: background-color .15s ease, color .15s ease, transform .15s ease !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill .vote-btn:hover {
  background: rgba(74, 121, 61, .11) !important;
  color: #244d20 !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill .vote-btn:active {
  transform: scale(.94) !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill .vote-btn:focus-visible,
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action:focus-visible {
  outline: 2px solid rgba(66, 111, 56, .42) !important;
  outline-offset: 2px !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill .vote-arrow {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.35 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-total-score {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 34px !important;
  height: 32px !important;
  padding: 0 3px !important;
  color: #274d23 !important;
  font-size: 13px !important;
  font-weight: 760 !important;
  line-height: 1 !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill .tsemit-action.is-active {
  background: #d6ebcc !important;
  color: #245c1c !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill .untsemit-action.is-active {
  background: #e4eddc !important;
  color: #385b31 !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action,
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action:hover,
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action:focus,
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action:focus-visible {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  width: auto !important;
  min-width: 72px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(67, 111, 56, .08) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #f2f8ee 0%, #eaf4e5 100%) !important;
  color: #365f2f !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
  text-decoration: none !important;
  transition: background-color .15s ease, color .15s ease, transform .15s ease !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action:hover {
  background: #e1efda !important;
  color: #244d20 !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action:active {
  transform: scale(.97) !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-icon {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-count {
  display: inline-block !important;
  min-width: 12px !important;
  color: inherit !important;
  font-size: 13px !important;
  font-weight: 740 !important;
  line-height: 1 !important;
  text-align: center !important;
}
@media (max-width: 720px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .entry-actions { gap: 8px !important; }
  body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .tsemit-score-pill { min-width: 108px !important; }
  body:not(.entity-workspace-lock) .center-column .living-case-card:is(.story-card--has-media,.story-card--text-only) .living-case-footer .feed-story-discussion-action { min-width: 68px !important; padding: 0 12px !important; }
}

/* RLS-4 — Homepage right-rail stream separators.
 * Apply the continuous-feed separator language to the RIGHT column only.
 * No center feed, Workspace, runtime, ordering or interaction changes.
 */
body:not(.entity-workspace-lock) .right-column.tsemou-right-rail .tsemou-stream-snapshot {
  margin-bottom: 0;
  padding-top: 10px;
  padding-bottom: 10px;
}

body:not(.entity-workspace-lock) .right-column.tsemou-right-rail .tsemou-stream-snapshot + .tsemou-stream-snapshot {
  border-top: 1px solid rgba(74, 82, 90, 0.14);
}

@media (max-width: 1200px) {
  body:not(.entity-workspace-lock) .right-column.tsemou-right-rail .tsemou-stream-snapshot + .tsemou-stream-snapshot {
    border-top-color: rgba(74, 82, 90, 0.12);
  }
}


/* HFP-19 — Anonymous Homepage Header Gap Lock
 * Preserve the intentional 12px white breathing space above the TSEMOU header
 * while keeping the header sticky in exactly the same visual position during
 * scroll. The WordPress admin bar remains a separate authenticated concern.
 */
body:not(.admin-bar):not(.entity-workspace-lock) .site-header {
  position: sticky !important;
  top: 12px !important;
  z-index: 10000 !important;
  margin-top: 0 !important;
  box-shadow: 0 -12px 0 #ffffff !important;
}

/* Keep the sticky header's normal-flow footprint; no artificial compensation,
 * no collapse and no scroll-time layout jump. */
body:not(.admin-bar):not(.entity-workspace-lock) .tsemou-homepage-beta > main {
  padding-top: 0 !important;
}

/* Authenticated/admin rendering stays attached below WordPress' own admin bar. */
body.admin-bar:not(.entity-workspace-lock) .site-header {
  top: var(--wp-admin--admin-bar--height, 32px) !important;
  box-shadow: none !important;
}

@media screen and (max-width: 782px) {
  body:not(.admin-bar):not(.entity-workspace-lock) .site-header {
    top: 8px !important;
    box-shadow: 0 -8px 0 #ffffff !important;
  }

  body.admin-bar:not(.entity-workspace-lock) .site-header {
    top: var(--wp-admin--admin-bar--height, 46px) !important;
  }
}


/* HFP-20 — Homepage left-rail position lock.
 * The left rail begins directly below the already-sticky TSEMOU header and
 * remains at that exact viewport position from the first scroll pixel.
 * It must not travel upward with the document. Independent left-rail scrolling
 * is intentionally deferred to a later sprint.
 */
@media (min-width: 1201px) {
  body:not(.admin-bar):not(.entity-workspace-lock) .homepage-grid > .left-column {
    position: sticky !important;
    top: 71px !important;
    max-height: none !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    overscroll-behavior: none !important;
  }

  body.admin-bar:not(.entity-workspace-lock) .homepage-grid > .left-column {
    position: sticky !important;
    top: calc(var(--wp-admin--admin-bar--height, 32px) + 59px) !important;
    max-height: none !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    overscroll-behavior: none !important;
  }
}


/* 5.71.328 — Unified anonymous-style left rail shell */
.tsemou-account-card--application .tsemou-account-open {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-sizing: border-box;
}


/* 5.71.329 — Homepage mobile center-feed lock.
 * Mobile Homepage must open on the canonical center feed, never the right rail.
 * Side rails remain desktop/tablet surfaces until dedicated mobile navigation
 * is implemented. Entity Workspace responsive behavior is intentionally untouched.
 */
@media (max-width: 860px) {
  body:not(.entity-workspace-lock) .homepage-grid {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-top: 4px !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .center-column {
    display: block !important;
    order: 1 !important;
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body:not(.entity-workspace-lock) .homepage-grid > .left-column,
  body:not(.entity-workspace-lock) .homepage-grid > .right-column {
    display: none !important;
  }

  body:not(.entity-workspace-lock) .center-column .story-feed,
  body:not(.entity-workspace-lock) .center-column .living-case-card,
  body:not(.entity-workspace-lock) .center-column .story-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* 5.71.333 — HOME left-rail mascot size/position polish.
 * Keep the approved account/guest container geometry unchanged.
 * Mascot only: 30% smaller and visually raised to free vertical rail space. */
body:not(.entity-workspace-lock) .left-column .tsemou-guest-login--application .tsemou-guest-login__mascot {
  width: min(133px, 92%);
  margin-top: -8px;
  margin-bottom: 10px;
}
@media (max-width: 980px) {
  body:not(.entity-workspace-lock) .left-column .tsemou-guest-login--application .tsemou-guest-login__mascot {
    width: min(112px, 88%);
    margin-top: -6px;
  }
}

/* 5.71.334 — HOME left-rail mascot + compact account action polish.
 * Container geometry remains unchanged.
 * Mascot is a further 30% smaller than 5.71.333 and sits higher.
 * Logged-in My account action is intentionally much more compact. */
body:not(.entity-workspace-lock) .left-column .tsemou-guest-login--application .tsemou-guest-login__mascot {
  width: min(93px, 92%);
  margin-top: -18px;
  margin-bottom: 6px;
}
body:not(.entity-workspace-lock) .left-column .tsemou-account-card--application .tsemou-account-open {
  width: auto;
  min-width: 118px;
  min-height: 34px;
  padding: 0 15px;
  border-radius: 10px;
  font-size: .78rem;
  line-height: 1;
  box-shadow: 0 5px 12px rgba(8, 116, 95, .13);
}
@media (max-width: 980px) {
  body:not(.entity-workspace-lock) .left-column .tsemou-guest-login--application .tsemou-guest-login__mascot {
    width: min(78px, 88%);
    margin-top: -14px;
  }
}


/* 5.71.335 — HOME approved brand + account-card spacing lock.
 * Header: replace legacy T tile/uppercase wordmark with the approved
 * lowercase tsemou + Bloom mascot identity. Left rail: keep the compact
 * mascot but restore clear breathing room between username and mascot. */
body:not(.entity-workspace-lock) .logo {
  gap: 7px;
  text-decoration: none;
  position: relative;
}
body:not(.entity-workspace-lock) .logo .logo-mark { display: none !important; }
body:not(.entity-workspace-lock) .logo .tsemou-approved-logo-mascot {
  display: inline-flex;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  flex: 0 0 38px;
}
body:not(.entity-workspace-lock) .logo .tsemou-approved-logo-mascot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body:not(.entity-workspace-lock) .logo .logo-text {
  position: relative;
  display: inline-block;
  color: #17222a;
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.045em;
  text-transform: lowercase;
}
body:not(.entity-workspace-lock) .logo .logo-text::after {
  content: "";
  position: absolute;
  left: 2px;
  right: -5px;
  bottom: -7px;
  height: 4px;
  border-radius: 60% 45% 55% 50%;
  background: linear-gradient(to right, #24a06b 0 50%, #d93b3b 50% 100%);
  transform: rotate(-1.5deg);
}
body:not(.entity-workspace-lock) .left-column .tsemou-account-card--application > h2 {
  margin-bottom: 20px !important;
  line-height: 1.2 !important;
}
body:not(.entity-workspace-lock) .left-column .tsemou-account-card--application .tsemou-guest-login__mascot {
  margin-top: 0 !important;
}


/* 5.71.337 — Approved header wordmark underline color split only.
 * Geometry, size, radius and rotation remain unchanged: left half green, right half red. */

/* 5.71.338 — approved wordmark: only the letter e is red. */
body:not(.entity-workspace-lock) .logo .logo-text .logo-text-e { color: #d93b3b; }

/* 5.71.339 — HOME approved brand underline thickness only. */
body:not(.entity-workspace-lock) .logo .logo-text::after {
  height: 2.4px;
}


/* 5.71.349 — Community discovery preferences on the public Communities page. */
.tsemou-community-discovery-controls{width:min(930px,100%);margin:0 auto 14px;display:flex;align-items:flex-end;justify-content:center;gap:8px;flex-wrap:wrap}
.tsemou-community-discovery-controls label{display:grid;gap:4px;min-width:0}
.tsemou-community-discovery-controls label>span{padding-left:10px;color:#667085;font-size:10px;font-weight:800;letter-spacing:.04em}
.tsemou-community-discovery-controls select{height:38px;min-width:170px;padding:0 34px 0 12px;border:1px solid #d7e0ec;border-radius:11px;background:#fff;color:#17233f;font:inherit;font-size:13px;font-weight:700;box-shadow:0 3px 10px rgba(22,49,96,.035)}
.tsemou-community-discovery-controls select:focus-visible,.tsemou-community-discovery-reset:focus-visible{outline:3px solid rgba(31,111,235,.22);outline-offset:2px}
.tsemou-community-discovery-reset{width:38px;height:38px;display:grid;place-items:center;border:1px solid #cdd9e8;border-radius:11px;background:#fff;color:#0d756c;font-size:18px;font-weight:900;cursor:pointer}
.tsemou-community-discovery-reset:hover{background:#f2f8f6;border-color:#9fcabb}
.tsemou-community-discovery-reset[hidden]{display:none}
.tsemou-community-discovery-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tsemou-homepage-beta--categories .tsemou-purpose-category-search{height:46px;margin-bottom:20px}
@media(max-width:760px){.tsemou-community-discovery-controls{display:grid;grid-template-columns:1fr 1fr}.tsemou-community-discovery-controls label:first-child{grid-column:1/-1}.tsemou-community-discovery-controls select{width:100%;min-width:0}.tsemou-community-discovery-reset{align-self:end}}
@media(max-width:520px){.tsemou-community-discovery-controls{grid-template-columns:1fr}.tsemou-community-discovery-controls label:first-child{grid-column:auto}.tsemou-community-discovery-reset{width:100%}}

/* 5.71.350 — Account persistence and final UX lock for Community discovery preferences. */
.tsemou-community-discovery-save-state{flex-basis:100%;min-height:16px;margin:0;text-align:center;color:#59706d;font-size:11px;font-weight:700}
.tsemou-community-discovery-save-state.is-error{color:#b42318}
.tsemou-community-discovery-controls select:disabled,.tsemou-community-discovery-reset:disabled{opacity:.58;cursor:wait}
@media (prefers-reduced-motion:reduce){.tsemou-purpose-category-card,.tsemou-community-discovery-reset{transition:none!important}}


/* COMMUNITY-UX-1 — simple five-step Community creation flow */
.community-creation-card{width:min(650px,100%);padding:24px}
.community-creation-intro{margin:6px 0 0;color:#64756f;font-size:.9rem}
.community-creation-progress{height:4px;background:#e6eeeb;border-radius:99px;overflow:hidden;margin:16px 0 12px}
.community-creation-progress-fill{display:block;height:100%;width:20%;background:#0d8875;border-radius:99px;transition:width .2s ease}
.community-creation-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;list-style:none;margin:0 0 22px;padding:0}
.community-creation-steps li{display:grid;justify-items:center;gap:4px;color:#8a9994;font-size:.68rem;text-align:center}
.community-creation-steps li span{display:grid;place-items:center;width:27px;height:27px;border:1px solid #cbd8d3;border-radius:50%;background:#fff;font-weight:800}
.community-creation-steps li.is-active{color:#0b7566;font-weight:700}
.community-creation-steps li.is-active span{background:#0d8875;color:#fff;border-color:#0d8875}
.community-creation-steps li.is-complete span{background:#dff4ee;color:#08705f;border-color:#9dd8ca}
.community-creation-step{min-height:300px;animation:tsemou-community-step-in .18s ease}
.community-creation-step[hidden]{display:none!important}
.community-creation-step h3{margin:4px 0 6px;font-size:1.3rem;color:#162e2a}
.community-step-count{margin:0;color:#0d8875;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.community-step-help{margin:0 0 18px;color:#667873;line-height:1.5}
.community-field-counter{margin:-10px 2px 0;text-align:right;color:#899792;font-size:.72rem}
.community-visibility-options{display:grid;gap:10px}
.community-visibility-option{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:12px!important;padding:15px;border:1px solid #d5dfdb;border-radius:13px;background:#fff;cursor:pointer}
.community-visibility-option.is-selected{border-color:#0d8875;background:#f1faf7;box-shadow:0 0 0 2px rgba(13,136,117,.1)}
.community-visibility-option input{width:auto!important;margin-top:4px}
.community-visibility-option span{display:grid;gap:3px}
.community-visibility-option strong{font-size:.95rem;color:#17332e}
.community-visibility-option small{font-weight:400;color:#657772;line-height:1.4}
.community-creation-review{display:grid;gap:0;margin:16px 0;border:1px solid #dce5e1;border-radius:14px;overflow:hidden;background:#fff}
.community-creation-review div{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:13px 15px;border-bottom:1px solid #e8eeeb}
.community-creation-review div:last-child{border-bottom:0}
.community-creation-review dt{font-size:.75rem;font-weight:800;color:#6f807b;text-transform:uppercase;letter-spacing:.04em}
.community-creation-review dd{margin:0;color:#172e2a;white-space:pre-wrap}
.community-creation-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:4px}
.community-creation-navigation{display:flex;gap:9px;margin-left:auto}
.community-creation-back,.community-creation-next{border:1px solid #c9d7d2;border-radius:10px;background:#fff;padding:10px 17px;font-weight:750;color:#25423c;cursor:pointer}
.community-creation-next,.community-creation-submit{background:#0d8875!important;border-color:#0d8875!important;color:#fff!important}
@keyframes tsemou-community-step-in{from{opacity:.25;transform:translateX(8px)}to{opacity:1;transform:none}}
@media(max-width:640px){.community-creation-card{padding:18px 16px}.community-creation-steps small{display:none}.community-creation-step{min-height:330px}.community-creation-review div{grid-template-columns:1fr;gap:4px}.community-creation-actions{align-items:stretch}.community-creation-cancel{display:none}.community-creation-navigation{width:100%}.community-creation-back,.community-creation-next,.community-creation-submit{flex:1}}
@media(prefers-reduced-motion:reduce){.community-creation-progress-fill,.community-creation-step{transition:none;animation:none}}


/* COMMUNITY-UX-2 — context-aware creation from Story / Need / Case / Topic. */
.community-creation-context{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:0 0 18px;padding:13px 14px;border:1px solid #b9ddd3;border-radius:13px;background:#f1faf7;color:#173a33}
.community-creation-context[hidden]{display:none!important}
.community-creation-context-type{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:6px 8px;border-radius:999px;background:#0d8875;color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.community-creation-context strong{display:block;font-size:.92rem;line-height:1.35}
.community-creation-context p{margin:3px 0 0;color:#5d746d;font-size:.78rem;line-height:1.4}
.community-creation-context button{border:0;background:transparent;color:#0b7566;font-weight:800;cursor:pointer}
.community-name-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 2px}
.community-name-suggestion{border:1px solid #c9ddd7;border-radius:999px;background:#f7fbfa;color:#255048;padding:7px 10px;font-size:.76rem;font-weight:700;cursor:pointer;text-align:left}
.community-name-suggestion:hover,.community-name-suggestion:focus-visible{border-color:#0d8875;background:#edf8f5;outline:none}
@media(max-width:640px){.community-creation-context{grid-template-columns:auto 1fr}.community-creation-context button{grid-column:1/-1;justify-self:start;padding:0}.community-name-suggestions{display:grid}.community-name-suggestion{width:100%}}


/* COMMUNITY-UX-3 — invisible Entity and relationship orchestration. */
.community-creation-system-note{display:flex;align-items:flex-start;gap:8px;margin:0 0 14px;padding:10px 12px;border-radius:10px;background:#f1faf7;color:#47665e;font-size:.78rem;line-height:1.45}
.community-creation-system-note span{display:grid;place-items:center;flex:0 0 19px;height:19px;border-radius:50%;background:#d8f1e9;color:#08705f;font-weight:900}


/* COMMUNITY-UX-4 — immediate post-create value and onboarding */
.community-created-welcome{position:relative;display:grid;grid-template-columns:auto 1fr;gap:15px;margin:0 0 16px;padding:20px;border:1px solid #8fd4c3;border-radius:16px;background:linear-gradient(135deg,#effbf7 0%,#f9fffc 62%,#fff9ec 100%);box-shadow:0 10px 30px rgba(12,117,108,.12);overflow:hidden}
.community-created-welcome::after{content:"";position:absolute;right:-38px;top:-50px;width:150px;height:150px;border-radius:50%;background:rgba(255,190,74,.12);pointer-events:none}
.community-created-welcome-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#0d8875;color:#fff;font-size:1.25rem;font-weight:900;box-shadow:0 6px 18px rgba(13,136,117,.24)}
.community-created-welcome-copy{min-width:0}.community-created-welcome-kicker{margin:0 0 4px!important;color:#08705f!important;font-size:.69rem!important;font-weight:900!important;letter-spacing:.11em}.community-created-welcome h2{margin:0 34px 6px 0;font-size:1.24rem;color:#153b34}.community-created-welcome-copy>p:not(.community-created-welcome-kicker){margin:0;color:#4e6b64;line-height:1.5}.community-created-welcome-close{position:absolute;right:12px;top:10px;z-index:2;border:0;background:transparent;color:#55746c;font-size:1.5rem;cursor:pointer}.community-created-welcome-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.community-created-welcome-actions button{min-height:40px;border:1px solid #0d8875;border-radius:10px;background:#0d8875;color:#fff;padding:0 14px;font-weight:800;cursor:pointer}.community-created-welcome-actions button.is-secondary{background:#fff;color:#0b7566}.community-created-welcome-actions button.is-tertiary{border-color:transparent;background:transparent;color:#496860}.community-created-checklist{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;margin:15px 0 0;padding:12px 0 0;border-top:1px solid rgba(13,136,117,.16);color:#55716a;font-size:.74rem}.community-created-checklist li{display:flex;align-items:center;gap:5px}.community-created-checklist span{color:#0d8875;font-weight:900}.community-created-welcome.is-complete{opacity:0;transform:translateY(-6px);transition:opacity .45s ease,transform .45s ease}
@media(max-width:640px){.community-created-welcome{grid-template-columns:1fr;padding:18px 15px}.community-created-welcome-icon{width:36px;height:36px}.community-created-welcome-actions{display:grid}.community-created-welcome-actions button{width:100%}.community-created-checklist{display:grid}.community-created-welcome h2{font-size:1.12rem}}
@media(prefers-reduced-motion:reduce){.community-created-welcome.is-complete{transition:none}.community-created-welcome-actions button{scroll-behavior:auto}}

/* COMMUNITY-UX-5.1 — mandatory public category selection */
.community-category-field{display:grid;gap:7px;margin-top:18px;padding-top:16px;border-top:1px solid #e4ece8}
.community-category-field>span{font-weight:800;color:#17332e}
.community-category-field select{width:100%;min-height:46px;border:1px solid #cbd9d4;border-radius:10px;background:#fff;padding:0 12px;color:#17332e}
.community-category-field select:focus{outline:2px solid rgba(13,136,117,.2);border-color:#0d8875}
.community-category-field small{color:#687a75;line-height:1.4}


/* MOBILE-FEED-1 — compact Reddit-style three-option feed bar.
   Desktop selector remains unchanged. */
.tsemou-feed-mobile-tabs {
  display: none;
}

@media (max-width: 760px) {
  .tsemou-feed-perspective-selector {
    padding: 0 !important;
    margin: 0 0 10px !important;
    border: 0 !important;
    background: transparent !important;
  }

  .tsemou-feed-perspective-selector .tsemou-feed-selector-controls {
    display: none !important;
  }

  .tsemou-feed-mobile-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: end;
    width: 100%;
    height: 42px;
    border-top: 1px solid rgba(15, 23, 42, .10);
    border-bottom: 1px solid rgba(15, 23, 42, .14);
    background: #fff;
  }

  .tsemou-feed-mobile-tab {
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    min-width: 0;
    height: 41px;
    padding: 0 6px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #667085;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 41px;
    text-align: center;
    cursor: pointer;
  }

  .tsemou-feed-mobile-tab::after {
    content: "";
    position: absolute;
    left: 25%;
    right: 25%;
    bottom: -1px;
    height: 2px;
    border-radius: 2px 2px 0 0;
    background: transparent;
  }

  .tsemou-feed-mobile-tab.is-active {
    color: #111827;
    font-weight: 700;
  }

  .tsemou-feed-mobile-tab.is-active::after {
    background: #0a7f68;
  }

  .tsemou-feed-mobile-tab:focus-visible {
    outline: 2px solid #0a7f68;
    outline-offset: -3px;
  }
}


/* MOBILE-FEED-2 — Reddit-style compact 3-option segmented bar */
@media (max-width: 760px) {
  .tsemou-feed-mobile-tabs {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    width: 100%;
    height: 44px;
    padding: 6px 10px;
    border-top: 1px solid rgba(15, 23, 42, .08);
    border-bottom: 1px solid rgba(15, 23, 42, .10);
    background: #fff;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .tsemou-feed-mobile-tabs::-webkit-scrollbar {
    display: none;
  }

  .tsemou-feed-mobile-tab {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex: 0 0 auto;
    min-width: 0;
    height: 32px;
    padding: 0 12px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #5f6368;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
  }

  .tsemou-feed-mobile-tab::after {
    display: none !important;
  }

  .tsemou-feed-mobile-tab.is-active {
    background: #eef1f3;
    color: #1f2328;
    font-weight: 700;
  }

  .tsemou-feed-mobile-tab__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    font-size: 11px;
    line-height: 1;
    color: #6b7280;
  }

  .tsemou-feed-mobile-tab.is-active .tsemou-feed-mobile-tab__icon {
    color: #374151;
  }

  .tsemou-feed-mobile-tab:focus-visible {
    outline: 2px solid #0a7f68;
    outline-offset: 1px;
  }
}


/* MOBILE-FEED-3 — icon-only feed controls, Reddit-style cleanliness. */
@media (max-width: 760px) {
  .tsemou-feed-mobile-tabs {
    display: none !important;
  }

  .tsemou-feed-mobile-control {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    min-height: 40px;
    padding: 4px 8px;
    border-top: 1px solid rgba(15,23,42,.08);
    border-bottom: 1px solid rgba(15,23,42,.10);
    background: #fff;
  }

  .tsemou-feed-mobile-launcher {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #31363d;
    cursor: pointer;
  }

  .tsemou-feed-mobile-launcher:hover,
  .tsemou-feed-mobile-launcher[aria-expanded="true"] {
    background: #eef1f3;
  }

  .tsemou-feed-mobile-launcher__icon {
    position: relative;
    display: block;
    width: 18px;
    height: 16px;
  }

  .tsemou-feed-mobile-launcher__icon i {
    position: absolute;
    left: 1px;
    right: 1px;
    height: 1.5px;
    border-radius: 2px;
    background: currentColor;
  }

  .tsemou-feed-mobile-launcher__icon i:nth-child(1) { top: 2px; }
  .tsemou-feed-mobile-launcher__icon i:nth-child(2) { top: 7px; }
  .tsemou-feed-mobile-launcher__icon i:nth-child(3) { top: 12px; }

  .tsemou-feed-mobile-launcher__icon i:nth-child(1)::after,
  .tsemou-feed-mobile-launcher__icon i:nth-child(2)::after,
  .tsemou-feed-mobile-launcher__icon i:nth-child(3)::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border-radius: 50%;
    background: currentColor;
  }

  .tsemou-feed-mobile-launcher__icon i:nth-child(1)::after { left: 3px; }
  .tsemou-feed-mobile-launcher__icon i:nth-child(2)::after { right: 3px; }
  .tsemou-feed-mobile-launcher__icon i:nth-child(3)::after { left: 7px; }

  .tsemou-feed-mobile-options {
    position: absolute;
    z-index: 80;
    top: calc(100% + 6px);
    right: 8px;
    width: min(320px, calc(100vw - 32px));
    padding: 10px;
    border: 1px solid rgba(15,23,42,.10);
    border-radius: 16px;
    background: rgba(255,255,255,.98);
    box-shadow: 0 12px 32px rgba(15,23,42,.16);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }

  .tsemou-feed-mobile-options[hidden] {
    display: none !important;
  }

  .tsemou-feed-mobile-options__section + .tsemou-feed-mobile-options__section {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(15,23,42,.08);
  }

  .tsemou-feed-mobile-options__label {
    display: block;
    margin: 0 0 7px;
    padding: 0 4px;
    color: #7a828d;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
  }

  .tsemou-feed-mobile-options__choices {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }

  .tsemou-feed-mobile-options__choices button {
    appearance: none;
    -webkit-appearance: none;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid rgba(15,23,42,.09);
    border-radius: 999px;
    background: #f7f8f9;
    color: #3f4650;
    font: inherit;
    font-size: 13px;
    font-weight: 600;
  }

  .tsemou-feed-mobile-options__choices button.is-active {
    border-color: rgba(10,127,104,.20);
    background: #eaf5f2;
    color: #076b59;
    font-weight: 700;
  }
}

@media (min-width: 761px) {
  .tsemou-feed-mobile-control {
    display: none !important;
  }
}


/* MOBILE-FEED-4 — production mobile action-sheet architecture */
@media (max-width: 760px) {
  [data-feed-perspective-selector] > .tsemou-feed-selector-controls,
  [data-feed-perspective-selector] > [data-feed-mobile-control],
  [data-feed-perspective-selector] > [data-feed-mobile-tabs] {
    display: none !important;
  }

  [data-feed-perspective-selector] {
    position: relative !important;
    min-height: 38px !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .tsemou-mobile-feed-action-row {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    height: 38px;
    padding: 0 8px;
    border-top: 1px solid rgba(15,23,42,.08);
    border-bottom: 1px solid rgba(15,23,42,.10);
    background: #fff;
  }

  .tsemou-mobile-feed-action {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #30343b;
  }

  .tsemou-mobile-feed-action[aria-expanded="true"] {
    background: #eef1f3;
  }

  .tsemou-mobile-feed-action__glyph {
    position: relative;
    display: block;
    width: 18px;
    height: 16px;
  }

  .tsemou-mobile-feed-action__glyph i {
    position: absolute;
    left: 1px;
    right: 1px;
    height: 1.5px;
    border-radius: 2px;
    background: currentColor;
  }

  .tsemou-mobile-feed-action__glyph i:nth-child(1) { top: 2px; }
  .tsemou-mobile-feed-action__glyph i:nth-child(2) { top: 7px; }
  .tsemou-mobile-feed-action__glyph i:nth-child(3) { top: 12px; }

  .tsemou-mobile-feed-action__glyph i::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border-radius: 50%;
    background: currentColor;
  }

  .tsemou-mobile-feed-action__glyph i:nth-child(1)::after { left: 3px; }
  .tsemou-mobile-feed-action__glyph i:nth-child(2)::after { right: 3px; }
  .tsemou-mobile-feed-action__glyph i:nth-child(3)::after { left: 7px; }

  html.tsemou-mobile-feed-sheet-open,
  body.tsemou-mobile-feed-sheet-open {
    overflow: hidden !important;
    overscroll-behavior: contain;
  }

  .tsemou-mobile-feed-sheet-layer {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: block;
    pointer-events: none;
  }

  .tsemou-mobile-feed-sheet-layer[hidden] {
    display: none !important;
  }

  .tsemou-mobile-feed-sheet-layer.is-open {
    pointer-events: auto;
  }

  .tsemou-mobile-feed-sheet-backdrop {
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(0,0,0,.28);
    opacity: 0;
    transition: opacity .18s ease;
  }

  .tsemou-mobile-feed-sheet-layer.is-open .tsemou-mobile-feed-sheet-backdrop {
    opacity: 1;
  }

  .tsemou-mobile-feed-sheet {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: min(78vh, 620px);
    padding: 8px 16px calc(18px + env(safe-area-inset-bottom));
    border-radius: 20px 20px 0 0;
    background: #fff;
    box-shadow: 0 -10px 40px rgba(0,0,0,.18);
    overflow: auto;
    transform: translateY(102%);
    transition: transform .20s cubic-bezier(.2,.8,.2,1);
    -webkit-overflow-scrolling: touch;
  }

  .tsemou-mobile-feed-sheet-layer.is-open .tsemou-mobile-feed-sheet {
    transform: translateY(0);
  }

  .tsemou-mobile-feed-sheet__handle {
    width: 34px;
    height: 4px;
    margin: 0 auto 8px;
    border-radius: 999px;
    background: #d3d7dc;
  }

  .tsemou-mobile-feed-sheet__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    margin-bottom: 6px;
  }

  .tsemou-mobile-feed-sheet__header strong {
    color: #111318;
    font-size: 17px;
    font-weight: 700;
  }

  .tsemou-mobile-feed-sheet__close {
    appearance: none;
    -webkit-appearance: none;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #f1f3f5;
    color: #30343b;
    font-size: 24px;
    line-height: 34px;
  }

  .tsemou-mobile-feed-sheet__group {
    padding: 6px 0 10px;
  }

  .tsemou-mobile-feed-sheet__group + .tsemou-mobile-feed-sheet__group {
    border-top: 1px solid #eceff1;
    padding-top: 12px;
  }

  .tsemou-mobile-feed-sheet__group h3 {
    margin: 0 0 5px;
    color: #737b85;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
  }

  .tsemou-mobile-feed-sheet__list {
    display: grid;
    gap: 0;
  }

  .tsemou-mobile-feed-sheet__option {
    appearance: none;
    -webkit-appearance: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 48px;
    padding: 0 4px;
    border: 0;
    border-bottom: 1px solid #f1f2f3;
    border-radius: 0;
    background: transparent;
    color: #20242a;
    font: inherit;
    font-size: 16px;
    font-weight: 500;
    text-align: left;
  }

  .tsemou-mobile-feed-sheet__option:last-child {
    border-bottom: 0;
  }

  .tsemou-mobile-feed-sheet__check {
    color: #0a7f68;
    font-size: 18px;
    font-weight: 800;
    opacity: 0;
  }

  .tsemou-mobile-feed-sheet__option.is-active {
    color: #111318;
    font-weight: 700;
  }

  .tsemou-mobile-feed-sheet__option.is-active .tsemou-mobile-feed-sheet__check {
    opacity: 1;
  }
}

@media (min-width: 761px) {
  .tsemou-mobile-feed-action-row,
  .tsemou-mobile-feed-sheet-layer {
    display: none !important;
  }
}


/* MOBILE-FEED-5 — stable search-owned icon + body-level action sheet */
@media (max-width: 760px) {
  /* The old perspective UI never appears on mobile. It remains in the DOM only
     as the canonical state engine. */
  [data-feed-perspective-selector] {
    display: none !important;
  }

  .homepage-feed-search {
    position: relative !important;
  }

  .homepage-feed-search input {
    padding-right: 48px !important;
  }

  .tsemou-mobile-feed-filter-trigger {
    appearance: none;
    -webkit-appearance: none;
    position: absolute !important;
    z-index: 5;
    top: 50%;
    right: 6px;
    transform: translateY(-50%);
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #39414a;
  }

  .tsemou-mobile-feed-filter-trigger[aria-expanded="true"] {
    background: #e8ecef;
  }

  .tsemou-mobile-feed-filter-trigger__glyph {
    position: relative;
    width: 18px;
    height: 16px;
  }

  .tsemou-mobile-feed-filter-trigger__glyph i {
    position: absolute;
    left: 1px;
    right: 1px;
    height: 1.6px;
    border-radius: 99px;
    background: currentColor;
  }
  .tsemou-mobile-feed-filter-trigger__glyph i:nth-child(1) { top: 2px; }
  .tsemou-mobile-feed-filter-trigger__glyph i:nth-child(2) { top: 7px; }
  .tsemou-mobile-feed-filter-trigger__glyph i:nth-child(3) { top: 12px; }

  .tsemou-mobile-feed-filter-trigger__glyph i::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border-radius: 50%;
    background: currentColor;
  }
  .tsemou-mobile-feed-filter-trigger__glyph i:nth-child(1)::after { left: 3px; }
  .tsemou-mobile-feed-filter-trigger__glyph i:nth-child(2)::after { right: 3px; }
  .tsemou-mobile-feed-filter-trigger__glyph i:nth-child(3)::after { left: 7px; }

  html.tsemou-mobile-filter-open,
  body.tsemou-mobile-filter-open {
    overflow: hidden !important;
    overscroll-behavior: contain;
  }

  .tsemou-mobile-feed-filter-layer {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483600 !important;
    display: block;
    pointer-events: none;
  }

  .tsemou-mobile-feed-filter-layer[hidden] {
    display: none !important;
  }

  .tsemou-mobile-feed-filter-layer.is-open {
    pointer-events: auto;
  }

  .tsemou-mobile-feed-filter-backdrop {
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(0,0,0,.32);
    opacity: 0;
    transition: opacity .18s ease;
  }

  .tsemou-mobile-feed-filter-layer.is-open .tsemou-mobile-feed-filter-backdrop {
    opacity: 1;
  }

  .tsemou-mobile-feed-filter-sheet {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: min(78vh, 620px);
    padding: 8px 16px calc(18px + env(safe-area-inset-bottom));
    border-radius: 22px 22px 0 0;
    background: #fff;
    box-shadow: 0 -12px 42px rgba(0,0,0,.20);
    overflow: auto;
    transform: translateY(102%);
    transition: transform .20s cubic-bezier(.2,.8,.2,1);
    -webkit-overflow-scrolling: touch;
  }

  .tsemou-mobile-feed-filter-layer.is-open .tsemou-mobile-feed-filter-sheet {
    transform: translateY(0);
  }

  .tsemou-mobile-feed-filter-handle {
    width: 36px;
    height: 4px;
    margin: 0 auto 7px;
    border-radius: 99px;
    background: #d3d7dc;
  }

  .tsemou-mobile-feed-filter-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 46px;
    margin-bottom: 4px;
  }

  .tsemou-mobile-feed-filter-header h2 {
    margin: 0;
    color: #111318;
    font-size: 18px;
    font-weight: 700;
  }

  .tsemou-mobile-feed-filter-close {
    appearance: none;
    -webkit-appearance: none;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f0f2f4;
    color: #333941;
    font-size: 23px;
  }

  .tsemou-mobile-feed-filter-group {
    padding: 8px 0 10px;
  }

  .tsemou-mobile-feed-filter-group + .tsemou-mobile-feed-filter-group {
    border-top: 1px solid #eceff1;
    padding-top: 14px;
  }

  .tsemou-mobile-feed-filter-group h3 {
    margin: 0 0 4px;
    color: #7a828b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
  }

  .tsemou-mobile-feed-filter-list {
    display: grid;
  }

  .tsemou-mobile-feed-filter-list > button {
    appearance: none;
    -webkit-appearance: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 50px;
    padding: 0 4px;
    border: 0;
    border-bottom: 1px solid #f0f1f2;
    border-radius: 0;
    background: transparent;
    color: #252a30;
    font: inherit;
    font-size: 16px;
    font-weight: 500;
    text-align: left;
  }

  .tsemou-mobile-feed-filter-list > button:last-child {
    border-bottom: 0;
  }

  .tsemou-mobile-feed-filter-list > button b {
    color: #0a7f68;
    font-size: 18px;
    opacity: 0;
  }

  .tsemou-mobile-feed-filter-list > button.is-active {
    color: #111318;
    font-weight: 700;
  }

  .tsemou-mobile-feed-filter-list > button.is-active b {
    opacity: 1;
  }
}

@media (min-width: 761px) {
  .tsemou-mobile-feed-filter-trigger,
  .tsemou-mobile-feed-filter-layer {
    display: none !important;
  }
}


/* MOBILE-NAV-1 — header navigation moves into the single mobile action sheet.
   Desktop navigation remains untouched. */
@media (max-width: 760px) {
  .site-header .header-nav {
    display: none !important;
  }

  .site-header .header-inner {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "logo"
      "search" !important;
    row-gap: 10px !important;
  }

  .site-header .logo {
    grid-area: logo;
  }

  .site-header .homepage-feed-search {
    grid-area: search;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
  }

  .tsemou-mobile-feed-filter-group--navigation {
    padding-top: 2px;
  }

  .tsemou-mobile-feed-navigation-list > button b {
    opacity: .52 !important;
    color: #667085 !important;
    font-size: 22px !important;
    font-weight: 500 !important;
  }

  .tsemou-mobile-feed-navigation-list > button.is-active b {
    opacity: .52 !important;
  }
}

/* 5.71.437 — HFP FEED MEDIA RHYTHM R2
 *
 * Audit result:
 * - source aspect ratio must NOT own feed height (news feeds are landscape-heavy);
 * - the feed viewport owns presentation height;
 * - the source ratio only selects a bounded presentation class;
 * - object-fit: cover preserves proportions while filling the editorial viewport.
 *
 * Desktop target at the approved 545px media width:
 *   ultra-wide / wide  -> 360px
 *   normal landscape   -> 410px
 *   near-square        -> 480px
 *   portrait           -> 560px
 *   tall portrait      -> 620px
 *
 * This intentionally gives ordinary news photography more vertical presence
 * without stretching pixels or forcing every item to the same height.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media {
  box-sizing: border-box !important;
  width: 88% !important;
  max-width: 545px !important;
  min-width: 0 !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  justify-self: center !important;
  margin: 0 !important;
}

body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media > .card-media-stage.card-media-stage-image {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: var(--tsemou-feed-media-height, 410px) !important;
  min-height: var(--tsemou-feed-media-height, 410px) !important;
  max-height: var(--tsemou-feed-media-height, 410px) !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  background: #111 !important;
}

body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media > .card-media-stage.card-media-stage-image > .card-media-image-element {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
}

/* Presentation classes are assigned from the real source ratio by script.js. */
body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media[data-tsemou-media-shape="wide"] {
  --tsemou-feed-media-height: 360px;
}
body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media[data-tsemou-media-shape="landscape"] {
  --tsemou-feed-media-height: 410px;
}
body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media[data-tsemou-media-shape="square"] {
  --tsemou-feed-media-height: 480px;
}
body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media[data-tsemou-media-shape="portrait"] {
  --tsemou-feed-media-height: 560px;
}
body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media[data-tsemou-media-shape="tall"] {
  --tsemou-feed-media-height: 620px;
}

/* Tablet/mobile: retain the same hierarchy but bind it to viewport width.
 * No fixed desktop pixels and no horizontal overflow. */
@media (max-width: 760px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media {
    width: 100% !important;
    max-width: 100% !important;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media > .card-media-stage.card-media-stage-image {
    height: clamp(300px, 78vw, 480px) !important;
    min-height: clamp(300px, 78vw, 480px) !important;
    max-height: clamp(300px, 78vw, 480px) !important;
  }

  body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media[data-tsemou-media-shape="portrait"] > .card-media-stage.card-media-stage-image,
  body:not(.entity-workspace-lock) .center-column .living-case-card > .card-media.card-media-image.has-media[data-tsemou-media-shape="tall"] > .card-media-stage.card-media-stage-image {
    height: clamp(380px, 110vw, 620px) !important;
    min-height: clamp(380px, 110vw, 620px) !important;
    max-height: clamp(380px, 110vw, 620px) !important;
  }
}


/* 5.71.530 — HOMEPAGE STORY SOURCE VISIBILITY LOCK
 * Audit finding: HFP-7 intentionally hid .homepage-story-source, overriding
 * the later renderer/source-data work. Restore publisher provenance on the
 * same metadata row: S/ · SOURCE · relative time. Homepage only.
 */
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story.story-card--has-media,
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story.story-card--text-only {
  grid-template-columns: auto minmax(0, auto) minmax(0, 1fr) !important;
  column-gap: 5px !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .living-case-topline .case-pill.type-pill-story {
  grid-column: 1 !important;
  grid-row: 1 !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .homepage-story-source {
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-items: center !important;
  justify-self: start !important;
  min-width: 0 !important;
  max-width: 210px !important;
  overflow: hidden !important;
  color: #6f7d87 !important;
  font-size: 0.74rem !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .homepage-story-source::before {
  content: "•" !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  margin-right: 5px !important;
  color: #9aa5ad !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .homepage-story-source a,
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .homepage-story-source strong {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: inherit !important;
  text-decoration: none !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .case-updated {
  grid-column: 3 !important;
  grid-row: 1 !important;
  justify-self: start !important;
}
body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .case-updated::before {
  content: "•" !important;
  display: inline-block !important;
  margin-right: 5px !important;
  color: #9aa5ad !important;
}
@media (max-width: 760px) {
  body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .homepage-story-source {
    max-width: 34vw !important;
  }
  body:not(.entity-workspace-lock) .center-column .living-case-card.case-type-story .case-updated {
    min-width: 0 !important;
    max-width: 38vw !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}
