/* LEXO AI — responsive glass chat */
.app-header{display:none!important;height:0!important;min-height:0!important;padding:0!important;border:0!important}
.chat-shell{height:100dvh;min-height:0;box-sizing:border-box;width:min(1600px,100%);grid-template-columns:clamp(280px,26vw,380px) minmax(0,1fr);gap:clamp(14px,1.6vw,24px);padding:clamp(10px,1.3vw,20px)}
.chat-sidebar{min-height:0;overflow:hidden;width:100%;box-sizing:border-box;padding:clamp(20px,2.2vw,32px);gap:clamp(16px,2vw,24px);display:flex;flex-direction:column}
.sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:4px 4px 18px;border-bottom:1px solid color-mix(in srgb,var(--accent-2) 22%,var(--app-border));min-width:0}.sidebar-heading-main{display:flex;align-items:center;gap:13px;min-width:0}.sidebar-heading-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:14px;background:color-mix(in srgb,var(--bg) 55%,transparent);border:1px solid color-mix(in srgb,var(--accent-2) 28%,var(--app-border));box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 18%,transparent);overflow:hidden}.sidebar-heading-icon img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}.sidebar-heading .kicker{margin:0 0 3px;font-size:9px}.sidebar-heading h2{margin:0;font-size:clamp(20px,2vw,25px);line-height:1.05}.new-chat-icon{width:44px;height:44px;flex:0 0 44px;border:1px solid color-mix(in srgb,var(--accent-2) 38%,var(--app-border));border-radius:14px;background:var(--accent-gradient);color:#fff;font-size:26px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 22%,transparent);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.new-chat-icon:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 14px 34px color-mix(in srgb,var(--accent) 30%,transparent);filter:saturate(1.08)}.new-chat-icon:active{transform:scale(.97)}
.chat-history{min-height:0;flex:1 1 auto;display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:20px;box-sizing:border-box;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-2) 7%,transparent),color-mix(in srgb,var(--accent-3) 5%,transparent))!important;border:1px solid color-mix(in srgb,var(--accent-2) 15%,var(--app-border));overflow:hidden}.history-heading{display:flex;align-items:center;justify-content:space-between;padding:0 3px 8px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.history-list{min-height:0;overflow:auto;padding-right:2px}.history-item{width:100%;box-sizing:border-box;border:1px solid transparent;background:rgba(255,255,255,.018);color:var(--text);border-radius:15px;padding:11px 12px;text-align:left;cursor:pointer;transition:.18s ease;font:inherit}.history-item:hover{border-color:color-mix(in srgb,var(--accent-2) 30%,transparent);background:color-mix(in srgb,var(--accent-2) 7%,transparent);transform:translateY(-1px)}.history-item.active{border-color:color-mix(in srgb,var(--accent-2) 40%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--accent-2) 16%,transparent),color-mix(in srgb,var(--accent-3) 10%,transparent));box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 10%,transparent)}.history-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.history-date{display:block;margin-top:4px;color:var(--muted);font-size:10px}.history-empty{padding:16px 12px;border:1px dashed color-mix(in srgb,var(--accent-2) 24%,var(--app-border));border-radius:15px;color:var(--muted);font-size:11px;line-height:1.5}
.chat-panel{height:100%;min-height:0;max-width:none;width:100%;box-sizing:border-box}.chat-top{min-width:0;padding:7px clamp(18px,2.1vw,30px);gap:8px;min-height:58px;height:58px;box-sizing:border-box;align-items:center}.chat-top>div{min-width:0}.chat-top .kicker{margin-bottom:1px;font-size:7px}.chat-top h1{font-size:clamp(19px,1.8vw,23px);line-height:1;overflow-wrap:anywhere;margin:0}.secure-pill{flex:0 0 auto;white-space:nowrap;font-size:8px;padding:5px 8px}
.messages{min-height:0;overflow:auto;padding:clamp(18px,2.4vw,32px) clamp(18px,3.2vw,44px)}.message{max-width:min(790px,100%)}
/* Barre de saisie : grande capsule flottante, confortable et plus moderne. */
.composer{margin:0 clamp(12px,2vw,24px) 10px;padding:8px 8px 8px 18px;max-width:none;min-height:62px;display:flex;align-items:center;gap:10px;border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--bg) 76%,var(--accent-2) 24%),color-mix(in srgb,var(--bg) 70%,var(--accent-3) 30%))!important;border:1px solid color-mix(in srgb,var(--accent-2) 30%,var(--app-border))!important;box-shadow:0 16px 42px color-mix(in srgb,var(--accent) 16%,transparent),inset 0 1px 0 rgba(255,255,255,.48);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.composer:focus-within{border-color:color-mix(in srgb,var(--accent-2) 52%,var(--app-border))!important;box-shadow:0 18px 46px color-mix(in srgb,var(--accent) 22%,transparent),0 0 0 3px color-mix(in srgb,var(--accent-2) 10%,transparent);transform:translateY(-1px)}.composer textarea{flex:1 1 auto;min-width:0;width:100%;height:44px;min-height:44px;max-height:140px;resize:none;overflow-y:auto;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:var(--text);font:500 14px/1.45 inherit;padding:10px 0}.composer textarea::placeholder{color:color-mix(in srgb,var(--muted) 88%,transparent);opacity:1}.composer .button{flex:0 0 auto;height:46px;min-width:108px;padding:0 18px;border-radius:17px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:800;box-shadow:0 10px 25px color-mix(in srgb,var(--accent) 24%,transparent);transition:transform .18s ease,box-shadow .18s ease}.composer .button:hover{transform:translateY(-1px);box-shadow:0 14px 30px color-mix(in srgb,var(--accent) 30%,transparent)}.composer .button:active{transform:translateY(1px) scale(.98)}.privacy-line{padding-left:clamp(12px,2vw,30px);padding-right:clamp(12px,2vw,30px);margin-top:0}
.messages img{display:block!important;width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;min-height:40px!important;max-height:40px!important;object-fit:cover!important;object-position:center!important;flex:none!important;border-radius:inherit!important}.message .avatar{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;flex:0 0 40px!important;overflow:hidden!important;box-sizing:border-box!important;border-radius:15px!important}.message .avatar img{display:block!important;width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;min-height:40px!important;max-height:40px!important;object-fit:cover!important;object-position:center!important;border-radius:inherit!important}
.sidebar-account-controls{flex:0 0 auto;display:flex;flex-direction:column;gap:10px;padding:13px 0 0;border-top:1px solid color-mix(in srgb,var(--accent-2) 24%,var(--app-border));margin-top:0}.account-control-row{display:flex;align-items:center;gap:8px;min-width:0}.account-control-row .lexo-version{flex:1 1 auto;min-width:0}.account-control-row .icon-button{width:40px;height:40px;flex:0 0 40px}.account-control-row select{height:40px;min-width:62px;flex:0 0 62px;border:1px solid color-mix(in srgb,var(--accent-2) 28%,var(--app-border));border-radius:12px;background:color-mix(in srgb,var(--bg) 55%,transparent);color:var(--text);padding:0 8px;font-weight:700}.sidebar-account-controls .chat-profile{display:grid;grid-template-columns:40px 40px minmax(0,1fr);align-items:center;gap:8px;width:100%}.sidebar-account-controls .chat-profile-avatar{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;min-height:40px!important;max-height:40px!important;flex:0 0 40px!important;border-radius:13px!important;overflow:hidden!important;box-shadow:0 7px 22px color-mix(in srgb,var(--accent) 22%,transparent)}.sidebar-account-controls .chat-profile-button{min-width:0;width:40px;height:40px;padding:0;display:grid;place-items:center;white-space:nowrap;font-size:20px;line-height:1;border-radius:12px;background:color-mix(in srgb,var(--accent-2) 11%,var(--bg))!important;border:1px solid color-mix(in srgb,var(--accent-2) 28%,var(--app-border))!important;color:var(--text)!important}.sidebar-account-controls .chat-logout-button{min-width:0;width:100%;height:40px;padding:0 11px;display:flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid color-mix(in srgb,var(--accent-2) 30%,var(--app-border));background:linear-gradient(135deg,color-mix(in srgb,var(--accent-2) 17%,transparent),color-mix(in srgb,var(--accent-3) 12%,transparent));color:var(--text);box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 10%,transparent);cursor:pointer;font-weight:800;transition:.2s ease}.sidebar-account-controls .sidebar-login{width:100%;justify-content:center}
@media(min-width:901px){.chat-shell{grid-template-columns:clamp(280px,26vw,380px) minmax(0,1fr)}}
@media(max-width:1100px) and (min-width:901px){.chat-shell{grid-template-columns:minmax(260px,31vw) minmax(0,1fr)}.secure-pill{font-size:8px}.account-control-row .lexo-version{font-size:10px}.sidebar-account-controls .chat-profile-button,.sidebar-account-controls .chat-logout-button{font-size:11px}}
@media(max-width:900px){.chat-shell{height:100dvh;min-height:0;display:block;padding:8px}.chat-sidebar{display:none}.chat-panel{height:100%;min-height:0;border-radius:24px}.chat-top{padding:9px 15px;height:auto;min-height:52px}.chat-top h1{font-size:clamp(19px,6vw,24px)}.secure-pill{font-size:8px;padding:6px 8px;max-width:46%;white-space:normal;text-align:center}.messages{padding:20px 14px}.composer{margin:0 10px 10px;border-radius:22px}.privacy-line{font-size:9px;padding:0 12px 12px}}
@media(max-width:600px){.chat-top{display:block;height:auto;min-height:0;padding:9px 13px}.chat-top .secure-pill{display:inline-block;margin-top:5px;max-width:none}.message{gap:8px;margin-bottom:22px}.message .avatar{width:34px!important;height:34px!important;min-width:34px!important;max-width:34px!important;min-height:34px!important;max-height:34px!important;flex-basis:34px!important}.message .avatar img{width:34px!important;height:34px!important;min-width:34px!important;max-width:34px!important;min-height:34px!important;max-height:34px!important}.composer{gap:6px;padding:6px 6px 6px 12px;min-height:56px}.composer textarea{height:42px;min-height:42px;font-size:13px}.composer .button{min-width:48px;width:48px;height:44px;padding:0;border-radius:15px}.composer .button span{display:inline}.composer .button{font-size:0}.composer .button span{font-size:19px}}
@media(max-width:420px){.chat-shell{padding:7px}.chat-top{padding:8px 13px}.messages{padding:17px 11px}.composer{margin:0 7px 8px}.privacy-line{font-size:8px}}
@media(prefers-reduced-motion:reduce){.message{animation:none!important}.history-item,.new-chat-icon,.composer,.composer .button{transition:none}}
