/* ===== NOTION-STYLE MAP4LEADS ===== */
:root {
    --n-bg:#fff;--n-bg2:#f7f6f3;--n-text:#37352f;--n-text2:#787774;
    --n-border:#e9e9e7;
    --n-shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);
    --n-shadow-md:0 4px 12px rgba(0,0,0,.08);
}
body::before{display:none!important}

/* === NAVBAR === */
nav.glass{
    background:rgba(255,255,255,.96)!important;
    backdrop-filter:blur(16px) saturate(180%)!important;
    -webkit-backdrop-filter:blur(16px) saturate(180%)!important;
    border-bottom:1px solid #e2e8f0!important;
    box-shadow:0 1px 0 rgba(0,0,0,.04)!important;
}
.dark nav.glass{
    background:rgba(15,23,42,.97)!important;
    border-bottom:1px solid rgba(255,255,255,.06)!important;
}

/* === CARDS === */
.card-premium{
    background:#fff!important;
    border:1px solid #e2e8f0!important;
    box-shadow:var(--n-shadow)!important;
    border-radius:10px!important;
    transition:box-shadow .15s ease,border-color .15s ease!important;
}
.card-premium:hover{
    box-shadow:var(--n-shadow-md)!important;
    border-color:#c7d2fe!important;
}
.dark .card-premium{
    background:#1e293b!important;
    border-color:rgba(255,255,255,.07)!important;
}
.dark .card-premium:hover{border-color:rgba(99,102,241,.3)!important}

/* === SCROLLBAR === */
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:#94a3b8}

/* === INPUTS === */
input[type=text],input[type=email],input[type=password],
input[type=search],input[type=number],textarea,select{
    border-radius:6px!important;
    transition:border-color .15s,box-shadow .15s!important;
}
input:focus,textarea:focus,select:focus{
    border-color:#6366f1!important;
    box-shadow:0 0 0 3px rgba(99,102,241,.1)!important;
    outline:none!important;
}

/* === TABLES === */
table{border-collapse:separate!important;border-spacing:0!important}
thead th{
    background:#f8fafc!important;font-size:.6875rem!important;
    font-weight:600!important;letter-spacing:.07em!important;
    text-transform:uppercase!important;color:#64748b!important;
    border-bottom:1px solid #e2e8f0!important;padding:10px 16px!important;
}
tbody tr{transition:background .1s}
tbody tr:hover td{background:#f8fafc!important}
.dark thead th{background:#1e293b!important;border-color:rgba(255,255,255,.07)!important}
.dark tbody tr:hover td{background:rgba(255,255,255,.03)!important}

/* === ANIMATIONS === */
@keyframes n-fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.animate-fade-in{animation:n-fade .18s ease forwards}

/* === MOBILE OPTIMISATIONS === */
@media(max-width:640px){
    /* Touch targets */
    a,button,[role=button]{min-height:40px}
    nav a,nav button{min-height:44px}

    /* Hauteur navbar */
    nav .h-16{height:60px!important}

    /* Textes trop petits */
    .text-\[8px\]{font-size:.75rem!important}
    .text-\[9px\]{font-size:.75rem!important}
    .text-\[10px\]{font-size:.75rem!important}

    /* Padding confortable */
    main>div{padding-left:1rem!important;padding-right:1rem!important}

    /* Titres lisibles */
    h1{font-size:1.75rem!important;line-height:2.25rem!important}
    h2{font-size:1.375rem!important}
    h3{font-size:1.125rem!important}

    /* Grid 1 col forcé sur très petit */
    .grid-cols-4,.grid-cols-3{grid-template-columns:repeat(2,1fr)!important}
    .grid-cols-4.sm\:grid-cols-2{grid-template-columns:repeat(2,1fr)!important}

    /* Cards plein largeur */
    .card-premium{border-radius:10px!important}
}

/* === SAFE AREA IPHONE === */
@supports(padding-bottom:env(safe-area-inset-bottom)){
    body{padding-bottom:env(safe-area-inset-bottom)}
}
