/* Global surface policy: pages are pages, rows are rows, cards are exceptional.
   This file owns general non-home page surfaces only. Lead structure, focus scrolling,
   semantic color and icon treatment are owned by their dedicated stylesheets. */

body .shell {
  touch-action: pan-x pan-y pinch-zoom;
}

body #app,
body .shell,
body .shell > * {
  min-width: 0;
  max-width: 100%;
}

body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) {
  width: min(760px, 100%);
  margin-inline: auto;
  padding-right: 16px;
  padding-left: 16px;
}

body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) > .hero,
body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) > .primary-area-bar,
body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) > .panel,
body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) > .messages-placeholder {
  width: 100%;
  max-width: 100%;
  margin-right: 0;
  margin-left: 0;
}

body .shell[data-primary-area]:not([data-primary-area='home']) .disclosure,
body .shell[data-primary-area]:not([data-primary-area='home']) .disclosure__content {
  min-width: 0;
  max-width: 100%;
}

/* Non-home primary areas are continuous surfaces instead of stacks of rounded panels. */
body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) > .panel:not(.panel--utility) {
  margin: 0;
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid rgb(96 125 165 / .20);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  overflow: visible;
}

body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) > .panel:not(.panel--utility)::before {
  display: none;
}

body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) > .panel:not(.panel--utility):last-of-type {
  border-bottom: 0;
}

/* Disclosure arrows are navigation affordances, not circular mini-cards. */
body .shell[data-primary-area]:not([data-primary-area='home']) .disclosure > summary::after {
  width: 1.6rem;
  height: 1.6rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Messages placeholder is page content, not a placeholder card. */
body .shell[data-primary-area='messages'] > .messages-placeholder {
  margin: 0;
  padding: 16px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Settings is one page split by dividers. Backup, integrity and about are sections, not cards. */
body .settings-content {
  display: block;
}

body .settings-content > * {
  margin: 0;
  padding: 18px 0;
  border: 0;
  border-top: 1px solid rgb(96 125 165 / .22);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

body .settings-content > *:first-child {
  padding-top: 0;
  border-top: 0;
}

body .settings-content > .panel::before {
  display: none;
}

body .settings-content .panel,
body .settings-content .backup-panel,
body .settings-content .settings-about {
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Form controls remain recognizably interactive without floating-card elevation. */
body .shell[data-primary-area]:not([data-primary-area='home']) input,
body .shell[data-primary-area]:not([data-primary-area='home']) select,
body .shell[data-primary-area]:not([data-primary-area='home']) textarea {
  border-radius: 9px;
  box-shadow: none;
}

/* Primary-area home/back navigation is a control, not a floating pill-card. */
body .shell[data-primary-area]:not([data-primary-area='home']) .primary-area-home {
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}

/* Home modules deliberately remain independent summary/navigation objects. */
body .shell[data-primary-area='home'] .home-dashboard__metric,
body .shell[data-primary-area='home'] .home-dashboard__lead-preview,
body .shell[data-primary-area='home'] .home-dashboard__messages-button {
  /* Intentionally not flattened. */
}

@media (max-width: 620px) {
  body .shell[data-primary-area]:not([data-primary-area='home']):not(.shell--section-focus) {
    width: 100%;
    padding-right: 14px;
    padding-left: 14px;
  }
}
