.humidity-ai-popup[hidden]{display:none!important}
.humidity-ai-popup{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:22px}
.humidity-ai-backdrop{position:absolute;inset:0;background:rgba(8,29,58,.62);backdrop-filter:blur(5px)}
.humidity-ai-dialog{position:relative;z-index:1;width:min(980px,100%);max-height:calc(100dvh - 44px);overflow:auto;border-radius:8px;box-shadow:0 30px 90px rgba(0,0,0,.32)}
.humidity-ai-lock{overflow:hidden}
.humidity-ai-close{position:absolute;right:14px;top:14px;z-index:3;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(8,29,58,.12)}
.humidity-ai-card{position:relative;border:2px solid rgba(63,159,53,.24);border-radius:8px;background:linear-gradient(135deg,#fff 0%,#fbfff9 58%,#fff7ed 100%);padding:34px;box-shadow:0 24px 70px rgba(8,29,58,.16);overflow:hidden}
.humidity-ai-card:after{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:linear-gradient(90deg,var(--green),var(--orange))}
.humidity-ai-card:before{content:"IA";position:absolute;right:72px;top:20px;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--orange);color:#fff;font-weight:900;letter-spacing:0}
.humidity-ai-header{max-width:850px;padding-right:110px}
.humidity-ai-header h2{margin-top:0}
.humidity-ai-header p:not(.eyebrow){color:var(--muted);font-size:18px}
.humidity-ai-header .eyebrow{display:inline-flex;align-items:center;border-radius:999px;background:var(--pale);padding:6px 12px;margin-bottom:14px}
.humidity-ai-form{margin-top:24px}
.humidity-ai-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.humidity-ai-upload{border:2px dashed rgba(63,159,53,.32);border-radius:8px;background:#fbfff9;padding:20px}
.humidity-ai-upload input[type=file]{padding:10px;min-height:52px;margin-top:8px}
.humidity-ai-preview{margin:0;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.humidity-ai-preview img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#f5f6f8}
.humidity-ai-preview figcaption{padding:10px 12px;color:var(--muted);font-size:14px;font-weight:800}
.humidity-ai-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
.humidity-ai-fields label{display:flex;flex-direction:column;gap:6px}
.humidity-ai-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.humidity-ai-actions .btn-primary{min-width:230px;box-shadow:0 14px 30px rgba(255,90,18,.22)}
.humidity-ai-loader{margin:0;color:var(--muted);font-weight:800}
.humidity-ai-message{margin:14px 0 0;color:var(--muted);font-weight:800}
.humidity-ai-message.error{color:#b42318}
.humidity-ai-fallback{margin-top:16px;border:1px solid #fed7aa;border-left:4px solid var(--orange);border-radius:8px;background:#fff7ed;padding:16px}
.humidity-ai-fallback p{margin:0 0 12px;color:#7c2d12}
.humidity-ai-result{margin-top:26px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:24px}
.humidity-ai-result[hidden],.humidity-ai-preview[hidden],.humidity-ai-loader[hidden],.humidity-ai-fallback[hidden]{display:none!important}
.humidity-ai-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.humidity-ai-result-head h3{margin:.2rem 0 0;font-size:clamp(24px,2.2vw,32px)}
.humidity-ai-type{display:inline-flex;align-items:center;min-height:46px;padding:0 16px;border-radius:8px;background:var(--pale);color:var(--green);font-weight:900;text-transform:capitalize}
.humidity-ai-badge{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:8px 12px;font-weight:900;font-size:14px;background:#edf7ea;color:var(--green)}
.humidity-ai-badge.confidence-faible{background:#fff7ed;color:#9a3412}
.humidity-ai-badge.confidence-moyen{background:#eff6ff;color:#1d4ed8}
.humidity-ai-badge.confidence-eleve{background:#edf7ea;color:var(--green)}
.humidity-ai-summary{font-size:18px;color:#334158;max-width:900px}
.humidity-ai-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.humidity-ai-result-grid article,.humidity-ai-expert,.humidity-ai-warning,.humidity-ai-faq article{border:1px solid var(--line);border-radius:8px;background:#fff;padding:20px;box-shadow:0 1px 2px rgba(8,29,58,.03)}
.humidity-ai-result-grid h4,.humidity-ai-expert h4{margin-top:0}
.humidity-ai-result-grid ul{padding-left:20px;margin-bottom:0}
.humidity-ai-result-grid li{margin:8px 0}
.humidity-ai-expert{background:#f7fbf5;border-left:4px solid var(--green)}
.humidity-ai-warning{margin-top:16px;background:#fbfbfc;color:#334158}
.humidity-ai-cta-row{margin:20px 0 0}
.humidity-ai-faq{margin-top:28px}
.humidity-ai-faq h2{font-size:clamp(26px,2.4vw,36px)}
.humidity-ai-faq .faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:980px){
  .humidity-ai-grid,.humidity-ai-fields,.humidity-ai-result-grid,.humidity-ai-faq .faq-grid{grid-template-columns:1fr}
  .humidity-ai-result-head{display:block}
  .humidity-ai-badge{margin-top:12px}
}
@media(max-width:640px){
  .humidity-ai-popup{align-items:flex-start;padding:10px}
  .humidity-ai-dialog{max-height:calc(100dvh - 20px)}
  .humidity-ai-card,.humidity-ai-result,.humidity-ai-result-grid article,.humidity-ai-expert,.humidity-ai-warning,.humidity-ai-faq article{padding:18px}
  .humidity-ai-card:before{right:66px;top:15px;width:44px;height:44px;font-size:14px}
  .humidity-ai-header{padding-right:100px}
  .humidity-ai-actions .btn-primary,.humidity-ai-actions .btn-ghost,.humidity-ai-cta-row .btn-primary,.humidity-ai-fallback .btn-primary{width:100%}
}
