/* DEV V36C1 Clean Polish Layer - no new features */
:root{
  --ep-radius:16px;
  --ep-line:#e5e7eb;
  --ep-muted:#64748b;
  --ep-bg-soft:#f8fafc;
}
.ep-card,.card,.admin-card{
  border-radius:var(--ep-radius);
}
.ep-page-head,.page-header,.admin-page-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  flex-wrap:wrap;
}
.table-responsive,.ep-table-wrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
table{
  max-width:100%;
}
.ep-actions,.actions,.btn-group{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
button,.btn,.ep-btn,a.btn{
  border-radius:12px;
}
@media (max-width:920px){
  .ep-page-head,.page-header,.admin-page-header{
    align-items:stretch;
  }
  .ep-actions,.actions,.btn-group{
    width:100%;
  }
}
@media (max-width:640px){
  .ep-card,.card,.admin-card{
    border-radius:14px;
  }
  .ep-actions .btn,.actions .btn,.btn-group .btn{
    width:100%;
    justify-content:center;
  }
  table th,table td{
    white-space:nowrap;
  }
}

/* V36E-R6I pending button notification ui */
body a[href*="pending"],
body a[href*="pending-payments"],
body button[data-action*="pending"],
body .ep-pending-btn {
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%) !important;
    color: #9a3412 !important;
    border: 1px solid #fdba74 !important;
    box-shadow: 0 10px 24px rgba(251, 146, 60, .16) !important;
    font-weight: 900 !important;
    position: relative !important;
}

body a[href*="pending"]:hover,
body a[href*="pending-payments"]:hover,
body .ep-pending-btn:hover {
    background: linear-gradient(135deg, #fed7aa 0%, #fb923c 100%) !important;
    color: #111827 !important;
    transform: translateY(-1px);
}

body a[href*="pending"]::before,
body a[href*="pending-payments"]::before,
body .ep-pending-btn::before {
    content: "●";
    display: inline-block;
    margin-right: 7px;
    color: #f97316;
    font-size: 12px;
    vertical-align: middle;
}

/* Clear flash / notification messages */
body .alert,
body [role="alert"],
body .ep-alert,
body .flash-message,
body .notification,
body .toast,
body .message,
body .status-message {
    width: 100% !important;
    max-width: 1160px !important;
    margin: 14px auto !important;
    padding: 14px 18px !important;
    border-radius: 14px !important;
    border: 1px solid #bfdbfe !important;
    background: #eff6ff !important;
    color: #0f172a !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .08) !important;
    word-break: break-word !important;
}

/* Laravel/Tailwind green success blocks */
body .alert-success,
body .success,
body .bg-green-50,
body .bg-green-100,
body [class*="green"] {
    border-color: #86efac !important;
    background: #dcfce7 !important;
    color: #065f46 !important;
}

/* Laravel/Tailwind red error blocks */
body .alert-danger,
body .alert-error,
body .error,
body .bg-red-50,
body .bg-red-100,
body [class*="red"] {
    border-color: #fecaca !important;
    background: #fee2e2 !important;
    color: #991b1b !important;
}

/* POS top buttons spacing on mobile */
@media (max-width: 768px) {
    body a[href*="pending"],
    body a[href*="pending-payments"] {
        min-height: 42px !important;
        padding: 10px 14px !important;
        border-radius: 13px !important;
    }

    body .alert,
    body [role="alert"],
    body .ep-alert,
    body .flash-message,
    body .notification,
    body .toast,
    body .message,
    body .status-message {
        margin: 10px 8px !important;
        width: auto !important;
        font-size: 14px !important;
    }
}

/* V36E-R6I2 POS pending ui always visible */
body .ep-pos-pending-btn,
body a[href*="pending-payments"],
body a[href*="/pending"] {
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%) !important;
    color: #9a3412 !important;
    border: 1px solid #fb923c !important;
    border-radius: 14px !important;
    padding: 12px 18px !important;
    font-weight: 900 !important;
    box-shadow: 0 10px 24px rgba(249, 115, 22, .18) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 42px !important;
}

body .ep-pos-pending-btn::before,
body a[href*="pending-payments"]::before {
    content: "⏳";
    font-size: 16px;
}

body .ep-pos-pending-btn:hover,
body a[href*="pending-payments"]:hover {
    background: linear-gradient(135deg, #fed7aa 0%, #fdba74 100%) !important;
    color: #111827 !important;
    transform: translateY(-1px);
}

/* POS pending summary cards */
body .pos-card:has(.pos-empty),
body .pos-card:has([class*="pending"]),
body div:has(> .pos-empty) {
    border: 1px solid #bfdbfe !important;
    border-radius: 18px !important;
    background: #ffffff !important;
}

/* Empty pending message */
body .pos-empty,
body .empty-state,
body .ep-empty-pending-message {
    font-size: 14px !important;
    font-weight: 900 !important;
    color: #075985 !important;
    background: #f0f9ff !important;
    border: 1px solid #bae6fd !important;
    border-radius: 14px !important;
    padding: 12px 14px !important;
}

/* Global success/error notifications */
body .alert,
body [role="alert"],
body .notification,
body .toast,
body .status-message,
body .flash-message {
    max-width: 1180px !important;
    margin: 14px auto !important;
    padding: 14px 18px !important;
    border-radius: 16px !important;
    font-weight: 900 !important;
    line-height: 1.45 !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08) !important;
}

body .alert-success,
body .bg-green-50,
body .bg-green-100 {
    background: #dcfce7 !important;
    border: 1px solid #86efac !important;
    color: #065f46 !important;
}

body .alert-danger,
body .alert-error,
body .bg-red-50,
body .bg-red-100 {
    background: #fee2e2 !important;
    border: 1px solid #fecaca !important;
    color: #991b1b !important;
}

@media (max-width: 768px) {
    body .ep-pos-pending-btn,
    body a[href*="pending-payments"] {
        width: 100% !important;
        justify-content: center !important;
        margin-top: 8px !important;
    }
}


/* V36E-R6I4 global sticky notifications */
body .alert,
body [role="alert"],
body .notification,
body .toast,
body .status-message,
body .flash-message,
body .ep-alert,
body .ep-flash,
body .admin-alert {
    position: sticky !important;
    top: 10px !important;
    z-index: 9999 !important;
    max-width: 1180px !important;
    width: calc(100% - 28px) !important;
    margin: 10px auto 16px auto !important;
    padding: 14px 18px !important;
    border-radius: 16px !important;
    font-weight: 900 !important;
    line-height: 1.45 !important;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .13) !important;
    backdrop-filter: blur(8px);
}

body .alert-success,
body .success,
body .bg-green-50,
body .bg-green-100 {
    background: #dcfce7 !important;
    border: 1px solid #86efac !important;
    color: #065f46 !important;
}

body .alert-danger,
body .alert-error,
body .error,
body .bg-red-50,
body .bg-red-100 {
    background: #fee2e2 !important;
    border: 1px solid #fecaca !important;
    color: #991b1b !important;
}

body .alert-warning,
body .warning,
body .bg-yellow-50,
body .bg-orange-50 {
    background: #fff7ed !important;
    border: 1px solid #fdba74 !important;
    color: #9a3412 !important;
}

@media (max-width: 768px) {
    body .alert,
    body [role="alert"],
    body .notification,
    body .toast,
    body .status-message,
    body .flash-message,
    body .ep-alert,
    body .ep-flash,
    body .admin-alert {
        top: 8px !important;
        width: calc(100% - 16px) !important;
        margin: 8px auto 12px auto !important;
        padding: 12px 14px !important;
        border-radius: 14px !important;
        font-size: 14px !important;
    }
}


/* V36E-R6I5 global pending banner */
.ep-global-pending-banner {
    position: fixed !important;
    top: 14px !important;
    left: 238px !important;
    right: 22px !important;
    z-index: 10050 !important;
    min-height: 54px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 12px 16px !important;
    border-radius: 18px !important;
    border: 1px solid #fb923c !important;
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%) !important;
    color: #9a3412 !important;
    box-shadow: 0 20px 44px rgba(124, 45, 18, .20) !important;
    font-weight: 900 !important;
    backdrop-filter: blur(10px);
}

.ep-global-pending-main {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    flex-wrap: wrap !important;
}

.ep-global-pending-icon {
    width: 30px !important;
    height: 30px !important;
    border-radius: 999px !important;
    background: #fed7aa !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ep-global-pending-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 8px 13px !important;
    border-radius: 12px !important;
    background: #111827 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.ep-global-pending-link:hover {
    background: #0f172a !important;
    transform: translateY(-1px);
}

/* give room under fixed banner on admin pages */
body:has(.ep-global-pending-banner) {
    padding-top: 62px !important;
}

@media (max-width: 900px) {
    .ep-global-pending-banner {
        left: 10px !important;
        right: 10px !important;
        top: 10px !important;
        border-radius: 15px !important;
        padding: 10px 12px !important;
        font-size: 13px !important;
    }

    body:has(.ep-global-pending-banner) {
        padding-top: 76px !important;
    }
}


/* V36E-R6J1 client registry + history buttons */
.ep-client-history-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 8px 12px !important;
    margin-right: 8px !important;
    border-radius: 12px !important;
    border: 1px solid #bfdbfe !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .10) !important;
}

.ep-client-history-btn::before {
    content: "📜";
    margin-right: 6px;
}

.ep-client-history-btn:hover {
    background: #dbeafe !important;
    color: #1e40af !important;
    transform: translateY(-1px);
}

.ep-client-registry-note {
    max-width: 1180px !important;
    margin: 12px auto 16px auto !important;
    padding: 13px 16px !important;
    border-radius: 16px !important;
    border: 1px solid #bfdbfe !important;
    background: linear-gradient(135deg, #eff6ff 0%, #f8fafc 100%) !important;
    color: #0f172a !important;
    font-weight: 800 !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .08) !important;
}


