/* dgm_section_widget (2026-11-12, Netzwerk task 19): one CRM widget in a box with a reserved height per width, or the
   pair of page 54 (a large card left, a small card and a note right). Complete in itself; moved from the Netzwerk page
   files (groups/nachwuchs.css .nws-crm, pages/4709.css .wd-com--client, pages/54.css .nwy-com*, .nwy-hint*) under the
   element's own prefix dsw-. The heights per width are the element's field "heights" (ReservedHeightsProcessor writes
   them into <head>). Nothing here restyles the inside of a CRM widget. */

/* the frame: as the html elements it replaces (about.css rhythm rules for html frames, copied for this frame) */
#crm__widgets#crm__widgets section.dgm-ex-root .frame-type-dgm_section_widget:last-child { margin-bottom: 0; }
#crm__widgets#crm__widgets > section.dgm-ex-root:not(.bg-muted\/30):has(> div > div > .frame-type-dgm_section_widget:last-child .custom-compiled-plugin-element) { padding-bottom: 8px; }

/* layout "single": the box */
.dsw-box { width: 100%; }

/* layout "pair" */
#crm__widgets section.dgm-ex-root .frame-type-dgm_section_widget:has(> .dsw-com) { margin-bottom: 0 !important; }
.dsw-com { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 24px; align-items: stretch; margin-top: 40px; }
.dsw-com__card { min-width: 0; padding: 20px 24px; border: 1px solid rgb(227 232 236); border-radius: 16px; background: #fff; box-shadow: 0 1px 2px rgb(15 34 51 / .04), 0 10px 30px -18px rgb(15 34 51 / .2); }
.dsw-com .dsw-box { width: auto; }
.dsw-com__side { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
/* the small card: a fixed box that scrolls inside when the widget lists much */
.dsw-com__card--side { flex: none; height: 268px; overflow: auto; overscroll-behavior: contain; }
.dsw-hint { display: flex; flex: 1; align-items: center; gap: 16px; margin: 0; padding: 22px 24px; border: 1px solid rgb(0 171 227 / .28); border-radius: 16px;
  background: linear-gradient(160deg, #fff, #f0f9fd); color: #0f172a; font: 400 16px/1.6 Theme-Font, Inter, sans-serif; }
.dsw-hint__icon { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 12px; background: rgb(0 171 227 / .1); color: #00abe3; font-size: 18px; }
#crm__widgets .dsw-hint__text p { margin: 0; font: inherit; color: inherit; }
#crm__widgets .dsw-hint__text p + p { margin-top: .5em; }
.dsw-hint a { color: #00abe3; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 1023.98px) {
  .dsw-com { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767.98px) {
  .dsw-hint { align-items: flex-start; padding: 18px; font-size: 15px; }
  .dsw-com__card { padding: 14px 12px; }
}
