:root{
  --orange:#ff5a00;--pink:#ff0b79;--purple:#8518df;
  --bg:#08080a;--panel:#101014;--panel-2:#15151b;
  --text:#f7f7f7;--muted:#b8b8c0;--border:rgba(255,255,255,.12);
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
a{color:var(--orange);text-decoration:none}
a:hover{text-decoration:underline}

.brand{font-weight:800;font-size:1.3rem}
.brand span{background:linear-gradient(90deg,var(--orange),var(--pink),var(--purple));-webkit-background-clip:text;color:transparent}
.brand img{height:34px;width:auto;display:block}
.auth-card .brand img{margin:0 auto}

/* Écran de connexion */
.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.auth-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:36px 32px}
.auth-card .brand{display:block;margin-bottom:22px;text-align:center}
.auth-card h1{font-size:1.1rem;margin:0 0 22px;text-align:center;color:var(--muted);font-weight:600}
.field{margin-bottom:16px}
.field label{display:block;font-size:.82rem;color:var(--muted);margin-bottom:6px}
.field input{width:100%;padding:11px 13px;border-radius:9px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font-size:.95rem}
.field input:focus{outline:none;border-color:var(--orange)}
.btn{cursor:pointer;border:none;border-radius:9px;padding:12px 20px;font-weight:700;font-size:.9rem;font-family:inherit;background:linear-gradient(90deg,var(--orange),var(--pink),var(--purple));color:#fff;width:100%}
.btn:hover{opacity:.92}
.btn-secondary{background:transparent;border:1px solid var(--border);color:var(--text)}
.error-msg{background:rgba(255,59,48,.12);border:1px solid rgba(255,59,48,.35);color:#ff9b93;padding:10px 13px;border-radius:9px;font-size:.85rem;margin-bottom:16px}
.ok-msg{background:rgba(52,199,89,.12);border:1px solid rgba(52,199,89,.35);color:#7fe0a0;padding:10px 13px;border-radius:9px;font-size:.85rem;margin-bottom:16px}

/* Coquille applicative */
.app{min-height:100vh;display:flex}
.sidebar{width:230px;flex-shrink:0;background:var(--panel);border-right:1px solid var(--border);padding:26px 18px;display:flex;flex-direction:column}
.sidebar .brand{margin-bottom:30px;padding-left:6px}
.sidebar nav{display:flex;flex-direction:column;gap:4px;flex:1}
.sidebar nav a{color:var(--muted);padding:10px 12px;border-radius:8px;font-size:.9rem;font-weight:600}
.sidebar nav a:hover{background:var(--panel-2);text-decoration:none;color:var(--text)}
.sidebar nav a.active{background:var(--panel-2);color:var(--text)}
.sidebar .who{font-size:.78rem;color:var(--muted);padding:0 12px 14px;border-bottom:1px solid var(--border);margin-bottom:14px}
.main{flex:1;padding:34px 40px;max-width:1180px}
.main h1{font-size:1.5rem;margin:0 0 26px}

.grid-cols{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
@media(max-width:1050px){.grid-cols{grid-template-columns:repeat(2,1fr)}}
.col{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px}
.col h3{margin:0 0 12px;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.card{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:12px;margin-bottom:10px;font-size:.85rem}
.card .lead-name{font-weight:700;margin-bottom:4px}
.card .lead-meta{color:var(--muted);font-size:.78rem;margin-bottom:8px}
.card select, .card textarea{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:7px;color:var(--text);font-family:inherit;font-size:.8rem;padding:6px 8px;margin-top:4px}
.card textarea{min-height:52px;resize:vertical}
.card .save-btn{margin-top:6px;font-size:.75rem;padding:6px 10px;width:auto}

.badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:.72rem;font-weight:700}
.badge.Nouveau{background:rgba(0,122,255,.18);color:#7ab8ff}
.badge.Contacté{background:rgba(255,204,0,.18);color:#ffd84d}
.badge.Qualifié{background:rgba(255,149,0,.18);color:#ffb04d}
.badge.Converti{background:rgba(52,199,89,.18);color:#7fe0a0}
.badge.Perdu{background:rgba(255,59,48,.18);color:#ff9b93}

table{width:100%;border-collapse:collapse;font-size:.88rem}
th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--border)}
th{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.03em}
tr:hover td{background:var(--panel-2)}

.panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:22px;margin-bottom:22px}
.panel h2{margin:0 0 16px;font-size:1rem}
.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:14px}
.form-row.full{grid-template-columns:1fr}
.form-row .field{margin-bottom:0}

.empty{color:var(--muted);font-size:.85rem;padding:20px 0;text-align:center}
.top-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.pill-btn{display:inline-block;background:linear-gradient(90deg,var(--orange),var(--pink),var(--purple));color:#fff;font-weight:700;font-size:.82rem;padding:9px 16px;border-radius:8px;border:none;cursor:pointer}
.tag-example{color:#ffb04d;font-size:.72rem;border:1px solid rgba(255,176,77,.4);padding:1px 7px;border-radius:99px;margin-left:6px}


/* Alignement visuel avec la maquette CRM Com'Etik */
:root{--ink:#191620;--muted:#8b8792;--line:#eae8ee;--bg:#f7f7fa;--violet:#7450e8;--orange:#f27c3c;--green:#16966b;--panel:#fff;--panel-2:#fafafd;--text:#191620;--border:#eae8ee}
html,body{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:var(--violet)}
.app{display:block;min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:254px;padding:26px 18px 20px;background:#191621;color:#fff;border:0;display:flex;flex-direction:column;z-index:30}
.sidebar .brand{display:flex;align-items:center;padding:0 9px;margin:0 0 24px}.sidebar .brand img{height:35px;max-width:185px;object-fit:contain;object-position:left center}
.who{margin:0 0 24px;padding:12px;border:1px solid #35303f;background:#24212d;border-radius:12px;color:#9792a1;font-size:10px;line-height:1.5}.who strong{display:block;margin-top:3px;font-size:12px;color:#fff!important}
.sidebar nav{display:flex;flex-direction:column;gap:6px}.sidebar nav a{position:relative;border:0;background:transparent;color:#aaa6b3;border-radius:10px;padding:12px;text-align:left;font-size:13px;text-decoration:none}.sidebar nav a.active,.sidebar nav a:hover{background:linear-gradient(90deg,#32294e,#282331);color:#fff;text-decoration:none}.sidebar nav a.active:before{content:"";position:absolute;left:0;top:10px;width:3px;height:23px;background:var(--orange);border-radius:3px}.sidebar nav a:last-child{margin-top:18px;border-top:1px solid #35303f;border-radius:0;padding-top:18px}
.main{margin-left:254px;min-height:100vh;padding:31px 34px 60px;max-width:none;background:var(--bg)}
h1{font-size:28px;letter-spacing:-.8px;color:var(--ink)}h2{font-size:14px;color:var(--ink)}h3{color:var(--ink)}
.panel,.col{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 10px rgba(31,24,45,.025);color:var(--ink)}.panel{padding:20px}.col{padding:14px}
.top-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:23px}
.pill-btn,.btn{border:1px solid var(--line);background:#fff;color:#57525f;border-radius:9px;padding:10px 14px;font-size:11px;font-weight:700;width:auto;cursor:pointer}.btn{border-color:var(--violet);background:var(--violet);color:#fff}.pill-btn:hover{border-color:#cfc3ea;background:#faf8ff;color:var(--violet)}
.grid-cols{display:grid;grid-template-columns:repeat(5,minmax(185px,1fr));gap:12px;overflow-x:auto;padding-bottom:6px}.col h3{font-size:10px;letter-spacing:.35px;margin:0 0 12px;color:#777381}.card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px;margin-bottom:10px;box-shadow:none}.card:hover{border-color:#cfc3ea;box-shadow:0 7px 20px rgba(57,42,71,.07)}.lead-name{color:var(--ink);font-size:11px}.lead-meta{color:#8b8792;font-size:9px}
.field label,label{color:#777381!important;font-size:10px}.field input,.field select,.field textarea,input,select,textarea{border:1px solid var(--line);background:#fff;color:#302b35;border-radius:8px;padding:10px;outline-color:var(--violet)}
table{width:100%;border-collapse:collapse;background:#fff;color:var(--ink)}th{background:#faf9fc;color:#9995a1;font-size:9px;text-align:left;padding:12px;border-bottom:1px solid var(--line)}td{font-size:10px;padding:13px 12px;border-bottom:1px solid #f0eef3}tbody tr:hover{background:#fbfaff}
.empty{color:#9995a2;font-size:10px;text-align:center;padding:35px}.ok-msg{background:#e8f7f1;border:1px solid #cfeadd;color:#167554}.error-msg{background:#fff0f0;border:1px solid #f0cccc;color:#a13f3f}
.auth-wrap{background:#f7f5fb}.auth-card{background:#fff;border:1px solid #e6dff0;box-shadow:0 22px 70px rgba(51,32,85,.12);color:var(--ink)}.auth-card h1{color:var(--ink)}.auth-card .field input{background:#fafafd;color:var(--ink)}
@media(max-width:900px){.sidebar{width:220px}.main{margin-left:220px;padding:24px 18px}.grid-cols{grid-template-columns:repeat(5,175px)}}
@media(max-width:700px){.app{display:block}.sidebar{position:relative;width:100%;padding:18px}.sidebar nav{display:grid;grid-template-columns:1fr 1fr}.sidebar nav a:last-child{margin:0;border:0;padding-top:12px}.main{margin-left:0;padding:20px 14px}.top-actions{align-items:flex-start}.grid-cols{grid-template-columns:repeat(5,170px)}}

.performance-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}.metric-card{position:relative;padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 10px rgba(31,24,45,.025)}.metric-card span,.metric-card strong,.metric-card small{display:block}.metric-card span{font-size:10px;color:#777381}.metric-card strong{font-size:25px;margin:10px 0 7px}.metric-card small{font-size:9px;color:#9995a1}.performance-bars{display:grid;gap:18px;margin-top:20px}.performance-bars p{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px}.performance-bars span{font-size:11px;color:#706a77}.performance-bars strong{font-size:13px}.performance-bars i{display:block;height:9px;border-radius:20px;background:#eeeaf3;overflow:hidden}.performance-bars b{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,var(--violet),#a887ef)}.performance-bars>div:nth-child(2) b{background:linear-gradient(90deg,var(--orange),#f5a46d)}.performance-bars>div:nth-child(3) b{background:linear-gradient(90deg,var(--green),#61c7a4)}@media(max-width:850px){.performance-metrics{grid-template-columns:1fr 1fr}}


/* Maquette CRM Com'Etik — alignement visuel */
.app{--ink:#191620;--muted:#8b8792;--line:#eae8ee;--bg:#f7f7fa;--violet:#7450e8;--orange:#f27c3c;--green:#16966b;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;display:block;min-height:100vh}
.app .sidebar{position:fixed;inset:0 auto 0 0;width:254px;padding:26px 18px 20px;background:#191621;color:#fff;border:0;display:flex;flex-direction:column;z-index:30}
.crm-brand{display:flex;align-items:center;gap:11px;padding:0 9px;font-size:22px}.crm-brand>span{width:35px;height:35px;border-radius:10px;background:linear-gradient(135deg,var(--orange),var(--violet));display:grid;place-items:center;font-size:14px;font-weight:850}.crm-brand strong,.crm-brand small{display:block}.crm-brand strong{font-size:20px;line-height:1}.crm-brand small{font-size:9px;color:#aaa6b3;margin-top:5px;font-weight:500;letter-spacing:.8px}
.app .crm-company{margin:24px 0!important;display:flex!important;gap:10px;align-items:center;padding:12px!important;border:1px solid #35303f!important;background:#24212d!important;border-radius:12px!important;color:#fff!important}.crm-company>span{width:34px;height:34px;border-radius:9px;background:#fff;color:#285132;display:grid;place-items:center;font-size:11px;font-weight:900}.crm-company>div{min-width:0}.crm-company strong,.crm-company small{display:block}.crm-company strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-company small{font-size:9px;color:#9792a1;margin-top:3px}
.app .sidebar nav{display:flex;flex-direction:column;gap:6px}.app .sidebar nav a{position:relative;border:0;background:transparent;color:#aaa6b3;border-radius:10px;padding:12px;text-align:left;font-size:13px;cursor:pointer;white-space:nowrap;text-decoration:none}.app .sidebar nav a.active,.app .sidebar nav a:hover{background:linear-gradient(90deg,#32294e,#282331);color:#fff;text-decoration:none}.app .sidebar nav a.active:before{content:"";position:absolute;left:0;top:10px;width:3px;height:23px;background:var(--orange);border-radius:3px}.app .sidebar nav em{float:right;font-style:normal;background:var(--orange);color:#fff;border-radius:20px;padding:2px 7px;font-size:9px}
.crm-help{margin-top:auto;background:linear-gradient(145deg,#2e263c,#282330);border:1px solid #3d3649;border-radius:13px;padding:15px}.crm-help small,.crm-help strong{display:block}.crm-help small{font-size:10px;color:#aaa6b3}.crm-help strong{font-size:12px;margin:4px 0 12px}.crm-help a{display:block;width:100%;border:1px solid #4d4658;color:#fff!important;border-radius:8px;padding:7px;text-align:center;font-size:10px;text-decoration:none}.crm-profile{display:flex;align-items:center;gap:9px;padding:14px 8px 0}.crm-profile>i,.crm-avatar{width:35px;height:35px;border-radius:50%;background:linear-gradient(135deg,#f5a060,#875ee7);display:grid;place-items:center;font-size:11px;font-weight:800;font-style:normal;color:#fff}.crm-profile>div{flex:1;min-width:0}.crm-profile strong,.crm-profile small{display:block}.crm-profile strong{font-size:11px}.crm-profile small{font-size:9px;color:#9792a1;margin-top:3px}.crm-profile>a{color:#9691a0!important;font-size:10px;text-decoration:none}
.app .main{margin-left:254px;min-height:100vh;padding:31px 34px 55px;max-width:none;background:var(--bg);color:var(--ink)}.crm-header{height:74px;margin:-31px -34px 30px;padding:0 34px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:20}.crm-header label{width:350px;height:39px;border:1px solid var(--line);background:#fafafd;border-radius:10px;display:flex;align-items:center;gap:9px;padding:0 11px;color:#9995a0}.crm-header input{flex:1;min-width:0;border:0!important;outline:0;background:none!important;color:var(--ink)!important;padding:0!important;font-size:12px}.crm-header kbd{font-size:9px;border:1px solid #e2e0e6;background:#fff;border-radius:5px;padding:3px 6px}.crm-header button{margin-left:auto;border:0;background:none;font-size:22px;color:#706b78}.crm-header .crm-avatar{margin-left:14px;width:32px;height:32px}
.app .top-actions{margin-bottom:23px}.app .top-actions h1{font-size:28px;letter-spacing:-.8px;color:var(--ink)}.app .top-actions>div>div{letter-spacing:1.4px!important;font-size:9px!important;font-weight:700}.app .panel,.app .metric-card,.app .col{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 10px rgba(31,24,45,.025);color:var(--ink)}.app .panel{padding:20px}.app .pill-btn,.app .export{border:1px solid var(--line);background:#fff;color:#57525f;border-radius:9px;padding:10px 14px;font-size:11px;font-weight:600}.app .btn{background:var(--violet);border-radius:9px;width:auto}.app .field label,.app label{color:#777381}.app input,.app select,.app textarea{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px}.app .grid-cols{gap:10px}.app .col{border-radius:12px}.app .col h3{font-size:9px;color:#777381;background:#faf9fc;border-color:var(--line)}.app .card{background:#fff;border-color:var(--line);color:var(--ink)}.app .lead-meta,.app .empty{color:#9995a2}.app #liste-leads{overflow:hidden}.app .lead-filter-bar input,.app .lead-filter-bar select{height:37px}.app table{color:var(--ink)}.app th{background:#faf9fc;color:#9995a1;font-size:9px}.app td{border-color:#f0eef3;font-size:10px}.app tr:hover td{background:#fbfaff}.app .performance-metrics{gap:12px}.app .metric-card{padding:18px}.app .metric-card span{color:#777381;font-size:10px}.app .metric-card strong{font-size:25px}.app .metric-card small{color:#aaa5af}.app .performance-bars i{background:#eeeaf3}.app .performance-bars b{background:linear-gradient(90deg,var(--violet),#a080ee)}.app .campaign-status{background:#f0ebff;color:var(--violet)}
@media(max-width:760px){.app .sidebar{position:relative;width:100%;min-height:auto}.app .crm-help{display:none}.app .main{margin-left:0;padding:22px 16px 60px}.crm-header{margin:-22px -16px 22px;padding:0 16px;height:64px}.crm-header label{width:auto;flex:1}.crm-header kbd{display:none}.app .sidebar nav{display:grid;grid-template-columns:1fr 1fr}.crm-profile{margin-top:12px}.app .performance-metrics{grid-template-columns:1fr 1fr}.app .grid-cols{grid-template-columns:repeat(2,minmax(230px,1fr));overflow-x:auto}}
