/* Marina: deliberate structure, preserving Staffmor's existing palette/type/art.
   Opt in with office-boundaries on the stable shell; load after companions.
   Stroke changes do not resize the console or add boxes around message rows. */
.office-console-shell.office-boundaries {
  --office-structure-line:color-mix(in srgb,var(--ink) 16%,var(--ground,var(--surface)));
  --office-contained-line:color-mix(in srgb,var(--ink) 22%,var(--surface));
  --office-rail-divider:color-mix(in srgb,var(--rail-ink) 18%,var(--rail-bg));
}

/* One owner for each existing column edge. Keep its original border width. */
.office-console-shell.office-boundaries>.workspace-global-nav,
.office-console-shell.office-boundaries>.rail,
.office-console-shell.office-boundaries .rail>.rail-inner {
  border-right-color:var(--office-rail-divider);
}
.office-console-shell.office-boundaries .office-reading-pane>:is(.staffmor-context,.thread-panel),
.office-console-shell.office-boundaries .office-thread-panel {
  border-left-color:var(--office-structure-line);
}

/* Remove the old reading-pane bottom inset: the dock alone owns this seam. */
.office-console-shell.office-boundaries .office-reading-pane {box-shadow:none}

/* The console tray's edge runs across the whole working column. An inset
   stroke adds no height and preserves the exact form/Send rectangle. */
.office-console-shell.office-boundaries .office-console-dock {
  box-shadow:inset 0 1px 0 var(--office-structure-line);
}
.office-console-shell.office-boundaries .office-reading-pane>.staffmor-feedback {
  border-bottom-color:var(--office-structure-line);
}

/* Whole-column chat headers bleed to the reading edges while their text keeps
   its original inset. Nested desktop thread headers retain their own bounds. */
.office-console-shell.office-boundaries .office-reading-body>:is(.channel.conversation,.remote-conversation) {
  /* Decorative header bleed occupies existing reading padding. Feed remains
     its existing independent scroll owner; min-height/height are untouched. */
  overflow:visible;
}
.office-console-shell.office-boundaries .office-reading-body>:is(.channel.conversation,.remote-conversation)>
  :is(.conversation-head,.remote-page-head) {
  margin-inline:calc(-1 * var(--office-page-inset,24px));
  padding-inline:var(--office-page-inset,24px);
  border-bottom-color:var(--office-structure-line);
}
.office-console-shell.office-boundaries :is(
  .thread-head,.office-thread-panel>.remote-page-head,.staffmor-context-head,
  .thread-history-recovery,.thread-write
) {
  border-color:var(--office-structure-line);
}

/* Page headings are a genuine band, separate from contained cards below. */
.office-console-shell.office-boundaries :is(
  .home-dashboard-heading,.workspace-global-page>header
) {
  margin-inline:calc(-1 * var(--office-page-inset,24px));
  padding-inline:var(--office-page-inset,24px);
  padding-bottom:12px;
  box-shadow:inset 0 -1px 0 var(--office-structure-line);
}

/* These already contain a distinct object or action. Quiet their existing
   outlines without changing width/radius or form-control/focus borders. */
.office-console-shell.office-boundaries :is(
  .comm-connected-apps,.home-dashboard-inbox-link,.home-focus-priority-list,
  .workspace-settings-group,.workspace-lock-card,.comm-pair-dialog
) {border-color:var(--office-contained-line)}

@media(max-width:820px) {
.office-console-shell.office-boundaries:not(.office-navigation-open)>.rail>.rail-inner {
    box-shadow:inset 0 -1px 0 var(--office-rail-divider);
  }
}
