/* LOGI PASS — Styles globaux partagés */
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#f8f7ff;color:#1a1a2e;min-height:100vh;}

/* Navigation sidebar */
.app-layout{display:flex;min-height:100vh;}
.sidebar{width:220px;background:#fff;border-right:1px solid #e5e7eb;padding:20px 0;position:fixed;top:0;left:0;height:100vh;z-index:100;display:flex;flex-direction:column;}
.main-content{margin-left:220px;padding:32px;flex:1;}
.sb-logo{padding:0 20px 20px;font-size:16px;font-weight:600;color:#1a1a2e;border-bottom:1px solid #f3f4f6;margin-bottom:12px;}
.sb-logo span{color:#7c3aed;}
.nav-section{padding:0 12px;margin-bottom:4px;}
.nav-label{font-size:10px;font-weight:600;color:#9ca3af;letter-spacing:1px;padding:8px 8px 4px;text-transform:uppercase;}
.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;font-size:13px;color:#6b7280;cursor:pointer;text-decoration:none;transition:all .15s;}
.nav-item:hover{background:#f3f4f6;color:#1a1a2e;}
.nav-item.active{background:#f3e8ff;color:#7c3aed;font-weight:500;}
.nav-icon{font-size:15px;width:18px;text-align:center;}
.nav-badge{margin-left:auto;background:#fee2e2;color:#b91c1c;font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px;}
.sb-user{padding:16px 20px;border-top:1px solid #f3f4f6;margin-top:auto;display:flex;align-items:center;gap:10px;}
.sb-av{width:32px;height:32px;border-radius:50%;background:#f3e8ff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#7c3aed;}

/* Cards */
.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;margin-bottom:16px;}
.card-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.card-title{font-size:14px;font-weight:600;color:#1a1a2e;}
.card-link{font-size:12px;color:#7c3aed;cursor:pointer;text-decoration:none;}

/* KPI cards */
.kpi{background:#f9fafb;border-radius:8px;padding:14px 16px;}
.kpi-lbl{font-size:11px;color:#6b7280;margin-bottom:5px;}
.kpi-val{font-size:22px;font-weight:600;color:#1a1a2e;margin-bottom:3px;}
.kpi-sub{font-size:11px;color:#6b7280;}
.kpi-up{color:#16a34a;}

/* Pills */
.pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:10px;font-size:11px;font-weight:600;}
.pill-green{background:#dcfce7;color:#15803d;}
.pill-orange{background:#fff7ed;color:#c2410c;}
.pill-purple{background:#f3e8ff;color:#7c3aed;}
.pill-blue{background:#eff6ff;color:#1d4ed8;}
.pill-red{background:#fee2e2;color:#b91c1c;}
.pill-teal{background:#f0fdfa;color:#0d9488;}
.pill-gray{background:#f3f4f6;color:#6b7280;}
.pill-amber{background:#fffbeb;color:#92400e;}

/* Buttons */
.btn-primary{background:#7c3aed;color:#fff;border:none;border-radius:8px;padding:10px 22px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s;text-decoration:none;display:inline-block;}
.btn-primary:hover{background:#6d28d9;}
.btn-secondary{background:#f3f4f6;border:1px solid #e5e7eb;color:#1a1a2e;border-radius:8px;padding:10px 18px;font-size:14px;cursor:pointer;text-decoration:none;display:inline-block;}
.btn-secondary:hover{background:#e5e7eb;}
.btn-green{background:#16a34a;color:#fff;border:none;border-radius:8px;padding:10px 22px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;}
.btn-green:hover{background:#15803d;}

/* Forms */
.form-lbl{font-size:13px;font-weight:500;color:#1a1a2e;margin-bottom:6px;display:block;}
.form-row{margin-bottom:14px;}
input[type=text],input[type=email],input[type=number],input[type=password],select,textarea{width:100%;padding:10px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#1a1a2e;outline:none;font-family:inherit;}
input:focus,select:focus,textarea:focus{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,0.1);}
textarea{resize:vertical;min-height:80px;}

/* AI panel */
.ai-badge{background:#7c3aed;color:#fff;font-size:10px;font-weight:600;padding:2px 8px;border-radius:6px;}
.ai-block{background:#faf5ff;border:1px solid #e9d5ff;border-radius:10px;padding:12px 14px;margin-bottom:12px;}
.ai-block-title{font-size:12px;font-weight:600;color:#6d28d9;margin-bottom:6px;display:flex;align-items:center;gap:6px;}
.ai-block-body{font-size:13px;color:#4c1d95;line-height:1.6;}

/* Progress bar */
.progress-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;}
.progress-fill{height:100%;background:#7c3aed;border-radius:3px;transition:width .3s;}

/* Responsive */
@media(max-width:768px){
  .sidebar{transform:translateX(-100%);}
  .main-content{margin-left:0;padding:16px;}
}

/* Topbar */
.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:12px;}
.topbar h1{font-size:22px;font-weight:600;color:#1a1a2e;margin-bottom:2px;}
.topbar p{font-size:13px;color:#6b7280;}
.topbar-right{display:flex;gap:10px;align-items:center;}
.btn-add{background:#7c3aed;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:600;cursor:pointer;}

/* Two column layout */
.two-col{display:grid;grid-template-columns:1fr 300px;gap:16px;}
@media(max-width:900px){.two-col{grid-template-columns:1fr;}}

/* Score bars */
.sb-row{display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.sb-lbl{font-size:12px;color:#6b7280;width:90px;flex-shrink:0;}
.sb-track{flex:1;height:7px;background:#f3f4f6;border-radius:4px;overflow:hidden;}
.sb-fill{height:100%;border-radius:4px;}
.sb-val{font-size:12px;font-weight:600;width:28px;text-align:right;color:#1a1a2e;}

/* Alerts */
.alert-item{display:flex;gap:10px;padding:12px;border-radius:8px;margin-bottom:8px;}
.alert-red{background:#fee2e2;}
.alert-orange{background:#fff7ed;}
.alert-blue{background:#eff6ff;}
.alert-title{font-size:13px;font-weight:600;color:#1a1a2e;margin-bottom:2px;}
.alert-sub{font-size:12px;color:#6b7280;}
.alert-cta{font-size:11px;font-weight:600;color:#7c3aed;cursor:pointer;margin-top:4px;text-decoration:none;display:block;}
