/* Coach Carlos's check-in call (checkin.js): park scene, speech bubble, Carlos, answer sheet. Sits over the whole phone. */
.ci{position:absolute;inset:0;z-index:40;overflow:hidden;background:#A8DBFF;font-family:Nunito,system-ui,sans-serif;opacity:0;transform:scale(1.04);transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1)}
.ci.on{opacity:1;transform:none}
.ci.off{opacity:0;transform:translateY(40px) scale(.96);transition:opacity .38s,transform .42s cubic-bezier(.5,0,.8,.4)}
.ci-bg{position:absolute;inset:0;width:100%;height:100%}
.ci-car{position:absolute;left:-6px;right:-6px;bottom:166px;height:min(470px,calc(100% - 330px));z-index:2;pointer-events:none}
.ci-car svg{position:absolute;inset:0;width:100%;height:100%}
.ci:not(.live) .ci-car{animation:ciRing 1.6s ease-in-out infinite}
@keyframes ciRing{0%,100%{transform:none}50%{transform:translateY(-6px)}}

.ci-top{position:absolute;left:16px;right:16px;top:calc(18px + env(safe-area-inset-top));display:flex;align-items:center;gap:12px;z-index:5}
.ci-x{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(232,247,238,.95);color:#1F8A4C;box-shadow:0 3px 0 rgba(0,0,0,.08)}
.ci-x svg{width:20px;height:20px}
.ci-prog{flex:1;display:flex;gap:4px;height:14px;border-radius:99px;overflow:hidden;max-width:150px}
.ci-prog i{flex:1;background:rgba(255,255,255,.6);transition:background .4s}.ci-prog i.on{background:#2FC46B}
.ci-live{margin-left:auto;display:flex;align-items:center;gap:7px;padding:7px 12px 7px 9px;border-radius:99px;background:rgba(255,255,255,.92);font-weight:900;font-size:14px;color:#1D3B2E}
.ci-live i{width:9px;height:9px;border-radius:50%;background:#2FC46B;box-shadow:0 0 0 3px rgba(47,196,107,.25)}
.ci:not(.live) .ci-live i{background:#FF9F1C;box-shadow:0 0 0 3px rgba(255,159,28,.3);animation:ciBlink 1s steps(2) infinite}
@keyframes ciBlink{50%{opacity:.3}}

.ci-bub{position:absolute;left:18px;right:18px;top:calc(76px + env(safe-area-inset-top));z-index:6;background:#fff;border-radius:24px;padding:15px 52px 16px 18px;box-shadow:0 8px 24px rgba(16,40,30,.14)}
.ci-bub::after{content:"";position:absolute;left:50%;bottom:-15px;width:28px;height:22px;background:#fff;clip-path:polygon(0 0,100% 0,8% 100%)}
.ci-bub.pop{animation:ciPop .42s cubic-bezier(.3,1.5,.5,1)}
@keyframes ciPop{from{opacity:0;transform:scale(.8) translateY(8px)}}
.ci-bub h2{font-size:22px;font-weight:900;color:#1D3B2E;letter-spacing:-.01em;line-height:1.15}
.ci-bub p{font-size:18px;font-weight:800;color:#2C3B36;line-height:1.3;margin-top:4px}
.ci-spk{position:absolute;right:10px;top:10px;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:#1FA855}
.ci-spk svg{width:28px;height:28px}
.ci.talking .ci-spk svg{animation:ciSpk .45s ease-in-out infinite alternate}
@keyframes ciSpk{to{transform:scale(1.15)}}
.ci-cards{display:flex;flex-direction:column;gap:6px}
.ci-cards:not(:empty){margin-top:10px}
.ci-card{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:16px;background:#F5F7F4;animation:ciPop .4s cubic-bezier(.3,1.5,.5,1) both}
.ci-card:nth-child(2){animation-delay:.12s}.ci-card:nth-child(3){animation-delay:.24s}
.ci-card i{flex:none;width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:var(--cc);color:#fff;box-shadow:0 3px 0 rgba(0,0,0,.15)}
.ci-card i svg{width:20px;height:20px}
.ci-card small{display:block;font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--cc)}
.ci-card b{display:block;font-size:15px;font-weight:900;color:#1B2236;line-height:1.25}
.ci-card button{margin-top:6px;padding:6px 10px;border-radius:10px;background:var(--cc);color:#fff;font-weight:900;font-size:13px;box-shadow:0 2px 0 rgba(0,0,0,.18)}
.ci-card em{display:block;margin-top:5px;font-style:normal;font-weight:900;font-size:13px;color:#16A34A}

.ci-said{position:absolute;right:16px;bottom:236px;z-index:6;max-width:72%;background:#1E9D4F;color:#fff;font-weight:900;font-size:17px;line-height:1.3;padding:10px 14px;border-radius:20px 20px 6px 20px;box-shadow:0 4px 0 #157A3C}
.ci-said.pop{animation:ciPop .35s cubic-bezier(.3,1.5,.5,1)}
.ci-quick{position:absolute;left:12px;right:12px;bottom:232px;z-index:7;animation:ciPop .3s cubic-bezier(.3,1.5,.5,1)}
.ci-chips{display:flex;flex-wrap:wrap;gap:7px;justify-content:center}
.ci-chips + .ci-type,.ci-type + .ci-chips{margin-top:8px}
.ci-chips button.soft{background:#EEF2EC;color:#3F4A47}
.ci-chips button{padding:10px 14px;border-radius:99px;background:#fff;font-weight:900;font-size:15px;color:#1B2236;box-shadow:0 3px 0 rgba(0,0,0,.14);white-space:nowrap}
.ci-type{display:flex;gap:8px}
.ci-type input{flex:1;min-width:0;font:inherit;font-weight:800;font-size:17px;border:0;border-radius:16px;padding:12px 14px;background:#fff;box-shadow:0 4px 0 rgba(0,0,0,.14);outline:none}
.ci-type button{width:50px;border-radius:16px;background:#1E9D4F;color:#fff;display:grid;place-items:center;box-shadow:0 4px 0 #157A3C}
.ci-type button svg{width:22px;height:22px}
.ci-ok{background:#fff;border-radius:20px;padding:14px;box-shadow:0 6px 0 rgba(0,0,0,.12)}
.ci-ok b{font-size:18px;font-weight:900}.ci-ok p{font-weight:700;color:#4B5563;margin-top:4px;line-height:1.35}
.ci-ok div{display:flex;gap:8px}.ci-ok .b3{min-height:48px;font-size:15px;margin-top:10px}

.ci-sheet{position:absolute;left:0;right:0;bottom:0;height:calc(214px + env(safe-area-inset-bottom));z-index:6;background:#F6F4EC;border-radius:34px 34px 0 0;display:flex;flex-direction:column;align-items:center;padding:24px 22px 0;box-shadow:0 -6px 20px rgba(0,0,0,.08)}
.ci-ctl{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 8px}
.ci-sq{width:66px;height:66px;border-radius:20px;background:#E9E7DF;color:#3F4A47;display:grid;place-items:center}
.ci-sq svg{width:32px;height:32px}.ci-sq.on{background:#1B2236;color:#fff}
.ci-mic{position:relative;width:126px;height:126px;border-radius:50%;background:#DDF2E3;display:grid;place-items:center}
.ci-mic b{width:104px;height:104px;border-radius:50%;background:#1E9D4F;display:grid;place-items:center;color:#fff;box-shadow:0 5px 0 #157A3C;transition:transform .15s}
.ci-mic b svg{width:48px;height:48px}
.ci-mic.on b{background:#E5484D;box-shadow:0 5px 0 #B42F33}
.ci-mic.on::before,.ci-mic.on::after{content:"";position:absolute;inset:0;border-radius:50%;border:4px solid #E5484D;animation:ciRingOut 1.4s ease-out infinite}
.ci-mic.on::after{animation-delay:.7s}
@keyframes ciRingOut{from{transform:scale(.85);opacity:.7}to{transform:scale(1.35);opacity:0}}
.ci.talking .ci-mic b{opacity:.55}
.ci-lbl{margin-top:12px;font-weight:900;font-size:18px;color:#1E9D4F;min-height:24px;text-align:center}
.ci-sheet.ring{justify-content:flex-start}
.ci-ring{text-align:center}.ci-ring b{display:block;font-size:24px;font-weight:900;color:#1D3B2E}.ci-ring span{font-weight:800;color:#5B6478;font-size:16px}
.ci-ans{display:flex;gap:70px;margin-top:14px}
.ci-ans button{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;color:#fff}
.ci-ans svg{width:36px;height:36px}
.ci-no{background:#E5484D;box-shadow:0 5px 0 #B42F33}
.ci-yes{background:#1E9D4F;box-shadow:0 5px 0 #157A3C;animation:ciWig 1.2s ease-in-out infinite}
@keyframes ciWig{0%,60%,100%{transform:none}70%{transform:rotate(-12deg) scale(1.06)}80%{transform:rotate(12deg) scale(1.06)}90%{transform:rotate(-8deg)}}
.ci-ansl{display:flex;gap:70px;margin-top:8px;font-weight:900;font-size:14px;color:#5B6478}.ci-ansl span{width:74px;text-align:center}
.ci-go{--c:#1E9D4F;--d:#157A3C;margin-top:8px}
.ci-more{margin-top:14px;font-weight:900;font-size:16px;color:#1E9D4F;text-decoration:underline;text-underline-offset:3px}

/* the Carlos button on Home */
.carlos-btn{width:44px;height:44px;border-radius:50%;overflow:hidden;background:#A8DBFF;box-shadow:0 0 0 3px #fff,0 3px 8px rgba(0,0,0,.15);flex:none;position:relative}
.carlos-btn svg{position:absolute;left:-2px;top:0;width:48px;height:48px}
