/*
 * Shared U.S. experience language.
 * The signed-in portal is the source of truth: warm paper, architectural ink,
 * restrained clay, square construction details, and serif display type.
 */

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) {
  --bg: var(--arch-paper);
  --card: var(--arch-paper-raised);
  --text: var(--arch-ink);
  --sub: var(--arch-muted);
  --sub2: var(--arch-ink-soft);
  --line: var(--arch-rule-soft);
  --blue: var(--arch-clay);
  --blue-dark: var(--arch-clay-dark);
  --blue-bg: var(--arch-clay-soft);
  --green: var(--arch-moss);
  --radius: 2px;
  --shadow: var(--arch-shadow-soft);
  background: var(--arch-paper-deep);
  color: var(--arch-ink);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) #app {
  background: var(--arch-paper);
  box-shadow: 0 0 0 1px var(--arch-rule-soft);
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"]
) #header {
  border-bottom: 1px solid var(--arch-rule-soft);
  background: rgba(242, 238, 230, .97);
  backdrop-filter: none;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"]
) .progress-track {
  height: 2px;
  border-radius: 0;
  background: var(--arch-rule);
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"]
) .progress-fill {
  border-radius: 0;
  background: var(--arch-clay);
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"]
) .back-btn {
  border-radius: 0;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"]
) .headline,
.community-title,
.community-detail-info h1 {
  color: var(--arch-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  letter-spacing: -.035em;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) :is(.card, .sheet) {
  border: 1px solid var(--arch-rule-soft);
  border-radius: 2px;
  background: var(--arch-paper-raised);
  box-shadow: none;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) .btn {
  border-radius: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .035em;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) .btn-primary {
  border: 1px solid var(--arch-clay);
  background: var(--arch-clay);
  color: #fffaf2;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) .btn-primary:hover {
  border-color: var(--arch-clay-dark);
  background: var(--arch-clay-dark);
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) .btn-sub {
  border: 1px solid var(--arch-rule);
  background: transparent;
  color: var(--arch-ink);
  box-shadow: none;
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"],
  [data-route="community"],
  [data-route="community-detail"]
) :is(.btn, .chip, button, a):focus-visible {
  outline-color: var(--arch-clay);
}

body:is(
  [data-route="capture"],
  [data-route="plans"],
  [data-route="brief"],
  [data-route="studio"],
  [data-route="quote"],
  [data-route="bids"]
) #cta-bar {
  border-top: 1px solid var(--arch-rule-soft);
  background: var(--arch-paper);
}

body:is([data-route="plans"], [data-route="studio"], [data-route="quote"], [data-route="bids"])
  :is(.chip, .variant-chip, .us-unit-toggle, .us-unit-toggle button, .segment, .segment button) {
  border-radius: 0;
}

/* Floor-plan selection keeps the same architectural-paper character. */
body[data-route="plans"] .us-plan-method-note {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
  color: var(--arch-muted);
}

body[data-route="plans"] .us-plan-method-note strong,
body[data-route="plans"] .us-plan-tags span {
  color: var(--arch-clay);
}

body[data-route="plans"] .us-plan-filters button {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: transparent;
  color: var(--arch-muted);
}

body[data-route="plans"] .us-plan-filters button.is-active {
  border-color: var(--arch-clay);
  background: var(--arch-clay);
  color: #fffaf2;
}

body[data-route="plans"] .us-plan-card {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
  box-shadow: none;
}

body[data-route="plans"] .us-plan-card:hover {
  border-color: var(--arch-clay);
  box-shadow: var(--arch-shadow-lift);
}

body[data-route="plans"] .us-plan-card.is-selected {
  border-color: var(--arch-clay);
  box-shadow: inset 0 -3px var(--arch-clay);
}

body[data-route="plans"] .us-plan-canvas-wrap {
  background: var(--arch-paper-deep);
}

body[data-route="plans"] .us-plan-selected-badge {
  border-radius: 0;
  background: var(--arch-clay);
}

body[data-route="plans"] :is(.us-plan-card-title, .us-plan-head-tools strong) { color: var(--arch-ink); }
body[data-route="plans"] :is(.us-plan-card-type, .us-plan-level-note, .us-plan-head-tools) { color: var(--arch-muted); }
body[data-route="plans"] .us-plan-specs span { border-radius: 0; background: var(--arch-paper-deep); color: var(--arch-ink-soft); }
body[data-route="plans"] .us-plan-refine select { border-color: var(--arch-rule); border-radius: 0; background: var(--arch-paper-raised); color: var(--arch-ink); }
body[data-route="plans"] .us-unit-toggle { border-color: var(--arch-rule); background: var(--arch-paper-deep); }
body[data-route="plans"] .us-unit-toggle button { color: var(--arch-muted); }
body[data-route="plans"] .us-unit-toggle button.is-active { background: var(--arch-paper-raised); color: var(--arch-ink); box-shadow: none; }

/* Live design studio: dark areas stay neutral architectural ink, never SaaS blue. */
body[data-route="studio"] .us-studio-screen > header > div:first-child,
body[data-route="quote"] .us-studio-screen > header > div:first-child {
  color: var(--arch-clay) !important;
}

body[data-route="studio"] .us-live-budget {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: rgba(251, 248, 242, .98);
  box-shadow: var(--arch-shadow-soft);
  backdrop-filter: none;
}

body[data-route="studio"] .us-live-budget-copy span { color: var(--arch-clay); }
body[data-route="studio"] .us-live-budget-copy strong { color: var(--arch-ink); }
body[data-route="studio"] .us-live-budget-copy small { color: var(--arch-muted); }
body[data-route="studio"] .us-budget-details-btn {
  border-color: var(--arch-ink);
  border-radius: 0;
  background: transparent;
  color: var(--arch-ink);
}

body[data-route="studio"] .us-budget-total strong { color: var(--arch-clay); }
body[data-route="studio"] .us-budget-disclaimer { border-radius: 0; background: var(--arch-paper-deep); color: var(--arch-muted); }

body[data-route="studio"] .live-studio {
  border: 1px solid var(--arch-ink);
  border-radius: 0;
  background: var(--arch-ink);
  color: #f7f2e9;
  box-shadow: none;
}

body[data-route="studio"] .live-eyebrow { color: #e17a61; }
body[data-route="studio"] .live-copy,
body[data-route="studio"] .live-update-status { color: #c7beb2; }

body[data-route="studio"] .live-room-required {
  grid-column: 1 / -1;
  min-height: 180px;
  display: grid;
  place-content: center;
  gap: 8px;
  padding: 24px;
  border: 1px solid rgba(231, 220, 205, .24);
  background: rgba(255, 255, 255, .035);
  color: #f4eee5;
  text-align: center;
}

body[data-route="studio"] .live-room-required span {
  max-width: 32rem;
  color: #c7beb2;
  font-size: 12px;
  line-height: 1.55;
}

body[data-route="studio"] .live-tab {
  border-color: #5d574f;
  border-radius: 0;
  background: transparent;
  color: #c7beb2;
}

body[data-route="studio"] .live-tab.on {
  border-color: var(--arch-paper-raised);
  background: var(--arch-paper-raised);
  color: var(--arch-ink);
}

body[data-route="studio"] .live-studio .chip {
  border-color: #5d574f;
  background: transparent;
  color: #c7beb2;
}

body[data-route="studio"] .live-studio .chip.on {
  border-color: #e17a61;
  background: var(--arch-clay);
  color: #fffaf2;
}

body[data-route="studio"] .live-product-card {
  border-color: #5d574f;
  border-radius: 0;
  background: #2e2b27;
  box-shadow: none;
}

body[data-route="studio"] .live-product-card:hover { border-color: #aaa195; background: #37332d; }
body[data-route="studio"] .live-product-card.selected {
  border-color: #e17a61;
  background: #3f302b;
  box-shadow: inset 0 -3px #e17a61;
}

body[data-route="studio"] .live-product-tier,
body[data-route="studio"] .live-product-price { color: #e8a08e; }
body[data-route="studio"] .live-product-code { color: #aaa195; }
body[data-route="studio"] .live-product-info > span { border-color: #f7f2e9; background: rgba(33, 31, 27, .94); }
body[data-route="studio"] .live-product-info:hover > span { background: var(--arch-clay-dark); }
body[data-route="studio"] .live-product-selected-mark { background: var(--arch-clay); }

body[data-route="studio"] .us-render-quota {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
}

body[data-route="studio"] .us-render-tier { border-radius: 0; background: var(--arch-paper-deep); }
body[data-route="studio"] .us-render-tier button { border-radius: 0; color: var(--arch-muted); }
body[data-route="studio"] .us-render-tier button.is-active { color: var(--arch-clay); background: var(--arch-paper-raised); box-shadow: none; }
body[data-route="studio"] .us-quota-track { border-radius: 0; background: var(--arch-rule-soft); }
body[data-route="studio"] .us-quota-track span { border-radius: 0; background: var(--arch-clay); }

body[data-route="studio"] .preview-demo-tools > :is(button, a),
body[data-route="studio"] .preview-community-actions button {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: transparent;
  color: var(--arch-ink);
}

body[data-route="studio"] .preview-community-actions {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
}

body[data-route="studio"] .variant-chip.on {
  border-color: var(--arch-clay);
  background: var(--arch-clay-soft);
  color: var(--arch-clay-dark);
}

body[data-route="studio"] .variant-progress {
  border: 1px solid var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
  color: var(--arch-clay-dark);
}

body[data-route="studio"] .variant-progress-track { border-radius: 0; background: var(--arch-rule-soft); }
body[data-route="studio"] .variant-progress-fill { border-radius: 0; background: var(--arch-clay); }
body[data-route="studio"] .variant-result-card { border-color: var(--arch-rule-soft); border-radius: 0; background: var(--arch-paper-raised); }
body[data-route="studio"] .variant-product-lock { color: var(--arch-moss); }
body[data-route="studio"] .pipe-step.active .pipe-dot { background: var(--arch-clay); box-shadow: 0 0 0 4px var(--arch-clay-soft); }

/* The estimate is a continuation of the studio, not a return to blue SaaS UI. */
body[data-route="quote"] .quote-unit-tools { color: var(--arch-muted); }
body[data-route="quote"] .us-unit-toggle { border-color: var(--arch-rule); background: var(--arch-paper-deep); }
body[data-route="quote"] .us-unit-toggle button { color: var(--arch-muted); }
body[data-route="quote"] .us-unit-toggle button.is-active { background: var(--arch-paper-raised); color: var(--arch-ink); box-shadow: none; }
body[data-route="quote"] .variant-result-card { border-color: var(--arch-rule-soft); border-radius: 0; background: var(--arch-paper-raised); }
body[data-route="quote"] .variant-product-lock { color: var(--arch-moss); }
body[data-route="quote"] .live-product-info > span { border-color: var(--arch-paper-raised); background: rgba(33, 31, 27, .94); }
body[data-route="quote"] .live-product-info:hover > span { background: var(--arch-clay-dark); }
body[data-route="quote"] .est-row { border-color: var(--arch-rule-soft); }
body[data-route="quote"] .product-detail-evidence a { color: var(--arch-clay); }

/* Simulated proposals inherit the same editorial estimate language. */
body[data-route="bids"] {
  --build-ink: var(--arch-ink);
  --build-muted: var(--arch-muted);
  --build-line: var(--arch-rule-soft);
  --build-soft: var(--arch-paper-deep);
  --build-blue: var(--arch-clay);
  --build-navy: var(--arch-ink);
  --build-green: var(--arch-moss);
  --build-radius: 2px;
  --build-shadow: none;
}

body[data-route="bids"] .build-bids-screen { color: var(--arch-ink); }
body[data-route="bids"] .build-screen-intro { border-bottom: 1px solid var(--arch-ink); }
body[data-route="bids"] .build-screen-intro h1 {
  color: var(--arch-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}
body[data-route="bids"] :is(.build-eyebrow, .build-text-button, .bid-price-row > div:first-child strong) { color: var(--arch-clay); }
body[data-route="bids"] .build-bids-screen :is(button, input):focus-visible { outline-color: var(--arch-clay); }
body[data-route="bids"] .build-demo-notice { border-radius: 0; }
body[data-route="bids"] .build-demo-notice-mark { border-radius: 0; }
body[data-route="bids"] .bid-estimate-summary {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-rule-soft);
  box-shadow: none;
}
body[data-route="bids"] .bid-estimate-summary > div { background: var(--arch-paper-raised); }
body[data-route="bids"] :is(.build-service-note, .build-concept-note) {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
  color: var(--arch-muted);
}
body[data-route="bids"] .bid-card {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
  box-shadow: none;
}
body[data-route="bids"] .bid-card.is-selected {
  border-color: var(--arch-clay);
  box-shadow: inset 0 -3px var(--arch-clay);
}
body[data-route="bids"] :is(.bid-price-row, .bid-product-row) { border-color: var(--arch-rule-soft); }
body[data-route="bids"] :is(.bid-allowance-row, .bid-credential-note) { border-radius: 0; background: var(--arch-paper-deep); }
body[data-route="bids"] .bid-select-button {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: transparent;
  color: var(--arch-ink);
}
body[data-route="bids"] .bid-card.is-selected .bid-select-button {
  border-color: var(--arch-clay);
  background: var(--arch-clay-soft);
  color: var(--arch-clay-dark);
}
body[data-route="bids"] .bid-select-button input { accent-color: var(--arch-clay); }
body[data-route="bids"] .bid-award-bar {
  border-color: var(--arch-ink);
  border-radius: 0;
  background: var(--arch-paper-raised);
  box-shadow: var(--arch-shadow-lift);
  backdrop-filter: none;
}
body[data-route="bids"] .bid-award-bar .build-primary-action { border-radius: 0; }

/* Project Hub is the portal's third branch and shares its dark-ink ledger tone. */
body[data-route="project"] {
  --bg: var(--arch-paper);
  --card: var(--arch-paper-raised);
  --text: var(--arch-ink);
  --sub: var(--arch-muted);
  --sub2: var(--arch-ink-soft);
  --line: var(--arch-rule-soft);
  --blue: var(--arch-clay);
  --blue-dark: var(--arch-clay-dark);
  --blue-bg: var(--arch-clay-soft);
  --green: var(--arch-moss);
  --radius: 2px;
  --shadow: var(--arch-shadow-soft);
  --build-ink: var(--arch-ink);
  --build-muted: var(--arch-muted);
  --build-line: var(--arch-rule-soft);
  --build-soft: var(--arch-paper-deep);
  --build-blue: var(--arch-clay);
  --build-navy: var(--arch-ink);
  --build-green: var(--arch-moss);
  --build-radius: 2px;
  --build-shadow: none;
  background: var(--arch-paper-deep);
  color: var(--arch-ink);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

body[data-route="project"] #app { background: var(--arch-paper); box-shadow: 0 0 0 1px var(--arch-rule-soft); }
body[data-route="project"] #header { border-bottom: 1px solid var(--arch-rule-soft); background: rgba(242, 238, 230, .97); backdrop-filter: none; }
body[data-route="project"] .progress-track { height: 2px; border-radius: 0; background: var(--arch-rule); }
body[data-route="project"] .progress-fill { border-radius: 0; background: var(--arch-clay); }
body[data-route="project"] .back-btn,
body[data-route="project"] .btn { border-radius: 0; }
body[data-route="project"] .btn-primary { border: 1px solid var(--arch-clay); background: var(--arch-clay); color: #fffaf2; }
body[data-route="project"] .btn-sub { border: 1px solid var(--arch-rule); background: transparent; color: var(--arch-ink); box-shadow: none; }
body[data-route="project"] .build-project-screen :is(button, textarea, a):focus-visible { outline-color: var(--arch-clay); }
body[data-route="project"] .build-demo-notice,
body[data-route="project"] .build-demo-notice-mark { border-radius: 0; }

body[data-route="project"] .build-project-hero {
  border-radius: 0;
  background: var(--arch-ink);
  color: #f7f2e9;
  box-shadow: none;
}

body[data-route="project"] .build-project-title-row > div:first-child > span { color: #e17a61; }
body[data-route="project"] .build-project-title-row h1 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
body[data-route="project"] .build-project-title-row p,
body[data-route="project"] .build-project-budget :is(span, small) { color: #c7beb2; }
body[data-route="project"] .build-project-budget { border-radius: 0; }
body[data-route="project"] .build-progress-track { border-radius: 0; background: var(--arch-rule-soft); }
body[data-route="project"] .build-progress-track span { border-radius: 0; background: var(--arch-clay); }
body[data-route="project"] .build-project-hero .build-progress-track { background: #5d574f; }
body[data-route="project"] .build-project-hero .build-progress-track span { background: #e17a61; }

body[data-route="project"] .build-tabs {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
  box-shadow: none;
  backdrop-filter: none;
}
body[data-route="project"] .build-tabs button { border-radius: 0; color: var(--arch-muted); }
body[data-route="project"] .build-tabs button.is-active { background: var(--arch-clay-soft); color: var(--arch-clay-dark); box-shadow: inset 0 -2px var(--arch-clay); }
body[data-route="project"] :is(.build-service-note, .build-concept-note) {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
  color: var(--arch-muted);
}

body[data-route="project"] :is(
  .build-metric-card,
  .build-panel,
  .build-log-card,
  .build-budget-hero,
  .build-change-card,
  .build-message-thread,
  .build-message-composer,
  .build-team-card,
  .build-empty.is-project-empty
) {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
  box-shadow: none;
}

body[data-route="project"] .build-phase-list li.is-active { border-color: var(--arch-clay); }
body[data-route="project"] .build-phase-list li.is-active > span { border-color: #e8a08e; background: var(--arch-clay); }
body[data-route="project"] .build-decision-row { border-radius: 0; }
body[data-route="project"] .build-photo { border-radius: 0; background: var(--arch-paper-deep); }
body[data-route="project"] .build-photo-fallback { background: var(--arch-paper-deep); }
body[data-route="project"] .build-photo figcaption { background: var(--arch-paper-raised); }
body[data-route="project"] .build-inline-stats > div,
body[data-route="project"] .build-log-detail-grid section { border-radius: 0; background: var(--arch-paper-deep); }
body[data-route="project"] .build-section-lead .btn,
body[data-route="project"] .build-change-actions .btn,
body[data-route="project"] .build-message-composer .btn { border-radius: 0; }
body[data-route="project"] .build-log-day { border-radius: 0; background: var(--arch-clay-soft); color: var(--arch-clay-dark); }
body[data-route="project"] .build-log-footer { border-color: var(--arch-rule-soft); background: var(--arch-paper-raised); }
body[data-route="project"] .build-cost-table :is(th, td),
body[data-route="project"] :is(.build-cost-summary-list, .build-definition-list) > div { border-color: var(--arch-rule-soft); }
body[data-route="project"] .build-cost-table thead th { background: var(--arch-paper-deep); }
body[data-route="project"] .build-change-impact { border-color: var(--arch-rule-soft); border-radius: 0; background: var(--arch-rule-soft); }
body[data-route="project"] .build-change-impact > div { background: var(--arch-paper-deep); }

body[data-route="project"] .build-message-thread { background: var(--arch-paper-deep); }
body[data-route="project"] .build-message-avatar { background: var(--arch-moss-soft); color: var(--arch-moss); }
body[data-route="project"] .build-message.is-mine .build-message-avatar { background: var(--arch-clay-soft); color: var(--arch-clay-dark); }
body[data-route="project"] .build-message p { border-radius: 0; background: var(--arch-paper-raised); color: var(--arch-ink-soft); box-shadow: none; }
body[data-route="project"] .build-message.is-mine p { background: var(--arch-clay-soft); }
body[data-route="project"] .build-message-composer textarea { border-color: var(--arch-rule); border-radius: 0; background: var(--arch-paper-raised); color: var(--arch-ink); }
body[data-route="project"] .build-team-avatar { border-radius: 0; background: var(--arch-clay-soft); color: var(--arch-clay-dark); }
body[data-route="project"] .build-document-list article,
body[data-route="project"] .build-document-icon { border-radius: 0; }

/* Feedback remains functional but visually belongs to the current experience. */
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-feedback-launcher {
  border-color: var(--arch-ink);
  border-radius: 0;
  background: var(--arch-ink);
  color: #f7f2e9;
  box-shadow: var(--arch-shadow-lift);
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-feedback-dot {
  background: #e17a61;
  box-shadow: 0 0 0 4px rgba(225, 122, 97, .18);
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-end-demo {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
  color: var(--arch-muted);
  box-shadow: var(--arch-shadow-soft);
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-modal-dim {
  background: rgba(33, 31, 27, .68);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-dialog {
  border: 1px solid var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
  color: var(--arch-ink);
  box-shadow: none;
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-dialog:focus-visible {
  box-shadow: 0 0 0 3px rgba(168, 70, 49, .28);
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-kicker { color: var(--arch-clay); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-dialog h2 {
  color: var(--arch-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) :is(.insights-dialog-copy, #insights-consent-copy, .insights-fineprint) { color: var(--arch-muted); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) :is(.insights-privacy-details, .insights-presenter-note) {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper);
  color: var(--arch-muted);
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-presenter-note span { color: var(--arch-muted); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-btn { border-radius: 0; }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-btn-primary { background: var(--arch-clay); color: #fffaf2; }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-btn-primary:hover { background: var(--arch-clay-dark); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-btn-secondary { border-color: var(--arch-rule); background: transparent; color: var(--arch-ink); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) :is(.insights-icon-btn, .insights-kind-tabs, .insights-kind-tab, .insights-choice span, .insights-field-group textarea, .insights-contact-choice) { border-radius: 0; }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-kind-tabs { background: var(--arch-paper-deep); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-kind-tab.is-active { background: var(--arch-paper-raised); color: var(--arch-ink); box-shadow: inset 0 -2px var(--arch-clay); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-choice span { border-color: var(--arch-rule-soft); background: var(--arch-paper-raised); color: var(--arch-muted); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-choice input:checked + span { border-color: var(--arch-clay); background: var(--arch-clay-soft); color: var(--arch-clay-dark); box-shadow: inset 0 0 0 1px var(--arch-clay); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-field-group textarea { border-color: var(--arch-rule); background: var(--arch-paper-raised); color: var(--arch-ink); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-field-group textarea:focus { border-color: var(--arch-clay); outline-color: var(--arch-clay-soft); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-contact-choice { background: var(--arch-paper); color: var(--arch-ink-soft); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-contact-choice input { accent-color: var(--arch-clay); }
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) :is(
  .insights-btn,
  .insights-icon-btn,
  .insights-kind-tab,
  .insights-feedback-launcher,
  .insights-end-demo
):focus-visible {
  outline: 3px solid rgba(168, 70, 49, .38);
  outline-offset: 2px;
}
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-choice input:focus-visible + span,
body:is([data-route="studio"], [data-route="quote"], [data-route="bids"], [data-route="project"]) .insights-contact-choice input:focus-visible + span {
  outline: 3px solid rgba(168, 70, 49, .38);
  outline-offset: 2px;
}

/* Community gallery and project detail use the same editorial hierarchy. */
.community-screen {
  --community-ink: var(--arch-ink);
  --community-muted: var(--arch-muted);
  --community-line: var(--arch-rule-soft);
  --community-accent: var(--arch-clay);
  padding-top: 26px;
  color: var(--arch-ink);
}

.community-header {
  margin-bottom: 26px;
  padding-bottom: 25px;
  border-bottom: 1px solid var(--arch-ink);
}

.community-back {
  color: var(--arch-muted);
  font-size: 11px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.community-back:hover,
.community-eyebrow,
.community-card-label { color: var(--arch-clay); }

.community-back:focus-visible,
.community-tile:focus-visible,
.community-like:focus-visible { outline-color: var(--arch-clay); }

.community-eyebrow,
.community-card-label {
  font-size: 10px;
  letter-spacing: .16em;
}

.community-title { font-size: clamp(40px, 5vw, 66px); line-height: .98; }

.community-tile {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
  box-shadow: none;
}

.community-tile:hover {
  border-color: var(--arch-clay);
  box-shadow: var(--arch-shadow-lift);
}

.community-tile-image { background: var(--arch-paper-deep); }
.community-tile-price { border-radius: 0; background: rgba(33, 31, 27, .86); }
.community-tile-title { font-family: Georgia, "Times New Roman", serif; font-size: 20px; font-weight: 400; }
.community-tile-stats { color: var(--arch-muted); }
.community-avatar { background: var(--arch-clay-soft); color: var(--arch-clay-dark); }

.community-state {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
}

.community-spinner { border-color: var(--arch-rule-soft); border-top-color: var(--arch-clay); }

.community-detail-layout,
.community-detail-card {
  border-color: var(--arch-rule-soft);
  border-radius: 0;
  background: var(--arch-paper-raised);
  box-shadow: none;
}

.community-detail-visual,
.community-publish-preview { background: var(--arch-paper-deep); }

.community-like {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: transparent;
  color: var(--arch-ink-soft);
}

.community-like.is-liked { border-color: var(--arch-clay); background: var(--arch-clay-soft); color: var(--arch-clay-dark); }

.community-quote-card {
  border-color: var(--arch-ink);
  background: var(--arch-ink);
  color: #f7f2e9;
}

.community-quote-card .community-card-label { color: #e17a61; }
.community-quote-range { color: #c7beb2; }
.community-product,
.community-comment { border-color: var(--arch-rule-soft); }

.community-comment-form textarea,
.community-publish-form input,
.community-publish-form textarea {
  border-color: var(--arch-rule);
  border-radius: 0;
  background: var(--arch-paper-raised);
  color: var(--arch-ink);
}

.community-comment-form textarea:focus,
.community-publish-form input:focus,
.community-publish-form textarea:focus {
  border-color: var(--arch-clay);
  outline-color: var(--arch-clay-soft);
}

.community-comment-copy p { color: var(--arch-ink-soft); }
.community-publish-form { --community-muted: var(--arch-muted); --community-accent: var(--arch-clay); }
.community-publish-summary-card { border-radius: 0; background: var(--arch-paper-deep); }

@media (max-width: 620px) {
  .community-header { margin-bottom: 18px; }
  .community-title { font-size: clamp(39px, 13vw, 56px); }
  body[data-route="studio"] .us-live-budget { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  body[data-route="plans"] .us-plan-card,
  body[data-route="studio"] .live-product-card { transition: none; }
}
