.experience-status-card { align-items:flex-start; background:#edf5ec; border:1px solid #b9d7b6; border-radius:.85rem; color:#17362e; display:flex; gap:.85rem; margin-top:1.25rem; padding:1rem 1.1rem; }
.experience-status-card__icon { align-items:center; background:#2f6d52; border-radius:50%; color:#fff; display:inline-flex; flex:0 0 auto; font-weight:800; height:1.6rem; justify-content:center; width:1.6rem; }
.experience-status-card h2 { font-size:1rem; margin:0; }
.experience-status-card p { color:#40564e; margin:.2rem 0 0; }

.experience-status-card--completed { background:#f5f2e8; border-color:#ddd2ad; }
.experience-status-card--completed .experience-status-card__icon { background:#806c2b; }
.experience-status-card--completed .text-link { display:inline-block; margin-top:.7rem; }

.experience-share-dialog__link textarea { background:#fff; border:1px solid #bdc9c1; border-radius:.5rem; color:#17362e; font:inherit; min-height:7rem; padding:.6rem .7rem; resize:vertical; width:100%; }
.experience-request p { color:#52635b; grid-column:1 / -1; margin:0; white-space:pre-wrap; }

.experience-map-action { align-items:center; display:flex; gap:.5rem; justify-content:center; margin-top:.75rem; text-align:center; width:100%; }
.experience-location-change { margin-top:1rem; }
.experience-map-action svg { fill:none; height:1.15rem; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; width:1.15rem; }

#experience-detail-map-state:empty { display:none; }

.experience-chat { background:#fff; border:1px solid #bdc9c1; border-radius:1rem; bottom:1rem; box-shadow:0 1.25rem 3.5rem rgb(23 54 46 / .22); display:grid; grid-template-rows:auto minmax(22rem,1fr) auto; max-height:min(48rem,calc(100vh - 2rem)); overflow:hidden; position:fixed; right:1rem; width:min(32rem,calc(100vw - 2rem)); z-index:20; }
.experience-chat__header { align-items:flex-start; background:#edf5ec; border-bottom:1px solid #d8ddd5; display:flex; gap:1rem; justify-content:space-between; padding:1rem; }
.experience-chat__header h2 { font-size:1rem; margin:0; }
.experience-chat__header p { color:#617169; font-size:.8rem; margin:.2rem 0 0; }
.experience-chat__messages { display:grid; gap:.75rem; min-height:0; overflow-y:auto; padding:1rem; }
.experience-chat__message { align-items:flex-start; border-radius:.65rem; cursor:pointer; display:grid; gap:.55rem; grid-template-columns:2rem minmax(0,1fr); padding:.4rem; }
.experience-chat__message.is-selected { background:#edf5ec; outline:2px solid #b9d7b6; }
.experience-chat__message p { margin:.15rem 0 0; overflow-wrap:anywhere; white-space:pre-wrap; }
.experience-chat__author { color:#617169; font-size:.75rem; font-weight:800; }
.experience-chat__photo { height:2rem; width:2rem; }
.experience-chat__form { border-top:1px solid #d8ddd5; padding:.75rem; }
.experience-chat__form textarea { border:1px solid #bdc9c1; border-radius:.5rem; color:#17362e; font:inherit; min-height:4.5rem; padding:.6rem .7rem; resize:vertical; width:100%; }
.experience-chat__form > div { align-items:center; display:flex; justify-content:space-between; margin-top:.5rem; }
.experience-chat__form .form-message { margin:.5rem 0 0; }
.experience-chat-launcher { background:#1f634a; border:0; border-radius:999px; bottom:1rem; box-shadow:0 .6rem 1.5rem rgb(23 54 46 / .28); color:#fff; cursor:pointer; font:inherit; font-weight:800; padding:.8rem 1.1rem; position:fixed; right:1rem; z-index:19; }
.experience-status-card .text-button { margin-top:.7rem; }
.experience-status-card .text-button + .text-button { margin-left:.75rem; }

@media (max-width:48rem) { .experience-chat { border-radius:1rem 1rem 0 0; bottom:0; max-height:calc(100vh - 1rem); right:0; width:100%; }
.experience-chat-launcher { bottom:1rem; right:1rem; }
 }

.participant-grid { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:1rem; }
.participant-card { align-items:center; background:#fff; border:1px solid #d8ddd5; border-radius:1rem; display:flex; flex-direction:column; min-width:0; padding:1.25rem; text-align:center; }
.participant-card__profile-photo { border-radius:50%; }
.participant-card__photo { height:4.5rem; margin-bottom:.85rem; width:4.5rem; }
.participant-card h3 { font-size:1.05rem; margin:0; overflow-wrap:anywhere; }
.participant-card__profile-name { color:#1f634a; font-weight:800; text-decoration:underline; text-underline-offset:.2rem; }
.participant-card__profile-name:hover { color:#174b38; }
.participant-card__status { color:#2f6d52 !important; font-size:.8rem; font-weight:800; margin:.3rem 0 0; }
.participant-card__message { border-top:1px solid #e2e5df; color:#52635b !important; font-size:.85rem; margin:1rem 0 0 !important; padding-top:1rem; white-space:pre-wrap; width:100%; }
.participant-card__actions { display:flex; flex-wrap:wrap; gap:.5rem; justify-content:center; margin-top:1rem; }
.participant-card__actions .button { text-align:center; }

@media (max-width:48rem) { .participant-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 }

@media (max-width:32rem) { .participant-grid { grid-template-columns:1fr; }
 }
