/* Compagnon 2.0 — landing & connexion. Chargé APRÈS les styles historiques. */
:root{--bg:#f8faff;--bg-primary:#f8faff;--bg-secondary:#fff;--bg-card:#fff;--bg-hover:#f1f5fc;--border:#e1e9f4;--border-h:#acbdfa;--accent:#365ce4;--accent-hover:#2446c5;--accent2:#6092eb;--accent3:#6c89df;--gradient:linear-gradient(135deg,#3359df,#5984f5);--text:#182b46;--text-primary:#182b46;--text-secondary:#5e6f86;--text-muted:#8191a5;--sub:#667790;--muted:#8593a7;--success:#139269}
html{background:#f8faff!important;color:#1c304b!important}
body{background:radial-gradient(ellipse at 80% 3%,rgba(113,150,245,.13),transparent 42%),#f8faff!important;color:#182b46!important;font-family:'Inter',system-ui,sans-serif!important;-webkit-font-smoothing:antialiased}
nav,.pub-nav{background:rgba(255,255,255,.90)!important;backdrop-filter:blur(22px)!important;border-bottom:1px solid #e6ecf5!important;box-shadow:0 4px 24px rgba(29,51,89,.035)!important}
.nav-logo-text,.pub-nav-logo-text,.logo-text{color:#1e3353!important;-webkit-text-fill-color:#1e3353!important;background:none!important;font-weight:800!important;letter-spacing:-.045em!important}
.nav-logo-icon,.pub-nav-logo-icon,.auth-logo .logo-icon{background:linear-gradient(145deg,#4c73f1,#2f57d8)!important;color:white!important;box-shadow:0 8px 20px rgba(46,78,188,.2)!important}
.nav-links a,.pub-nav-links a{color:#60718b!important;font-weight:600!important}
.nav-links a:hover,.pub-nav-links a:hover{color:#3157d7!important}
.btn-login,.pub-btn-login{background:white!important;color:#273d5b!important;border-color:#dae4f0!important}
.btn-register,.pub-btn-reg,.btn-primary,.cta-reg{background:#345bdc!important;color:white!important;box-shadow:0 10px 24px rgba(43,78,190,.13)!important;border-radius:11px!important}
.btn-register:hover,.btn-primary:hover{background:#2447c5!important}
.hero{min-height:min(86vh,790px)!important;padding:146px 20px 84px!important;background:transparent!important}
.hero-grid,.chat-section-grid{background-image:linear-gradient(rgba(41,90,196,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(41,90,196,.055) 1px,transparent 1px)!important;mask-image:linear-gradient(transparent,black 15%,black 75%,transparent)!important}
.hero-glow{background:radial-gradient(ellipse,rgba(111,141,249,.14),transparent 70%)!important;filter:blur(10px)!important}
.floating{opacity:.04!important}
.hero-badge{background:#eef3ff!important;color:#3654be!important;border:1px solid #dbe5fc!important;font-size:12px!important;font-weight:700!important;box-shadow:0 8px 25px rgba(46,78,189,.04)!important}
.hero h1{font-size:clamp(39px,5.2vw,76px)!important;line-height:1.09!important;letter-spacing:-.066em!important;color:#172b47!important;font-weight:790!important;max-width:980px!important}
.hero h1 span,.chat-section-head h2 span{background:linear-gradient(135deg,#3460ea,#537ef0)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important}
.hero>p{color:#687b94!important;font-size:clamp(15px,1.6vw,18px)!important;max-width:715px!important;line-height:1.8!important}
.hero-cta{margin-bottom:0!important}
.btn-secondary{background:white!important;color:#304461!important;border:1px solid #dce5f1!important;box-shadow:0 6px 20px rgba(24,50,90,.045)!important;border-radius:12px!important}
.btn-secondary:hover{background:#f1f5fc!important;color:#264ed8!important}
.features-grid>div{background:#fff!important;border:1px solid #e3ebf6!important;box-shadow:0 13px 36px rgba(20,42,84,.045)!important;border-radius:18px!important;padding:29px!important}
.features-grid>div:hover{border-color:#adbef2!important;box-shadow:0 20px 48px rgba(24,50,100,.09)!important}
.features-grid h3{color:#1d3452!important;font-size:15px!important}
.features-grid p{color:#697c92!important}
section:has(.features-grid){background:#f3f7fd!important;border-color:#e8eef7!important}
section:has(.features-grid) h2{color:#1b2e49!important}
.chat-section{background:#f8faff!important;border-color:#e7eef7!important;min-height:auto!important;padding:85px 16px 110px!important}
.chat-section-head h2{color:#192d49!important;letter-spacing:-.05em!important}
.chat-section-head p{color:#697b92!important}
.chat-section-head .section-tag{color:#3158d9!important}
.demo-badge-live{background:#e9f7f1!important;color:#087755!important;border-color:#ccebdd!important}
.q-dot{background:#e2e9f5!important;border-color:#cfd9e8!important}
#qText{color:#6c7d93!important}
.chat-box{background:white!important;border:1px solid #dfe7f2!important;box-shadow:0 35px 80px rgba(18,47,91,.105)!important;border-radius:21px!important}
.cb-header{background:#f6f9fd!important;border-bottom:1px solid #e4ebf4!important}
.cb-title{color:#74849a!important}
.cb-ai-badge{color:#3659c8!important;background:#eaf0ff!important;border-color:#d5e1fc!important}
.cb-msgs,.cb-empty{background:#fff!important;color:#243952!important}
.cb-empty h3{color:#233953!important}
.cb-empty p{color:#718198!important}
.cb-chip{background:#f6f8fd!important;color:#395068!important;border-color:#dde6f2!important}
.cb-chip:hover{background:#eef3ff!important}
.cb-input-area,.cb-input-wrap,.cb-input{background:#fff!important;color:#203651!important;border-color:#e0e7f2!important}
.cb-input::placeholder{color:#97a5b8!important}
.cb-send{background:#335bdd!important}
.auth-container{max-width:460px!important}
.auth-logo{margin-bottom:24px!important}
.auth-logo .logo-icon{border-radius:13px!important}
.auth-card{background:white!important;border:1px solid #e3eaf4!important;border-radius:19px!important;box-shadow:0 26px 70px rgba(21,45,88,.085)!important;padding:clamp(24px,4vw,39px)!important}
.auth-title{color:#182c47!important;letter-spacing:-.045em!important;font-size:clamp(22px,3vw,27px)!important}
.auth-subtitle{color:#74839b!important;line-height:1.6!important}
.auth-card label{color:#31445f!important}
.auth-card input{background:#fff!important;color:#172d49!important;border:1px solid #d9e3f0!important;border-radius:11px!important}
.auth-card input:focus{border-color:#7490ee!important;box-shadow:0 0 0 4px rgba(59,99,221,.095)!important}
.auth-card a{color:#345bda!important}
.auth-card .btn-primary{background:#345bdd!important;color:white!important}
.auth-links,.auth-footer{color:#718299!important}
.pub-content{background:#f8faff!important}
.pub-nav a:not(.pub-btn-reg){color:#425875!important}
.legal-wrap h1,.legal-wrap h2,.legal-wrap h3{color:#1b3150!important}
.legal-wrap p,.legal-wrap li{color:#546881!important}
.legal-info-box,.legal-highlight,.legal-green,.legal-warn{background:white!important;border-color:#dce6f2!important}
@media(max-width:768px){.nav-links.open{background:white!important;border-color:#e3e9f2!important;box-shadow:0 22px 50px rgba(24,43,75,.13)!important}.nav-links.open a{color:#40546e!important;border-color:#e9eef6!important}.nav-toggle{color:#1d3351!important}.hero{min-height:0!important;padding-top:129px!important;padding-bottom:80px!important}}
@media(max-width:520px){.hero h1{font-size:39px!important}.hero-badge{font-size:11px!important}.hero>p{font-size:14.5px!important}.features-grid{grid-template-columns:1fr!important}.chat-section{padding:65px 12px 90px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
