.shop-access-locked { opacity: .7; cursor: pointer; }
.shop-access-lock { margin-left: auto; font-size: 12px; }
.shop-access-badge { margin-top: 7px; font-size: 12px; color: #666; }
.shop-access-overlay { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.4); padding: 24px; }
.shop-access-dialog { width: 620px; max-width: 100%; border-radius: 10px; background: #fff; box-shadow: 0 18px 60px rgba(0,0,0,.2); overflow: hidden; color: #222; }
.shop-access-dialog header { background: #DC0000; color: #fff; padding: 20px 24px; }
.shop-access-dialog h2, .shop-access-empty h2 { margin: 0; font-size: 19px; line-height: 1.45; }
.shop-access-body { padding: 8px 24px; line-height: 1.65; }
.shop-access-body a, .shop-access-empty a { color: #DC0000; }
.shop-access-dialog footer { padding: 16px 24px 22px; display: flex; justify-content: flex-end; gap: 10px; }
.shop-access-dialog button, .shop-access-empty button { cursor: pointer; padding: 10px 16px; border: 1px solid #ddd; border-radius: 6px; background: #fff; font: inherit; }
button.shop-access-primary { background: #DC0000; border-color: #DC0000; color: #fff; }
.shop-access-empty { margin: 24px 0; padding: 24px; border: 1px solid #e5e5e5; border-top: 4px solid #DC0000; border-radius: 8px; background: #fff; line-height: 1.65; }
.shop-access-empty[hidden], .shop-access-badge[hidden] { display: none; }
.ddc-scope-empty .main > .content, .ddc-scope-empty .main > .kpi-row,
.ddc-scope-empty .filters .filter-item:not(:first-child), .ddc-scope-empty #btnExportPDF { display: none !important; }
