/* =========================================================
LuxNote AI
Trusted Advisor Design House Theme
Cedar, Linen, Olive, Mauve
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Source+Sans+3:wght@400;500;600;700;800&display=swap');

:root {
  --font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-ui: 'Source Sans 3', Inter, Aptos, 'Segoe UI', Arial, sans-serif;

  --paper: #f2e8dc;
  --paper-warm: #e3d2bd;
  --linen: #fff9f3;
  --linen-soft: #f7efe5;
  --latte: #dbc4a5;

  --cedar: #7c7960;
  --cedar-light: #918d73;
  --cedar-dark: #5f6048;
  --deep-olive: #44422d;
  --cafe-noir: #443223;
  --clockwork: #72583e;
  --weathered: #a08670;
  --mauve: #755151;

  --surface: var(--linen);
  --surface-soft: var(--linen-soft);
  --surface-muted: var(--latte);

  --raspberry: var(--cafe-noir);
  --sienna: var(--mauve);
  --warm-brown: var(--cedar);
  --chocolate: var(--deep-olive);
  --moon-rock: var(--cedar-dark);
  --soft-dove: #efe4d7;
  --muted-rose: var(--mauve);

  --text: #33291f;
  --body-text: #5f554a;
  --muted-text: #7a7064;

  --border: rgba(68, 50, 35, 0.14);
  --border-strong: rgba(68, 50, 35, 0.24);
  --mauve-soft: rgba(117, 81, 81, 0.07);
  --mauve-border: rgba(117, 81, 81, 0.22);

  --success: var(--cedar-dark);
  --error: var(--mauve);
  --info: var(--clockwork);

  --shadow-soft: 0 7px 16px rgba(68, 50, 35, 0.035);
  --shadow-panel: 0 1px 2px rgba(68, 50, 35, 0.04);
  --shadow-card: none;
  --shadow-hover: none;

  --radius-page: 8px;
  --radius-panel: 8px;
  --radius-card: 6px;
  --radius-field: 4px;
  --radius-button: 4px;
}

/* =========================================================
FOUNDATION
========================================================= */

html {
  background: var(--paper-warm) !important;
  color-scheme: light;
}

body {
  min-height: 100vh;
  color: var(--body-text) !important;
  font-family: var(--font-ui) !important;
  background-color: var(--paper) !important;
  background-image:
    linear-gradient(90deg, rgba(68, 66, 45, 0.025) 1px, transparent 1px),
    linear-gradient(180deg, #e4d4bf 0%, #f2e8dc 48%, #e9ddca 100%) !important;
  background-attachment: fixed;
  background-size: 56px 100%, auto;
}

body::before,
body::after,
.ambient-light,
.page-noise,
.form-panel::before,
.form-panel::after,
.results-panel::before,
.results-panel::after,
.glass-panel::before,
.glass-panel::after {
  display: none !important;
  content: none !important;
}

.page-shell,
.dashboard-shell,
.subpage-shell,
.hero-shell,
.site-header,
main {
  background: transparent !important;
}

* {
  text-shadow: none !important;
}

/* =========================================================
TYPOGRAPHY
========================================================= */

h1,
h2,
h3,
#project-note-heading,
#results-heading,
.section-heading h1,
.section-heading h2,
.section-heading h3,
.result-card h2,
.result-card h3,
.summary-card strong,
.folder-copy strong,
.report-heading h1,
#report-project-name,
.advisor-hero h1 {
  font-family: var(--font-display) !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  color: var(--text) !important;
  -webkit-text-fill-color: currentColor !important;
  background: none !important;
}

.advisor-hero h1 {
  margin: 0;
  max-width: 700px;
  color: var(--linen) !important;
  -webkit-text-fill-color: var(--linen) !important;
  font-size: clamp(1.85rem, 2.9vw, 3.15rem) !important;
  line-height: 1.08 !important;
  text-wrap: balance;
}

#project-note-heading,
#results-heading,
.section-heading h1,
.section-heading h2 {
  color: var(--cafe-noir) !important;
}

body,
input,
select,
textarea,
button,
.primary-button,
.secondary-button,
.primary-link,
.secondary-link,
.copy-button,
.record-action,
.nav-links a,
.section-description,
.result-card p,
.result-card li,
.folder-copy small,
.project-note-row small,
.cover-photo-copy p,
.cover-photo-field p,
#character-count,
.records-message,
label {
  font-family: var(--font-ui) !important;
}

label,
.eyebrow,
.card-kicker,
.summary-label,
.status-badge,
.note-priority,
.tag,
.nav-links a,
button,
.primary-button,
.secondary-button,
.primary-link,
.secondary-link,
.copy-button,
.record-action {
  font-weight: 800 !important;
  letter-spacing: 0.105em !important;
  text-transform: uppercase !important;
}

.eyebrow,
.card-kicker,
.summary-label {
  color: var(--mauve) !important;
  opacity: 1 !important;
}

.form-panel .eyebrow,
.report-summary-strip .summary-label,
#report-client {
  color: var(--cedar-dark) !important;
}

.section-description,
.result-card p,
.result-card li,
.folder-copy small,
.project-note-row small,
.cover-photo-copy p,
.cover-photo-field p,
#character-count,
.records-message,
.report-grid p,
.report-grid li,
.report-grid pre {
  color: var(--body-text) !important;
  opacity: 1 !important;
}

/* =========================================================
NAVIGATION
========================================================= */

.site-header {
  padding: 12px var(--page-gap) 18px !important;
}

.glass-nav {
  color: var(--text) !important;
  background: rgba(255, 249, 243, 0.94) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-page) !important;
  box-shadow: var(--shadow-soft) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.nav-wordmark {
  color: var(--cedar-dark) !important;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.nav-links a {
  color: var(--deep-olive) !important;
}

.nav-links a:hover,
.nav-links a[aria-current='page'],
.nav-links a.active {
  color: var(--mauve) !important;
}

.nav-links a::after {
  background: var(--mauve) !important;
}

/* =========================================================
TRUSTED ADVISOR HERO
========================================================= */

.dashboard-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  grid-template-areas:
    "advisor advisor"
    "form results" !important;
  align-items: start !important;
  gap: 18px !important;
}

.dashboard-shell .advisor-hero {
  grid-area: advisor !important;
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  order: -2 !important;
}

.dashboard-shell .form-panel {
  grid-area: form !important;
  grid-row: 2 !important;
  order: 1 !important;
}

.dashboard-shell .results-panel {
  grid-area: results !important;
  grid-row: 2 !important;
  order: 2 !important;
}

.advisor-hero {
  display: grid;
  grid-template-columns: minmax(250px, 0.46fr) minmax(620px, 1.54fr);
  align-items: stretch;
  min-height: 240px;
  overflow: hidden;
  color: var(--linen);
  background: linear-gradient(135deg, #77755c 0%, #87846a 52%, #756258 100%);
  border: 1px solid rgba(255, 249, 243, 0.18);
  border-radius: var(--radius-panel);
  box-shadow: var(--shadow-panel);
}

.advisor-brand-panel {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  min-height: 240px;
  padding: clamp(22px, 2.8vw, 34px) clamp(20px, 2.4vw, 30px);
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(68, 66, 45, 0.20), rgba(68, 66, 45, 0.08)),
    rgba(255, 249, 243, 0.025);
  border-right: 1px solid rgba(255, 249, 243, 0.15);
}

.advisor-brand-logo {
  display: block;
  position: relative;
  z-index: 1;
  width: min(100%, 230px);
  max-height: 92px;
  margin-top: clamp(8px, 2.4vw, 22px);
  opacity: 0.62;
  object-fit: contain;
  object-position: left center;
  pointer-events: none;
}

.advisor-brand-kicker {
  position: relative;
  z-index: 1;
  max-width: 245px;
  margin: 0;
  padding-top: 12px;
  color: rgba(255, 249, 243, 0.86);
  border-top: 1px solid rgba(255, 249, 243, 0.18);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.42;
  text-transform: uppercase;
}

.advisor-brand-subtext {
  display: block;
  margin-top: 8px;
  color: rgba(255, 249, 243, 0.66);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.5;
  text-transform: none;
}

.advisor-statement-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: clamp(28px, 4vw, 46px);
}

.advisor-statement-panel .eyebrow {
  color: #fff6ec !important;
  margin-bottom: 9px;
}

.advisor-hero-copy {
  max-width: 650px;
  margin: 14px 0 0;
  color: rgba(255, 249, 243, 0.84);
  font-size: 0.86rem;
  line-height: 1.5;
}

.advisor-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}

.advisor-actions .primary-link,
.advisor-actions .secondary-link {
  min-width: 148px;
  min-height: 34px !important;
  padding-inline: 13px !important;
}

/* retire the old hero class if any cached markup still renders */
.compact-hero,
.hero-glass-card.compact-hero {
  color: var(--linen) !important;
  background: #87846a !important;
  border: 1px solid rgba(255, 249, 243, 0.18) !important;
  border-radius: var(--radius-panel) !important;
  box-shadow: var(--shadow-panel) !important;
}

.compact-hero::before,
.compact-hero::after {
  opacity: 0.04 !important;
}

.compact-hero .hero-logo-cell,
.compact-hero .hero-headline-cell,
.compact-hero .hero-brand-logo {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}

/* =========================================================
PANELS AND STATIC CARDS
========================================================= */

.glass-panel,
.form-panel,
.results-panel,
.subpage-panel,
.report-panel {
  color: var(--body-text) !important;
  background: rgba(255, 249, 243, 0.80) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-panel) !important;
  box-shadow: var(--shadow-panel) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.results-panel,
.report-panel {
  background: linear-gradient(180deg, rgba(255, 249, 243, 0.84), rgba(248, 240, 230, 0.74)) !important;
}

.summary-card,
.result-card,
.ai-toggle-field,
.cover-photo-field,
.cover-photo-preview,
.records-message,
.report-cover-card {
  color: var(--body-text) !important;
  background: rgba(255, 249, 243, 0.90) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-card) !important;
  box-shadow: var(--shadow-card) !important;
  transition: border-color 0.16s ease, background-color 0.16s ease !important;
}

.summary-card {
  border-top: 2px solid rgba(117, 81, 81, 0.36) !important;
}

.report-summary-strip .summary-card {
  border-top: 0 !important;
  background: rgba(117, 81, 81, 0.055) !important;
  border-color: rgba(117, 81, 81, 0.16) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}

.result-card {
  border-left: 3px solid rgba(117, 81, 81, 0.40) !important;
}

/* Static information cards should not behave like clickable product tiles. */
.summary-card:hover,
.result-card:hover,
.ai-toggle-field:hover,
.cover-photo-field:hover,
.cover-photo-preview:hover,
.report-cover-card:hover {
  background: rgba(255, 249, 243, 0.90) !important;
  border-color: var(--border) !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Clickable rows/cards still get a quiet advisor hover. */
.project-folder-card,
.project-note-row,
.record-item {
  color: var(--body-text) !important;
  background: rgba(255, 249, 243, 0.90) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-card) !important;
  box-shadow: var(--shadow-card) !important;
  transition: border-color 0.16s ease, background-color 0.16s ease !important;
}

.project-folder-card:hover,
.project-note-row:hover,
.record-item:hover {
  background: rgba(255, 249, 243, 0.96) !important;
  border-color: var(--mauve-border) !important;
  box-shadow: none !important;
  transform: none !important;
}

/* =========================================================
FORMS
========================================================= */

input,
select,
textarea {
  color: var(--text) !important;
  background: rgba(255, 249, 243, 0.88) !important;
  border: 1px solid var(--border-strong) !important;
  border-radius: var(--radius-field) !important;
  box-shadow: inset 0 1px 2px rgba(68, 50, 35, 0.025) !important;
  font-size: 0.84rem !important;
}

input::placeholder,
textarea::placeholder {
  color: rgba(103, 93, 81, 0.58) !important;
  opacity: 1 !important;
}

input:hover,
select:hover,
textarea:hover {
  border-color: rgba(117, 81, 81, 0.24) !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--mauve) !important;
  box-shadow: 0 0 0 2px rgba(117, 81, 81, 0.10) !important;
}

select,
select option {
  color: var(--text) !important;
  background: var(--surface) !important;
  color-scheme: light;
}

/* =========================================================
BUTTONS
========================================================= */

button,
.primary-button,
.primary-link,
.secondary-button,
.secondary-link,
.copy-button,
.record-action,
.cover-photo-picker,
.results-panel .report-actions a,
.report-toolbar a,
.report-toolbar button,
.compact-hero .hero-button-left,
.compact-hero .hero-button-right {
  position: relative !important;
  overflow: hidden !important;
  border-radius: var(--radius-button) !important;
  box-shadow: none !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.08em !important;
  line-height: 1.1 !important;
  min-height: 32px !important;
  padding-block: 5px !important;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease !important;
}

.primary-button,
.primary-link,
.results-panel .report-actions .primary-link,
.report-toolbar .secondary-button,
.report-toolbar .secondary-link,
.compact-hero .hero-button-left {
  color: var(--linen) !important;
  -webkit-text-fill-color: var(--linen) !important;
  background: var(--cafe-noir) !important;
  border: 1px solid var(--cafe-noir) !important;
}

.primary-button:hover:not(:disabled),
.primary-link:hover,
.results-panel .report-actions .primary-link:hover,
.report-toolbar .secondary-button:hover,
.report-toolbar .secondary-link:hover,
.compact-hero .hero-button-left:hover {
  color: var(--linen) !important;
  -webkit-text-fill-color: var(--linen) !important;
  background: var(--deep-olive) !important;
  border-color: var(--deep-olive) !important;
  box-shadow: none !important;
  transform: none !important;
}

.secondary-button,
.secondary-link,
.copy-button,
.record-action,
.cover-photo-picker,
.results-panel .report-actions .secondary-link,
.compact-hero .hero-button-right {
  color: var(--cafe-noir) !important;
  -webkit-text-fill-color: var(--cafe-noir) !important;
  background: rgba(255, 249, 243, 0.72) !important;
  border: 1px solid rgba(68, 50, 35, 0.18) !important;
}

.secondary-button:hover:not(:disabled),
.secondary-link:hover,
.copy-button:hover,
.record-action:hover,
.cover-photo-picker:hover,
.cover-photo-picker:focus-visible,
.results-panel .report-actions .secondary-link:hover,
.compact-hero .hero-button-right:hover {
  color: var(--mauve) !important;
  -webkit-text-fill-color: var(--mauve) !important;
  background: rgba(117, 81, 81, 0.08) !important;
  border-color: rgba(117, 81, 81, 0.34) !important;
  box-shadow: none !important;
  transform: none !important;
}

.copy-button.is-copied {
  color: var(--linen) !important;
  -webkit-text-fill-color: var(--linen) !important;
  background: var(--cedar-dark) !important;
  border-color: var(--cedar-dark) !important;
}

.compact-hero .hero-button-left::after,
.compact-hero .hero-button-right::after,
.form-panel button::after,
.results-panel button::after,
.form-panel .primary-button::after,
.form-panel .secondary-button::after,
.results-panel .primary-button::after,
.results-panel .secondary-button::after,
.form-panel .copy-button::after,
.results-panel .copy-button::after,
.form-panel .record-action::after,
.results-panel .record-action::after,
.results-panel .report-actions a::after {
  display: none !important;
  content: none !important;
}

/* =========================================================
PROJECTS, REPORT, STATES
========================================================= */

.project-cover-thumb,
.folder-mark {
  color: var(--cedar-dark) !important;
  background: rgba(248, 240, 230, 0.90) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-card) !important;
}

.folder-copy strong,
.project-note-row strong,
.report-grid h2,
.report-grid .result-card h2,
#report-project-name {
  color: var(--cafe-noir) !important;
  -webkit-text-fill-color: var(--cafe-noir) !important;
}

.folder-copy small,
.folder-arrow {
  color: var(--muted-text) !important;
}

.note-priority,
.tag,
.status-badge,
.report-summary-strip .summary-card {
  color: var(--mauve) !important;
  background: var(--mauve-soft) !important;
  border: 1px solid var(--mauve-border) !important;
  border-radius: 4px !important;
}

#report-client {
  color: var(--cedar-dark) !important;
}

#report-draft {
  color: var(--body-text) !important;
  background: rgba(248, 240, 230, 0.80) !important;
  border: 1px solid var(--border) !important;
}

.form-message.success { color: var(--success) !important; }
.form-message.error { color: var(--error) !important; }
.form-message.info { color: var(--info) !important; }

.results-panel.is-hidden #generation-status,
.results-panel.is-hidden .quick-result-meta,
.results-panel.is-hidden .quick-summary-card,
.results-panel.is-hidden .quick-actions-card,
.results-panel.is-hidden .report-actions {
  opacity: 0.48 !important;
}

.site-footer {
  color: var(--muted-text) !important;
  align-items: center;
  padding: 28px 32px 36px;
  gap: 32px;
}

.footer-brand {
  flex: 0 0 auto;
  min-width: 220px;
}

.footer-brand strong {
  color: var(--text) !important;
}

.footer-brand strong,
.footer-brand span {
  display: block;
  line-height: 1.45;
}

.site-footer p {
  max-width: 760px;
  margin: 0;
  line-height: 1.65;
}

:focus-visible {
  outline-color: var(--mauve) !important;
}

@media print {
  body {
    color: #111111 !important;
    background: #ffffff !important;
    background-image: none !important;
  }

  .report-panel,
  .result-card,
  .summary-card {
    color: #111111 !important;
    background: #ffffff !important;
    border-color: #cccccc !important;
    box-shadow: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

@media (max-width: 980px) {
  .dashboard-shell {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "advisor"
      "form"
      "results" !important;
  }

  .dashboard-shell .advisor-hero {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .dashboard-shell .form-panel {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }

  .dashboard-shell .results-panel {
    grid-column: 1 !important;
    grid-row: 3 !important;
  }

  .advisor-hero {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .advisor-brand-panel {
    justify-content: flex-start;
    gap: 12px;
    min-height: 160px;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 249, 243, 0.15);
  }

  .advisor-brand-logo {
    top: auto;
    width: min(70%, 220px);
    margin-top: 0;
  }

  .advisor-hero h1 {
    font-size: clamp(1.65rem, 6.6vw, 2.55rem) !important;
    line-height: 1.07 !important;
  }
}

@media (max-width: 720px) {
  .advisor-brand-panel,
  .advisor-statement-panel {
    padding: 18px;
  }

  .advisor-brand-panel {
    min-height: 140px;
  }

  .advisor-brand-logo {
    left: auto;
    width: min(76%, 210px);
  }

  .advisor-actions {
    width: 100%;
  }

  .advisor-actions .primary-link,
  .advisor-actions .secondary-link {
    flex: 1 1 180px;
  }

  .site-footer {
    align-items: flex-start;
    padding: 24px 22px 32px;
    gap: 18px;
  }

  .footer-brand {
    min-width: 0;
  }

  .site-footer p {
    width: 100%;
  }
}

/* =========================================================
LINKEDIN DEMO POLISH
Flat editorial product page treatment
========================================================= */

:root {
  --gallery-paper: #ede2d4;
  --gallery-paper-soft: #f8f1e8;
  --gallery-panel: #fffaf3;
  --gallery-line: rgba(68, 50, 35, 0.18);
  --gallery-line-strong: rgba(68, 50, 35, 0.30);
  --gallery-ink: #2f281f;
  --gallery-olive: #55563d;
  --gallery-olive-light: #838063;
  --gallery-cedar: #765244;
}

body {
  background-color: var(--gallery-paper) !important;
  background-image:
    linear-gradient(90deg, rgba(68, 50, 35, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, #dac9b3 0%, #f1e7dc 34%, #e9decd 100%) !important;
  background-size: 72px 100%, auto !important;
}

.site-header {
  padding: 10px var(--page-gap) 14px !important;
}

.glass-nav {
  min-height: 44px !important;
  padding: 5px 12px !important;
  background: rgba(255, 250, 243, 0.86) !important;
  border-color: var(--gallery-line) !important;
  box-shadow: none !important;
}

.nav-wordmark {
  font-size: 1rem !important;
}

.nav-links {
  gap: clamp(12px, 2vw, 24px) !important;
}

.nav-links a {
  font-size: 0.68rem !important;
  letter-spacing: 0.1em !important;
}

.dashboard-shell {
  grid-template-columns: minmax(0, 1.06fr) minmax(360px, 0.84fr) !important;
  gap: 18px !important;
  align-items: start !important;
}

.advisor-hero {
  min-height: 250px !important;
  grid-template-columns: minmax(210px, 0.36fr) minmax(0, 1fr) !important;
  background:
    linear-gradient(110deg, rgba(42, 42, 30, 0.18), rgba(42, 42, 30, 0)),
    linear-gradient(118deg, #55563d 0%, #7f7b5f 48%, #725d54 100%) !important;
  border: 1px solid rgba(255, 250, 243, 0.22) !important;
  border-radius: var(--radius-panel) !important;
  box-shadow: none !important;
}

.advisor-brand-panel {
  padding: clamp(20px, 2.8vw, 32px) clamp(18px, 2.4vw, 30px) !important;
  background:
    linear-gradient(180deg, rgba(255, 250, 243, 0.045), rgba(255, 250, 243, 0.02)) !important;
  border-right: 1px solid rgba(255, 250, 243, 0.18) !important;
}

.advisor-brand-logo {
  width: min(100%, 230px) !important;
  max-height: 96px !important;
  opacity: 0.78 !important;
}

.advisor-brand-kicker {
  max-width: 240px !important;
  color: rgba(255, 250, 243, 0.90) !important;
  font-size: 0.62rem !important;
  letter-spacing: 0.13em !important;
  line-height: 1.4 !important;
}

.advisor-brand-subtext {
  color: rgba(255, 250, 243, 0.70) !important;
  font-size: 0.68rem !important;
}

.advisor-statement-panel {
  position: relative !important;
  padding: clamp(26px, 3.5vw, 44px) clamp(28px, 4vw, 54px) !important;
}

.advisor-statement-panel::before {
  position: absolute;
  top: clamp(28px, 4vw, 42px);
  right: clamp(28px, 4vw, 50px);
  width: min(12vw, 110px);
  height: 1px;
  content: "";
  background: rgba(255, 250, 243, 0.30);
}

.advisor-statement-panel .eyebrow {
  color: rgba(255, 250, 243, 0.88) !important;
}

.advisor-hero h1 {
  max-width: 680px !important;
  font-size: clamp(1.85rem, 3vw, 3.25rem) !important;
  line-height: 1.06 !important;
}

.advisor-hero-copy {
  max-width: 640px !important;
  color: rgba(255, 250, 243, 0.86) !important;
  font-size: 0.86rem !important;
  line-height: 1.5 !important;
}

.hero-system-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin-top: 16px;
  border-top: 1px solid rgba(255, 250, 243, 0.24);
  border-bottom: 1px solid rgba(255, 250, 243, 0.24);
}

.hero-system-row span {
  min-width: 88px;
  padding: 7px 14px 7px 0;
  margin-right: 14px;
  border-right: 1px solid rgba(255, 250, 243, 0.20);
  color: rgba(255, 250, 243, 0.76);
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.hero-system-row span:last-child {
  border-right: 0;
  margin-right: 0;
}

.advisor-actions {
  margin-top: 18px !important;
}

.dashboard-shell .glass-panel,
.dashboard-shell .form-panel,
.dashboard-shell .results-panel,
.dashboard-shell .summary-card,
.dashboard-shell .result-card,
.dashboard-shell .ai-toggle-field,
.dashboard-shell .cover-photo-field,
.dashboard-shell .cover-photo-preview {
  box-shadow: none !important;
}

.dashboard-shell .form-panel,
.dashboard-shell .results-panel {
  min-height: 0;
  padding: clamp(18px, 2.4vw, 26px) !important;
  border-color: var(--gallery-line) !important;
  border-radius: var(--radius-panel) !important;
}

.dashboard-shell .form-panel {
  background:
    linear-gradient(180deg, rgba(255, 250, 243, 0.88), rgba(255, 250, 243, 0.74)) !important;
}

.dashboard-shell .results-panel {
  background:
    linear-gradient(180deg, rgba(239, 229, 216, 0.88), rgba(255, 250, 243, 0.64)) !important;
}

.dashboard-shell .section-heading {
  align-items: flex-start !important;
  padding-bottom: 12px !important;
  margin-bottom: 14px !important;
  border-bottom: 1px solid var(--gallery-line) !important;
}

.dashboard-shell .section-heading h2 {
  max-width: 560px !important;
  font-size: clamp(1.35rem, 2vw, 1.85rem) !important;
  line-height: 1.08 !important;
}

.dashboard-shell .section-description {
  max-width: 590px !important;
  font-size: 0.78rem !important;
}

.form-grid {
  gap: 10px 12px !important;
}

input,
select,
textarea {
  background: rgba(255, 250, 243, 0.62) !important;
  font-size: 0.82rem !important;
}

textarea {
  min-height: 190px !important;
}

.dashboard-shell .ai-toggle-field,
.dashboard-shell .cover-photo-field {
  padding: 12px !important;
  background: rgba(248, 241, 232, 0.58) !important;
  border-left: 3px solid rgba(117, 81, 81, 0.34) !important;
}

.dashboard-shell .summary-card,
.dashboard-shell .result-card {
  background: rgba(255, 250, 243, 0.54) !important;
  border-color: var(--gallery-line) !important;
}

.dashboard-shell .summary-card {
  min-height: 68px !important;
  border-top: 0 !important;
}

.dashboard-shell .result-card {
  border-left: 0 !important;
}

.dashboard-shell .quick-result-meta {
  grid-template-columns: minmax(0, 1fr) minmax(150px, 0.42fr) !important;
  gap: 8px !important;
}

.dashboard-shell .quick-summary-card {
  min-height: 104px !important;
}

.dashboard-shell .quick-actions-card {
  min-height: 112px !important;
}

.result-card-heading {
  padding-bottom: 8px !important;
  border-bottom: 1px solid rgba(68, 50, 35, 0.12) !important;
}

.primary-link,
.secondary-link,
.primary-button,
.secondary-button,
.copy-button,
.record-action,
.cover-photo-picker,
.report-toolbar .secondary-button,
.report-toolbar .secondary-link {
  box-shadow: none !important;
}

.primary-link,
.primary-button,
.results-panel .report-actions .primary-link {
  background: var(--gallery-ink) !important;
  border-color: var(--gallery-ink) !important;
}

.primary-link:hover,
.primary-button:hover:not(:disabled),
.results-panel .report-actions .primary-link:hover {
  background: var(--gallery-olive) !important;
  border-color: var(--gallery-olive) !important;
}

.status-badge,
.tag,
.note-priority {
  background: rgba(117, 81, 81, 0.06) !important;
}

.results-panel.is-hidden #generation-status,
.results-panel.is-hidden .quick-result-meta,
.results-panel.is-hidden .quick-summary-card,
.results-panel.is-hidden .quick-actions-card,
.results-panel.is-hidden .report-actions {
  opacity: 0.64 !important;
}

.site-footer {
  padding-top: 26px !important;
  border-top: 1px solid var(--gallery-line) !important;
}

.workspace-status-bar {
  color: var(--deep-olive) !important;
}

.workspace-action {
  color: var(--cafe-noir) !important;
  background: rgba(255, 249, 243, 0.72) !important;
  border: 1px solid var(--gallery-line) !important;
  border-radius: var(--radius-button) !important;
  box-shadow: none !important;
}

.workspace-action:hover,
.workspace-action:focus-visible {
  color: var(--mauve) !important;
  background: rgba(117, 81, 81, 0.08) !important;
  border-color: rgba(117, 81, 81, 0.34) !important;
  transform: none !important;
}

.private-access-gate {
  width: min(calc(100% - (var(--page-gap) * 2)), var(--max-width));
  margin: 0 auto 18px;
  padding: clamp(18px, 3vw, 28px);
  color: var(--body-text) !important;
  background: rgba(255, 249, 243, 0.88) !important;
  border: 1px solid var(--gallery-line-strong) !important;
  border-left: 4px solid var(--mauve) !important;
  border-radius: var(--radius-panel) !important;
  box-shadow: none !important;
}

.private-access-gate h1 {
  max-width: 760px;
  margin: 0;
  color: var(--cafe-noir) !important;
  font-size: clamp(1.55rem, 2.4vw, 2.2rem) !important;
  line-height: 1.08 !important;
}

.private-access-gate .section-description {
  max-width: 760px !important;
}

.auth-gate-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.project-note-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: stretch !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.project-note-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  padding: 6px 8px;
}

.project-note-delete {
  display: grid;
  width: 36px;
  min-height: 100%;
  place-items: center;
  border: 0;
  border-left: 1px solid var(--gallery-line);
  color: var(--muted-text);
  background: transparent;
}

.project-note-delete:hover {
  color: var(--mauve) !important;
  background: rgba(117, 81, 81, 0.07) !important;
}

.trash-icon {
  width: 15px;
  height: 15px;
}

@media (max-width: 1050px) {
  .dashboard-shell {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "advisor"
      "form"
      "results" !important;
  }

  .dashboard-shell .form-panel,
  .dashboard-shell .results-panel {
    min-height: 0;
  }
}

@media (max-width: 820px) {
  .advisor-hero {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  .advisor-brand-panel {
    min-height: 150px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 250, 243, 0.18) !important;
  }

  .advisor-statement-panel::before {
    display: none;
  }

  .advisor-hero h1 {
    font-size: clamp(1.75rem, 7vw, 2.7rem) !important;
  }
}

@media (max-width: 620px) {
  .dashboard-shell .section-heading {
    display: grid !important;
  }

  .dashboard-shell .quick-result-meta {
    grid-template-columns: 1fr !important;
  }

  .hero-system-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  .hero-system-row span {
    margin-right: 0;
    padding-right: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 250, 243, 0.18);
  }

  .hero-system-row span:last-child {
    border-bottom: 0;
  }

  .project-note-row {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }

  .project-note-link {
    display: flex;
  }

  .project-note-delete {
    width: 38px;
    min-height: 100%;
    border-left: 1px solid var(--gallery-line);
    border-top: 0;
  }
}

/* Final dashboard placement guard for deployed builds. */
.dashboard-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(360px, 0.84fr) !important;
  grid-template-areas:
    "advisor advisor"
    "form results" !important;
  align-items: start !important;
}

.dashboard-shell .advisor-hero {
  grid-area: advisor !important;
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
}

.dashboard-shell .form-panel {
  grid-area: form !important;
  grid-column: auto !important;
  grid-row: auto !important;
  position: relative !important;
  z-index: 1;
}

.dashboard-shell .results-panel {
  grid-area: results !important;
  grid-column: auto !important;
  grid-row: auto !important;
  position: relative !important;
  z-index: 1;
}

@media (max-width: 1050px) {
  .dashboard-shell {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "advisor"
      "form"
      "results" !important;
  }
}
