/* Workspace compositions share the existing Falls color and type tokens. */
.workspace-eyebrow { display: none; }
.showcase-shot, [dir="rtl"] .showcase-shot { transform: none; box-shadow: none; border: 0; max-height: 360px; object-fit: cover; object-position: right; }
.ws-hub-intro { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: var(--space-8); padding-block: var(--space-7); border-bottom: 1px solid var(--border-subtle); }
.ws-hub-intro h2 { font: 650 clamp(30px, 3.1vw, 48px)/1.2 var(--font-display); letter-spacing: var(--tracking-tight); margin: 0 0 var(--space-5); max-width: 14ch; }
.ws-hub-intro p { color: var(--text-secondary); max-width: 43ch; font-size: var(--text-lg); }
.ws-hub-intro > img { width: 100%; height: auto; border-radius: var(--radius-md); }
.ws-actions, .ws-editor-actions, .ws-markdown, .ws-pagination { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.ws-actions { margin-block-start: var(--space-6); }
.ws-hub-body { display: grid; grid-template-columns: 1fr 1.1fr; gap: var(--space-10); padding-block: var(--space-7); }
.ws-attention-row { display: flex; align-items: center; gap: var(--space-5); width: 100%; text-align: start; padding: var(--space-5) 0; border: 0; border-bottom: 1px solid var(--border-subtle); background: transparent; color: var(--text-primary); cursor: pointer; }
.ws-attention-row > strong { font: 600 var(--text-3xl)/1 var(--font-display); min-width: 2ch; color: var(--accent-text); }
.ws-attention-row > span:nth-child(2) { flex: 1; }
.ws-attention-row small, .ws-event-list time, .ws-history small, .ws-log-row small { display: block; margin-block-start: var(--space-1); color: var(--text-secondary); font-size: var(--text-sm); font-weight: 400; }
.ws-attention-row:hover, .ws-log-row:hover { background: var(--bg-hover); }
.ws-section-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); flex-wrap: wrap; margin-block-end: var(--space-5); }
.ws-section-head h2, .ws-section-head h3 { margin: 0; }
.ws-section-head p, .ws-preview-note, .ws-routing > p { color: var(--text-secondary); }
.ws-event-list { margin: 0; padding: 0; list-style: none; }
.ws-event-list li { padding-block: var(--space-4); border-bottom: 1px solid var(--border-subtle); }
.ws-event-list p { margin: var(--space-1) 0; overflow-wrap: anywhere; }
.ws-category { font-size: var(--text-sm); color: var(--accent-text); }
.ws-empty { display: grid; justify-items: center; text-align: center; padding: var(--space-7); color: var(--text-secondary); }
.ws-empty img { object-fit: cover; border-radius: var(--radius-sm); }
.ws-log-filters { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-3); align-items: end; }
.ws-field, .ws-log-filters label, .ws-route-row label, .ws-link-row label, .ws-library label { display: flex; flex-direction: column; gap: var(--space-2); min-width: 0; font-size: var(--text-md); }
.ws-field input, .ws-field select, .ws-field textarea, .ws-log-filters input, .ws-log-filters select, .ws-route-row select, .ws-library select { width: 100%; min-height: 42px; padding-block: var(--space-3); padding-inline-start: var(--space-3); padding-inline-end: var(--control-caret-reserve); background-color: var(--bg-input); color: var(--text-primary); border: 1px solid var(--border-medium); border-radius: var(--radius-sm); font: inherit; }
.ws-field textarea { resize: vertical; line-height: var(--leading-normal); }
.ws-log-workspace { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, 1fr); gap: var(--space-6); align-items: start; }
.ws-log-row { display: grid; grid-template-columns: 100px minmax(0, 1fr) auto; gap: var(--space-3); text-align: start; width: 100%; border: 0; border-bottom: 1px solid var(--border-subtle); padding: var(--space-4); color: var(--text-primary); background: transparent; cursor: pointer; }
.ws-log-row b { font-weight: 500; overflow-wrap: anywhere; }
.ws-log-row[aria-pressed="true"] { background: var(--bg-active); }
.ws-outcome { font-size: var(--text-sm); color: var(--text-secondary); }
.ws-failed { color: var(--danger); }
.ws-inspector { padding: var(--space-5); background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); overflow: hidden; }
.ws-inspector h3 { margin-block-start: 0; }
.ws-facts { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.ws-facts dt { color: var(--text-secondary); font-size: var(--text-sm); }
.ws-facts dd { margin: var(--space-1) 0 0; overflow-wrap: anywhere; }
.ws-event-json { white-space: pre-wrap; overflow-wrap: anywhere; font: var(--text-sm)/1.7 var(--font-mono); }
.ws-pagination { justify-content: space-between; margin-block: var(--space-5); }
.ws-routing { border-block-start: 1px solid var(--border-subtle); margin-block-start: var(--space-8); padding-block: var(--space-5); }
.ws-routing summary, .ws-editor-section summary { cursor: pointer; font-size: var(--text-lg); font-weight: 600; }
.ws-route-row { display: grid; grid-template-columns: minmax(0, 1fr) 1fr auto; gap: var(--space-5); align-items: end; border-bottom: 1px solid var(--border-subtle); padding-block: var(--space-4); }
.ws-check, .ws-route-row .ws-check { display: flex; flex-direction: row; align-items: center; gap: var(--space-2); padding-block: var(--space-2); }
.ws-check input { width: 18px; height: 18px; flex: 0 0 auto; accent-color: var(--accent-text); }
.ws-library { display: flex; align-items: end; flex-wrap: wrap; gap: var(--space-3); margin-block-end: var(--space-6); }
.ws-library label { flex: 1; min-width: 180px; }
.ws-studio { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(300px, 1fr); gap: var(--space-8); align-items: start; }
.ws-composer { display: grid; gap: var(--space-5); min-width: 0; }
.ws-two { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.ws-editor-section { border-top: 1px solid var(--border-subtle); padding-block-start: var(--space-5); }
.ws-editor-section > .ws-two, .ws-editor-section > .ws-field { margin-block-start: var(--space-4); }
.ws-editor-section h3 { margin-block: 0 var(--space-3); }
.ws-field-row, .ws-link-row { padding-block: var(--space-4); border-bottom: 1px solid var(--border-subtle); display: grid; gap: var(--space-3); }
.ws-field-row .ws-actions { margin: 0; }
.ws-editor-actions { padding-block: var(--space-5); }
.ws-preview { position: sticky; top: var(--space-5); padding: var(--space-5); border: 1px solid var(--border-medium); border-radius: var(--radius-md); min-width: 0; background: var(--bg-surface); }
.ws-preview-note { font-size: var(--text-sm); }
.ws-discord-author { display: flex; align-items: center; gap: var(--space-2); margin-block: var(--space-6) var(--space-4); }
.ws-discord-author svg { color: var(--accent-text); }
.ws-discord-author span { font: 600 var(--text-xs)/1 var(--font-sans); color: var(--text-secondary); }
.ws-discord-content { white-space: pre-wrap; overflow-wrap: anywhere; line-height: var(--leading-normal); }
.ws-discord-content a, .ws-discord-links a { color: var(--accent-text); text-decoration: underline; }
.ws-discord-embed { background: var(--bg-card-elevated); border-inline-start: 4px solid var(--accent-text); padding: var(--space-4); border-radius: var(--radius-xs); margin-block: var(--space-3); display: flow-root; }
.ws-discord-embed h4 { margin-block: var(--space-3); font-size: var(--text-lg); overflow-wrap: anywhere; }
.ws-discord-byline, .ws-discord-footer { display: flex; align-items: center; gap: var(--space-2); overflow-wrap: anywhere; }
.ws-discord-footer { margin-block-start: var(--space-3); font-size: var(--text-sm); }
.ws-discord-byline img, .ws-discord-footer img { width: 24px; height: 24px; border-radius: 50%; object-fit: cover; }
.ws-discord-thumb { float: inline-end; width: 64px; height: 64px; object-fit: cover; margin-inline-start: var(--space-3); }
.ws-discord-image { max-width: 100%; height: auto; margin-block-start: var(--space-4); }
.ws-discord-fields { display: flex; flex-wrap: wrap; gap: var(--space-4); }
.ws-discord-fields > div { flex-basis: 100%; min-width: 0; }
.ws-discord-fields .ws-inline-field { flex: 1 1 40%; }
.ws-discord-fields dt { font-weight: 600; overflow-wrap: anywhere; }
.ws-discord-fields dd { margin: var(--space-1) 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.ws-discord-links { display: flex; gap: var(--space-3); flex-wrap: wrap; }
.ws-discord-links a { border: 1px solid var(--border-medium); padding: var(--space-2); border-radius: var(--radius-sm); }
.ws-sent { margin-block: var(--space-9); }
.ws-history > div { display: flex; align-items: center; gap: var(--space-5); padding-block: var(--space-4); border-bottom: 1px solid var(--border-subtle); }
.ws-history > div > span:first-child { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.ws-ticket-columns { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, 1fr); gap: var(--space-5); align-items: start; }
.ws-ticket-columns .tk-panel { margin-block-start: 0; }
.ws-rating { padding: var(--space-5); border-block: 1px solid var(--border-subtle); margin-block: var(--space-5); }
.ws-rating-bars { display: flex; flex-wrap: wrap; gap: var(--space-4); color: var(--text-secondary); }
.ws-rating blockquote { margin-inline: 0; padding-inline-start: var(--space-4); border-inline-start: 2px solid var(--accent-text); overflow-wrap: anywhere; }
@media (max-width: 1100px) { .ws-ticket-columns { grid-template-columns: 1fr; } .ws-log-row { grid-template-columns: 80px minmax(0, 1fr); } .ws-log-row .ws-outcome { grid-column: 2; } }
@media (max-width: 760px) {
  .ws-hub-intro, .ws-hub-body, .ws-studio, .ws-log-workspace { grid-template-columns: 1fr; gap: var(--space-5); }
  .ws-hub-intro h2 { max-width: none; }
  .ws-hub-intro > img { max-height: 210px; object-fit: cover; object-position: right; }
  .ws-preview { position: static; }
  .ws-log-filters, .ws-two { grid-template-columns: 1fr 1fr; }
  .ws-route-row { grid-template-columns: 1fr; gap: var(--space-2); }
  .ws-history > div { flex-wrap: wrap; gap: var(--space-3); }
  .ws-history > div > span:first-child { flex-basis: 100%; }
  .ws-facts { grid-template-columns: 1fr; }
}
@media (max-width: 420px) { .ws-two, .ws-log-filters { grid-template-columns: 1fr; } }

.ws-advanced-filters summary { cursor: pointer; padding-block: var(--space-3); color: var(--text-secondary); }
.ws-advanced-filters[open] { grid-column: 1 / -1; }
.ws-log-extra { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
@media (max-width: 760px) { .ws-log-extra { grid-template-columns: 1fr 1fr; } }
@media (max-width: 420px) { .ws-log-filters { grid-template-columns: 1fr 1fr; } .ws-log-extra { grid-template-columns: 1fr; } }
