/* Live trip snapshot hero: premium compact title + latest photo + latest message + dates. */
.hero-card.live-snapshot-hero{
  --live-accent:var(--gold-2,#efd69a);
  height:auto!important;
  min-height:0!important;
  padding:22px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr);
  grid-template-areas:"title dates" "message photo";
  grid-template-rows:auto auto;
  gap:16px 18px;
  align-content:start;
  align-items:start;
  overflow:hidden!important;
  border-color:rgba(239,214,154,.38)!important;
  background:
    radial-gradient(ellipse at 88% 2%,rgba(215,179,106,.16),transparent 38%),
    radial-gradient(ellipse at 8% 105%,rgba(215,179,106,.06),transparent 42%),
    linear-gradient(145deg,#151719 0%,#0d0f10 52%,#08090a 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 18px 46px rgba(0,0,0,.34)!important;
}
.hero-card.live-snapshot-hero>img{display:none!important}
.hero-card.live-snapshot-hero:after{display:none!important}
.hero-card.live-snapshot-hero>*{position:relative;z-index:1;min-width:0}
.live-hero-title{grid-area:title;align-self:start;padding:7px 6px 0 8px}
.live-hero-title .eyebrow{color:var(--live-accent)!important;font-size:10px!important;letter-spacing:.22em!important}
.live-hero-title h1{margin:18px 0 14px!important;color:#f4efe5!important;font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(42px,6.2vw,70px)!important;font-weight:400!important;line-height:.91!important;letter-spacing:-.035em!important;text-transform:uppercase!important;text-shadow:none!important}
.live-hero-title h1 span{color:var(--live-accent)!important}
.live-hero-title p{margin:0!important;padding-left:10px;border-left:2px solid var(--live-accent);font-size:14px!important;line-height:1.35!important;color:rgba(244,239,229,.88)!important}
.live-photo-block{grid-area:photo;align-self:stretch;min-width:0;height:100%;display:flex;flex-direction:column}
.live-hero-label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:1px 2px 9px;color:var(--live-accent);font-size:9px;font-weight:900;letter-spacing:.19em;text-transform:uppercase;flex:0 0 auto}
.live-photo-frame{position:relative;width:100%;flex:1 1 auto;min-height:0;aspect-ratio:auto;border:1px solid rgba(239,214,154,.48);border-radius:18px;background:#0a0b0c;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,255,255,.018)}
.live-photo-frame:before,.live-photo-frame:after{content:"";position:absolute;inset:9px -6px -7px 10px;border:1px solid rgba(255,255,255,.09);border-radius:16px;transform:rotate(1.6deg);pointer-events:none;z-index:0}
.live-photo-frame:after{inset:6px 5px -9px -6px;transform:rotate(-1.6deg)}
.live-photo-open{position:absolute;inset:0;z-index:1;width:100%;height:100%;padding:0;border:0;background:#0a0b0c;cursor:pointer}
.live-photo-open img{display:block;width:100%;height:100%;object-fit:cover}
.live-photo-empty{display:grid;place-items:center;width:100%;height:100%;padding:20px;color:rgba(255,255,255,.5);font-size:11px;text-align:center}
.live-photo-add{position:absolute;z-index:3;left:50%;bottom:10px;transform:translateX(-50%);white-space:nowrap;border:1px solid rgba(239,214,154,.72);border-radius:999px;background:rgba(8,9,10,.88);color:#f5efe4;padding:9px 12px;font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(10px)}
.live-message-card,.live-date-card{border:1px solid rgba(239,214,154,.28);border-radius:17px;background:linear-gradient(180deg,rgba(15,16,17,.86),rgba(9,10,11,.78));box-shadow:inset 0 1px 0 rgba(255,255,255,.018)}
.live-message-card{grid-area:message;align-self:stretch;height:100%;padding:15px 16px;cursor:pointer}
.live-message-card[role="button"]:active{transform:scale(.995)}
.live-message-meta{display:flex;align-items:center;gap:8px;margin-bottom:8px;min-width:0}
.live-message-avatar{width:30px;height:30px;flex:0 0 30px;border:1px solid rgba(239,214,154,.45);border-radius:50%;display:grid;place-items:center;color:var(--live-accent);font-size:10px;font-weight:900}
.live-message-meta b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live-message-meta time{margin-left:auto;color:rgba(255,255,255,.46);font-size:9px;white-space:nowrap}
.live-message-card p{margin:0;color:rgba(244,239,229,.86);font-size:12.5px;line-height:1.42}
.live-date-card{grid-area:dates;align-self:start;height:auto;padding:14px 16px}
.live-date-card b{display:block;color:var(--live-accent);font-size:9px;letter-spacing:.17em;text-transform:uppercase}
.live-date-card span{display:block;margin-top:9px;color:#f5efe4;font-size:12px;line-height:1.5}
.live-date-card .snag-date-edit{display:block;margin-top:9px;padding-top:8px;border-top:1px solid rgba(239,214,154,.22);color:var(--live-accent);font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.live-date-card button{all:unset;display:block;width:100%;cursor:pointer}
/* Quiet skeletons: preserve the final geometry while async photo/chat data arrives. */
.live-data-loading i,.live-line,.live-message-loading .live-message-avatar{display:block;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.055),rgba(239,214,154,.13),rgba(255,255,255,.055));background-size:220% 100%;animation:live-shell-pulse 1.4s ease-in-out infinite}
.live-data-loading i{width:58%;height:48%;border-radius:14px;opacity:.72}
.live-line{width:100%;height:8px;margin:0 0 7px}.live-line-short{width:58px;margin:0}.live-line-mid{width:72%;margin-bottom:0}
.live-message-loading .live-message-avatar{border-color:rgba(239,214,154,.18)}
.live-message-loading b{min-width:70px}.live-message-loading p{min-height:24px}
@keyframes live-shell-pulse{0%,100%{background-position:0 0;opacity:.55}50%{background-position:100% 0;opacity:.9}}
@media(prefers-reduced-motion:reduce){.live-data-loading i,.live-line,.live-message-loading .live-message-avatar{animation:none}}
@media(max-width:700px){
  .hero-card.live-snapshot-hero{padding:16px!important;gap:12px 11px;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}
  .live-hero-title{padding:6px 2px 0 2px}
  .live-hero-title .eyebrow{font-size:8.5px!important}
  .live-hero-title h1{margin:15px 0 12px!important;font-size:clamp(33px,9.2vw,39px)!important;line-height:.94!important;letter-spacing:-.04em!important}
  .live-hero-title p{font-size:11.5px!important;padding-left:8px}
  .live-photo-frame{min-height:0;aspect-ratio:auto;border-radius:15px}
  .live-photo-add{bottom:8px;padding:8px 9px;font-size:7px;letter-spacing:.09em}
  .live-message-card,.live-date-card{padding:12px 11px;border-radius:14px}
  .live-message-card p{font-size:10.8px;line-height:1.38}
  .live-message-meta{gap:6px;margin-bottom:7px}
  .live-message-avatar{width:27px;height:27px;flex-basis:27px}
  .live-message-meta b{font-size:10px}
  .live-message-meta time{font-size:8px}
  .live-date-card span{font-size:10.8px}
  .live-hero-label{font-size:8px;margin-bottom:7px}
}
@media(max-width:390px){
  .hero-card.live-snapshot-hero{padding:14px!important;gap:10px 9px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
  .live-hero-title h1{font-size:31px!important}
  .live-photo-add{font-size:6.5px;padding:7px 8px}
  .live-message-card,.live-date-card{padding:11px 10px}
}
