:root {
  --bg: #0b1016;
  --bg-soft: #101720;
  --panel: #151d27;
  --panel-alt: #1a2430;
  --panel-border: #2a3644;
  --text: #f4f7fb;
  --muted: #9aa8b8;
  --muted-2: #718092;
  --orange: #ff6a00;
  --orange-soft: rgba(255, 106, 0, 0.14);
  --orange-border: rgba(255, 106, 0, 0.42);
  --green: #53d38a;
  --danger: #ff6f6f;
  --danger-soft: rgba(255, 111, 111, 0.12);
  --shadow: 0 18px 45px rgba(0, 0, 0, 0.24);
  --radius: 20px;
  --radius-small: 12px;
  --sidebar-width: 250px;
  --content-max: 1500px;
}

/* =========================================================
   ANCHOR v1.01 — ARK PERSONAL CONFIGURATION
========================================================= */

.brand-mark {
  background: linear-gradient(145deg, #ff7a1a, #d94e00);
}

.ark-status-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: -4px 0 14px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 106, 0, 0.26);
  border-radius: 12px;
  background: rgba(255, 106, 0, 0.06);
  color: var(--muted);
  font-size: 0.78rem;
}

.ark-status-strip > div {
  display: flex;
  align-items: center;
  gap: 8px;
}

.ark-status-strip strong { color: var(--text); }

.ark-status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 0 4px rgba(83, 211, 138, 0.12);
}

.ark-module {
  position: relative;
}

.ark-module::before {
  content: 'ARK';
  position: absolute;
  top: 10px;
  right: 12px;
  color: rgba(154, 168, 184, 0.26);
  font-size: 0.58rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  pointer-events: none;
}

.ark-module-primary::before { color: rgba(255, 122, 26, 0.58); }

.temporary-project-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}

.temporary-project-grid[hidden] { display: none; }

.temporary-project-tile {
  padding: 14px;
  border: 1px solid var(--orange-border);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(255, 106, 0, 0.13), rgba(16, 23, 32, 0.92));
}

.temporary-project-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.temporary-project-tile strong,
.temporary-project-tile p,
.temporary-project-tile small { display: block; }

.temporary-project-tile p {
  margin: 7px 0;
  color: var(--muted);
  line-height: 1.45;
}

.temporary-project-tile small { color: var(--muted-2); }

.command-summary-row {
  position: relative;
}

.next-best-action-card {
  border-color: rgba(255, 122, 26, 0.42);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(255, 122, 26, 0.06);
}

.active-lanes-card {
  grid-column: span 7;
}

.active-lane-grid,
.email-source-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.active-lane,
.email-source {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 13px;
  border: 1px solid #283543;
  border-radius: 13px;
  background: #101720;
}

.active-lane strong,
.active-lane small,
.email-source strong,
.email-source small {
  display: block;
}

.active-lane small,
.email-source small {
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.35;
}

.lane-dot {
  width: 10px;
  height: 38px;
  flex: 0 0 auto;
  border-radius: 999px;
}

.lane-work { background: #4ea1ff; }
.lane-home { background: #e6b85c; }
.lane-studio { background: var(--orange); }
.lane-personal { background: #8c7cff; }

.capture-grid {
  display: grid;
  grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1.3fr);
  gap: 18px;
}

.capture-manual-card h2,
.flagged-email-card h2 {
  margin: 7px 0 12px;
}

.source-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 11px;
  background: #f1f4f8;
  color: #202833;
  font-weight: 900;
}

.source-one18 {
  background: var(--orange);
  color: #fff;
}

.source-messages {
  background: #42c85a;
  color: #07150a;
}

.intake-flow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0;
  padding: 12px;
  border-radius: 12px;
  background: rgba(255, 106, 0, 0.07);
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.intake-flow b { color: var(--orange); }

@media (max-width: 900px) {
  .active-lanes-card { grid-column: 1 / -1; }
  .capture-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .active-lane-grid,
  .email-source-grid,
  .temporary-project-grid { grid-template-columns: 1fr; }

  .ark-status-strip {
    align-items: flex-start;
    flex-direction: column;
  }
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(
      circle at top right,
      rgba(255, 106, 0, 0.08),
      transparent 28rem
    ),
    var(--bg);
  color: var(--text);
  font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}

button,
input,
textarea {
  font: inherit;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

a {
  color: inherit;
}

button {
  cursor: pointer;
}

textarea {
  resize: vertical;
}

.is-hidden {
  display: none !important;
}

.app-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
}

.sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  padding: 24px 18px;
  display: flex;
  flex-direction: column;
  gap: 28px;
  background: #0d131b;
  border-right: 1px solid #202b36;
  overflow-y: auto;
}

.brand-block {
  display: flex;
  align-items: center;
  gap: 12px;
}

.brand-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 12px;
  background: var(--orange);
  color: #fff;
  font-size: 1.15rem;
  font-weight: 900;
  box-shadow: 0 10px 24px rgba(255, 106, 0, 0.24);
}

.brand-name {
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.1;
}

.brand-subtitle {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
}

.sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.nav-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px 12px;
  border: 1px solid transparent;
  border-radius: 12px;
  color: var(--muted);
  text-decoration: none;
  font-weight: 700;
  transition:
    background 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease,
    transform 0.18s ease;
}

.nav-link:hover {
  color: var(--text);
  background: #141c26;
  transform: translateX(2px);
}

.nav-link.active {
  color: var(--text);
  background: var(--orange-soft);
  border-color: var(--orange-border);
}

.nav-icon {
  width: 20px;
  text-align: center;
  color: var(--orange);
}

.sidebar-footer {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.system-status {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 11px 12px;
  border-radius: 12px;
  background: #131b24;
  border: 1px solid var(--panel-border);
  color: var(--text);
  font-size: 0.88rem;
}

.status-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--green);
  box-shadow: 0 0 0 5px rgba(83, 211, 138, 0.08);
}

.version-label {
  color: var(--muted-2);
  font-size: 0.75rem;
}

.main-content {
  min-width: 0;
  padding: 30px;
}

.dashboard-section {
  display: none;
  width: min(100%, var(--content-max));
  margin: 0 auto;
}

.dashboard-section.active {
  display: block;
}

.page-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.eyebrow,
.card-kicker {
  color: var(--orange);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.page-header h1 {
  margin: 8px 0 0;
  font-size: clamp(2rem, 4vw, 3.5rem);
  line-height: 1;
  letter-spacing: -0.035em;
}

.page-intro {
  max-width: 720px;
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.6;
}

.header-meta {
  padding-top: 4px;
  color: var(--muted);
  font-size: 0.85rem;
  white-space: nowrap;
}

.dashboard-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px;
}

.dashboard-card {
  min-width: 0;
  padding: 22px;
  border: 1px solid var(--panel-border);
  border-radius: var(--radius);
  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.018),
      transparent 42%
    ),
    var(--panel);
  box-shadow: var(--shadow);
}

.card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.card-header h2 {
  margin: 6px 0 0;
  font-size: 1.35rem;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.card-description {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.priorities-card {
  grid-column: span 5;
}

.focus-card {
  grid-column: span 3;
}

.job-card {
  grid-column: span 7;
}

.home-sale-card {
  grid-column: span 5;
}

.house-hunt-card {
  grid-column: span 7;
}

.calendar-live-card {
  grid-column: span 5;
}

.one18-card {
  grid-column: span 5;
}

.weather-card,
.inbox-card {
  grid-column: span 4;
}

.ask-morgan-card {
  grid-column: 1 / -1;
}

.priority-entry,
.ask-row {
  display: flex;
  gap: 10px;
}

.priority-entry input,
.ask-row input,
.form-field input,
.form-field textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid #354252;
  border-radius: 11px;
  background: #0f151d;
  color: var(--text);
  outline: none;
}

.priority-entry input,
.ask-row input,
.form-field input {
  height: 44px;
  padding: 0 13px;
}

.form-field textarea {
  padding: 12px 13px;
  line-height: 1.5;
}

.priority-entry input:focus,
.ask-row input:focus,
.form-field input:focus,
.form-field textarea:focus {
  border-color: var(--orange);
  box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.12);
}

.primary-button,
.secondary-button,
.danger-button {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 11px;
  font-weight: 800;
  transition:
    filter 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease;
}

.primary-button {
  border: 1px solid var(--orange);
  background: var(--orange);
  color: #fff;
}

.primary-button:hover {
  filter: brightness(1.06);
}

.secondary-button {
  border: 1px solid #3a4756;
  background: #202a35;
  color: var(--text);
}

.secondary-button:hover {
  background: #283441;
}

.danger-button {
  border: 1px solid rgba(255, 111, 111, 0.4);
  background: var(--danger-soft);
  color: #ffaaaa;
}

.danger-button:hover {
  background: rgba(255, 111, 111, 0.18);
}

.compact-button {
  min-height: 34px;
  padding: 0 12px;
  font-size: 0.8rem;
}

.icon-button {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 1px solid #3a4756;
  border-radius: 10px;
  background: #202a35;
  color: var(--text);
  font-size: 1.2rem;
}

.icon-button:hover {
  background: #2a3642;
}

.button-row {
  display: flex;
  gap: 10px;
  margin-top: 18px;
}

.priority-list {
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin-top: 16px;
}

.priority-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 12px;
  border-radius: 11px;
  background: #111821;
  border: 1px solid #25313e;
}

.priority-check {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.priority-check span {
  overflow-wrap: anywhere;
}

.priority-check input {
  accent-color: var(--orange);
}

.priority-completed span {
  color: var(--muted-2);
  text-decoration: line-through;
}

.priority-delete {
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--muted);
  font-size: 1.2rem;
}

.priority-delete:hover {
  background: rgba(255, 111, 111, 0.12);
  color: var(--danger);
}

.empty-state {
  padding: 18px;
  border-radius: 12px;
  background: #101720;
  border: 1px dashed #32404f;
  color: var(--muted);
  text-align: center;
  line-height: 1.45;
}

.focus-display {
  margin: 8px 0 12px;
  font-size: clamp(3rem, 8vw, 5.5rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.06em;
  color: var(--text);
}

.live-status {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border: 1px solid rgba(83, 211, 138, 0.22);
  border-radius: 999px;
  background: rgba(83, 211, 138, 0.08);
  color: var(--green);
  font-size: 0.76rem;
  font-weight: 800;
}

.job-metric-row,
.calendar-metric-row {
  display: grid;
  gap: 10px;
  margin-bottom: 18px;
}

.job-metric-row {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.house-metric-row {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.calendar-metric-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.metric-block {
  min-width: 0;
  padding: 13px;
  border-radius: 12px;
  background: #101720;
  border: 1px solid #283543;
}

.metric-block strong {
  display: block;
  font-size: 1.5rem;
  line-height: 1;
}

.metric-block span {
  display: block;
  margin-top: 7px;
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.3;
}

.data-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.data-list-item {
  min-width: 0;
  padding: 14px;
  border-radius: 13px;
  background: #101720;
  border: 1px solid #273441;
}

.data-list-main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.data-list-main strong {
  min-width: 0;
  overflow-wrap: anywhere;
}

.data-list-main span {
  flex: 0 0 auto;
  color: var(--muted);
  text-align: right;
}

.data-list-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 10px;
  color: var(--muted);
  font-size: 0.82rem;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border-radius: 999px;
  background: var(--orange-soft);
  border: 1px solid var(--orange-border);
  color: #ff9b55;
  font-size: 0.75rem;
  font-weight: 800;
}

.card-footer {
  margin-top: 16px;
}

.calendar-card-footer {
  display: flex;
  justify-content: flex-end;
}

.text-link {
  color: var(--orange);
  font-weight: 800;
  text-decoration: none;
}

.text-link:hover {
  text-decoration: underline;
}

.home-sale-summary {
  display: flex;
  align-items: center;
  gap: 18px;
}

.showing-circle {
  width: 96px;
  height: 96px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 50%;
  border: 4px solid var(--orange);
  background: #171d26;
  text-align: center;
  box-shadow: inset 0 0 0 7px rgba(255, 106, 0, 0.08);
}

.showing-circle strong {
  display: block;
  font-size: 2rem;
  line-height: 1;
}

.showing-circle span {
  display: block;
  margin-top: -16px;
  color: var(--muted);
  font-size: 0.76rem;
}

.home-sale-copy strong {
  font-size: 1rem;
}

.home-sale-copy p {
  margin: 8px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.sale-progress {
  margin-top: 20px;
}

.sale-progress-track {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #26323f;
}

.sale-progress-fill {
  width: 42%;
  height: 100%;
  border-radius: inherit;
  background: var(--orange);
}

.sale-progress-labels {
  display: flex;
  justify-content: space-between;
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.72rem;
}

.house-ratings {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 10px;
  color: var(--muted);
  font-size: 0.82rem;
}

.house-next-action {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #273441;
  color: var(--text);
  font-size: 0.84rem;
}

.project-feature {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.project-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 12px;
  background: var(--orange-soft);
  border: 1px solid var(--orange-border);
  color: var(--orange);
}

.project-feature p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.project-status-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
  color: var(--muted);
  font-size: 0.82rem;
}

.placeholder-panel {
  min-height: 120px;
  display: grid;
  align-content: center;
  padding: 18px;
  border-radius: 13px;
  background: #101720;
  border: 1px dashed #334252;
}

.placeholder-panel p {
  margin: 8px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.ask-response {
  margin-top: 14px;
  padding: 14px 16px;
  border-left: 3px solid var(--orange);
  border-radius: 10px;
  background: #2a1810;
  color: #f7dfd1;
  line-height: 1.5;
}

/* =========================================================
   CALENDAR
========================================================= */

.calendar-dashboard-list {
  max-height: 360px;
  overflow-y: auto;
}

.calendar-summary-item strong {
  font-size: 0.95rem;
}

.calendar-control-grid {
  display: grid;
  grid-template-columns: minmax(320px, 0.85fr) minmax(0, 1.6fr);
  gap: 18px;
  align-items: start;
}

.calendar-form-card {
  position: sticky;
  top: 30px;
}

.calendar-events-card {
  min-width: 0;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.form-field,
.form-check-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.form-field span,
.form-check-field span {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
}

.form-field-wide {
  grid-column: 1 / -1;
}

.form-check-field {
  grid-column: 1 / -1;
  flex-direction: row;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid #354252;
  border-radius: 11px;
  background: #0f151d;
}

.form-check-field input {
  width: 18px;
  height: 18px;
  accent-color: var(--orange);
}

.form-message {
  min-height: 22px;
  margin-top: 14px;
  color: var(--green);
  font-size: 0.84rem;
  line-height: 1.4;
}

.form-message.is-error {
  color: var(--danger);
}

.calendar-page-metrics {
  margin-bottom: 20px;
}

.calendar-event-list {
  max-height: 68vh;
  overflow-y: auto;
  padding-right: 4px;
}

.calendar-event-item {
  padding: 16px;
}

.calendar-event-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.calendar-event-heading strong {
  display: block;
  font-size: 1rem;
  line-height: 1.3;
}

.calendar-event-date {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.82rem;
}

.calendar-event-detail {
  margin-top: 12px;
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.calendar-event-detail strong {
  color: var(--text);
}

.calendar-event-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 15px;
  padding-top: 13px;
  border-top: 1px solid #273441;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1180px) {
  :root {
    --sidebar-width: 220px;
  }

  .main-content {
    padding: 24px;
  }

  .priorities-card,
  .job-card,
  .house-hunt-card {
    grid-column: span 7;
  }

  .focus-card,
  .home-sale-card,
  .calendar-live-card,
  .one18-card {
    grid-column: span 5;
  }

.weather-card {
  grid-column: span 4;
}

.inbox-card {
  grid-column: 1 / -1;
}

  .house-metric-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .calendar-control-grid {
    grid-template-columns: minmax(300px, 0.9fr) minmax(0, 1.4fr);
  }
}

/* =========================================================
   SMALL TABLET
========================================================= */

@media (max-width: 900px) {
  .app-shell {
    grid-template-columns: 1fr;
  }

  .sidebar {
    position: static;
    width: 100%;
    height: auto;
    padding: 16px;
    border-right: 0;
    border-bottom: 1px solid #202b36;
    overflow: visible;
  }

  .sidebar-nav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sidebar-footer {
    display: none;
  }

  .main-content {
    padding: 20px 16px 30px;
  }

  .page-header {
    flex-direction: column;
  }

  .header-meta {
    padding-top: 0;
  }

  .dashboard-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-card,
  .priorities-card,
  .focus-card,
  .job-card,
  .home-sale-card,
  .house-hunt-card,
  .calendar-live-card,
  .one18-card,
  .weather-card,
  .inbox-card,
  .ask-morgan-card {
    grid-column: span 1;
  }

  .job-card,
  .house-hunt-card,
  .calendar-live-card,
  .ask-morgan-card {
    grid-column: 1 / -1;
  }

  .job-metric-row,
  .house-metric-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .calendar-control-grid {
    grid-template-columns: 1fr;
  }

  .calendar-form-card {
    position: static;
  }

  .calendar-event-list {
    max-height: none;
  }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 620px) {
  .sidebar-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .brand-subtitle {
    display: none;
  }

  .dashboard-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-card,
  .job-card,
  .house-hunt-card,
  .calendar-live-card,
  .ask-morgan-card {
    grid-column: 1;
  }

  .page-header h1 {
    font-size: 2.2rem;
  }

  .header-actions {
    width: 100%;
  }

  .header-actions .primary-button {
    width: 100%;
  }

  .priority-entry,
  .ask-row {
    flex-direction: column;
  }

  .primary-button,
  .secondary-button,
  .danger-button {
    width: 100%;
  }

  .compact-button {
    width: auto;
  }

  .button-row {
    flex-direction: column;
  }

  .job-metric-row,
  .house-metric-row,
  .calendar-metric-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .data-list-main {
    flex-direction: column;
  }

  .data-list-main span {
    text-align: left;
  }

  .home-sale-summary {
    align-items: flex-start;
  }

  .showing-circle {
    width: 82px;
    height: 82px;
  }

  .project-status-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .form-grid {
    grid-template-columns: 1fr;
  }

  .form-field-wide,
  .form-check-field {
    grid-column: 1;
  }

  .calendar-event-heading {
    flex-direction: column;
  }

  .calendar-event-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .calendar-event-actions .compact-button,
  .calendar-event-actions .text-link {
    width: 100%;
    text-align: center;
  }
}
/* =========================================================
   MORGAN VISUAL POLISH
   ========================================================= */

/* Subtle startup shimmer across the page */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;

  background:
    linear-gradient(
      110deg,
      transparent 0%,
      transparent 42%,
      rgba(255, 122, 24, 0.08) 48%,
      rgba(255, 174, 92, 0.14) 50%,
      rgba(255, 122, 24, 0.08) 52%,
      transparent 58%,
      transparent 100%
    );

  transform: translateX(-120%);
  animation: morganStartupSweep 1.35s ease-out 0.2s forwards;
}

@keyframes morganStartupSweep {
  to {
    transform: translateX(120%);
  }
}


/* Slow ambient scan line */
body::after {
  content: "";
  position: fixed;
  left: 0;
  right: 0;
  top: -4px;
  height: 2px;
  pointer-events: none;
  z-index: 9998;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 122, 24, 0.2),
    rgba(255, 168, 76, 0.75),
    rgba(255, 122, 24, 0.2),
    transparent
  );

  box-shadow:
    0 0 10px rgba(255, 122, 24, 0.35),
    0 0 24px rgba(255, 122, 24, 0.18);

  opacity: 0;
  animation: morganScanLine 10s linear 1.8s infinite;
}

@keyframes morganScanLine {
  0% {
    top: -4px;
    opacity: 0;
  }

  8% {
    opacity: 0.7;
  }

  42% {
    opacity: 0.35;
  }

  50% {
    top: 100vh;
    opacity: 0;
  }

  100% {
    top: 100vh;
    opacity: 0;
  }
}


/* Cards gain a restrained command-center glow */
.card,
.dashboard-card {
  position: relative;
  overflow: hidden;
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    background-color 180ms ease;
}

.card:hover,
.dashboard-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 122, 24, 0.55);

  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.22),
    0 0 0 1px rgba(255, 122, 24, 0.1),
    0 0 22px rgba(255, 122, 24, 0.1);
}


/* Tiny light sweep inside hovered cards */
.card::after,
.dashboard-card::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -45%;
  width: 35%;
  pointer-events: none;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.035),
    transparent
  );

  transform: skewX(-18deg);
  transition: left 500ms ease;
}

.card:hover::after,
.dashboard-card:hover::after {
  left: 115%;
}


/* Buttons feel more alive without becoming arcade controls */
button,
.button,
.btn {
  transition:
    transform 140ms ease,
    box-shadow 140ms ease,
    filter 140ms ease,
    border-color 140ms ease;
}

button:hover,
.button:hover,
.btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.06);

  box-shadow:
    0 7px 16px rgba(0, 0, 0, 0.2),
    0 0 14px rgba(255, 122, 24, 0.12);
}

button:active,
.button:active,
.btn:active {
  transform: translateY(0) scale(0.98);
}


/* Stronger active-field feedback */
input:focus,
textarea:focus,
select:focus,
button:focus-visible,
a:focus-visible {
  outline: none;

  border-color: rgba(255, 137, 45, 0.85);

  box-shadow:
    0 0 0 3px rgba(255, 122, 24, 0.14),
    0 0 18px rgba(255, 122, 24, 0.09);
}


/* Optional live-status pulse */
.live,
.status-live,
.connection-live,
[data-status="live"] {
  position: relative;
}

.live::before,
.status-live::before,
.connection-live::before,
[data-status="live"]::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  border-radius: 50%;

  background: currentColor;

  box-shadow:
    0 0 0 0 rgba(255, 122, 24, 0.5),
    0 0 10px rgba(255, 122, 24, 0.5);

  animation: morganLivePulse 2.2s ease-out infinite;
}

@keyframes morganLivePulse {
  0% {
    box-shadow:
      0 0 0 0 rgba(255, 122, 24, 0.5),
      0 0 10px rgba(255, 122, 24, 0.5);
  }

  70% {
    box-shadow:
      0 0 0 8px rgba(255, 122, 24, 0),
      0 0 10px rgba(255, 122, 24, 0.28);
  }

  100% {
    box-shadow:
      0 0 0 0 rgba(255, 122, 24, 0),
      0 0 10px rgba(255, 122, 24, 0.22);
  }
}


/* Respect reduced-motion settings */
@media (prefers-reduced-motion: reduce) {
  body::before,
  body::after,
  .live::before,
  .status-live::before,
  .connection-live::before,
  [data-status="live"]::before {
    animation: none !important;
  }

  .card,
  .dashboard-card,
  button,
  .button,
  .btn {
    transition: none !important;
  }
}
body::after {
  display: none !important;
}

/* =========================================================
   ONE18 BRANDING
========================================================= */

.one18-branding {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  color: rgba(255, 255, 255, 0.55);
  font-size: 0.68rem;
}

.one18-sidebar-logo {
  display: block;
  width: 110px;
  max-width: 110px;
  height: auto;
  max-height: 70px;
  margin-bottom: 8px;
  object-fit: contain;
  object-position: left center;
  opacity: 0.9;
}


/* =========================================================
   ONE18 PROJECT TILES
========================================================= */

.one18-project-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.one18-project-tile {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.025);
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    background 180ms ease;
}

.one18-project-tile:hover {
  transform: scale(1.035);
  border-color: rgba(255, 106, 0, 0.45);
  background: rgba(255, 106, 0, 0.06);
}

.project-thumbnail {
  width: 58px;
  min-width: 58px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 106, 0, 0.95),
      rgba(255, 106, 0, 0.35)
    );
  color: #fff;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.project-tile-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.project-tile-copy strong {
  font-size: 1rem;
}

.project-tile-copy p {
  margin: 0;
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.4;
}

.project-tile-copy .status-pill {
  align-self: flex-start;
}


/* =========================================================
   GMAIL INBOX
========================================================= */

.gmail-panel {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.gmail-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.gmail-status {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  padding: 0 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
}

.gmail-status.connected {
  border-color: rgba(83, 211, 138, 0.28);
  background: rgba(83, 211, 138, 0.08);
  color: var(--green);
}

.gmail-message-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.gmail-message-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 14px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
  color: inherit;
  text-decoration: none;
  transition:
    transform 160ms ease,
    border-color 160ms ease,
    background 160ms ease;
}

.gmail-message-item:hover {
  transform: translateY(-1px);
  border-color: rgba(255, 106, 0, 0.45);
  background: rgba(255, 106, 0, 0.06);
}

.gmail-message-item strong {
  min-width: 0;
  display: block;
  grid-column: 1;
  overflow: hidden;
  color: var(--text);
  font-size: 0.95rem;
  text-overflow: ellipsis;
  text-decoration: none;
  white-space: nowrap;
}

.gmail-message-subject {
  display: block;
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.35;
  text-decoration: none;
}

.gmail-message-time {
  display: block;
  grid-column: 2;
  grid-row: 1;
  color: var(--muted);
  font-size: 0.76rem;
  text-decoration: none;
  white-space: nowrap;
}

.gmail-panel .card-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}


/* =========================================================
   COMPONENT RESPONSIVE RULES
========================================================= */

@media (max-width: 760px) {
  .one18-project-grid {
    grid-template-columns: 1fr;
  }

  .one18-project-tile:hover {
    transform: none;
  }

  .gmail-summary {
    align-items: stretch;
    flex-direction: column;
  }

  .gmail-message-time {
    grid-column: 1;
    grid-row: auto;
  }
}
/* =========================================================
   GMAIL DELIVERY CONTROLS
========================================================= */

.gmail-message-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  align-items: start;
}

.gmail-message-row .gmail-message-item {
  min-width: 0;
}

.gmail-message-item {
  align-self: start;
  min-height: 0;
  padding: 10px 12px;
}

.gmail-delivered-button {
  min-width: 112px;
  padding: 0 14px;
  border: 1px solid rgba(83, 211, 138, 0.28);
  border-radius: 14px;
  background: rgba(83, 211, 138, 0.08);
  color: var(--green);
  font-weight: 800;
}

.gmail-delivered-button:hover {
  border-color: rgba(83, 211, 138, 0.5);
  background: rgba(83, 211, 138, 0.14);
}

@media (max-width: 760px) {
  .gmail-message-row {
    grid-template-columns: 1fr;
  }

  .gmail-delivered-button {
    min-height: 42px;
    width: 100%;
  }
}
.gmail-message-controls {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 130px;
}

.gmail-delivered-button,
.gmail-irrelevant-button {
  min-height: 44px;
  padding: 0 14px;
  border-radius: 12px;
  font-weight: 800;
}

.gmail-delivered-button {
  border: 1px solid rgba(83, 211, 138, 0.28);
  background: rgba(83, 211, 138, 0.08);
  color: var(--green);
}

.gmail-irrelevant-button {
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  color: var(--muted);
}

.gmail-irrelevant-button:hover {
  border-color: rgba(255, 106, 0, 0.35);
  background: rgba(255, 106, 0, 0.07);
  color: var(--text);
}

@media (max-width: 760px) {
  .gmail-message-controls {
    width: 100%;
  }
}
.inbox-card {
  grid-column: 1 / -1 !important;
  width: 100%;
}
/* =========================================================
   SPOKEN BRIEFING
========================================================= */

.briefing-card {
  grid-column: 1 / -1;
}

.briefing-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.briefing-preview {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #283543;
  border-radius: 13px;
  background: #101720;
  color: var(--muted);
  line-height: 1.55;
}

@media (max-width: 620px) {
  .briefing-controls {
    flex-direction: column;
  }

  .briefing-controls button {
    width: 100%;
  }
}
.gmail-filter-toggle {
  align-self: flex-start;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(255, 106, 0, 0.28);
  border-radius: 10px;
  background: rgba(255, 106, 0, 0.07);
  color: var(--orange);
  font-weight: 800;
}

.gmail-filter-toggle:hover {
  background: rgba(255, 106, 0, 0.13);
}
.gmail-category {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 3px 8px;
  margin-top: 5px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #aeb8c8;
  background: rgba(148, 163, 184, 0.08);
}

.gmail-category-action {
  color: #ffb36b;
  border-color: rgba(255, 122, 26, 0.42);
  background: rgba(255, 122, 26, 0.10);
}

.gmail-category-job {
  color: #8fc5ff;
  border-color: rgba(89, 158, 255, 0.38);
  background: rgba(89, 158, 255, 0.10);
}

.gmail-category-house {
  color: #68e0bd;
  border-color: rgba(63, 211, 169, 0.38);
  background: rgba(63, 211, 169, 0.10);
}

.gmail-category-finance {
  color: #e8c875;
  border-color: rgba(232, 200, 117, 0.38);
  background: rgba(232, 200, 117, 0.10);
}

.gmail-category-promotion {
  opacity: 0.72;
}
.gmail-attention-group {
  margin-bottom: 22px;
}

.gmail-attention-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  padding: 0 4px;
}

.gmail-attention-heading strong {
  font-size: 0.82rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.gmail-attention-heading span {
  min-width: 28px;
  padding: 3px 8px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 999px;
  text-align: center;
  font-size: 0.72rem;
  color: #aeb8c8;
  background: rgba(148, 163, 184, 0.06);
}

.gmail-sender-group {
  margin-bottom: 10px;
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 14px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.025);
}

.gmail-sender-group summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 16px;
  cursor: pointer;
  list-style: none;
}

.gmail-sender-group summary::-webkit-details-marker {
  display: none;
}

.gmail-sender-group summary::after {
  content: "▾";
  margin-left: 12px;
  color: #ff7a1a;
  transition: transform 0.2s ease;
}

.gmail-sender-group[open] summary::after {
  transform: rotate(180deg);
}

.gmail-sender-group summary strong {
  flex: 1;
}

.gmail-sender-group summary span {
  margin-left: auto;
  font-size: 0.78rem;
  color: #9eabba;
}

.gmail-sender-group-messages {
  padding: 0 10px 10px;
}

.gmail-sender-group-messages .gmail-message-row {
  margin-top: 8px;
}

.gmail-attention-action
  .gmail-attention-heading strong {
  color: #ff9a52;
}

.gmail-attention-job
  .gmail-attention-heading strong {
  color: #8fc5ff;
}

.gmail-attention-house
  .gmail-attention-heading strong {
  color: #68e0bd;
}

.gmail-attention-finance
  .gmail-attention-heading strong {
  color: #e8c875;
}

.gmail-attention-promotion {
  opacity: 0.78;
}
.gmail-category-editor {
  display: grid;
  gap: 7px;
  width: 100%;
  margin-bottom: 2px;
}

.gmail-category-select {
  width: 100%;
  padding: 8px 10px;
  border: 1px solid rgba(148, 163, 184, 0.28);
  border-radius: 9px;
  color: #d8e0ea;
  background: #17212c;
  font: inherit;
  font-size: 0.78rem;
}

.gmail-category-remember {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #9eabba;
  font-size: 0.7rem;
  cursor: pointer;
}

.gmail-category-remember input {
  margin: 0;
}

.gmail-category-move-button {
  padding: 7px 10px;
  border: 1px solid rgba(255, 122, 26, 0.4);
  border-radius: 9px;
  color: #ff9a52;
  background: rgba(255, 122, 26, 0.09);
  font-weight: 700;
  cursor: pointer;
}

.gmail-category-move-button:hover {
  background: rgba(255, 122, 26, 0.16);
}
.weather-card {
  min-height: auto;
}

.weather-card .card-body {
  padding-top: 12px;
  padding-bottom: 12px;
}

.weather-card .weather-details,
.weather-card .weather-extra {
  display: none;
}
.weather-rotator {
  position: relative;
  min-height: 0;
  padding: 18px 18px 32px;
}

.weather-city[hidden] {
  display: none !important;
}

.weather-city {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.weather-city-name {
  color: var(--orange);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.weather-current {
  display: flex;
  align-items: baseline;
  gap: 10px;
}

.weather-current strong {
  font-size: 2.4rem;
  line-height: 1;
}

.weather-current span {
  font-size: 1rem;
  font-weight: 700;
}

.weather-meta,
.weather-forecast {
  color: var(--muted);
  font-size: 0.88rem;
}

.weather-dots {
  position: absolute;
  bottom: 2px;
  left: 0;
  display: flex;
  gap: 6px;
}

.weather-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
}

.weather-dot.active {
  width: 18px;
  background: var(--orange);
}
.clock-card {
  min-height: auto;
}

.clock-display {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.clock-time {
  font-size: 2.35rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
}

.clock-day {
  color: var(--orange);
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.clock-date {
  color: var(--muted);
  font-size: 0.9rem;
}
.dashboard-grid > .top-info-stack {
  grid-column: 9 / 13 !important;
  width: 100%;
  min-width: 0;

  display: grid;
  grid-template-rows: auto auto;
  gap: 14px;
  align-self: stretch;
}

.dashboard-grid > .top-info-stack .clock-card,
.dashboard-grid > .top-info-stack .weather-rotator {
  width: 100%;
  min-width: 0;
}
.dashboard-grid > .top-info-stack {
  grid-column: 9 / 13 !important;
  width: 100%;
  min-width: 0;

  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 14px;
  align-self: stretch;
}

.top-info-stack .clock-card,
.top-info-stack .weather-rotator {
  width: 100%;
  min-width: 0;
  padding: 18px;
  border: 1px solid #2f4050;
  border-radius: 16px;
  background: #151e28;
}
.gmail-message-item {
  align-self: start;
  min-height: 0;
  padding: 10px 12px;
}

.gmail-message-row {
  align-items: start;
}
.gmail-message-row {
  align-items: start !important;
}

.gmail-message-row .gmail-message-item {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}
.gmail-message-item {
  grid-auto-rows: max-content;
}

/* =========================================================
   FINAL LAYOUT OVERRIDES — V083
   Restores the original stylesheet and applies only targeted fixes.
========================================================= */

/* Dashboard row ownership */
.one18-card,
.inbox-card,
.briefing-card,
.ask-morgan-card {
  grid-column: 1 / -1 !important;
  width: 100%;
}

/* Gmail message and actions */
.gmail-message-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
  align-items: start !important;
}

.gmail-message-row .gmail-message-item {
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  align-self: start !important;
  grid-auto-rows: max-content;
}

.gmail-message-controls {
  width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.gmail-category-editor {
  width: auto !important;
  min-width: 0 !important;
  display: contents !important;
  margin: 0 !important;
}

.gmail-category-select {
  flex: 0 0 150px !important;
  width: 150px !important;
  min-width: 150px !important;
  max-width: 190px !important;
  height: 36px !important;
  padding: 0 10px !important;
}

.gmail-category-remember {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  margin-right: 4px;
}

.gmail-category-move-button,
.gmail-delivered-button,
.gmail-irrelevant-button {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 108px !important;
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 12px !important;
  border-radius: 10px !important;
}

@media (max-width: 760px) {
  .gmail-message-controls {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .gmail-category-editor {
    display: contents !important;
  }

  .gmail-category-select,
  .gmail-category-move-button,
  .gmail-delivered-button,
  .gmail-irrelevant-button {
    width: 100% !important;
    max-width: none !important;
  }

  .gmail-category-remember {
    align-self: flex-start;
  }
}

/* =========================================================
   PHASE 1 — HEADLINES ABOVE THE FOLD
========================================================= */

.dashboard-page-header {
  align-items: flex-start;
}

.dashboard-heading {
  min-width: 0;
}

.header-command-center {
  width: min(100%, 560px);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 9px;
}

.header-command-center .header-meta {
  align-self: flex-end;
  padding-top: 0;
}

.header-ask-row {
  display: flex;
  gap: 9px;
}

.header-ask-row input {
  width: 100%;
  min-width: 0;
  height: 44px;
  padding: 0 13px;
  border: 1px solid #354252;
  border-radius: 11px;
  background: #0f151d;
  color: var(--text);
  outline: none;
}

.header-ask-row input:focus {
  border-color: var(--orange);
  box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.12);
}

.header-ask-response {
  min-height: 18px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.4;
}

.headline-briefing-strip {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(220px, auto) minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin: -6px 0 18px;
  padding: 15px 18px;
  border: 1px solid var(--orange-border);
  border-radius: 16px;
  background:
    linear-gradient(
      90deg,
      rgba(255, 106, 0, 0.11),
      rgba(255, 106, 0, 0.025) 42%,
      rgba(255, 255, 255, 0.015)
    ),
    var(--panel);
  box-shadow: var(--shadow);
}

.headline-date-block {
  min-width: 0;
}

.headline-date-block strong {
  display: block;
  margin-top: 5px;
  font-size: 1rem;
  line-height: 1.25;
}

.headline-summary {
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 18px;
  color: var(--muted);
  font-size: 0.84rem;
}

.headline-summary > span {
  white-space: nowrap;
}

.headline-summary strong {
  color: var(--text);
}

.headline-next-event {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 1180px) {
  .dashboard-page-header {
    flex-direction: column;
  }

  .header-command-center {
    width: 100%;
  }

  .header-command-center .header-meta {
    align-self: flex-start;
  }

  .headline-briefing-strip {
    grid-template-columns: 1fr auto;
  }

  .headline-summary {
    grid-column: 1 / -1;
    grid-row: 2;
  }
}

@media (max-width: 760px) {
  .header-ask-row {
    flex-direction: column;
  }

  .header-ask-row .primary-button {
    width: 100%;
  }

  .headline-briefing-strip {
    grid-template-columns: 1fr;
  }

  .headline-summary {
    grid-column: auto;
    grid-row: auto;
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .headline-briefing-strip .secondary-button {
    width: 100%;
  }
}

/* =========================================================
   HOME OPS + WAITING ON
========================================================= */

.home-ops-card,
.waiting-on-card {
  grid-column: span 6;
}

.ops-entry-form {
  display: grid;
  grid-template-columns:
    minmax(180px, 2fr)
    minmax(110px, 0.8fr)
    minmax(130px, 0.8fr)
    minmax(100px, 0.7fr)
    auto;
  gap: 8px;
  margin-bottom: 14px;
}

.waiting-entry-form {
  grid-template-columns:
    minmax(190px, 1.8fr)
    minmax(150px, 1.1fr)
    minmax(130px, 0.8fr)
    auto;
}

.ops-entry-form input,
.ops-entry-form select {
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 0 10px;
  border: 1px solid #354252;
  border-radius: 10px;
  background: #0f151d;
  color: var(--text);
  outline: none;
}

.ops-entry-form input:focus,
.ops-entry-form select:focus {
  border-color: var(--orange);
  box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.12);
}

.ops-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ops-list-item {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 12px;
  border: 1px solid #273441;
  border-radius: 12px;
  background: #101720;
}

.ops-check {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.ops-check input {
  margin-top: 3px;
  accent-color: var(--orange);
}

.ops-check span,
.ops-item-copy {
  min-width: 0;
}

.ops-check strong,
.ops-item-copy strong {
  display: block;
  overflow-wrap: anywhere;
  font-size: 0.9rem;
}

.ops-check small,
.ops-item-copy small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.75rem;
}

.ops-item-actions {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 7px;
}

.ops-date {
  color: var(--muted);
  font-size: 0.74rem;
  white-space: nowrap;
}

.ops-date-soon,
.ops-date-today {
  color: #ffb36b;
}

.ops-date-overdue {
  color: var(--danger);
  font-weight: 800;
}

.ops-complete-button {
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid rgba(83, 211, 138, 0.3);
  border-radius: 9px;
  background: rgba(83, 211, 138, 0.08);
  color: var(--green);
  font-size: 0.75rem;
  font-weight: 800;
}

@media (max-width: 1180px) {
  .ops-entry-form,
  .waiting-entry-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ops-entry-form .primary-button {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .home-ops-card,
  .waiting-on-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 620px) {
  .ops-entry-form,
  .waiting-entry-form {
    grid-template-columns: 1fr;
  }

  .ops-entry-form .primary-button {
    grid-column: auto;
  }

  .ops-list-item {
    align-items: flex-start;
    flex-direction: column;
  }

  .ops-item-actions {
    width: 100%;
    justify-content: space-between;
  }
}

/* =========================================================
   QUICK CAPTURE — V086
========================================================= */

.quick-capture-strip {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px 18px;
  margin: 0 0 18px;
  padding: 14px 18px;
  border: 1px solid #2d3946;
  border-radius: 16px;
  background: #121a23;
  box-shadow: var(--shadow);
}

.quick-capture-copy {
  min-width: 150px;
}

.quick-capture-copy strong {
  display: block;
  margin-top: 4px;
  font-size: 0.95rem;
}

.quick-capture-controls {
  min-width: 0;
  display: grid;
  grid-template-columns:
    minmax(220px, 1fr)
    minmax(130px, 170px)
    auto;
  gap: 8px;
}

.quick-capture-controls input,
.quick-capture-controls select {
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 0 11px;
  border: 1px solid #354252;
  border-radius: 10px;
  background: #0f151d;
  color: var(--text);
  outline: none;
}

.quick-capture-controls input:focus,
.quick-capture-controls select:focus {
  border-color: var(--orange);
  box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.12);
}

.quick-capture-status {
  grid-column: 2;
  min-height: 16px;
  color: var(--green);
  font-size: 0.76rem;
  line-height: 1.3;
}

@media (max-width: 900px) {
  .quick-capture-strip {
    grid-template-columns: 1fr;
  }

  .quick-capture-copy {
    min-width: 0;
  }

  .quick-capture-status {
    grid-column: 1;
  }
}

@media (max-width: 620px) {
  .quick-capture-controls {
    grid-template-columns: 1fr;
  }

  .quick-capture-controls .primary-button {
    width: 100%;
  }
}

/* =========================================================
   NEEDS ATTENTION — V087
========================================================= */

.needs-attention-strip {
  width: 100%;
  min-width: 0;
  margin: 0 0 18px;
  padding: 15px 18px;
  border: 1px solid #2d3946;
  border-radius: 16px;
  background:
    linear-gradient(
      90deg,
      rgba(255, 106, 0, 0.06),
      rgba(255, 255, 255, 0.012)
    ),
    #121a23;
  box-shadow: var(--shadow);
}

.needs-attention-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.needs-attention-heading strong {
  display: block;
  margin-top: 4px;
  font-size: 0.95rem;
}

.needs-attention-items {
  display: grid;
  grid-template-columns:
    repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.needs-attention-item {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 11px 12px;
  border: 1px solid #293643;
  border-radius: 12px;
  background: #0f161f;
}

.needs-attention-icon {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 8px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 0.78rem;
  font-weight: 900;
}

.needs-attention-copy {
  min-width: 0;
}

.needs-attention-copy span,
.needs-attention-copy small {
  display: block;
  color: var(--muted);
  font-size: 0.69rem;
  line-height: 1.25;
}

.needs-attention-copy span {
  margin-bottom: 3px;
  color: var(--orange);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.needs-attention-copy strong {
  display: block;
  overflow: hidden;
  font-size: 0.85rem;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.needs-attention-copy small {
  margin-top: 4px;
}

.needs-attention-clear {
  grid-column: 1 / -1;
  padding: 11px 12px;
  border: 1px dashed #32404f;
  border-radius: 11px;
  color: var(--muted);
  font-size: 0.82rem;
}

.needs-attention-home .needs-attention-icon,
.needs-attention-waiting .needs-attention-icon {
  background: rgba(255, 111, 111, 0.09);
  color: #ff9f9f;
}

.needs-attention-calendar .needs-attention-icon {
  background: rgba(89, 158, 255, 0.1);
  color: #8fc5ff;
}

.needs-attention-email .needs-attention-icon {
  background: rgba(83, 211, 138, 0.09);
  color: var(--green);
}

@media (max-width: 1050px) {
  .needs-attention-items {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .needs-attention-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .needs-attention-items {
    grid-template-columns: 1fr;
  }

  .needs-attention-copy strong {
    white-space: normal;
  }
}

/* =========================================================
   NEXT BEST ACTION — V088
========================================================= */

.next-best-action-card {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns:
    minmax(0, 1fr)
    auto;
  align-items: center;
  gap: 12px 20px;
  margin: 0 0 18px;
  padding: 17px 18px;
  border: 1px solid var(--orange-border);
  border-radius: 16px;
  background:
    linear-gradient(
      100deg,
      rgba(255, 106, 0, 0.13),
      rgba(255, 106, 0, 0.035) 42%,
      rgba(255, 255, 255, 0.015)
    ),
    #121a23;
  box-shadow: var(--shadow);
}

.next-best-action-main {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 13px;
}

.next-best-action-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid var(--orange-border);
  border-radius: 11px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 1.2rem;
  font-weight: 900;
}

.next-best-action-copy {
  min-width: 0;
}

.next-best-action-copy strong {
  display: block;
  margin-top: 4px;
  overflow-wrap: anywhere;
  font-size: 1.05rem;
  line-height: 1.25;
}

.next-best-action-copy p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.4;
}

.next-best-action-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.next-best-action-status {
  grid-column: 1 / -1;
  min-height: 16px;
  color: var(--green);
  font-size: 0.76rem;
  text-align: right;
}

.next-action-flash {
  animation: nextActionFlash 1.2s ease;
}

@keyframes nextActionFlash {
  0% {
    border-color: var(--panel-border);
  }

  35% {
    border-color: var(--orange);
    box-shadow:
      0 0 0 3px rgba(255, 106, 0, 0.14),
      0 0 26px rgba(255, 106, 0, 0.16);
  }

  100% {
    border-color: var(--panel-border);
  }
}

@media (max-width: 900px) {
  .next-best-action-card {
    grid-template-columns: 1fr;
  }

  .next-best-action-controls {
    justify-content: flex-start;
  }

  .next-best-action-status {
    grid-column: 1;
    text-align: left;
  }
}

@media (max-width: 620px) {
  .next-best-action-controls {
    align-items: stretch;
    flex-direction: column;
  }

  .next-best-action-controls .primary-button,
  .next-best-action-controls .secondary-button {
    width: 100%;
  }
}

/* =========================================================
   SIDEBAR COMMAND TOOLS — V089
========================================================= */

.sidebar {
  gap: 18px;
}

.sidebar-tools {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.sidebar-tool {
  padding: 12px;
  border: 1px solid var(--panel-border);
  border-radius: 12px;
  background: #111821;
}

.sidebar-tool-heading {
  margin-bottom: 8px;
}

.sidebar-tool .card-kicker {
  font-size: 0.64rem;
  letter-spacing: 0.14em;
}

.sidebar-quick-capture input,
.sidebar-quick-capture select {
  width: 100%;
  min-width: 0;
  height: 34px;
  padding: 0 9px;
  border: 1px solid #354252;
  border-radius: 9px;
  background: #0f151d;
  color: var(--text);
  outline: none;
  font-size: 0.75rem;
}

.sidebar-quick-capture input:focus,
.sidebar-quick-capture select:focus {
  border-color: var(--orange);
  box-shadow: 0 0 0 2px rgba(255, 106, 0, 0.12);
}

.sidebar-capture-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
  margin-top: 7px;
}

.sidebar-capture-row .compact-button {
  min-height: 34px;
  height: 34px;
  padding: 0 10px;
  font-size: 0.72rem;
}

.sidebar-capture-status {
  min-height: 14px;
  margin-top: 6px;
  color: var(--green);
  font-size: 0.66rem;
  line-height: 1.25;
}

.sidebar-attention-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.sidebar-attention-header .sidebar-tool-heading {
  margin-bottom: 0;
}

.sidebar-count-badge {
  min-width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  padding: 0 7px;
  border: 1px solid var(--orange-border);
  border-radius: 999px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 0.68rem;
  font-weight: 900;
}

.sidebar-attention-summary {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.68rem;
  line-height: 1.3;
}

.sidebar-attention-items {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 9px;
}

.sidebar-attention-item {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 7px;
  padding: 7px 8px;
  border: 1px solid #293643;
  border-radius: 9px;
  background: #0f161f;
}

.sidebar-attention-icon {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 6px;
  background: var(--orange-soft);
  color: var(--orange);
  font-size: 0.62rem;
  font-weight: 900;
}

.sidebar-attention-copy {
  min-width: 0;
}

.sidebar-attention-copy strong {
  display: block;
  overflow: hidden;
  color: var(--text);
  font-size: 0.7rem;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sidebar-attention-copy small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.61rem;
  line-height: 1.2;
}

.sidebar-attention-clear {
  padding: 7px 8px;
  border: 1px dashed #32404f;
  border-radius: 8px;
  color: var(--muted);
  font-size: 0.66rem;
  text-align: center;
}

.sidebar-attention-home .sidebar-attention-icon,
.sidebar-attention-waiting .sidebar-attention-icon {
  background: rgba(255, 111, 111, 0.09);
  color: #ff9f9f;
}

.sidebar-attention-calendar .sidebar-attention-icon {
  background: rgba(89, 158, 255, 0.1);
  color: #8fc5ff;
}

.sidebar-attention-email .sidebar-attention-icon {
  background: rgba(83, 211, 138, 0.09);
  color: var(--green);
}

/* The dashboard versions were intentionally moved into the sidebar. */
.quick-capture-strip,
.needs-attention-strip {
  display: none !important;
}

@media (max-width: 900px) {
  .sidebar-tools {
    display: none;
  }
}

/* =========================================================
   COMMAND SUMMARY ROW — V090
========================================================= */

.command-summary-row {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 14px;
  margin-bottom: 18px;
  align-items: stretch;
}

.command-summary-row .headline-briefing-strip,
.command-summary-row .next-best-action-card {
  margin: 0;
  height: 100%;
}

.command-summary-row .headline-briefing-strip {
  grid-template-columns: minmax(150px, auto) minmax(0, 1fr);
  gap: 10px 14px;
  padding: 14px 16px;
}

.command-summary-row .headline-summary {
  gap: 6px 12px;
}

.command-summary-row .headline-briefing-strip > .secondary-button {
  grid-column: 1 / -1;
  justify-self: start;
}

.command-summary-row .next-best-action-card {
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  padding: 14px 16px;
}

.command-summary-row .next-best-action-controls {
  justify-content: flex-start;
}

.command-summary-row .next-best-action-status {
  text-align: left;
}

@media (max-width: 1180px) {
  .command-summary-row {
    grid-template-columns: 1fr;
  }

  .command-summary-row .headline-briefing-strip {
    grid-template-columns: 1fr auto;
  }

  .command-summary-row .headline-summary {
    grid-column: 1 / -1;
  }

  .command-summary-row .headline-briefing-strip > .secondary-button {
    grid-column: auto;
    justify-self: end;
  }
}

@media (max-width: 760px) {
  .command-summary-row .headline-briefing-strip {
    grid-template-columns: 1fr;
  }

  .command-summary-row .headline-summary,
  .command-summary-row .headline-briefing-strip > .secondary-button {
    grid-column: 1;
  }

  .command-summary-row .headline-briefing-strip > .secondary-button {
    width: 100%;
    justify-self: stretch;
  }
}

/* =========================================================
   ROTATING TIME-ZONE CLOCK — V091
========================================================= */

.top-info-stack {
  grid-template-rows: auto auto !important;
}

.clock-row {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.clock-row .clock-card {
  width: 100%;
  min-width: 0;
  height: 100%;
}

.timezone-clock-card {
  position: relative;
  padding-bottom: 30px !important;
}

.timezone-clock-card .card-header {
  margin-bottom: 12px;
}

.timezone-clock-card .card-header h2 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.timezone-clock-dots {
  position: absolute;
  left: 18px;
  bottom: 12px;
  display: flex;
  gap: 5px;
}

.timezone-clock-dot {
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.2);
  transition:
    width 160ms ease,
    background 160ms ease;
}

.timezone-clock-dot.active {
  width: 15px;
  background: var(--orange);
}

.top-info-stack > .weather-rotator {
  width: 100%;
}

@media (max-width: 1180px) {
  .clock-row {
    grid-template-columns: 1fr;
  }
}

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

@media (max-width: 620px) {
  .clock-row {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   VISUAL HIERARCHY / BURRITO-STYLE HEADER ACCENTS — V092
========================================================= */

/* Base accent variables */
:root {
  --accent-command: #ff6a00;
  --accent-time: #66a8ff;
  --accent-career: #53d38a;
  --accent-home: #e6b85c;
  --accent-followup: #57d6c2;
  --accent-one18: #ff7a2b;
  --accent-comms: #b58cff;
}

/* Neutral card body stays consistent */
.dashboard-card,
.headline-briefing-strip,
.next-best-action-card,
.sidebar-tool {
  background-color: var(--panel);
}

/* Reusable accent treatment */
.dashboard-card,
.headline-briefing-strip,
.next-best-action-card,
.sidebar-tool {
  border-top-width: 3px;
}

/* COMMAND / MORGAN */
.headline-briefing-strip,
.next-best-action-card,
.sidebar-quick-capture,
.sidebar-needs-attention,
.ask-morgan-card {
  border-top-color: var(--accent-command) !important;
}

.headline-briefing-strip .card-kicker,
.next-best-action-card .card-kicker,
.sidebar-quick-capture .card-kicker,
.sidebar-needs-attention .card-kicker,
.ask-morgan-card .card-kicker {
  color: var(--accent-command) !important;
}

/* TIME / ENVIRONMENT */
.clock-card,
.weather-card,
.calendar-live-card,
.calendar-events-card,
.calendar-form-card {
  border-top-color: var(--accent-time) !important;
}

.clock-card .card-kicker,
.weather-card .weather-city-name,
.calendar-live-card .card-kicker,
.calendar-events-card .card-kicker,
.calendar-form-card .card-kicker {
  color: var(--accent-time) !important;
}

/* CAREER / WORK */
.job-card,
#jobs .dashboard-card {
  border-top-color: var(--accent-career) !important;
}

.job-card .card-kicker,
#jobs .card-kicker {
  color: var(--accent-career) !important;
}

.job-card .live-status,
#jobs .live-status {
  border-color: color-mix(in srgb, var(--accent-career) 36%, transparent);
  background: color-mix(in srgb, var(--accent-career) 12%, transparent);
  color: var(--accent-career);
}

/* HOME */
.home-ops-card,
#houses .dashboard-card {
  border-top-color: var(--accent-home) !important;
}

.home-ops-card .card-kicker,
#houses .card-kicker {
  color: var(--accent-home) !important;
}

/* FOLLOW-UP */
.waiting-on-card {
  border-top-color: var(--accent-followup) !important;
}

.waiting-on-card .card-kicker {
  color: var(--accent-followup) !important;
}

/* ONE18 */
.one18-card,
#one18 .dashboard-card {
  border-top-color: var(--accent-one18) !important;
}

.one18-card .card-kicker,
#one18 .card-kicker {
  color: var(--accent-one18) !important;
}

/* COMMUNICATIONS */
.inbox-card,
#inbox .dashboard-card,
.briefing-card {
  border-top-color: var(--accent-comms) !important;
}

.inbox-card .card-kicker,
#inbox .card-kicker,
.briefing-card .card-kicker {
  color: var(--accent-comms) !important;
}

/* EXECUTION: keep priorities/focus in core MORGAN orange */
.priorities-card,
.focus-card {
  border-top-color: var(--accent-command) !important;
}

.priorities-card .card-kicker,
.focus-card .card-kicker {
  color: var(--accent-command) !important;
}

/* Status pills inherit section identity */
.home-ops-card .status-pill {
  border-color: color-mix(in srgb, var(--accent-home) 45%, transparent);
  background: color-mix(in srgb, var(--accent-home) 12%, transparent);
  color: var(--accent-home);
}

.waiting-on-card .status-pill {
  border-color: color-mix(in srgb, var(--accent-followup) 45%, transparent);
  background: color-mix(in srgb, var(--accent-followup) 12%, transparent);
  color: var(--accent-followup);
}

.one18-card .status-pill {
  border-color: color-mix(in srgb, var(--accent-one18) 45%, transparent);
  background: color-mix(in srgb, var(--accent-one18) 12%, transparent);
  color: var(--accent-one18);
}

/* Sidebar tool distinction, still subtle */
.sidebar-quick-capture {
  box-shadow: inset 0 2px 0 color-mix(in srgb, var(--accent-command) 70%, transparent);
}

.sidebar-needs-attention {
  box-shadow: inset 0 2px 0 color-mix(in srgb, var(--accent-followup) 70%, transparent);
}

.sidebar-needs-attention .card-kicker {
  color: var(--accent-followup) !important;
}

/* Make clock/weather pair clearly read as one family */
.clock-row .clock-card,
.top-info-stack > .weather-rotator {
  box-shadow:
    var(--shadow),
    inset 0 2px 0 color-mix(in srgb, var(--accent-time) 55%, transparent);
}

/* Slight family cue on major dashboard headers */
.job-card .card-header,
.home-ops-card .card-header,
.waiting-on-card .card-header,
.one18-card .card-header,
.inbox-card .card-header {
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.055);
}

/* Fallback for browsers without color-mix */
@supports not (color: color-mix(in srgb, red 50%, blue)) {
  .job-card .live-status,
  #jobs .live-status {
    border-color: rgba(83, 211, 138, 0.35);
    background: rgba(83, 211, 138, 0.10);
    color: #53d38a;
  }

  .home-ops-card .status-pill {
    border-color: rgba(230, 184, 92, 0.4);
    background: rgba(230, 184, 92, 0.10);
    color: #e6b85c;
  }

  .waiting-on-card .status-pill {
    border-color: rgba(87, 214, 194, 0.4);
    background: rgba(87, 214, 194, 0.10);
    color: #57d6c2;
  }

  .one18-card .status-pill {
    border-color: rgba(255, 122, 43, 0.4);
    background: rgba(255, 122, 43, 0.10);
    color: #ff7a2b;
  }
}

/* =========================================================
   UNIFIED TIME CARD — V093
========================================================= */

.clock-row,
.clock-card,
.timezone-clock-card {
  display: none !important;
}

.unified-time-card {
  width: 100%;
  min-width: 0;
  padding: 16px 18px;
  border-top-color: var(--accent-time) !important;
}

.unified-time-card .card-header {
  margin-bottom: 12px;
}

.unified-time-card .card-kicker {
  color: var(--accent-time) !important;
}

.unified-time-card .card-header h2 {
  margin-top: 4px;
  font-size: 1.05rem;
}

.unified-time-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.time-zone-panel {
  position: relative;
  min-width: 0;
}

.time-zone-panel + .time-zone-panel {
  padding-left: 14px;
  border-left: 1px solid rgba(102, 168, 255, 0.22);
}

.time-zone-city {
  color: var(--accent-time);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.time-zone-time {
  margin-top: 6px;
  color: var(--text);
  font-size: 2rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.045em;
  white-space: nowrap;
}

.time-zone-label {
  margin-top: 5px;
  color: var(--orange);
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.time-zone-day,
.time-zone-date {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.3;
}

.time-zone-day {
  margin-top: 3px;
  color: var(--text);
  font-weight: 700;
}

.time-zone-date {
  margin-top: 1px;
}

.rotating-time-panel {
  padding-bottom: 16px;
}

.rotating-time-panel .timezone-clock-dots {
  left: 14px;
  bottom: 0;
}

.top-info-stack > .unified-time-card,
.top-info-stack > .weather-rotator {
  width: 100%;
}

.top-info-stack {
  grid-template-rows: auto auto !important;
}

@media (max-width: 1180px) {
  .unified-time-grid {
    grid-template-columns: 1fr;
  }

  .time-zone-panel + .time-zone-panel {
    padding-top: 12px;
    padding-left: 0;
    border-top: 1px solid rgba(102, 168, 255, 0.22);
    border-left: 0;
  }

  .rotating-time-panel .timezone-clock-dots {
    left: 0;
  }
}

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

  .time-zone-panel + .time-zone-panel {
    padding-top: 0;
    padding-left: 14px;
    border-top: 0;
    border-left: 1px solid rgba(102, 168, 255, 0.22);
  }

  .rotating-time-panel .timezone-clock-dots {
    left: 14px;
  }
}

@media (max-width: 620px) {
  .unified-time-grid {
    grid-template-columns: 1fr;
  }

  .time-zone-panel + .time-zone-panel {
    padding-top: 12px;
    padding-left: 0;
    border-top: 1px solid rgba(102, 168, 255, 0.22);
    border-left: 0;
  }

  .rotating-time-panel .timezone-clock-dots {
    left: 0;
  }
}

/* =========================================================
   TIME / WEATHER WIDTH ALIGNMENT — V094
========================================================= */

.dashboard-grid > .top-info-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 14px !important;
}

.dashboard-grid > .top-info-stack > .unified-time-card,
.dashboard-grid > .top-info-stack > .weather-rotator {
  display: block;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 auto !important;
  align-self: stretch !important;
}

.unified-time-grid {
  width: 100%;
}

/* =========================================================
   FOCUS SIDEBAR + NOTEPAD LAYOUT — V095
========================================================= */

/* Top working row: Priorities | Notepad | Time/Weather */
.priorities-card {
  grid-column: span 4 !important;
}

.notepad-card {
  grid-column: span 4 !important;
  min-height: 100%;
  border-top-color: var(--accent-comms) !important;
}

.notepad-card .card-kicker {
  color: var(--accent-comms) !important;
}

.dashboard-grid > .top-info-stack {
  grid-column: span 4 !important;
}

.notepad-save-status {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
}

.dashboard-notepad {
  width: 100%;
  min-height: 190px;
  height: calc(100% - 54px);
  padding: 13px 14px;
  border: 1px solid #354252;
  border-radius: 12px;
  background: #0f151d;
  color: var(--text);
  outline: none;
  line-height: 1.55;
  resize: vertical;
}

.dashboard-notepad:focus {
  border-color: var(--accent-comms);
  box-shadow:
    0 0 0 3px rgba(181, 140, 255, 0.12);
}

/* Sidebar Focus */
.sidebar-focus-tool {
  border-top-color: var(--accent-command) !important;
  box-shadow:
    inset 0 2px 0 color-mix(
      in srgb,
      var(--accent-command) 70%,
      transparent
    );
}

.sidebar-focus-tool .card-kicker {
  color: var(--accent-command) !important;
}

.sidebar-focus-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.sidebar-focus-label {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 700;
}

.sidebar-focus-time {
  margin: 8px 0 9px;
  font-size: 2rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.05em;
}

.sidebar-focus-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}

.sidebar-focus-actions .compact-button {
  width: 100%;
  min-width: 0;
  min-height: 32px;
  height: 32px;
  padding: 0 8px;
  font-size: 0.7rem;
}

/* Old dashboard Focus card no longer participates in layout */
.focus-card {
  display: none !important;
}

@media (max-width: 1180px) {
  .priorities-card,
  .notepad-card,
  .dashboard-grid > .top-info-stack {
    grid-column: span 6 !important;
  }

  .dashboard-grid > .top-info-stack {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 900px) {
  .priorities-card,
  .notepad-card,
  .dashboard-grid > .top-info-stack {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 620px) {
  .dashboard-notepad {
    min-height: 150px;
  }
}

/* =========================================================
   COMPACT FOCUS INSIDE PRIORITIES — V096
========================================================= */

/* Sidebar Focus was intentionally removed in v096 */
.sidebar-focus-tool {
  display: none !important;
}

/* Focus now lives as a compact control strip inside Priorities */
.priority-focus-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 106, 0, 0.22);
}

.priority-focus-copy {
  display: flex;
  align-items: baseline;
  gap: 10px;
  min-width: 0;
}

.priority-focus-copy .card-kicker {
  color: var(--accent-command) !important;
}

.priority-focus-time {
  color: var(--text);
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.04em;
  white-space: nowrap;
}

.priority-focus-actions {
  display: flex;
  align-items: center;
  gap: 7px;
  flex: 0 0 auto;
}

.priority-focus-actions .compact-button {
  min-height: 32px;
  height: 32px;
  padding: 0 11px;
  font-size: 0.72rem;
}

/* Keep the older standalone Focus card disabled */
.focus-card {
  display: none !important;
}

@media (max-width: 620px) {
  .priority-focus-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .priority-focus-actions {
    width: 100%;
  }

  .priority-focus-actions .compact-button {
    flex: 1 1 0;
    width: auto;
  }
}

/* =========================================================
   NOTES / BRAIN DUMP — V097
========================================================= */

.notes-control-grid {
  display: grid;
  grid-template-columns:
    minmax(300px, 0.8fr)
    minmax(0, 1.4fr);
  gap: 18px;
  align-items: start;
}

.notes-capture-card,
.notes-list-card {
  border-top-color: var(--accent-comms) !important;
}

.notes-capture-card .card-kicker,
.notes-list-card .card-kicker {
  color: var(--accent-comms) !important;
}

.notes-entry-actions {
  display: flex;
  gap: 10px;
  margin-top: 14px;
}

.notes-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.notes-list-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 14px;
  border: 1px solid #273441;
  border-radius: 13px;
  background: #101720;
}

.notes-list-copy {
  min-width: 0;
}

.notes-list-copy p {
  margin: 0;
  color: var(--text);
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.notes-list-copy small {
  display: block;
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.74rem;
}

#notes-entry-text {
  min-height: 180px;
}

@media (max-width: 900px) {
  .notes-control-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .notes-entry-actions {
    flex-direction: column;
  }

  .notes-entry-actions .primary-button,
  .notes-entry-actions .secondary-button {
    width: 100%;
  }
}



/* =========================================================
   CONNECT THE PIPES — V098
========================================================= */

.notepad-actions {
  display: flex;
  gap: 8px;
  margin-top: 10px;
}

.notes-list-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
}

.notes-pin-button {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--accent-home);
  font-size: 1rem;
}

.notes-pin-button:hover {
  background: rgba(230, 184, 92, 0.1);
}

.notes-list-item-pinned {
  border-color: rgba(230, 184, 92, 0.35);
  background:
    linear-gradient(90deg, rgba(230, 184, 92, 0.05), transparent 55%),
    #101720;
}

.one18-control-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
  gap: 18px;
  align-items: start;
}

.one18-ideas-card {
  border-top-color: var(--accent-one18) !important;
}

.one18-ideas-card .card-kicker {
  color: var(--accent-one18) !important;
}

.one18-idea-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin-bottom: 14px;
}

.one18-idea-form input {
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 0 11px;
  border: 1px solid #354252;
  border-radius: 10px;
  background: #0f151d;
  color: var(--text);
}

.one18-ideas-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.one18-idea-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid #273441;
  border-radius: 11px;
  background: #101720;
}

@media (max-width: 900px) {
  .one18-control-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .notepad-actions {
    flex-direction: column;
  }

  .notepad-actions .compact-button,
  .one18-idea-form .primary-button {
    width: 100%;
  }

  .one18-idea-form {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   POLISH + PIPE VERIFICATION — V099
========================================================= */

/* Notepad: reserve real space for its controls instead of
   letting the textarea consume the entire card. */
.notepad-card {
  display: flex;
  flex-direction: column;
}

.notepad-card .card-header {
  flex: 0 0 auto;
}

.dashboard-notepad {
  flex: 1 1 auto;
  height: auto !important;
  min-height: 150px !important;
  max-height: 190px;
  resize: none;
}

.notepad-actions {
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-start;
  margin-top: 10px;
}

.notepad-save-status {
  opacity: 0.72;
  font-size: 0.68rem;
}

/* Give Focus a slightly tighter relationship to Priorities. */
.priority-focus-bar {
  margin-top: 11px !important;
  padding-top: 11px !important;
}

/* Notes: pin button stays visually secondary until used. */
.notes-pin-button {
  opacity: 0.72;
  transition:
    opacity 140ms ease,
    background 140ms ease;
}

.notes-pin-button:hover,
.notes-list-item-pinned .notes-pin-button {
  opacity: 1;
}

/* ONE18 ideas should never force the card wider than its column. */
.one18-ideas-card,
.one18-idea-form,
.one18-ideas-list,
.one18-idea-item {
  min-width: 0;
}

.one18-idea-item span {
  overflow-wrap: anywhere;
}

/* Tablet: keep Priorities + Notepad paired, then put Time/Weather below. */
@media (max-width: 1180px) and (min-width: 901px) {
  .priorities-card,
  .notepad-card {
    grid-column: span 6 !important;
  }

  .dashboard-grid > .top-info-stack {
    grid-column: 1 / -1 !important;
  }

  .dashboard-notepad {
    max-height: 175px;
  }
}

/* Mobile: controls remain comfortably tappable and nothing overflows. */
@media (max-width: 620px) {
  .dashboard-notepad {
    min-height: 145px !important;
    max-height: 180px;
  }

  .notepad-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .notepad-actions .compact-button {
    width: 100%;
  }
}