/* === Drupal Messages – Clean Grid Styles (final) === */
[data-drupal-messages] { width: 100%; }

[data-drupal-messages] .dm-message{
  --radius:14px; --pad:14px; --icon:44px; --ink:#1f2a2e;
  --bg:#f5f7f8; --bd:#dfe6ea; --accent:#8899a6;
  display:block; border:1px solid var(--bd); border-radius:var(--radius);
  background:var(--bg); color:var(--ink); box-shadow:0 2px 10px rgba(0,0,0,.04);
  overflow:hidden;
}
[data-drupal-messages] .dm-message + .dm-message{ margin-top:12px; }

/* Grid: Icon links; Content oben rechts; Actions unten rechts */
[data-drupal-messages] .dm-inner{
  display:grid;
  grid-template-columns: var(--icon) 1fr;
  grid-template-rows: auto auto;           /* Reihe 1: Content, Reihe 2: Actions */
  gap:12px;
  padding: var(--pad) calc(var(--pad) + 2px) var(--pad) var(--pad);
  align-items: start;
}
[data-drupal-messages] .dm-icon{
  inline-size:var(--icon); block-size:var(--icon);
  border-radius:10px; display:grid; place-items:center;
  background: color-mix(in srgb, var(--accent) 14%, #fff);
  grid-row: 1 / span 2;                    /* Icon über beide Reihen */
}
[data-drupal-messages] .dm-svg{ width:22px; height:22px; display:block;
  fill: color-mix(in srgb, var(--accent) 52%, #000); }

/* Content (oben rechts) */
[data-drupal-messages] .dm-content{ grid-column:2; grid-row:1; min-width:0; }
[data-drupal-messages] .dm-head__title{
  margin:0 0 4px 0; font-size:.94rem; font-weight:700; letter-spacing:.2px;
  text-align:left;                          /* explizit linksbündig */
}
[data-drupal-messages] .dm-body{ font-size:.95rem; }
[data-drupal-messages] .dm-text{ margin:0; line-height:1.45; }
[data-drupal-messages] .dm-list{ margin:0; padding:0 0 0 1.1rem; display:grid; gap:6px; }

/* Actions (unten rechts) */
[data-drupal-messages] .dm-actions{
  grid-column:2; grid-row:2;
  justify-self:end; align-self:end;         /* unten rechts ausrichten */
  padding-top:8px;
}
[data-drupal-messages] .dm-btn-ok{
  appearance:none; border:1px solid var(--bd); background:#fff; color:var(--ink);
  font:inherit; padding:6px 10px; border-radius:10px; cursor:pointer;
  transition: box-shadow .2s ease, transform .05s ease;
}
[data-drupal-messages] .dm-btn-ok:hover{
  box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent);
}
[data-drupal-messages] .dm-btn-ok:active{ transform: translateY(1px); }

/* Typvarianten */
[data-drupal-messages] .dm--status{ --bg:#f2fbf6; --bd:#cfe9d9; --accent:#2f8f5b; }
[data-drupal-messages] .dm--warning{ --bg:#fff9f0; --bd:#f3dfbf; --accent:#a86b12; }
[data-drupal-messages] .dm--error{ --bg:#fff5f5; --bd:#f2c8c8; --accent:#b03333; }

/* Motion */
@media (prefers-reduced-motion: reduce){
  [data-drupal-messages] .dm-btn-ok{ transition:none; }
}
