#jerry-concierge{--jc-navy:#071b45;--jc-gold:#c9963f;--jc-jerry-desktop:.5;--jc-jerry-tablet:.5;--jc-jerry-mobile:.5;--jc-card-desktop:.5;--jc-card-tablet:.5;--jc-card-mobile:.5;position:fixed;z-index:999999;bottom:18px;display:flex;align-items:flex-end;gap:0;opacity:0;pointer-events:none;transition:opacity .55s ease,transform .75s cubic-bezier(.2,.8,.2,1);font-family:Arial,sans-serif;max-width:calc(100vw - 24px)}
#jerry-concierge.jc-position-right{right:22px;transform:translateX(70px)}
#jerry-concierge.jc-position-left{left:22px;transform:translateX(-70px);flex-direction:row-reverse}
.jc-animation-fade{transform:none!important}.jc-animation-zoom{transform:scale(.82)!important}.jc-visible{opacity:1!important;transform:none!important;pointer-events:auto!important}.jc-exit{opacity:0!important;transform:translateX(80px)!important}
.jc-stage-shell{width:calc(360px * var(--jc-jerry-desktop));height:calc(500px * var(--jc-jerry-desktop));position:relative;flex:0 0 auto;overflow:visible}
.jc-stage{width:360px;position:absolute;left:0;bottom:0;text-align:center;transform:scale(var(--jc-jerry-desktop));transform-origin:left bottom}
.jc-avatar{display:block;width:100%;height:auto;position:relative;z-index:2;filter:drop-shadow(0 15px 16px rgba(0,0,0,.24));max-height:72vh;object-fit:contain;object-position:center bottom}
.jc-platform{width:68%;height:48px;transform:scale(var(--jc-platform-scale,1));transform-origin:center center;border-radius:50%;margin:-29px auto 0;position:relative;z-index:1;background:linear-gradient(#272727,#090909);box-shadow:0 12px 20px rgba(0,0,0,.35),inset 0 0 0 4px var(--jc-gold)}
.jc-platform-minimal .jc-platform{height:20px;background:rgba(0,0,0,.2);box-shadow:0 10px 20px rgba(0,0,0,.25)}.jc-platform-none .jc-platform{display:none}
.jc-nameplate{position:absolute;left:50%;bottom:-38px;transform:translateX(-50%);z-index:4;background:rgba(7,27,69,.94);color:#fff;padding:8px 16px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.2);white-space:nowrap;animation:jcName 4s forwards}.jc-nameplate strong,.jc-nameplate span{display:block}.jc-nameplate span{font-size:11px;color:#f2d49a}
.jc-card-shell{width:calc(340px * var(--jc-card-desktop));height:calc(330px * var(--jc-card-desktop));position:relative;flex:0 0 auto;overflow:visible;margin-bottom:42px}
.jc-card{width:340px;box-sizing:border-box;background:#fff;border-radius:24px;padding:26px;box-shadow:0 22px 60px rgba(0,0,0,.22);position:absolute;left:0;bottom:0;transform:scale(var(--jc-card-desktop));transform-origin:left bottom}
.jc-welcome-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;transform:scale(var(--jc-welcome-icon-scale,1));transform-origin:center}.jc-welcome-icon img{width:1.25em;height:1.25em;object-fit:contain;display:block}.jc-welcome-icon-hidden .jc-welcome-icon{display:none}.jc-card h2{font-size:25px;line-height:1.15;margin:0 0 14px;color:var(--jc-navy)}.jc-card p{font-size:16px;line-height:1.5;color:#333}.jc-question{font-weight:700}.jc-actions{display:flex;gap:12px}.jc-choice{border:0;border-radius:12px;padding:14px 20px;font-size:17px;font-weight:700;cursor:pointer}.jc-rent{background:var(--jc-navy);color:#fff}.jc-buy{background:var(--jc-gold);color:#fff}
.jc-close{position:absolute;right:-4px;top:-12px;border:0;background:#fff;border-radius:50%;width:32px;height:32px;font-size:22px;z-index:8;cursor:pointer;box-shadow:0 5px 15px rgba(0,0,0,.16)}
.jc-debug{position:absolute;bottom:-4px;right:0;background:#111;color:#fff;padding:8px 10px;border-radius:8px;font-size:11px;display:flex;gap:8px;align-items:center}.jc-debug button{font-size:10px}
@keyframes jcName{0%,62%{opacity:1}100%{opacity:0;visibility:hidden}}
@media(min-width:768px) and (max-width:1024px){
  #jerry-concierge{right:14px;bottom:12px;gap:12px}#jerry-concierge.jc-position-left{left:14px;right:auto}
  .jc-stage-shell{width:calc(300px * var(--jc-jerry-tablet));height:calc(420px * var(--jc-jerry-tablet))}.jc-stage{width:300px;transform:scale(var(--jc-jerry-tablet))}
  .jc-card-shell{width:calc(320px * var(--jc-card-tablet));height:calc(310px * var(--jc-card-tablet));margin-bottom:36px}.jc-card{width:320px;transform:scale(var(--jc-card-tablet))}
}
@media(max-width:767px){
  #jerry-concierge{left:8px!important;right:8px!important;bottom:8px;gap:6px;align-items:flex-end;max-width:calc(100vw - 16px)}
  .jc-stage-shell{width:calc(190px * var(--jc-jerry-mobile));height:calc(270px * var(--jc-jerry-mobile))}.jc-stage{width:190px;transform:scale(var(--jc-jerry-mobile))}.jc-avatar{max-height:42vh}
  .jc-card-shell{width:calc(230px * var(--jc-card-mobile));height:calc(260px * var(--jc-card-mobile));margin-bottom:18px}.jc-card{width:230px;padding:18px;border-radius:18px;transform:scale(var(--jc-card-mobile))}.jc-card h2{font-size:20px}.jc-card p{font-size:14px}.jc-choice{padding:11px 13px;font-size:14px}.jc-platform{height:28px}.jc-nameplate{bottom:-30px;font-size:11px}.jc-close{right:0}
}
/* v3.1 animation engine and nameplate controls */
#jerry-concierge{transition-duration:var(--jc-enter-duration,800ms);}
#jerry-concierge.jc-exit{transition-duration:var(--jc-exit-duration,650ms)!important;}
.jc-nameplate{animation-duration:var(--jc-nameplate-duration,3200ms);transform:translate(calc(-50% + var(--jc-nameplate-x,0px)),var(--jc-nameplate-y,0px)) scale(var(--jc-nameplate-scale,.7));transform-origin:center center}
.jc-nameplate-hidden .jc-nameplate{display:none}.jc-nameplate-stay .jc-nameplate{animation:none}.jc-nameplate-fade .jc-nameplate{animation-name:jcName}
.jc-nameplate-above .jc-nameplate{top:-54px;bottom:auto}.jc-nameplate-below .jc-nameplate{bottom:-38px}.jc-nameplate-left .jc-nameplate{left:-14px;bottom:40%;transform:translate(calc(-100% + var(--jc-nameplate-x,0px)),var(--jc-nameplate-y,0px)) scale(var(--jc-nameplate-scale,.7))}.jc-nameplate-right .jc-nameplate{left:auto;right:-14px;bottom:40%;transform:translate(calc(100% + var(--jc-nameplate-x,0px)),var(--jc-nameplate-y,0px)) scale(var(--jc-nameplate-scale,.7))}
.jc-idling.jc-breathing .jc-avatar{animation:jcBreathe 4.8s ease-in-out infinite}.jc-idling.jc-idle-motion .jc-stage{animation:jcIdleSway 7s ease-in-out infinite}.jc-idling.jc-blink .jc-avatar{filter:drop-shadow(0 15px 16px rgba(0,0,0,.24));}
.jc-idling.jc-blink .jc-stage:after{content:"";position:absolute;z-index:5;left:42%;top:16.5%;width:17%;height:1.5%;border-radius:50%;background:rgba(42,24,17,.28);opacity:0;pointer-events:none;animation:jcMicroBlink 8.4s infinite}
@keyframes jcBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.006,1.012)}}
@keyframes jcIdleSway{0%,100%{translate:0 0;rotate:0deg}35%{translate:1px -1px;rotate:.15deg}70%{translate:-1px 0;rotate:-.12deg}}
@keyframes jcMicroBlink{0%,43%,45%,100%{opacity:0;transform:scaleY(.1)}43.4%,44.1%{opacity:.55;transform:scaleY(1)}}
/* v3.2 responsive positioning and independent appearance */
#jerry-concierge{gap:0}.jc-stage-shell{margin-right:var(--jc-gap-desktop,-14px)}#jerry-concierge.jc-position-left .jc-stage-shell{margin-right:0;margin-left:var(--jc-gap-desktop,-14px)}
.jc-stage-shell{transform:translate(var(--jc-jx-desktop,0),var(--jc-jy-desktop,0))}
.jc-card-shell{transform:translate(var(--jc-cx-desktop,0),var(--jc-cy-desktop,0))}
.jc-card{background:var(--jc-card-bg,#fff);color:var(--jc-card-text,#222)}
.jc-card p,.jc-question{color:var(--jc-card-text,#222)}
.jc-nameplate{background:var(--jc-np-bg,var(--jc-navy));color:var(--jc-np-text,#fff)}
.jc-nameplate span{color:var(--jc-np-text,#fff);opacity:.78}
.jc-platform{box-shadow:0 12px 20px rgba(0,0,0,.35),inset 0 0 0 4px var(--jc-platform-color,var(--jc-gold))}
@media(min-width:768px) and (max-width:1024px){#jerry-concierge{gap:0}.jc-stage-shell{margin-right:var(--jc-gap-tablet,-14px);transform:translate(var(--jc-jx-tablet,0),var(--jc-jy-tablet,0))}.jc-card-shell{transform:translate(var(--jc-cx-tablet,0),var(--jc-cy-tablet,0))}#jerry-concierge.jc-position-left .jc-stage-shell{margin-right:0;margin-left:var(--jc-gap-tablet,-14px)}}
@media(max-width:767px){#jerry-concierge{display:flex!important;visibility:visible!important;gap:0}.jc-stage-shell{margin-right:var(--jc-gap-mobile,-14px);transform:translate(var(--jc-jx-mobile,0),var(--jc-jy-mobile,0))}.jc-card-shell{transform:translate(var(--jc-cx-mobile,0),var(--jc-cy-mobile,0))}#jerry-concierge.jc-position-left .jc-stage-shell{margin-right:0;margin-left:var(--jc-gap-mobile,-14px)}}
/* v3.3 platform and nameplate visibility */
.jc-platform{background:var(--jc-platform-base,#151515)}
/* v3.3.3 centered action buttons */
.jc-actions{justify-content:center;align-items:center;flex-wrap:wrap}

.jc-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.jc-choice{background:var(--jc-journey-color,#155eef)!important}

.jc-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.jc-roommates{background:#7c3aed!important}

/* v4.0.1 mobile visibility and viewport safeguards */
@media(max-width:767px){
  #jerry-concierge{
    display:flex!important;
    visibility:visible!important;
    max-width:calc(100vw - 12px)!important;
    left:6px!important;
    right:6px!important;
    bottom:max(6px,env(safe-area-inset-bottom))!important;
  }
  #jerry-concierge[hidden]{display:none!important}
  #jerry-concierge.jc-visible{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .jc-card-shell{max-width:52vw}
  .jc-stage-shell{max-width:43vw}
}

/* v4.1 visual studio controls */
.jc-card{
  border-radius:var(--jc-card-radius,24px);
  border:var(--jc-card-border-width,0) solid var(--jc-card-border,#fff);
  opacity:var(--jc-card-opacity,1);
  box-shadow:0 22px 60px rgba(0,0,0,calc(.32 * var(--jc-card-shadow,.7)));
}
.jc-card-mode-buttons .jc-card h2,
.jc-card-mode-buttons .jc-card>p:not(.jc-ack){display:none}
.jc-card-mode-buttons .jc-card{padding:14px 16px;width:auto;min-width:230px}
.jc-card-mode-buttons .jc-card-shell{height:110px;width:calc(250px * var(--jc-card-desktop));margin-bottom:42px}
.jc-choice{
  border-radius:var(--jc-button-radius,12px);
  color:var(--jc-button-text,#fff)!important;
  transform:scale(var(--jc-button-scale,1));
  transform-origin:center;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.jc-choice:hover,.jc-choice:focus-visible{filter:brightness(1.08);box-shadow:0 8px 20px rgba(0,0,0,.18);transform:scale(calc(var(--jc-button-scale,1) * 1.04))}
.jc-rent{background:var(--jc-rent-color,#071b45)!important}.jc-buy{background:var(--jc-buy-color,#c9963f)!important}.jc-roommates{background:var(--jc-roommates-color,#7c3aed)!important}
.jc-platform{
  width:var(--jc-platform-width,70%);
  height:var(--jc-platform-height,30px);
  box-shadow:0 12px 24px rgba(0,0,0,.35),0 0 calc(34px * var(--jc-platform-glow,.35)) color-mix(in srgb,var(--jc-platform-glow-color,#c9963f) 70%,transparent),inset 0 0 0 var(--jc-platform-ring,4px) var(--jc-platform-color,var(--jc-gold));
}
.jc-nameplate{
  border-radius:var(--jc-nameplate-radius,9px);
  opacity:var(--jc-nameplate-opacity,1);
  border:1px solid var(--jc-np-border,var(--jc-navy));
}
.jc-exit-fade.jc-exit{transform:none!important;opacity:0!important}
.jc-exit-zoom.jc-exit{transform:scale(.82)!important;opacity:0!important}
.jc-exit-slide.jc-exit{opacity:0!important}
@media(min-width:768px) and (max-width:1024px){.jc-card-mode-buttons .jc-card-shell{width:calc(240px * var(--jc-card-tablet));height:105px}}
@media(max-width:767px){.jc-card-mode-buttons .jc-card-shell{width:calc(220px * var(--jc-card-mobile));height:96px;margin-bottom:18px}.jc-card-mode-buttons .jc-card{min-width:205px;padding:10px 12px}.jc-card-mode-buttons .jc-choice{font-size:12px;padding:9px 11px}}


/* v4.1.1 responsive layout studio and mobile collision fix */
#jerry-concierge{
  bottom:var(--jc-bottom-desktop,18px);
  transform:translate(var(--jc-gx-desktop,0),var(--jc-gy-desktop,0));
}
#jerry-concierge.jc-position-right{right:var(--jc-edge-desktop,22px)}
#jerry-concierge.jc-position-left{left:var(--jc-edge-desktop,22px)}
@media(min-width:768px) and (max-width:1024px){
  #jerry-concierge{bottom:var(--jc-bottom-tablet,12px);transform:translate(var(--jc-gx-tablet,0),var(--jc-gy-tablet,0))}
  #jerry-concierge.jc-position-right{right:var(--jc-edge-tablet,14px);left:auto}
  #jerry-concierge.jc-position-left{left:var(--jc-edge-tablet,14px);right:auto}
}
@media(max-width:767px){
  #jerry-concierge{
    width:max-content!important;
    left:auto!important;
    right:var(--jc-edge-mobile,8px)!important;
    bottom:max(var(--jc-bottom-mobile,92px),env(safe-area-inset-bottom))!important;
    transform:translate(var(--jc-gx-mobile,0),var(--jc-gy-mobile,0))!important;
    max-width:calc(100vw - (2 * var(--jc-edge-mobile,8px)))!important;
  }
  #jerry-concierge.jc-position-left{left:var(--jc-edge-mobile,8px)!important;right:auto!important}
  .jc-stage-shell{width:calc(var(--jc-mobile-jerry-base,190px) * var(--jc-jerry-mobile));height:calc((var(--jc-mobile-jerry-base,190px) * 1.43) * var(--jc-jerry-mobile));max-width:none}
  .jc-stage{width:var(--jc-mobile-jerry-base,190px)}
  .jc-card-shell{width:calc(var(--jc-mobile-card-base,230px) * var(--jc-card-mobile));height:calc((var(--jc-mobile-card-base,230px) * 1.13) * var(--jc-card-mobile));max-width:none}
  .jc-card{width:var(--jc-mobile-card-base,230px)}
  #jerry-concierge.jc-mobile-layout-stacked,
  #jerry-concierge.jc-mobile-layout-card-above{flex-direction:column;align-items:center}
  #jerry-concierge.jc-mobile-layout-card-above .jc-card-shell{order:-1;margin-bottom:-6px}
  #jerry-concierge.jc-mobile-order-card-first:not(.jc-mobile-layout-card-above) .jc-card-shell{order:-1}
  #jerry-concierge.jc-mobile-layout-stacked .jc-stage-shell{margin-right:0!important;margin-left:0!important;margin-top:-12px}
  #jerry-concierge.jc-mobile-layout-stacked .jc-card-shell{margin-bottom:0}
  #jerry-concierge.jc-keep-in-view{max-height:calc(100svh - var(--jc-bottom-mobile,92px) - 12px);overflow:visible}
  #jerry-concierge.jc-keep-in-view .jc-card{max-height:58svh;overflow:auto}
  .jc-close{width:28px;height:28px;font-size:20px;top:-8px}
}


/* v4.2.3 renter + buyer lead paths */
.jc-actions-lead-paths{width:100%;justify-content:center;align-items:stretch;gap:10px}
.jc-actions-lead-paths .jc-choice{flex:1;min-width:0;padding-left:16px;padding-right:16px;white-space:nowrap}
@media(max-width:767px){.jc-actions-lead-paths{gap:8px}.jc-actions-lead-paths .jc-choice{font-size:14px;padding:12px 10px}}


/* v4.2.4 readability upgrade: wider card, larger text, shorter category buttons */
.jc-card-shell{width:calc(390px * var(--jc-card-desktop));height:calc(300px * var(--jc-card-desktop));}
.jc-card{width:390px;padding:26px 28px;}
.jc-card h2{font-size:27px;line-height:1.2;margin-bottom:12px;}
.jc-card p{font-size:17px;line-height:1.45;margin:0 0 18px;}
.jc-actions-lead-paths{gap:14px;}
.jc-actions-lead-paths .jc-choice{flex:0 1 150px;min-width:130px;padding:14px 24px;font-size:18px;line-height:1.15;white-space:nowrap;}
@media(min-width:768px) and (max-width:1024px){
  .jc-card-shell{width:calc(350px * var(--jc-card-tablet));height:calc(290px * var(--jc-card-tablet));}
  .jc-card{width:350px;padding:24px 24px;}
  .jc-card h2{font-size:24px}.jc-card p{font-size:16px}
  .jc-actions-lead-paths .jc-choice{min-width:120px;font-size:17px;padding:13px 20px}
}
@media(max-width:767px){
  .jc-card-shell{width:calc(270px * var(--jc-card-mobile));height:calc(285px * var(--jc-card-mobile));}
  .jc-card{width:270px;padding:20px 18px;}
  .jc-card h2{font-size:21px;line-height:1.2}.jc-card p{font-size:15px;line-height:1.4;margin-bottom:14px}
  .jc-actions-lead-paths{gap:8px;flex-wrap:nowrap}
  .jc-actions-lead-paths .jc-choice{flex:1 1 0;min-width:0;font-size:15px;padding:12px 10px}
}

/* v4.2.5 mobile viewport fit: keep Jerry + welcome card fully inside phone screens */
@media(max-width:480px){
  #jerry-concierge{
    --jc-jerry-mobile:.72!important;
    --jc-card-mobile:.78!important;
    right:6px!important;
    left:auto!important;
    max-width:calc(100vw - 12px)!important;
  }
  #jerry-concierge.jc-position-left{left:6px!important;right:auto!important}
  .jc-stage-shell{margin-right:-10px!important}
  .jc-card-shell{margin-bottom:14px!important}
  .jc-card{padding:18px 16px!important}
  .jc-card h2{font-size:20px!important;line-height:1.16!important;margin-bottom:10px!important}
  .jc-card p{font-size:15px!important;line-height:1.35!important;margin-bottom:12px!important}
  .jc-actions-lead-paths{gap:8px!important}
  .jc-actions-lead-paths .jc-choice{font-size:15px!important;padding:12px 9px!important}
}
@media(max-width:380px){
  #jerry-concierge{
    --jc-jerry-mobile:.66!important;
    --jc-card-mobile:.72!important;
  }
  .jc-card h2{font-size:19px!important}
  .jc-card p{font-size:14px!important}
  .jc-actions-lead-paths .jc-choice{font-size:14px!important;padding:11px 8px!important}
}

/* 7.0.4: viewport-sized phone layout, independent of saved desktop offsets. */
@media (max-width:767px){
  #jerry-concierge{
    display:grid!important;
    grid-template-columns:minmax(0,30%) minmax(0,1fr)!important;
    gap:4px!important;
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    left:12px!important;right:12px!important;
    bottom:max(88px,env(safe-area-inset-bottom))!important;
    transform:none!important;align-items:end!important;
    box-sizing:border-box!important;
  }
  #jerry-concierge .jc-stage-shell,
  #jerry-concierge .jc-card-shell{
    width:100%!important;max-width:100%!important;min-width:0!important;
    height:auto!important;margin:0!important;transform:none!important;order:0!important;
  }
  #jerry-concierge .jc-stage{
    position:relative!important;left:auto!important;bottom:auto!important;
    width:100%!important;transform:none!important;
  }
  #jerry-concierge .jc-avatar{width:100%!important;max-height:32svh;object-fit:contain}
  #jerry-concierge .jc-card{
    position:relative!important;left:auto!important;bottom:auto!important;
    width:100%!important;min-width:0!important;max-width:100%!important;
    transform:none!important;padding:16px 12px!important;
    box-sizing:border-box!important;max-height:55svh!important;overflow:auto!important;
  }
  #jerry-concierge .jc-card h2{font-size:20px!important;line-height:1.2!important;overflow-wrap:anywhere;white-space:normal!important}
  #jerry-concierge .jc-card p{font-size:14px!important;white-space:normal!important;overflow-wrap:anywhere}
  #jerry-concierge .jc-actions{width:100%!important;gap:6px!important;flex-wrap:wrap!important}
  #jerry-concierge .jc-choice{flex:1 1 78px!important;min-width:0!important;max-width:100%!important;font-size:14px!important;padding:12px 6px!important;transform:none!important;white-space:normal!important;box-sizing:border-box!important}
  #jerry-concierge .jc-close{top:-36px!important;right:0!important}
  #jerry-concierge.jc-mobile-layout-stacked,
  #jerry-concierge.jc-mobile-layout-card-above{grid-template-columns:minmax(0,1fr)!important}
  #jerry-concierge.jc-mobile-layout-stacked .jc-stage-shell,
  #jerry-concierge.jc-mobile-layout-card-above .jc-stage-shell{width:28%!important;justify-self:center}
  #jerry-concierge.jc-mobile-layout-card-above .jc-card-shell{order:-1!important}
}
