/* SkiGB AI Trip Finder — slide-over widget */
:root{ --skigb-tf-teal:#0098a6; --skigb-tf-teal-dark:#00747f; --skigb-tf-ink:#1d2c33; }

.skigb-tf{position:fixed;inset:0;z-index:99999;display:none;}
.skigb-tf.is-open{display:block;}
body.skigb-tf-lock{overflow:hidden;}

.skigb-tf__backdrop{position:absolute;inset:0;background:rgba(10,28,34,.5);backdrop-filter:saturate(120%) blur(1px);}
.skigb-tf__panel{
  position:absolute;top:0;right:0;height:100%;width:420px;max-width:100vw;
  background:#fff;display:flex;flex-direction:column;
  box-shadow:-14px 0 50px rgba(0,0,0,.25);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  animation:skigb-tf-in .2s ease;
}
@keyframes skigb-tf-in{from{transform:translateX(30px);opacity:.4;}to{transform:none;opacity:1;}}

.skigb-tf__head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--skigb-tf-teal);color:#fff;}
.skigb-tf__title{font-weight:800;font-size:16px;}
.skigb-tf__close{background:none;border:none;color:#fff;font-size:26px;line-height:1;cursor:pointer;padding:0 4px;}

.skigb-tf__msgs{flex:1;overflow-y:auto;padding:16px;background:#f3f7f8;display:flex;flex-direction:column;gap:10px;}
.skigb-tf__msg{display:flex;}
.skigb-tf__msg--user{justify-content:flex-end;}
.skigb-tf__bubble{max-width:85%;padding:10px 13px;border-radius:14px;font-size:14.5px;line-height:1.5;}
.skigb-tf__msg--bot .skigb-tf__bubble{background:#fff;border:1px solid #e3e9ec;color:var(--skigb-tf-ink);border-bottom-left-radius:4px;}
.skigb-tf__msg--user .skigb-tf__bubble{background:var(--skigb-tf-teal);color:#fff;border-bottom-right-radius:4px;}
.skigb-tf__msg--typing .skigb-tf__bubble{color:#7c8a90;font-style:italic;}

.skigb-tf__cards{display:flex;flex-direction:column;gap:10px;}
.skigb-tf__card{display:flex;gap:10px;background:#fff;border:1px solid #e3e9ec;border-radius:12px;overflow:hidden;text-decoration:none;color:var(--skigb-tf-ink);transition:box-shadow .15s ease,transform .15s ease;}
.skigb-tf__card:hover{box-shadow:0 8px 22px rgba(20,40,50,.12);transform:translateY(-1px);}
.skigb-tf__card-img{position:relative;flex:0 0 104px;width:104px;align-self:stretch;background-size:cover;background-position:center;background-color:#dfe7ea;}
.skigb-tf__stars{position:absolute;left:6px;top:6px;background:rgba(0,0,0,.55);color:#ffcf5a;font-size:11px;padding:2px 6px;border-radius:999px;letter-spacing:1px;}
.skigb-tf__card-body{display:flex;flex-direction:column;gap:2px;padding:10px 12px 11px 0;min-width:0;}
.skigb-tf__card-title{font-weight:700;font-size:14.5px;line-height:1.25;}
.skigb-tf__card-resort{font-size:12.5px;color:#62727a;}
.skigb-tf__card-facts{font-size:12.5px;color:#62727a;}
.skigb-tf__card-cta{margin-top:4px;font-size:12.5px;font-weight:700;color:var(--skigb-tf-teal);}

.skigb-tf__form{display:flex;gap:8px;padding:12px;border-top:1px solid #e3e9ec;background:#fff;}
.skigb-tf__input{flex:1;resize:none;border:1px solid #ccd6d9;border-radius:10px;padding:10px 12px;font-size:14.5px;font-family:inherit;max-height:120px;}
.skigb-tf__input:focus{outline:none;border-color:var(--skigb-tf-teal);box-shadow:0 0 0 3px rgba(0,152,166,.15);}
.skigb-tf__send{flex:0 0 auto;border:none;border-radius:10px;background:var(--skigb-tf-teal);color:#fff;font-weight:700;padding:0 16px;cursor:pointer;}
.skigb-tf__send:hover{background:var(--skigb-tf-teal-dark);}
.skigb-tf__send:disabled{opacity:.6;cursor:default;}

@media(max-width:480px){
  .skigb-tf__panel{width:100vw;}
}
