/* =====================================================================
   Coopix SaaS — CSS global
   Cores primárias e reset básico. Estilos específicos do Super Admin
   ficam em superadmin.css; do tenant, em app.css do contexto.
   ===================================================================== */

:root {
    /* Brand Tenant */
    --brand-primary:        #695CFE;
    --brand-primary-hover:  #5448D4;
    --brand-primary-light:  #F0EFFF;
    --brand-primary-dark:   #4338CA;

    /* Brand Super Admin */
    --sa-bg:                #1E1B4B;
    --sa-bg-hover:          #312E81;
    --sa-text:              #C7D2FE;
    --sa-text-hover:        #FFFFFF;
    --sa-accent:            #818CF8;
    --sa-border:            #312E81;
    --sa-body-bg:           #F8F7FF;

    /* Layout */
    --sidebar-width:        260px;
    --sidebar-collapsed:    78px;
    --navbar-height:        60px;
    --body-bg:              #F4F6F9;
    --surface:              #FFFFFF;
    --surface-secondary:    #F8F9FA;
    --border:               #E8E8E8;
    --border-radius-sm:     6px;
    --border-radius-md:     8px;
    --border-radius-lg:     12px;
    --border-radius-xl:     16px;

    /* Texto */
    --text-primary:         #333333;
    --text-secondary:       #555555;
    --text-muted:           #6c757d;

    /* Semânticas */
    --color-success:        #28a745;
    --color-warning:        #ffc107;
    --color-danger:         #dc3545;
    --color-info:           #17a2b8;
}

* { box-sizing: border-box; }

html, body {
    height: 100%;
    margin: 0;
}

body {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: var(--text-primary);
    background: var(--body-bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a { color: var(--brand-primary); text-decoration: none; }
a:hover { color: var(--brand-primary-hover); }

/* ---------------------------------------------------------------------
   Toasts (showToast global)
   --------------------------------------------------------------------- */
.toast-container .toast {
    min-width: 280px;
    max-width: 400px;
    border: 0;
    border-radius: var(--border-radius-md);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
    overflow: hidden;
    background: #fff;
    opacity: 1;
    animation: toastIn .3s ease-out;
}
.toast-container .toast.hiding {
    animation: toastOut .25s ease-in forwards;
}
@keyframes toastIn {
    from { transform: translateX(20px); opacity: 0; }
    to   { transform: translateX(0);    opacity: 1; }
}
@keyframes toastOut {
    to { transform: translateX(20px); opacity: 0; }
}
.toast-container .toast-body {
    font-size: 13px;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.toast-container .toast.toast-success { border-left: 4px solid var(--color-success); }
.toast-container .toast.toast-danger  { border-left: 4px solid var(--color-danger); }
.toast-container .toast.toast-warning { border-left: 4px solid var(--color-warning); }
.toast-container .toast.toast-info    { border-left: 4px solid var(--color-info); }

.toast-success .toast-icon { color: var(--color-success); }
.toast-danger  .toast-icon { color: var(--color-danger); }
.toast-warning .toast-icon { color: var(--color-warning); }
.toast-info    .toast-icon { color: var(--color-info); }

/* Utilidades */
.fw-500 { font-weight: 500; }
.fw-600 { font-weight: 600; }
