/* ProductGroup: page-owned composition, shared controls and tenant tokens. */
.productgroup-page { min-width: 0; }
.productgroup-page .card { margin-bottom: 0; }
.productgroup-page .card-body { padding: 24px; }
.productgroup-form-layout { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(280px, 1fr); gap: 24px; align-items: start; }
.productgroup-form-layout > * { min-width: 0; }
.productgroup-section-title { margin: 0 0 6px; font-size: 16px; font-weight: 600; line-height: 24px; }
.productgroup-section-description { margin: 0 0 24px; color: var(--mkp-muted-foreground); line-height: 21px; }
.productgroup-display { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--mkp-border); }
.productgroup-order { max-width: 220px; }
.productgroup-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.productgroup-option { padding: 14px 16px; border: 1px solid var(--mkp-border); border-radius: var(--mkp-radius); }
.productgroup-option .form-check { margin-bottom: 0; }
.productgroup-page .form-text { margin-bottom: 0; color: var(--mkp-muted-foreground); font-size: 14px; line-height: 21px; }
.productgroup-image { position: relative; }
.productgroup-image .doka--root { position: absolute; inset: 0; }
.productgroup-image-preview { display: grid; justify-items: center; gap: 12px; margin: 24px 0 0; padding-top: 24px; border-top: 1px solid var(--mkp-border); }
.productgroup-image-preview img { max-width: 200px; max-height: 200px; object-fit: contain; border-radius: var(--mkp-radius); }
.productgroup-image-preview figcaption { color: var(--mkp-muted-foreground); font-size: 14px; line-height: 21px; }
.productgroup-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px 24px; padding: 16px; }
.productgroup-search { display: flex; align-items: center; gap: 12px; width: 460px; max-width: 100%; }
.productgroup-search .form-label { flex-shrink: 0; margin: 0; }
.productgroup-search .admin-search { min-width: 0; }
.productgroup-search-help { margin: 0; color: var(--mkp-muted-foreground); font-size: 14px; }
.productgroup-list #Grid { border: 0; border-top: 1px solid var(--mkp-border); border-radius: 0 0 var(--mkp-radius-lg) var(--mkp-radius-lg); }
.productgroup-list #Grid { --mkp-grid-cell-x: 16px; }
.productgroup-list #Grid :is(.k-grid-header-table, .k-grid-table) > thead > tr > th { color: var(--mkp-foreground); font-size: 14px; font-weight: 500; }
.productgroup-list #Grid .k-grid-header :is(.k-grid-header-menu, .k-grid-filter) { width: 32px; height: 32px; padding: 8px; opacity: 1; color: var(--mkp-muted-foreground); }
.productgroup-list #Grid .k-grid-header :is(.k-grid-header-menu, .k-grid-filter) .k-svg-icon { width: 16px; height: 16px; }
.productgroup-list #Grid td .btn-group { gap: 4px; }
.productgroup-list #Grid td .btn-group > .btn { min-width: 32px; min-height: 32px; margin: 0; border-color: transparent; border-radius: var(--mkp-radius-sm); background: transparent; box-shadow: none; font-size: 14px; }
.productgroup-list #Grid td .btn-group > .btn:hover { border-color: var(--mkp-border); background: var(--mkp-muted); }
.productgroup-list #Grid td .btn-group > .btn:focus-visible { outline: 2px solid var(--mkp-foreground); outline-offset: 2px; }
.productgroup-list #Grid td:first-child { font-weight: 500; }
.productgroup-list #Grid .k-grid-norecords { padding: 40px 24px; color: var(--mkp-muted-foreground); }
.productgroup-final-actions { margin-top: 16px; display: flex; justify-content: flex-end; }
@media (max-width: 991.98px) {
    .productgroup-form-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 575.98px) {
    .productgroup-page .card-body, .productgroup-toolbar { padding: 16px; }
    .productgroup-search { width: 100%; flex-wrap: wrap; gap: 8px; }
    .productgroup-options { grid-template-columns: minmax(0, 1fr); }
}
