/* ─────────────────── FORM ─────────────────── */
.ai-eval-form{
    max-width:600px;margin:2rem auto;background:#fff;padding:2rem;border-radius:8px;
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
    box-shadow:0 4px 12px rgba(0,0,0,.08);border:1px solid #e0e0e0}
.ai-eval-group{margin-bottom:1.5rem}
.ai-eval-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#2d3748}
.ai-eval-input{
    width:100%;padding:.75rem;border:1px solid #cbd5e0;border-radius:6px;font-size:1rem;line-height:1.5;
    color:#4a5568;transition:border-color .2s,box-shadow .2s}
.ai-eval-input:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px rgba(49,130,206,.2)}
/* default “large” style – will be overridden below for address bar */
.ai-eval-lg{font-size:1.125rem}
.ai-eval-flex{display:flex;gap:1.5rem}
.ai-eval-flex>*{flex:1;min-width:0}
.ai-eval-btn{
    width:100%;padding:.875rem;background:#3182ce;color:#fff;border:none;border-radius:6px;font-size:1rem;
    font-weight:600;cursor:pointer;transition:background .2s,transform .1s}
.ai-eval-btn:hover{background:#2c5282}
.ai-eval-btn:active{transform:translateY(1px)}
.ai-eval-error{ /* Style for residential error message */
    max-width:600px;margin:1rem auto;
    background:#ffe5e5;color:#c00;padding:1rem;border-radius:6px;text-align:center;
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}
.ai-eval-success{ /* Style for success message fallback */
     max-width:600px;margin:1rem auto;
     background:#e5ffe5;color:#0c0;padding:1rem;border-radius:6px;text-align:center;
     font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}


/* ───────────────── THANK‑YOU PAGE ───────────────── */
.ai-eval-thank-you{max-width:600px;margin:2rem auto;padding:2rem;text-align:center}
.ai-eval-thank-you p{font-size:1.25rem;margin-bottom:2rem;line-height:1.6}
.ai-eval-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}
.ai-eval-btn-secondary{
    display:inline-block;padding:.75rem 1.5rem;background:#f8f9fa;color:#3182ce;border:1px solid #3182ce;
    border-radius:6px;text-decoration:none;font-weight:500;transition:all .2s}
.ai-eval-btn-secondary:hover{background:#ebf4ff;text-decoration:none}

/* ───────────────── RESPONSIVE ───────────────── */
@media(max-width:640px){
   .ai-eval-form{padding:1.5rem;margin:1rem}
   .ai-eval-flex{flex-direction:column;gap:1rem}
   .ai-eval-buttons{flex-direction:column;gap:.75rem}
   .ai-eval-btn-secondary{width:100%}
   .ai-progress-box{padding:1.5rem 1rem;} /* Adjust padding for smaller screens */
}

/* ───────────────── PROGRESS OVERLAY ───────────────── */
#ai-progress-ov{
    position:fixed;inset:0;background:rgba(0,0,0,.75);
    display:flex;align-items:center;justify-content:center;
    z-index:99999;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
    backdrop-filter: blur(5px);
}
.ai-progress-box{
    max-width:480px;width:90%;
    background:#ffffff;padding:2rem;border-radius:12px;
    box-shadow:0 8px 24px rgba(0,0,0,.3);
    text-align:left;color:#2d3748;
    position:relative;
    overflow:hidden;
}
.ai-progress-spinner{
    margin:0 auto 1.5rem;
    width:52px;height:52px;border:6px solid #e2e8f0;
    border-top-color:#3182ce;border-radius:50%;animation:aiSpin 1s linear infinite}
@keyframes aiSpin{to{transform:rotate(360deg)}}

.ai-progress-title{
    margin:0 0 1rem 0;
    font-size: 1.3rem;
    text-align: center;
    line-height: 1.4;
    color: #1a202c;
}
.ai-progress-title em{font-style: normal;font-weight: 600;}

.ai-can-close{
    font-size: 0.85rem;
    color: #718096;
    text-align: center;
    margin-bottom: 1.5rem;
}

.ai-progress-steps{list-style:none;padding:0;margin:0;font-size:.95rem;line-height:1.6;}
.ai-progress-steps li{opacity:.4; transition:opacity .4s ease-in-out;}
.ai-progress-steps li.active{opacity:1;font-weight:600;color:#1a202c;}
.ai-progress-steps strong{font-weight:600;color:#1a202c;}

#ai-done-msg{
    margin-top: 1.5rem;
    font-size:1rem;
    text-align:center;
    font-weight:500;
    color:#22543d;
    line-height: 1.5;
}

/* ───────────────── LOGO CAROUSEL ───────────────── */
.ai-logo-carousel-wrap{
    margin-top: 2rem;
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 40px;
}
.ai-logo-carousel{
    display:flex;
    gap: 24px;
    align-items: center;
    height: 100%;
    position: absolute;
    left: 0; top: 0;
    white-space: nowrap;
    animation: aiScroll 20s linear infinite;
}
.ai-logo-carousel img{
    height: 40px;
    width: auto;
    opacity:.8;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,.1));
}
@keyframes aiScroll{
    0%{transform:translateX(0)}
    100%{transform:translateX(-50%)}
}

/* ────────────────────────────────────────────────
   ChatGPT‑style ADDRESS BAR  (super‑sized override)
   ──────────────────────────────────────────────── */
.ai-eval-input.ai-eval-lg{
    /* geometry */
    display:block;
    width:100%;
    min-height:4.25rem;            /* taller */
    padding:0 1.25rem;
    border-radius:1.25rem;         /* pill curve */

    /* typography */
    font-size:1.25rem;
    line-height:1.6;
    font-weight:500;

    /* visuals */
    color:#1a202c;
    background:#f7f7f8;
    border:1px solid #e0e0e5;
    box-shadow:0 1px 2px rgba(0,0,0,.05), inset 0 0 0 2px transparent;

    /* animation */
    transition:border-color .15s,box-shadow .15s;
}
.ai-eval-input.ai-eval-lg:focus{
    border-color:#2b6cb0;
    box-shadow:0 0 0 3px rgba(66,153,225,.45);
}
.ai-eval-input.ai-eval-lg::placeholder{
    color:#8a94a6;
    opacity:1;
}
