
/* 2. NAVIGATION INTERNE (DASHBOARD) */
.cp-internal-nav {
    display: flex;
    overflow-x: auto;
    gap: 10px;
    margin-bottom: 25px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f3f4f6;
    scrollbar-width: none; /* Cache la barre Firefox */
    -ms-overflow-style: none; /* Cache la barre Edge */
    -webkit-overflow-scrolling: touch;
}

.cp-internal-nav::-webkit-scrollbar {
    display: none; /* Cache la barre Chrome/Safari */
}

.cp-nav-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 700;
    font-size: 13px;
    white-space: nowrap;
    transition: all 0.2s ease;
    background: #fff;
    color: var(--cp-text-light);
    border: 1px solid var(--cp-border);
}

.cp-nav-item:hover { background: #f9fafb; border-color: #d1d5db; }
.cp-nav-item.is-active {
    background: var(--cp-teal) !important;
    color: #fff !important;
    border-color: var(--cp-teal) !important;
}

.cp-nav-logout {
    margin-left: auto;
    padding: 10px 15px;
    color: #ef4444;
    text-decoration: none;
    font-weight: 700;
    border: 1px solid #fee2e2;
    border-radius: 10px;
    font-size: 13px;
}

/* 3. LAYOUT OUTILS & SIDEBAR */
.cp-tool-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 20px;
}

@media (max-width: 991px) {
    .cp-tool-layout { grid-template-columns: 1fr; }
}

.cp-tool-main {
    background: #fff;
    border-radius: var(--radius);
    border: 1px solid var(--cp-border);
    padding: 15px;
}

.cp-tool-sidebar-box {
    padding: 20px;
    border-radius: var(--radius);
    margin-bottom: 20px;
}

.cp-box-green { background: #f0fdf4; border: 1px solid #bbf7d0; color: #166534; }
.cp-box-blue { background: #eff6ff; border: 1px solid #bfdbfe; color: #1e40af; }
.cp-box-purple { background: #faf5ff; border: 1px solid #e9d5ff; color: #6b21a8; }
.cp-box-red { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }

.cp-sidebar-title { font-weight: 800; margin-bottom: 15px; font-size: 14px; text-transform: uppercase; }
.cp-sidebar-list { list-style: none; padding: 0; margin: 0; font-size: 13px; line-height: 1.6; }
.cp-sidebar-list li { margin-bottom: 12px; }

/* 4. PROFIL CARTE */
.cp-profile-card {
    max-width: 800px;
    margin: 0 auto;
    background: #fff;
    border-radius: var(--radius);
    border: 1px solid var(--cp-border);
    padding: 40px;
}

.cp-profile-header { display: flex; align-items: center; gap: 20px; margin-bottom: 30px; }
.cp-profile-avatar {
    width: 60px; height: 60px; background: var(--cp-teal); color: #fff; 
    border-radius: 50%; display: flex; align-items: center; justify-content: center; 
    font-size: 24px; font-weight: 800;
}

.cp-profile-badge {
    background: #d1fae5; color: #065f46; padding: 6px 14px; 
    border-radius: 20px; font-weight: 700; font-size: 11px; margin-left: auto;
}

.cp-profile-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 20px; 
    border-top: 1px solid #f3f4f6; padding-top: 30px;
}

.cp-field label { font-size: 10px; font-weight: 800; color: #9ca3af; text-transform: uppercase; margin-bottom: 4px; display: block; }
.cp-field p { font-weight: 700; margin: 0; font-size: 14px; }

@media (max-width: 600px) {
    .cp-profile-card { padding: 20px; }
    .cp-profile-header { flex-direction: column; text-align: center; }
    .cp-profile-badge { margin: 10px auto 0; }
    .cp-profile-grid { grid-template-columns: 1fr; text-align: center; }
}

/* 5. AUTH NOTICES */
.cp-auth-notice { text-align: center; padding: 60px 20px; background: #fff; border-radius: var(--radius); border: 1px solid var(--cp-border); }
.cp-auth-btns { display: flex; justify-content: center; gap: 15px; margin-top: 25px; }