.customer-notifications-shell { max-width: 1180px; margin: 32px auto; padding: 0 16px 24px; display: grid; gap: 16px; } .customer-notifications-hero, .customer-notification-stats article, .customer-notifications-toolbar, .customer-notification-card, .customer-empty-state, .customer-filter-empty { background: #ffffff; border-radius: 18px; box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06); } .customer-notifications-hero { padding: 20px; display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; } .customer-kicker { margin: 0; font-size: 13px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #ef4444; } .customer-notifications-hero h1 { margin: 6px 0 0; font-family: "Montserrat", sans-serif; font-size: clamp(2rem, 4vw, 2.6rem); } .customer-notifications-hero p { margin: 10px 0 0; color: #6b7280; max-width: 760px; } .customer-notifications-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; } .customer-primary-btn, .customer-secondary-btn, .customer-reset-btn, .customer-action-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 14px; border-radius: 12px; text-decoration: none; font-family: "Montserrat", sans-serif; font-weight: 700; cursor: pointer; border: 1px solid transparent; } .customer-primary-btn { background: #0f172a; color: #ffffff; } .customer-primary-btn:hover { background: #111827; } .customer-notification-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; } .customer-notification-stats article { padding: 16px; } .customer-notification-stats span { display: block; font-size: 0.88rem; color: #6b7280; } .customer-notification-stats strong { display: block; margin-top: 8px; font-size: 1.4rem; font-family: "Montserrat", sans-serif; } .customer-notifications-toolbar { padding: 16px; } .customer-notifications-form { display: grid; grid-template-columns: 1.6fr 1fr 1fr auto auto; gap: 10px; } .customer-notifications-form input, .customer-notifications-form select { min-height: 44px; width: 100%; border: 1px solid #d1d5db; border-radius: 12px; padding: 0 12px; background: #ffffff; color: #111827; } .customer-secondary-btn, .customer-reset-btn { min-width: 110px; } .customer-secondary-btn { background: #0f172a; color: #ffffff; } .customer-reset-btn { background: #ffffff; border-color: #d1d5db; color: #111827; } .customer-notifications-list { display: grid; gap: 12px; } .customer-notification-card { padding: 16px; display: grid; grid-template-columns: 56px 1fr auto; gap: 14px; align-items: flex-start; } .customer-notification-card.is-unread { border: 1px solid rgba(108, 140, 245, 0.2); } .customer-notification-icon { width: 56px; height: 56px; border-radius: 16px; background: #eef4ff; color: #6c8cf5; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; } .customer-notification-topline { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap; } .customer-notification-topline h3 { margin: 0; font-family: "Montserrat", sans-serif; } .customer-notification-badges { display: flex; flex-wrap: wrap; gap: 8px; } .customer-badge-status, .customer-badge-type { display: inline-flex; align-items: center; min-height: 28px; padding: 0 10px; border-radius: 999px; font-size: 0.78rem; font-weight: 700; } .customer-badge-status.is-unread { background: #e0e7ff; color: #3730a3; } .customer-badge-status.is-read { background: #ecfeff; color: #155e75; } .customer-badge-type.is-booking { background: #f3e8ff; color: #6b21a8; } .customer-badge-type.is-payment { background: #dbeafe; color: #1d4ed8; } .customer-badge-type.is-review { background: #dcfce7; color: #166534; } .customer-badge-type.is-promo { background: #ffedd5; color: #9a3412; } .customer-badge-type.is-warning { background: #fef3c7; color: #92400e; } .customer-badge-type.is-error { background: #fee2e2; color: #991b1b; } .customer-badge-type.is-success { background: #dcfce7; color: #166534; } .customer-badge-type.is-system { background: #f3f4f6; color: #374151; } .customer-notification-message { margin: 10px 0 0; color: #374151; line-height: 1.65; } .customer-notification-meta { display: flex; flex-wrap: wrap; gap: 10px 16px; margin-top: 12px; color: #6b7280; font-size: 0.9rem; } .customer-notification-meta span { display: inline-flex; align-items: center; gap: 6px; } .customer-notification-actions { display: grid; gap: 8px; } .customer-action-btn { min-width: 128px; background: #ffffff; color: #111827; border-color: #d1d5db; } .customer-action-btn.is-view { background: #eef4ff; color: #2c4ab8; border-color: #dbe8ff; } .customer-action-btn.is-read { background: #0f172a; color: #ffffff; } .customer-action-btn.is-disabled { opacity: 0.65; cursor: not-allowed; } .customer-filter-empty, .customer-empty-state { text-align: center; padding: 44px 20px; } .customer-filter-empty i, .customer-empty-icon { width: 72px; height: 72px; border-radius: 50%; background: #eef4ff; color: #6c8cf5; display: flex; align-items: center; justify-content: center; margin: 0 auto 12px; font-size: 1.6rem; } .customer-empty-state h3, .customer-filter-empty p, .customer-empty-state p { margin: 0; } .customer-empty-state h3 { font-family: "Montserrat", sans-serif; } .customer-notifications-pagination { margin-top: 6px; } @media (max-width: 980px) { .customer-notifications-hero, .customer-notification-card { grid-template-columns: 1fr; } .customer-notification-stats, .customer-notifications-form { grid-template-columns: 1fr 1fr; } .customer-notification-actions { justify-content: flex-start; } } @media (max-width: 720px) { .customer-notifications-hero, .customer-notifications-toolbar, .customer-notification-card, .customer-empty-state { border-radius: 14px; } .customer-notification-stats, .customer-notifications-form { grid-template-columns: 1fr; } .customer-notification-card { padding: 14px; } .customer-action-btn, .customer-secondary-btn, .customer-reset-btn, .customer-primary-btn { width: 100%; } }