/* iWA Group: AI assistant (round 15, forms round 16). Email + Go, then the chat. Site tokens: navy, gold gradient, Outfit + Plus Jakarta Sans. */
.ag{--agh:min(640px,calc(100vh - 120px));position:relative;min-width:0;height:var(--agh);border-radius:24px;border:1px solid transparent;background:transparent;overflow:hidden;overflow:clip;transition:height .7s cubic-bezier(.65,0,.25,1),background-color .6s cubic-bezier(.2,.7,.3,1),border-color .6s,box-shadow .6s}
@supports (height:100svh){.ag{--agh:min(640px,calc(100svh - 120px))}}
.ag.live{background:var(--surface);border-color:var(--line);box-shadow:var(--sh)}
.ag .lic{width:1em;height:1em}
.ag-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ag-hidden{display:none!important}

/* the one field: centred at first, docks to the bottom as the chat composer */
.ag-form{position:absolute;z-index:3;left:50%;top:50%;width:min(440px,calc(100% - 8px));transform:translate(-50%,-50%);display:flex;align-items:center;gap:6px;height:58px;padding:6px 6px 6px 22px;border-radius:100px;background:rgba(255,255,255,.045);border:1px solid rgba(230,205,136,.2);box-shadow:0 20px 50px -28px rgba(0,0,0,.9);transition:top .7s cubic-bezier(.65,0,.25,1),width .7s cubic-bezier(.65,0,.25,1),transform .7s cubic-bezier(.65,0,.25,1),border-color .25s,box-shadow .25s,background .25s;animation:agIn .8s cubic-bezier(.2,.7,.3,1) both}
.ag-form:focus-within{border-color:rgba(230,205,136,.55);box-shadow:0 0 0 5px rgba(200,162,74,.1),0 20px 50px -28px rgba(0,0,0,.9)}
.ag.live .ag-form{top:calc(100% - 14px);width:calc(100% - 28px);transform:translate(-50%,-100%);height:54px;background:rgba(255,255,255,.05);box-shadow:none}
.ag.live .ag-form:focus-within{box-shadow:0 0 0 4px rgba(200,162,74,.1)}
.ag-form input{flex:1;min-width:0;height:100%;background:transparent;border:0;outline:0;color:var(--text);font:500 16px/1.3 var(--body);letter-spacing:-.005em}
.ag-form input::placeholder{color:var(--muted2)}
.ag-go{position:relative;flex:none;height:46px;min-width:46px;padding:0 22px;border-radius:100px;border:0;background:var(--goldg);color:#1a1407;font:700 15px var(--body);cursor:pointer;display:grid;place-items:center;transition:padding .45s cubic-bezier(.65,0,.25,1),transform .2s,opacity .25s;-webkit-tap-highlight-color:transparent}
.ag-go:active{transform:scale(.95)}
.ag-go .lic{position:absolute;width:19px;height:19px;stroke-width:2.4;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s}
.ag-go .t{transition:opacity .2s}
.ag.live .ag-go{height:42px;min-width:42px;padding:0}
.ag.live .ag-go .t{opacity:0}
.ag.live .ag-go .lic{opacity:1;transform:none}
.ag-go:disabled{opacity:.35;cursor:default}
.ag-form.err{animation:agShake .42s;border-color:rgba(232,140,140,.65)}
.ag-hint{position:absolute;z-index:3;left:0;right:0;top:calc(50% + 40px);text-align:center;font-size:13px;color:var(--muted);opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .25s;pointer-events:none;padding:0 12px}
.ag-hint.on{opacity:1;transform:none;pointer-events:auto}
.ag-hint button{background:none;border:0;padding:4px 2px;font:700 13px var(--body);color:var(--gold2);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.ag.live .ag-hint{display:none}

/* conversation */
.ag-log{position:absolute;inset:0 0 82px;overflow-y:auto;padding:26px 24px 12px;display:flex;flex-direction:column;gap:16px;opacity:0;visibility:hidden;scroll-behavior:smooth;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(230,205,136,.18) transparent;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 22px);mask-image:linear-gradient(180deg,transparent 0,#000 22px);transition:opacity .5s .35s,visibility 0s .35s}
.ag.live .ag-log{opacity:1;visibility:visible}
.ag-m{animation:agIn .5s cubic-bezier(.2,.7,.3,1) both}
.ag-me{align-self:flex-end;max-width:84%;padding:10px 16px;border-radius:20px 20px 6px 20px;background:rgba(200,162,74,.14);border:1px solid rgba(230,205,136,.2);font-weight:600;font-size:15px;line-height:1.45;word-break:break-word}
.ag-me.first{animation:agFly .7s cubic-bezier(.2,.8,.25,1) both}
.ag-bot{position:relative;max-width:92%;padding-left:26px;font-size:15.5px;line-height:1.6;color:var(--text);word-break:break-word}
.ag-bot::before{content:"";position:absolute;left:0;top:6px;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#F6E7B8,#E6CD88 30%,#C8A24A 65%,#9A7B40);box-shadow:0 0 12px rgba(200,162,74,.45)}
.ag-bot.think::before{animation:agBreath 1.1s ease-in-out infinite}
.ag-bot p{margin:0 0 10px}.ag-bot p:last-child{margin-bottom:0}
.ag-bot ul{margin:4px 0 10px;padding-left:18px}.ag-bot ul:last-child{margin-bottom:0}
.ag-bot li{margin:3px 0}.ag-bot li::marker{color:var(--gold)}
.ag-bot strong{color:var(--gold2);font-weight:700}
.ag-bot a{color:var(--gold2);text-decoration:underline;text-decoration-color:rgba(230,205,136,.4);text-underline-offset:3px;overflow-wrap:anywhere}
.ag-bot .dots{display:inline-flex;gap:4px;height:24px;align-items:center}
.ag-bot .dots i{width:5px;height:5px;border-radius:50%;background:var(--muted);animation:agDot 1.1s ease-in-out infinite}
.ag-bot .dots i:nth-child(2){animation-delay:.15s}.ag-bot .dots i:nth-child(3){animation-delay:.3s}
.ag-bot .caret{display:inline-block;width:7px;height:7px;margin-left:3px;border-radius:50%;background:var(--gold2);vertical-align:middle;animation:agBreath .9s ease-in-out infinite}
.ag-note{align-self:center;font-size:12.5px;color:var(--muted2);text-align:center;max-width:90%}
.ag-note b{color:var(--gold2);font-weight:700}

@keyframes agIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.ag-form{animation-name:agFormIn}
@keyframes agFormIn{from{opacity:0;margin-top:12px}to{opacity:1;margin-top:0}}
@keyframes agFly{from{opacity:0;transform:translateY(120px) scale(.94)}to{opacity:1;transform:none}}
@keyframes agDot{0%,60%,100%{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}
@keyframes agBreath{50%{transform:scale(.78);opacity:.65}}
@keyframes agShake{20%,60%{margin-left:-5px}40%,80%{margin-left:5px}}

@media(max-width:880px){.ag{--agh:min(620px,calc(100vh - 96px))}@supports (height:100svh){.ag{--agh:min(620px,calc(100svh - 96px))}}}
@media(max-width:520px){
  .ag{border-radius:20px}
  .ag:not(.live){height:150px}
  .ag-form{width:100%;height:56px;padding-left:18px}
  .ag.live .ag-form{width:calc(100% - 20px);top:calc(100% - 10px)}
  .ag-log{inset:0 0 74px;padding:20px 16px 10px;gap:14px}
  .ag-bot{font-size:15px;padding-left:24px}.ag-me{font-size:15px;max-width:88%}
  .ag-hint{top:calc(50% + 36px)}
}
@media (prefers-reduced-motion:reduce){.ag-form,.ag-log,.ag{transition:none!important}}

/* round 16: guided forms inside the chat */
.ag-cc{display:none;flex:none;max-width:96px;height:38px;margin-right:4px;padding:0 6px 0 0;background:transparent;border:0;border-right:1px solid rgba(230,205,136,.18);color:var(--text);font:600 15px var(--body);outline:0;cursor:pointer;-webkit-appearance:none;appearance:none}
.ag-cc option{background:var(--surface);color:var(--text)}
.ag-form.tel .ag-cc{display:block}
.ag.busy .ag-form input{opacity:.6}
.ag-m.still{animation:none}
.ag-w{padding-left:26px;margin-top:-4px}
.ag-opts{display:flex;flex-wrap:wrap;gap:8px}
.ag-chip{--d:0s;position:relative;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 16px;border-radius:100px;border:1px solid rgba(230,205,136,.28);background:rgba(255,255,255,.02);color:var(--text);font:600 14px/1.25 var(--body);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .2s,border-color .2s,transform .15s,color .2s;animation:agIn .45s var(--d) cubic-bezier(.2,.7,.3,1) both}
.ag-chip small{font-size:12px;font-weight:500;color:var(--muted)}
@media(hover:hover){.ag-chip:hover{background:rgba(200,162,74,.1);border-color:rgba(230,205,136,.5)}}
.ag-chip:active{transform:scale(.97)}
.ag-chip:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}
.ag-chip.ghost{border-style:dashed;color:var(--muted)}
.ag-chip.gold{background:var(--goldg);border-color:transparent;color:#1a1407;font-weight:700}
.ag-chip.gold:disabled{opacity:.35;cursor:default}
.ag-chip .ck{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1px solid rgba(230,205,136,.4);transition:background .2s,border-color .2s}
.ag-chip .ck .lic{width:11px;height:11px;stroke-width:3;opacity:0;color:#1a1407;transition:opacity .2s}
.ag-chip.on{background:rgba(200,162,74,.16);border-color:rgba(230,205,136,.6)}
.ag-chip.on .ck{background:var(--gold2);border-color:var(--gold2)}.ag-chip.on .ck .lic{opacity:1}
.ag-sel,.ag-date{height:40px;min-width:200px;padding:0 16px;border-radius:100px;border:1px solid rgba(230,205,136,.5);background:rgba(200,162,74,.08);color:var(--text);font:600 14px var(--body);color-scheme:dark;outline:0;animation:agIn .35s cubic-bezier(.2,.7,.3,1) both}
.ag-sel option{background:var(--surface)}
.ag-rev{max-width:460px}
.ag-rev .r{display:grid;grid-template-columns:96px 1fr 18px;gap:12px;align-items:start;width:100%;padding:11px 2px;background:none;border:0;border-bottom:1px solid var(--line);color:var(--text);font:500 14.5px/1.45 var(--body);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ag-rev .r:first-child{border-top:1px solid var(--line)}
.ag-rev .r .k{font-size:12.5px;color:var(--muted);padding-top:1px}
.ag-rev .r .v{word-break:break-word}
.ag-rev .r .lic{width:15px;height:15px;color:var(--muted2);margin-top:3px;transition:color .2s}
.ag-rev .r:focus-visible .lic{color:var(--gold2)}@media(hover:hover){.ag-rev .r:hover .lic{color:var(--gold2)}}
.ag-rev .acts{display:flex;align-items:center;gap:18px;margin-top:16px}
.ag-cta{height:46px;padding:0 26px;border-radius:100px;border:0;background:var(--goldg);color:#1a1407;font:700 15px var(--body);cursor:pointer;transition:transform .15s,box-shadow .2s;box-shadow:0 10px 30px -14px rgba(200,162,74,.7)}
.ag-cta:active{transform:scale(.97)}
.ag-link{background:none;border:0;padding:8px 2px;color:var(--muted);font:600 14px var(--body);cursor:pointer}
.ag-link:hover{color:var(--text)}
.ag-note{display:inline-flex;align-items:center;gap:6px}
.ag-note .lic{width:14px;height:14px;color:var(--gold2);stroke-width:2.6}
@media(max-width:520px){
  .ag-w{padding-left:0}
  .ag-chip{min-height:42px;font-size:14px}
  .ag-rev .r{grid-template-columns:84px 1fr 16px}
  .ag-rev .acts .ag-cta{flex:1}
  .ag-sel,.ag-date{min-width:0;width:100%}
}
