/* Format colors are shared by portal tables, charts and assessment results.
   Important declarations in this layer supersede older page-specific palettes. */
@layer medimood-export-palette {
  .dt-button.buttons-copy { --mm-export-bg:#215bb6; --mm-export-hover:#18498f; --mm-export-ink:#fff; }
  .dt-button.buttons-pdf { --mm-export-bg:#8e2437; --mm-export-hover:#721b2a; --mm-export-ink:#fff; }
  .dt-button.buttons-csv { --mm-export-bg:#17673a; --mm-export-hover:#10512c; --mm-export-ink:#fff; }
  .dt-button.buttons-print { --mm-export-bg:#f2bb4b; --mm-export-hover:#e5a830; --mm-export-ink:#2b2211; }
  .dt-button.buttons-excel { --mm-export-bg:#096c73; --mm-export-hover:#06545a; --mm-export-ink:#fff; }
  [data-mm-export-format][data-mm-export-format="copy"] { --mm-export-bg:#215bb6; --mm-export-hover:#18498f; --mm-export-ink:#fff; }
  [data-mm-export-format][data-mm-export-format="pdf"] { --mm-export-bg:#8e2437; --mm-export-hover:#721b2a; --mm-export-ink:#fff; }
  [data-mm-export-format][data-mm-export-format="csv"] { --mm-export-bg:#17673a; --mm-export-hover:#10512c; --mm-export-ink:#fff; }
  [data-mm-export-format][data-mm-export-format="print"] { --mm-export-bg:#f2bb4b; --mm-export-hover:#e5a830; --mm-export-ink:#2b2211; }
  [data-mm-export-format][data-mm-export-format="png"] { --mm-export-bg:#6b3bb0; --mm-export-hover:#552c90; --mm-export-ink:#fff; }
  [data-mm-export-format][data-mm-export-format="excel"] { --mm-export-bg:#096c73; --mm-export-hover:#06545a; --mm-export-ink:#fff; }

  :is(button,a,input)[data-mm-export-format], .dt-button:is(.buttons-copy,.buttons-pdf,.buttons-csv,.buttons-print,.buttons-excel) {
    background:var(--mm-export-bg)!important;
    border-color:var(--mm-export-bg)!important;
    color:var(--mm-export-ink)!important;
    font-weight:600!important;
    text-decoration:none!important;
    font-size:18px!important;
    line-height:1.3!important;
    padding:9px 14px!important;
    border-radius:8px!important;
    min-height:42px!important;
    box-shadow:none!important;
    transform:none!important;
  }
  #exportExcel.mm-png-export-btn[hidden] { display:none!important; }
  :is(button,a,input)[data-mm-export-format] :is(i,svg,span), .dt-button:is(.buttons-copy,.buttons-pdf,.buttons-csv,.buttons-print,.buttons-excel) :is(i,svg,span) { color:inherit!important; }
  :is(button,a,input)[data-mm-export-format]:is(:hover,:active), .dt-button:is(.buttons-copy,.buttons-pdf,.buttons-csv,.buttons-print,.buttons-excel):is(:hover,:active) {
    background:var(--mm-export-hover)!important;
    border-color:var(--mm-export-hover)!important;
    color:var(--mm-export-ink)!important;
  }
  :is(button,a,input)[data-mm-export-format]:focus-visible, .dt-button:is(.buttons-copy,.buttons-pdf,.buttons-csv,.buttons-print,.buttons-excel):focus-visible {
    outline:3px solid #345478!important;
    outline-offset:3px!important;
  }
}

/* Listing tables only. Clinical questions and input grids keep their own styles. */
@layer medimood-record-tables {
  .mm-records-table {
    --mm-records-bg:#fff;
    --mm-records-alt:#f8f6f7;
    --mm-records-hover:#f1e8ec;
    --mm-records-selected:#eadce3;
    --mm-records-ink:#263445;
    --mm-records-line:#e4dde1;
    width:100%!important;
    border-collapse:collapse!important;
    font-size:16px!important;
    line-height:1.45!important;
  }
  .mm-records-table thead th {
    background:#692638!important;
    color:#fff!important;
    border-bottom:1px solid #692638!important;
    padding:12px 16px!important;
    font-size:16px!important;
    line-height:1.35!important;
    font-weight:600!important;
    text-transform:none!important;
    letter-spacing:normal!important;
    white-space:normal!important;
    vertical-align:middle!important;
    box-shadow:none!important;
  }
  .mm-records-table thead th :is(span,i,a) { color:inherit!important; }
  .mm-records-table tbody td {
    background:var(--mm-records-bg)!important;
    color:var(--mm-records-ink)!important;
    border-bottom:1px solid var(--mm-records-line)!important;
    padding:12px 16px!important;
    font-size:16px!important;
    line-height:1.45!important;
    vertical-align:middle!important;
    box-shadow:none!important;
  }
  .mm-records-table tbody tr:nth-child(even)>td { background:var(--mm-records-alt)!important; }
  .mm-records-table tbody tr:hover>td { background:var(--mm-records-hover)!important; }
  .mm-records-table tbody :is(tr.selected,tr[aria-selected="true"],tr:has(input[type="checkbox"]:checked))>td { background:var(--mm-records-selected)!important; }
  .mm-records-table-container { max-width:100%; overflow-x:auto!important; }
  .mm-records-table-container .dataTables_wrapper { overflow:visible!important; }
  .mm-records-table-container:focus-visible { outline:3px solid #345478; outline-offset:3px; }
  body.dark-mode .mm-records-table { --mm-records-bg:#1c2532; --mm-records-alt:#222c3b; --mm-records-hover:#323044; --mm-records-selected:#443043; --mm-records-ink:#eef2f7; --mm-records-line:#394350; }
  @media print {
    .mm-records-table-container { overflow:visible!important; }
    .mm-records-table { --mm-records-bg:#fff!important; --mm-records-alt:#fff!important; --mm-records-hover:#fff!important; --mm-records-selected:#fff!important; --mm-records-ink:#000!important; --mm-records-line:#ccc!important; font-size:11pt!important; }
    .mm-records-table thead th { background:#fff!important; color:#000!important; border-bottom:1px solid #333!important; }
    .mm-records-table :is(th,td) { padding:7pt 8pt!important; font-size:11pt!important; }
    .mm-records-table tr { break-inside:avoid; }
    [data-mm-export-format] { display:none!important; }
  }
}

/* Commercial finish: listing controls share a compact mobile grid. */
@layer medimood-export-palette {
  @media screen and (max-width:575px) {
    body.mm-portal-readable :is(.mm-export-group,.mm-export-actions),
    body.mm-portal-readable #basicReportsTable_wrapper .dt-buttons {
      display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:8px!important; width:100%!important; max-width:100%!important; min-width:0!important;
      margin:0!important; float:none!important; align-items:stretch!important;
    }
    body.mm-portal-readable :is(.mm-export-group,.mm-export-actions) > :is(.btn,.dt-button),
    body.mm-portal-readable #basicReportsTable_wrapper .dt-buttons > :is(.btn,.dt-button) {
      display:inline-flex!important; align-items:center!important; justify-content:center!important; gap:6px!important;
      width:100%!important; min-width:0!important; margin:0!important; border-radius:8px!important;
    }
  }
}
