/*
 * DigitalNXT Brand Colors
 * Based on the official style guide
 */

 :root {
    /* Primary Blue */
    --md-primary-fg-color:        #0F596E;        /* Primary blue */
    --md-primary-fg-color--light: #0F596E;
    --md-primary-fg-color--dark:  #0B4652;

    /* Secondary Orange (Accent) */
    --md-accent-fg-color:         #FF6B35;
    --md-accent-fg-color--transparent: #EB601233; /* With transparency */

    /* Additional brand colors for use in content */
    --digitalnxt-primary-blue: #0F596E;
    --digitalnxt-primary-blue-light: #4A7A8C;
    --digitalnxt-primary-blue-lighter: #7A9AAC;

    --digitalnxt-secondary-orange: #FF6B35;
    --digitalnxt-secondary-orange-light: #F08A4A;
    --digitalnxt-secondary-orange-lighter: #F5B482;

    --digitalnxt-light-blue: #0097B1;
    --digitalnxt-light-blue-light: #4AB3C7;
    --digitalnxt-light-blue-lighter: #7FCFDD;

    --digitalnxt-grey: #616160;
    --digitalnxt-grey-light: #8A8A89;
    --digitalnxt-grey-lighter: #B3B3B2;

    --md-accent-fg-color:         #0F596E;
    --md-accent-fg-color--light:  #0F596E;
    --md-accent-fg-color--dark:   #0B4652;

    /* Brand colors */
    --digitalnxt-orange: #FF6B35;
    --digitalnxt-blue: #0F596E;

    --digitalnxt-accent-teal: #66C1D0;
    --digitalnxt-neutral-grey: #646462;
  }

  /* Font family - Proxima Nova */
  .md-typeset {
    font-family: "Proxima Nova", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }

  /* digitalNXT Agency brand styling */
  .digitalnxt-brand {
    font-weight: 700;
    font-size: 1em;
  }

  .digitalnxt-brand .digitalnxt {
    color: var(--digitalnxt-primary-blue);
    font-weight: normal;
  }

  .digitalnxt-brand .agency {
    color: var(--digitalnxt-secondary-orange);
    font-weight: bold;
  }

  /* Apply brand styling to site title in header - more specific targeting */
  .md-header__title .md-header__ellipsis {
    position: relative;
    font-size: 0; /* Hide original text */
  }

  .md-header__title .md-header__ellipsis::before {
    content: "digitalNXT ";
    color: #D0D0CF;
    font-weight: normal;
    font-size: 1rem;
    display: inline;
  }

  .md-header__title .md-header__ellipsis::after {
    content: "Agency";
    color: var(--digitalnxt-secondary-orange);
    font-weight: bold;
    font-size: 1rem;
    display: inline;
  }

  /* Ensure proper color inheritance for header in both themes */
  [data-md-color-scheme="default"] .md-header__title .md-header__ellipsis::before {
    color: #D0D0CF;
  }

  [data-md-color-scheme="default"] .md-header__title .md-header__ellipsis::after {
    color: var(--digitalnxt-secondary-orange);
  }

  [data-md-color-scheme="slate"] .md-header__title .md-header__ellipsis::before {
    color: #D0D0CF;
  }

  [data-md-color-scheme="slate"] .md-header__title .md-header__ellipsis::after {
    color: var(--digitalnxt-secondary-orange);
  }

  /* Dark theme adjustments */
  [data-md-color-scheme="slate"] {
    --md-primary-fg-color: #0097B1;        /* Use light blue for dark theme */
    --md-primary-fg-color--light: #4AB3C7;
    --md-primary-fg-color--dark: #006B7D;

    --md-accent-fg-color: #EB6012;         /* Keep orange as accent in dark */
    --md-accent-fg-color--transparent: #EB601233;
  }

  /* Custom styling for brand consistency */
  .md-header {
    background-color: var(--md-primary-fg-color);
  }

  .md-tabs {
    background-color: var(--md-primary-fg-color);
  }

  /* Header styling - use secondary orange */
  .md-typeset h1 {
    color: var(--digitalnxt-secondary-orange);
    font-weight: bold;
  }

  /* Markdown content h2 headers styling - only affects content area */
  .md-typeset h2 {
    color: #0F596E !important;
  }

  .md-typeset h3 {
    color: var(--digitalnxt-secondary-orange);
  }

  .md-typeset h4 {
    color: #0F596E !important;
  }

  .md-typeset h5 {
    color: var(--digitalnxt-secondary-orange);
  }

  .md-typeset h6 {
    color: var(--digitalnxt-secondary-orange);
  }

  /* Inline code styling - more subtle background */
  .md-typeset code {
    background-color: rgba(235, 96, 18, 0.1);
    color: var(--digitalnxt-secondary-orange);
    border-radius: 3px;
    padding: 0.1em 0.3em;
    border: 1px solid rgba(235, 96, 18, 0.2);
  }

  /* Code block styling with brand colors */
  .md-typeset .highlight .gp {
    color: var(--digitalnxt-primary-blue);
  }

  /* Admonition customization */
  .md-typeset .admonition.tip {
    border-color: var(--digitalnxt-light-blue);
  }

  .md-typeset .admonition.tip > .admonition-title {
    background-color: var(--digitalnxt-light-blue-lighter);
    border-color: var(--digitalnxt-light-blue);
  }

  .md-typeset .admonition.warning {
    border-color: var(--digitalnxt-secondary-orange);
  }

  .md-typeset .admonition.warning > .admonition-title {
    background-color: var(--digitalnxt-secondary-orange-lighter);
    border-color: var(--digitalnxt-secondary-orange);
  }

  /* Link styling */
  .md-typeset a {
    color: var(--digitalnxt-primary-blue);
  }

  .md-typeset a:hover {
    color: var(--digitalnxt-light-blue);
  }

  /* Navigation styling */
  .md-nav__link--active {
    color: var(--md-primary-fg-color);
  }

  /* Table header styling */
  .md-typeset table:not([class]) th {
    background-color: var(--digitalnxt-primary-blue-lighter);
    color: var(--digitalnxt-primary-blue);
  }

  /* Button styling */
  .md-typeset .md-button {
    color: var(--digitalnxt-primary-blue);
    border-color: var(--digitalnxt-primary-blue);
  }

  .md-typeset .md-button--primary {
    background-color: var(--digitalnxt-secondary-orange);
    border-color: var(--digitalnxt-secondary-orange);
    color: white;
  }

  .md-typeset .md-button--primary:hover {
    background-color: var(--digitalnxt-secondary-orange-light);
    border-color: var(--digitalnxt-secondary-orange-light);
  }

  /* Mermaid diagram customization */
  .mermaid {
    --mermaid-theme: base;
    --mermaid-primary-color: var(--digitalnxt-primary-blue);
    --mermaid-secondary-color: var(--digitalnxt-light-blue);
    --mermaid-tertiary-color: var(--digitalnxt-secondary-orange);
  }

  /*
   * CONTENT WIDTH OPTIMIZATION
   * Proper MkDocs Material approach using .md-grid
   */

  /* Use the official MkDocs Material method for content width */
  .md-grid {
    max-width: 1600px; /* Wider content area for better screen utilization */
    margin: 0 auto;
    padding: 0 1rem; /* Consistent padding */
  }

  /* Adjust padding for larger screens */
  @media screen and (min-width: 76.25em) {
    .md-grid {
      padding: 0 2rem; /* More padding on desktop */
    }
  }

  /* Adjust for mobile screens */
  @media screen and (max-width: 48em) {
    .md-grid {
      padding: 0 1rem; /* Standard mobile padding */
    }
  }

  /* Center Mermaid diagrams */
  .mermaid svg {
    margin: 0 auto;
    display: block;
    max-width: 100%;
    height: auto;
    /* Scale down diagrams for better fit */
    transform: scale(0.85);
    transform-origin: center;
  }

  /* Allow zoom on hover for better readability */
  .mermaid svg:hover {
    transform: scale(1.0);
    transition: transform 0.3s ease;
  }

  /* Side-by-side deployment flows layout */
  .deployment-flows {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
    margin: 1rem 0;
  }

  .flow-container {
    flex: 1;
    min-width: 300px;
    max-width: calc(50% - 1rem);
  }

  /* Responsive: stack on smaller screens */
  @media (max-width: 768px) {
    .deployment-flows {
      flex-direction: column;
    }

    .flow-container {
      max-width: 100%;
    }
  }
