/* Packages / Membership tabs in Quick Sale — see wwwroot/js/operation/qsPlans.js */
.main-list-services.qs-plans-mode .qs-cat-layout-toggle,
.main-list-services.qs-plans-mode .qs-cat-color-filter,
.main-list-services.qs-plans-mode .sidebar { display: none !important; }

.qs-plans-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 16px; align-items: stretch; align-content: start; grid-auto-rows: max-content; width: 100%; flex: 0 0 auto; height: max-content; padding: 14px 14px 20px; box-sizing: border-box; }
.qs-plans-top { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-bottom: 10px; border-bottom: 1px solid #ececf0; }
.qs-plans-cap { font-size: 12px; font-weight: 600; letter-spacing: .05em; color: #4a4a55; }
.qs-plans-top strong { font-size: 16px; font-weight: 700; color: #1f1f2b; }
.qs-plans-title { grid-column: 1 / -1; }
.qs-plans-title h3 { margin: 0; font-size: 20px; font-weight: 700; letter-spacing: -.01em; color: #1f1f2b; }
.qs-plans-title p { margin: 3px 0 0; font-size: 13px; color: #4a4a55; }

.qs-plan-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #e6e6ea; border-radius: 16px; overflow: hidden; box-shadow: 0 1px 2px rgba(20, 20, 40, .06), 0 6px 18px rgba(20, 20, 40, .05); }
.qs-plan-head { padding: 18px; background: color-mix(in srgb, var(--qs-plan-accent) 12%, #fff); }
.qs-plan-badge { display: inline-flex; align-items: center; font-size: 11px; font-weight: 700; letter-spacing: .06em; border-radius: 10px; padding: 4px 8px; background: #fff; color: var(--qs-plan-accent); }
.qs-plan-head h4 { margin: 14px 0 0; font-size: 20px; font-weight: 700; color: #1f1f2b; }
.qs-plan-desc { margin: 4px 0 0; font-size: 13px; color: #4a4a55; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.qs-plan-price { display: flex; align-items: baseline; gap: 4px; margin-top: 8px; }
.qs-plan-price strong { font-size: 32px; font-weight: 700; letter-spacing: -.02em; color: #1f1f2b; }
.qs-plan-price span { font-size: 14px; color: #4a4a55; }

.qs-plan-body { display: flex; flex-direction: column; gap: 10px; padding: 16px 18px 18px; flex: 1 1 auto; }
.qs-plan-label { font-size: 11px; font-weight: 700; letter-spacing: .08em; color: #4a4a55; }
.qs-plan-perk { display: flex; align-items: flex-start; gap: 8px; font-size: 13px; color: #1f1f2b; }
.qs-plan-perk svg { flex: 0 0 auto; margin-top: 1px; }
.qs-plan-terms { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; padding-top: 6px; }
.qs-plan-term { height: auto; min-height: 0; padding: 5px 10px; border: 1px solid #e2e2e8; border-radius: 14px; background: #fff; font-size: 12px; font-weight: 600; color: #3a3a44; cursor: pointer; }
.qs-plan-term.is-active { border-color: #bfe3cd; background: #e5f5ec; color: #1f6b41; }
.qs-plan-cta { height: 44px; margin-top: 4px; border: 0; border-radius: 10px; font-size: 14px; font-weight: 600; color: #fff; background: var(--qs-plan-accent); cursor: pointer; }

.qs-plans-empty { grid-column: 1 / -1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; min-height: 260px; color: #6b7280; text-align: center; }
.qs-plans-empty strong { color: #374151; }
.qs-plans-retry { margin-top: 6px; padding: 6px 14px; border: 1px solid #d1d5db; border-radius: 8px; background: #fff; cursor: pointer; }
.top-tabs { overflow-x: auto; scrollbar-width: none; }
.top-tabs::-webkit-scrollbar { display: none; }
#packages-content.active, #membership-content.active { overflow-y: auto; align-items: flex-start; }

/* Membership New Sale modal moved out of Settings by QuickSalePlans.hostSaleModal: the host keeps
   the module's .st-mem-container scope without drawing a box; overlays sit above Quick Sale (10000). */
.st-mem-container.qs-mem-sale-host { display: contents; }
.qs-mem-sale-host .st-mem-modal-overlay { z-index: 10050; }
.qs-mem-sale-host .st-mem-toast-container { z-index: 10060; }
