.caro-assist{position:fixed;left:auto;right:16px;top:calc(100dvh - 144px);bottom:auto;z-index:10000;font:400 15px/1.4 -apple-system,system-ui,"Instrument Sans",sans-serif;color:#182c32}
.caro-assist *{box-sizing:border-box}
.caro-assist:before{content:"";position:fixed;inset:0;background:rgba(10,20,23,.62);opacity:0;pointer-events:none;transition:opacity .24s ease}
.caro-assist[data-open="true"]:before{opacity:1;pointer-events:auto}
.caro-assist__button{display:flex;align-items:center;gap:8px;min-height:48px;padding:0 14px 0 8px;border:1px solid rgba(32,88,107,.24);border-radius:999px;background:#20586b;color:#fff;font-weight:700;box-shadow:0 12px 26px rgba(24,44,50,.22);cursor:pointer}
.caro-assist[data-open="true"] .caro-assist__button{display:none}
.caro-assist--nav .caro-assist__button{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);padding:0;border:0}
.caro-assist__mark{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#f8faf8;color:#20586b;font:700 18px/1 Georgia,serif}
.caro-assist__panel{position:fixed;inset:0 auto auto 0;width:100dvw;height:100dvh;max-height:100dvh;display:none;grid-template-rows:auto minmax(0,1fr) auto auto auto auto;gap:7px;padding:calc(env(safe-area-inset-top,0px) + 12px) 10px calc(env(safe-area-inset-bottom,0px) + 10px);background:#0f3f54;overflow:hidden}
.caro-assist[data-open="true"] .caro-assist__panel{display:grid}
.caro-assist__scene{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:#1b1f4c url("/media/scene/caro-city-sunset.png") center/cover no-repeat;image-rendering:pixelated;--sky-a:#ff2f8d;--sky-b:#ff7a56;--sky-c:#2b1a62;--haze:#5be8d8;--water-a:#1d90b5;--water-b:#19365f;--deck-a:#2e8e77;--deck-b:#155246;--tower-a:#12152d;--tower-b:#243657;--tower-c:#314d75;--tower-d:#070b15;--window:#ffd486;--line:rgba(101,240,232,.34);--palm:#07101a;--season-a:rgba(255,255,255,.14);--season-b:rgba(95,236,229,.16)}
.caro-assist[data-time="sunrise"] .caro-assist__scene{--season-a:rgba(255,207,154,.16);--season-b:rgba(255,140,120,.12)}
.caro-assist[data-time="morning"] .caro-assist__scene{--sky-a:#ffcf9a;--sky-b:#7fdcf2;--sky-c:#c4f0ff;--haze:#fff3ba;--water-a:#52d0e1;--water-b:#1e7b94;--deck-a:#60b99a;--deck-b:#367765;--tower-a:#2b6b86;--tower-b:#5eacc9;--tower-c:#b9e7ee;--window:#fff6ca;--palm:#227a57}
.caro-assist[data-time="midday"] .caro-assist__scene{--season-a:rgba(209,246,255,.13);--season-b:rgba(255,246,180,.10)}
.caro-assist[data-time="afternoon"] .caro-assist__scene{--sky-a:#2fb3ff;--sky-b:#ff7eb2;--sky-c:#ffd889;--haze:#fff2a5;--water-a:#2ec4e8;--water-b:#6d4b93;--deck-a:#40a884;--deck-b:#246a59;--tower-a:#145b86;--tower-b:#2d8ebd;--tower-c:#a9e7f0;--window:#ffe5a6;--palm:#126d54}
.caro-assist[data-time="sunset"] .caro-assist__scene{--sky-a:#fa197d;--sky-b:#ff5c31;--sky-c:#5a214f;--haze:#ffaf7a;--water-a:#af457c;--water-b:#172148;--deck-a:#2f7869;--deck-b:#0f3a34;--tower-a:#060912;--tower-b:#111827;--tower-c:#1d2842;--tower-d:#03050a;--window:#ffc96b;--line:rgba(255,205,137,.32);--palm:#02050a}
.caro-assist[data-time="evening"] .caro-assist__scene{--sky-a:#ff238a;--sky-b:#ff633e;--sky-c:#24124f;--haze:#72fff0;--water-a:#8b3c81;--water-b:#12244e;--deck-a:#2e7d68;--deck-b:#123f38;--tower-a:#090d19;--tower-b:#151d35;--tower-c:#26314f;--window:#ffd17a;--palm:#050913}
.caro-assist[data-time="night"] .caro-assist__scene{--season-a:rgba(90,120,255,.10);--season-b:rgba(255,255,215,.10)}
.caro-assist[data-time="sunrise"] .caro-assist__scene{background-image:url("/media/scene/caro-city-sunrise.png")}
.caro-assist[data-time="morning"] .caro-assist__scene{background-image:url("/media/scene/caro-city-morning-daylight-v2.webp")}
.caro-assist[data-time="midday"] .caro-assist__scene{background-image:url("/media/scene/caro-city-midday-daylight-v2.webp")}
.caro-assist[data-time="afternoon"] .caro-assist__scene{background-image:url("/media/scene/caro-city-afternoon-daylight-v2.webp")}
.caro-assist[data-time="sunset"] .caro-assist__scene{background-image:url("/media/scene/caro-city-sunset.png")}
.caro-assist[data-time="evening"] .caro-assist__scene{background-image:url("/media/scene/caro-city-evening.png")}
.caro-assist[data-time="night"] .caro-assist__scene{background-image:url("/media/scene/caro-city-night.png")}
.caro-assist[data-season="spring"] .caro-assist__scene{--season-a:rgba(255,179,205,.22);--season-b:rgba(117,255,222,.16)}
.caro-assist[data-season="summer"] .caro-assist__scene{--season-a:rgba(255,222,105,.2);--season-b:rgba(40,236,255,.18)}
.caro-assist[data-season="fall"] .caro-assist__scene{--season-a:rgba(255,133,74,.2);--season-b:rgba(255,211,112,.14)}
.caro-assist[data-season="winter"] .caro-assist__scene{--season-a:rgba(190,235,255,.2);--season-b:rgba(255,255,255,.18)}
.caro-assist__scene:before,.caro-assist__scene:after{content:none}
.caro-assist[data-time="evening"] .caro-assist__scene:after,.caro-assist[data-time="night"] .caro-assist__scene:after{content:"";position:absolute;z-index:6;inset:0;pointer-events:none;mix-blend-mode:screen;opacity:.34;background:radial-gradient(ellipse at 27% 45%,rgba(255,203,112,.2) 0 8%,transparent 21%),radial-gradient(ellipse at 54% 43%,rgba(255,225,145,.18) 0 9%,transparent 22%),radial-gradient(ellipse at 82% 42%,rgba(116,231,255,.16) 0 8%,transparent 20%);-webkit-mask-image:linear-gradient(180deg,transparent 0 31%,#000 37% 62%,transparent 69%);mask-image:linear-gradient(180deg,transparent 0 31%,#000 37% 62%,transparent 69%);animation:caroBuildingGlow 3.8s ease-in-out infinite}
.caro-assist__sky{position:absolute;z-index:0;inset:0;background:radial-gradient(circle at 78% 18%,rgba(255,248,177,.32) 0 82px,transparent 83px),linear-gradient(180deg,var(--sky-a) 0 20%,var(--sky-b) 20% 36%,var(--sky-c) 36% 49%,var(--water-a) 49% 60%,var(--water-b) 60% 68%,var(--deck-a) 68% 82%,var(--deck-b) 82% 100%)}
.caro-assist__sun{position:absolute;z-index:1;right:32px;top:96px;width:112px;height:112px;border-radius:999px;background:repeating-linear-gradient(0deg,#ffeaa8 0 9px,#ff9b75 9px 18px);box-shadow:0 0 0 18px rgba(255,214,160,.16),0 0 64px rgba(255,127,94,.55);clip-path:polygon(0 22%,100% 22%,100% 100%,0 100%)}
.caro-assist[data-time="morning"] .caro-assist__sun{left:28px;right:auto;top:104px;background:repeating-linear-gradient(0deg,#fff4c4 0 9px,#ffc78c 9px 18px);box-shadow:0 0 0 18px rgba(255,245,200,.18),0 0 58px rgba(255,212,132,.6)}
.caro-assist[data-time="afternoon"] .caro-assist__sun{right:48px;top:72px;background:#fff1a8;clip-path:none;box-shadow:0 0 0 18px rgba(255,255,255,.18),0 0 60px rgba(255,239,147,.76)}
.caro-assist[data-time="sunset"] .caro-assist__sun{right:22px;top:118px;background:repeating-linear-gradient(0deg,#ffd27a 0 8px,#ff4f3e 8px 16px);box-shadow:0 0 0 20px rgba(255,117,87,.16),0 0 72px rgba(255,66,120,.62);clip-path:polygon(0 16%,100% 16%,100% 100%,0 100%)}
.caro-assist[data-time="evening"] .caro-assist__sun{right:28px;top:104px;background:repeating-linear-gradient(0deg,#ffd280 0 9px,#ff634d 9px 18px)}
.caro-assist__clouds{position:absolute;z-index:2;left:20px;right:20px;top:70px;height:90px;background:linear-gradient(90deg,rgba(255,255,255,.54) 0 58px,transparent 58px 86px,rgba(255,255,255,.34) 86px 156px,transparent 156px 208px,rgba(255,255,255,.46) 208px 282px,transparent 282px 100%);opacity:.7;filter:drop-shadow(18px 20px 0 rgba(255,255,255,.18))}
.caro-assist[data-time="evening"] .caro-assist__clouds{opacity:.24;filter:none}
.caro-assist__stars{position:absolute;z-index:2;inset:28px 0 45%;opacity:0;background:radial-gradient(circle at 18% 28%,#fff 0 1px,transparent 2px),radial-gradient(circle at 72% 16%,#fff 0 1px,transparent 2px),radial-gradient(circle at 84% 42%,#ffd999 0 1px,transparent 2px),radial-gradient(circle at 38% 50%,#fff 0 1px,transparent 2px)}
.caro-assist[data-time="sunset"] .caro-assist__stars{opacity:.22}
.caro-assist[data-time="evening"] .caro-assist__stars{opacity:.72}
.caro-assist__buildings{position:absolute;z-index:3;left:-3%;right:-3%;bottom:31%;height:34%;background:linear-gradient(90deg,var(--tower-a) 0 6%,transparent 6% 7%,var(--tower-b) 7% 13%,transparent 13% 15%,var(--tower-c) 15% 20%,transparent 20% 22%,var(--tower-a) 22% 29%,transparent 29% 31%,var(--tower-b) 31% 41%,transparent 41% 43%,var(--tower-a) 43% 50%,transparent 50% 52%,var(--tower-c) 52% 58%,transparent 58% 60%,var(--tower-b) 60% 72%,transparent 72% 74%,var(--tower-a) 74% 81%,transparent 81% 83%,var(--tower-c) 83% 89%,transparent 89% 91%,var(--tower-b) 91% 100%);box-shadow:0 -44px 0 -18px rgba(255,175,122,.18),0 -92px 0 -55px rgba(255,175,122,.12)}
.caro-assist__buildings:before{content:"";position:absolute;left:-4%;right:-4%;bottom:100%;height:82%;background:linear-gradient(90deg,transparent 0 5%,rgba(8,12,24,.56) 5% 11%,transparent 11% 13%,rgba(8,12,24,.48) 13% 21%,transparent 21% 24%,rgba(8,12,24,.62) 24% 32%,transparent 32% 36%,rgba(8,12,24,.54) 36% 43%,transparent 43% 48%,rgba(8,12,24,.68) 48% 59%,transparent 59% 62%,rgba(8,12,24,.5) 62% 69%,transparent 69% 74%,rgba(8,12,24,.6) 74% 82%,transparent 82% 86%,rgba(8,12,24,.5) 86% 94%,transparent 94% 100%);clip-path:polygon(0 100%,0 62%,5% 62%,5% 46%,13% 46%,13% 72%,20% 72%,20% 40%,27% 40%,27% 58%,34% 58%,34% 24%,42% 24%,42% 8%,51% 8%,51% 34%,57% 34%,57% 0,65% 0,65% 52%,72% 52%,72% 36%,80% 36%,80% 61%,87% 61%,87% 45%,94% 45%,94% 72%,100% 72%,100% 100%);filter:drop-shadow(0 12px 0 rgba(255,105,92,.14))}
.caro-assist__buildings:after{content:"";position:absolute;inset:8px 0 0;background:repeating-linear-gradient(90deg,transparent 0 10px,var(--window) 10px 12px,transparent 12px 20px),repeating-linear-gradient(0deg,transparent 0 13px,var(--line) 13px 15px),linear-gradient(90deg,transparent 0 29%,rgba(255,72,145,.5) 29% 30%,transparent 30% 63%,rgba(76,247,235,.42) 63% 64%,transparent 64% 100%);box-shadow:0 7px 0 rgba(255,73,145,.3),0 14px 0 rgba(77,248,235,.28),0 -12px 0 rgba(255,255,255,.12)}
.caro-assist__neon{position:absolute;z-index:4;left:0;right:0;bottom:30%;height:8px;background:linear-gradient(90deg,#fff1a6 0 12%,#63f3eb 12% 29%,#ff5f9c 29% 47%,#fff1a6 47% 63%,#63f3eb 63% 81%,#ff5f9c 81% 100%);box-shadow:0 0 12px rgba(99,243,235,.48),0 5px 0 rgba(17,64,79,.22)}
.caro-assist__palms{position:absolute;z-index:6;right:12px;bottom:24%;width:148px;height:216px;background:linear-gradient(82deg,transparent 0 47%,#5c3e2b 47% 53%,transparent 53% 100%),linear-gradient(76deg,transparent 0 43%,var(--palm) 43% 51%,transparent 51% 100%)}
.caro-assist__palms:before{content:"";position:absolute;left:42px;top:6px;width:106px;height:106px;background:linear-gradient(135deg,var(--palm) 0 42%,transparent 42%),linear-gradient(45deg,var(--palm) 0 42%,transparent 42%),linear-gradient(225deg,var(--palm) 0 42%,transparent 42%),linear-gradient(315deg,var(--palm) 0 42%,transparent 42%),linear-gradient(90deg,transparent 0 44%,var(--palm) 44% 56%,transparent 56% 100%);filter:drop-shadow(-70px 54px 0 var(--palm)) drop-shadow(-320px -4px 0 var(--palm)) drop-shadow(-395px 26px 0 var(--palm))}
.caro-assist__palms:after{content:"";position:absolute;left:0;bottom:0;width:48px;height:142px;background:linear-gradient(84deg,transparent 0 45%,#6d4a31 45% 55%,transparent 55% 100%);filter:drop-shadow(0 -86px 0 var(--palm)) drop-shadow(-420px -28px 0 var(--palm)) drop-shadow(-330px -6px 0 var(--palm)) drop-shadow(-260px -52px 0 var(--palm))}
.caro-assist__water{position:absolute;z-index:5;left:0;right:0;bottom:18%;height:18%;background:linear-gradient(180deg,var(--water-a) 0 45%,var(--water-b) 45% 100%);box-shadow:inset 0 10px 0 rgba(255,255,255,.1)}
.caro-assist__water:before{content:"";position:absolute;inset:12px 0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.7) 0 38px,transparent 38px 62px,rgba(96,243,235,.58) 62px 105px,transparent 105px 148px),repeating-linear-gradient(0deg,transparent 0 20px,rgba(255,177,121,.18) 20px 23px);opacity:.82;animation:caroWater 5s steps(5,end) infinite}
.caro-assist__water:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:18px;background:repeating-linear-gradient(90deg,#f7d895 0 30px,#eebf7d 30px 60px)}
.caro-assist__boat{position:absolute;z-index:7;right:20px;bottom:24%;width:88px;height:28px;background:linear-gradient(135deg,transparent 0 20%,#fff 20% 36%,transparent 36%),linear-gradient(180deg,#fff 0 42%,#d44e54 42% 62%,transparent 62%);clip-path:polygon(0 48%,78% 48%,100% 66%,88% 88%,12% 88%);filter:drop-shadow(-18px 10px 0 rgba(255,255,255,.24));animation:caroBoat 9s steps(12,end) infinite}
.caro-assist__walkway{position:absolute;z-index:6;left:0;right:0;bottom:0;height:22%;background:linear-gradient(180deg,var(--deck-a) 0 48%,var(--deck-b) 48% 100%)}
.caro-assist__walkway:before{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:#ffd78e;box-shadow:0 8px 0 rgba(32,88,107,.2)}
.caro-assist__walkway:after{content:"";position:absolute;inset:28px 0 0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.13) 0 2px,transparent 2px 52px),repeating-linear-gradient(0deg,rgba(255,255,255,.11) 0 2px,transparent 2px 40px);opacity:.72}
.caro-assist__sky,.caro-assist__sun,.caro-assist__clouds,.caro-assist__stars,.caro-assist__buildings,.caro-assist__neon,.caro-assist__palms,.caro-assist__water,.caro-assist__boat,.caro-assist__walkway{display:none}
.caro-assist__sprite{position:absolute;z-index:8;left:-14px;bottom:148px;width:210px;height:486px;background:url("/media/scene/caro-ai-sprite-transparent.png") center bottom/auto 486px no-repeat;image-rendering:auto;filter:drop-shadow(0 14px 0 rgba(15,50,55,.24));animation:caroSpriteBob 1.4s steps(2,end) infinite;pointer-events:auto;cursor:pointer;transform-origin:50% 100%}
.caro-assist__face{display:none}
.caro-assist__face:before{content:"";position:absolute;left:8px;top:4px;width:5px;height:5px;background:#172c32;box-shadow:17px 0 0 #172c32;border-radius:999px}
.caro-assist__face:after{content:"";position:absolute;left:13px;top:14px;width:13px;height:6px;border-bottom:3px solid #172c32;border-radius:0 0 999px 999px}
.caro-assist[data-mood="searching"] .caro-assist__face:before{height:3px;top:6px}
.caro-assist[data-mood="searching"] .caro-assist__face:after{left:15px;width:9px;border-bottom-width:2px}
.caro-assist[data-mood="happy"] .caro-assist__sprite{animation:caroSpriteHappy 1s steps(2,end) 2,caroSpriteBob 1.4s steps(2,end) infinite 2s}
.caro-assist[data-mood="happy"] .caro-assist__face:after{left:11px;top:12px;width:17px;height:8px;border-bottom-width:4px}
.caro-assist[data-mood="curious"] .caro-assist__sprite{animation:caroSpriteCurious 1.8s steps(2,end) infinite}
.caro-assist[data-mood="wave"] .caro-assist__sprite{animation:caroSpriteWave .8s steps(3,end) 2,caroSpriteBob 1.4s steps(2,end) infinite 1.6s}
.caro-assist[data-mood="wave"] .caro-assist__sprite:after{content:"";position:absolute;right:16px;top:112px;width:42px;height:42px;border:3px solid rgba(255,255,255,.9);border-left-color:transparent;border-bottom-color:transparent;border-radius:999px;filter:drop-shadow(0 0 8px rgba(99,243,235,.7));animation:caroTapHalo .8s ease-out 2}
.caro-assist[data-mood="curious"] .caro-assist__face:before{box-shadow:17px -2px 0 #172c32}
.caro-assist[data-mood="curious"] .caro-assist__face:after{left:16px;width:7px;height:7px;border:2px solid #172c32;border-top:0;border-radius:999px}
@keyframes caroSpriteBob{50%{transform:translateY(-5px)}}
@keyframes caroSpriteHappy{40%{transform:translateY(-10px) rotate(-2deg)}70%{transform:translateY(-2px) rotate(2deg)}}
@keyframes caroSpriteCurious{50%{transform:translateY(-4px) rotate(-3deg)}}
@keyframes caroSpriteWave{35%{transform:translateY(-8px) rotate(-3deg) scale(1.03)}70%{transform:translateY(-2px) rotate(3deg) scale(1.01)}}
@keyframes caroTapHalo{0%{opacity:0;transform:scale(.6)}25%{opacity:1}100%{opacity:0;transform:scale(1.55)}}
@keyframes caroBuildingGlow{0%,100%{opacity:.24;filter:saturate(1)}45%{opacity:.48;filter:saturate(1.2) brightness(1.05)}70%{opacity:.32;filter:saturate(1.08)}}
@keyframes caroWater{50%{transform:translateX(-18px)}}
@keyframes caroBoat{50%{transform:translateX(-64px)}}
.caro-assist__top{position:relative;z-index:10;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;min-height:50px}
.caro-assist__top>div{display:inline-flex;align-items:center;gap:8px;justify-self:start;min-height:42px;padding:6px 12px;border:1px solid rgba(32,88,107,.16);border-radius:999px;background:rgba(255,255,255,.78);box-shadow:0 10px 22px rgba(16,44,53,.1);backdrop-filter:blur(8px)}
.caro-assist__top>div:before{content:"";display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:#20586b;color:#fff;font:700 18px/1 Georgia,serif}
.caro-assist__title{margin:0;font:800 18px/1.02 -apple-system,system-ui,"Instrument Sans",sans-serif;color:#102d36;text-shadow:0 1px 0 rgba(255,255,255,.5)}
.caro-assist__copy{display:none}
.caro-assist__close{width:42px;height:42px;border:1px solid rgba(32,88,107,.2);border-radius:999px;background:rgba(255,255,255,.9);color:#20586b;font-size:22px;font-weight:700;cursor:pointer}
.caro-assist__messages{position:relative;z-index:10;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:54px 0 10px 146px;overscroll-behavior:contain;scroll-padding:14px}
.caro-assist__msg{display:grid;gap:7px;max-width:min(560px,100%)}
.caro-assist__msg[data-side="user"]{align-self:end;justify-items:end;max-width:min(480px,86%)}
.caro-assist__msg[data-side="bot"]{align-self:start}
.caro-assist__bubble{padding:11px 13px;border-radius:18px;background:rgba(255,255,255,.96);color:#18323a;box-shadow:0 8px 20px rgba(16,44,53,.13);border:1px solid rgba(32,88,107,.14);backdrop-filter:blur(6px);font-weight:650;line-height:1.28}
.caro-assist__msg[data-side="user"] .caro-assist__bubble{background:#20586b;color:#fff;border-color:#20586b;border-bottom-right-radius:5px}
.caro-assist__msg[data-side="bot"] .caro-assist__bubble{border-bottom-left-radius:5px}
.caro-assist__cards{display:grid;gap:8px}
.caro-assist__item{display:block;padding:14px 14px 16px;border:1px solid rgba(32,88,107,.18);border-radius:16px;background:rgba(255,255,255,.96);color:#182c32;text-decoration:none;box-shadow:0 10px 24px rgba(16,44,53,.14);backdrop-filter:blur(6px)}
.caro-assist__item-kind{display:block;margin-bottom:4px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#9a5d4f}
.caro-assist__item b{display:block;color:#20586b;font-size:16px;line-height:1.12}
.caro-assist__item span:last-child{display:block;margin-top:4px;color:#52666d;font-size:14px}
.caro-assist__handoffpack{justify-self:start;display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:min(100%,440px)}
.caro-assist__handoffpack p{flex:1 0 100%;margin:0;color:#f4fbfb;text-shadow:0 1px 4px rgba(0,0,0,.38);font-size:11px;font-weight:800}
.caro-assist__handoffpack a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.94);color:#20586b;text-decoration:none;font-weight:800;box-shadow:0 8px 18px rgba(32,88,107,.18);border:1px solid rgba(32,88,107,.16);font-size:12px}
.caro-assist__handoffpack .caro-assist__handoff{background:#20586b;color:#fff;border-color:#20586b}
.caro-assist__typing{position:relative;z-index:10;margin:0 0 0 146px;color:#244b55;background:rgba(255,255,255,.86);border:1px solid rgba(32,88,107,.16);border-radius:999px;padding:7px 10px;width:max-content;max-width:calc(100% - 146px);font-size:12px}
.caro-assist__chips{position:relative;z-index:10;display:flex;flex-wrap:wrap;gap:6px;overflow:visible;padding:0;scrollbar-width:none}
.caro-assist__chips::-webkit-scrollbar{display:none}
.caro-assist__chip{flex:0 0 auto;min-height:34px;border:1px solid rgba(32,88,107,.2);border-radius:999px;background:rgba(255,255,255,.92);color:#20586b;padding:0 10px;font-weight:800;font-size:12px;cursor:pointer}
.caro-assist__form{position:relative;z-index:30;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:7px;align-items:end;border:1px solid rgba(32,88,107,.18);border-radius:25px;background:rgba(255,255,255,.92);padding:8px;box-shadow:0 14px 34px rgba(16,44,53,.18);backdrop-filter:blur(10px)}
.caro-assist__more{min-height:38px;width:38px;border:0;border-radius:999px;background:#20586b;color:#fff;font-size:22px;line-height:1;font-weight:700;cursor:pointer}
.caro-assist__input{display:block;min-height:38px;max-height:112px;width:100%;border:0;border-radius:16px;background:#eef6f4;color:#182c32;padding:9px 12px;font:inherit;font-size:16px;line-height:20px;box-shadow:none;resize:none;overflow:auto}
.caro-assist__go{min-height:38px;border:0;border-radius:17px;background:#20586b;color:#fff;padding:0 14px;font-size:13px;font-weight:800;cursor:pointer}
.caro-assist__disclosure{position:relative;z-index:10;margin:0;border-radius:10px;background:rgba(255,255,255,.88);color:#183c43;font-size:11px;line-height:1.28;padding:7px 9px;text-shadow:none}
.caro-assist__contact{position:relative;z-index:10;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.caro-assist__contact a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 8px;border-radius:999px;background:#fff;color:#20586b;text-decoration:none;font-weight:800;border:1px solid rgba(32,88,107,.18);font-size:12px}
@media (max-width:430px){.caro-assist{right:16px;bottom:calc(74px + env(safe-area-inset-bottom,0px))}.caro-assist__button{padding-right:10px}.caro-assist__button .caro-assist__text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.caro-assist__panel{gap:7px;padding-left:10px;padding-right:10px}.caro-assist__top{min-height:48px}.caro-assist__title{font-size:17px}.caro-assist__messages{padding-left:126px;padding-top:52px}.caro-assist__sprite{left:-28px;width:190px;height:450px;bottom:138px;background-size:auto 450px}.caro-assist__sun{right:22px;top:92px;width:82px;height:82px}.caro-assist__buildings{bottom:34%;height:29%}.caro-assist__water{bottom:19%;height:16%}.caro-assist__palms{right:-30px;bottom:24%;transform:scale(.9);transform-origin:right bottom}.caro-assist__boat{right:6px;bottom:27%;transform:scale(.86)}.caro-assist__contact{grid-template-columns:1fr 1fr 1fr}.caro-assist__go{padding:0 12px}}
@media (max-width:360px){.caro-assist__messages{padding-left:112px}.caro-assist__sprite{left:-28px;width:168px;height:400px;bottom:134px;background-size:auto 400px}.caro-assist__messages{padding-top:44px}.caro-assist__bubble{font-size:13px}.caro-assist__contact a{font-size:11px}}
@media (max-height:700px){.caro-assist__messages{padding-top:18px;padding-left:104px}.caro-assist__sprite{width:158px;height:378px;bottom:122px;background-size:auto 378px}.caro-assist__bubble{font-size:14px}.caro-assist__disclosure{display:none}.caro-assist__contact a{min-height:32px}.caro-assist__chips{padding-bottom:0}.caro-assist__form{margin-top:0}}
.caro-assist[data-keyboard="true"] .caro-assist__sprite{opacity:.55;transform:translateY(18px) scale(.86);animation:none}
.caro-assist[data-keyboard="true"] .caro-assist__messages{padding-left:12px;padding-top:8px}
.caro-assist[data-keyboard="true"] .caro-assist__chips,.caro-assist[data-keyboard="true"] .caro-assist__disclosure,.caro-assist[data-keyboard="true"] .caro-assist__contact{display:none}
.caro-assist[data-keyboard="true"] .caro-assist__form{background:rgba(255,255,255,.97);box-shadow:0 8px 22px rgba(16,44,53,.2)}
@media (min-width:760px){.caro-assist__panel{left:50%;right:auto;width:min(760px,calc(100vw - 32px));transform:translateX(-50%);border-radius:28px;inset-block:24px;box-shadow:0 22px 60px rgba(24,44,50,.32)}}
@media (prefers-reduced-motion:reduce){.caro-assist__sprite,.caro-assist[data-time="evening"] .caro-assist__scene:after,.caro-assist[data-time="night"] .caro-assist__scene:after{animation:none}}
/* The visible viewport, not the layout viewport, owns the conversation. */
.caro-assist__panel{box-sizing:border-box;bottom:auto;max-height:none;grid-template-rows:auto minmax(0,1fr) auto auto auto auto auto}
.caro-assist [hidden]{display:none!important}
.caro-assist__messages{min-height:0;overflow-anchor:none}
.caro-assist__bubble{font-size:16px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}
.caro-assist__close,.caro-assist__more{width:44px;height:44px}
.caro-assist__form{grid-template-columns:44px minmax(0,1fr) auto}
.caro-assist__go,.caro-assist__input,.caro-assist__chip,.caro-assist__contact a,.caro-assist__handoffpack a{min-height:44px}
.caro-assist__go:disabled,.caro-assist__chip:disabled{opacity:.65;cursor:wait}
.caro-assist__handoffpack{display:block;width:100%;border-radius:8px;background:rgba(255,255,255,.96);color:#18323a;overflow-wrap:anywhere}
.caro-assist__handoffpack summary{padding:12px;min-height:44px;box-sizing:border-box;cursor:pointer;font-size:14px;line-height:1.4}
.caro-assist__handoffpack .caro-assist__draft{padding:0 12px 12px;white-space:pre-wrap;color:#18323a;text-shadow:none;font-size:14px;font-weight:400;line-height:1.4}
.caro-assist__handoffpack a{margin:0 4px 8px}
.caro-assist__sources{width:100%;border-radius:14px;background:rgba(255,255,255,.96);color:#18323a}
.caro-assist__sources summary{padding:12px;min-height:44px;box-sizing:border-box;cursor:pointer;font-size:14px;line-height:1.4}
.caro-assist__sources .caro-assist__cards{padding:0 8px 8px}
.caro-assist[data-keyboard="true"] .caro-assist__messages{padding-left:64px}
.caro-assist[data-keyboard="true"] .caro-assist__sprite{left:-12px;bottom:90px;width:82px;height:min(194px,calc(100% - 160px));background-size:auto 100%;opacity:1;transform:none}
.caro-assist[data-keyboard="true"] .caro-assist__typing{margin-left:64px;max-width:calc(100% - 64px)}
.caro-assist[data-keyboard="true"] .caro-assist__contact:not([hidden]){display:grid}
@media(max-height:450px){.caro-assist__disclosure{display:none}.caro-assist__messages{padding-top:8px}.caro-assist__top{min-height:44px}.caro-assist__panel{gap:4px}.caro-assist__sprite{left:0;bottom:90px;width:82px;height:min(194px,calc(100% - 160px));background-size:auto 100%}}
