/* JTMS — isolated account danger-zone placement.
   Keep account deletion available, but deliberately out of the initial viewport. */
.member-delete-box {
  margin-top: clamp(440px, 70vh, 760px);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.member-delete-box > summary {
  display: inline-block;
  width: max-content;
  max-width: 100%;
  padding: 4px 0;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  color: rgba(23, 23, 23, 0.48);
  cursor: pointer;
}

.member-delete-box[open] {
  padding: 14px;
  border: 1px solid rgba(140, 30, 20, 0.22);
  border-radius: 14px;
}

.member-delete-box[open] > summary {
  font-size: 14px;
  font-weight: 750;
  color: rgba(23, 23, 23, 0.78);
}

@media (max-width: 1024px) {
  .member-delete-box {
    margin-top: max(520px, 72vh);
  }
}


/* === 2026-08-25 v14 — professional listings + discussions workspace === */
.member-message-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}
.member-message-filters{display:flex;align-items:center;gap:10px;flex:1;flex-wrap:wrap}
.member-message-filters input[type="search"],.member-message-filters select{min-height:42px;border:1px solid rgba(23,23,23,.14);border-radius:12px;background:#fff;padding:9px 12px;color:#171717}
.member-message-filters input[type="search"]{min-width:220px;flex:1}
.member-message-unread-filter{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:8px 11px;border:1px solid rgba(23,23,23,.12);border-radius:12px;background:#fff;white-space:nowrap}
.member-message-integrations{margin:0 0 16px;padding:14px;border:1px solid rgba(23,23,23,.1);border-radius:16px;background:rgba(255,255,255,.68)}
.member-message-integrations>summary{cursor:pointer;font-weight:800}
.member-message-integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-top:14px}
.member-message-integration-grid label{display:grid;gap:6px;font-weight:700}
.member-message-integration-grid input,.member-message-integration-grid select,.member-message-integrations textarea{width:100%;min-width:0;border:1px solid rgba(23,23,23,.14);border-radius:11px;background:#fff;padding:10px 11px}
.member-message-help{margin:8px 0;color:rgba(23,23,23,.62);font-size:13px;line-height:1.45}
.member-messaging-shell{display:grid;grid-template-columns:minmax(280px,350px) minmax(0,1fr);gap:14px;min-height:520px;height:min(68vh,760px)}
.member-message-thread-list{overflow:auto;border:1px solid rgba(23,23,23,.1);border-radius:17px;background:rgba(247,246,242,.84);padding:8px}
.member-message-thread{display:block;width:100%;border:0;border-bottom:1px solid rgba(23,23,23,.08);background:transparent;text-align:left;padding:13px 12px;border-radius:12px;cursor:pointer;color:#171717}
.member-message-thread:last-child{border-bottom:0}
.member-message-thread:hover,.member-message-thread[aria-current="true"]{background:#fff;box-shadow:0 5px 18px rgba(23,23,23,.06)}
.member-message-thread-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.member-message-thread strong{font-size:14px;line-height:1.25}
.member-message-thread p{margin:6px 0 0;font-size:13px;line-height:1.35;color:rgba(23,23,23,.62);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.member-message-thread small{display:block;margin-top:7px;color:rgba(23,23,23,.48)}
.member-message-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#f47c20;color:#fff;font-size:12px;font-weight:850}
.member-message-conversation{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(23,23,23,.1);border-radius:17px;background:#fff}
.member-message-placeholder{margin:auto;color:rgba(23,23,23,.5)}
.member-message-conversation-head{padding:15px 17px 11px;border-bottom:1px solid rgba(23,23,23,.08)}
.member-message-conversation-head h3{margin:0;font-size:18px}
.member-message-conversation-head p{margin:4px 0 0;color:rgba(23,23,23,.58);font-size:13px}
.member-message-owner-tools{padding:12px 16px;border-bottom:1px solid rgba(23,23,23,.08);background:#faf9f6}
.member-message-owner-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.member-message-owner-tools label{display:grid;gap:5px;font-size:12px;font-weight:750}
.member-message-owner-tools select,.member-message-owner-tools input,.member-message-owner-tools textarea{width:100%;border:1px solid rgba(23,23,23,.13);border-radius:10px;background:#fff;padding:8px 9px}
.member-message-bubbles{flex:1;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:16px;background:linear-gradient(180deg,#fff,#fbfaf7)}
.member-message-bubble{max-width:min(76%,720px);padding:10px 12px;border-radius:15px;background:#f0efeb;align-self:flex-start;white-space:pre-wrap;overflow-wrap:anywhere}
.member-message-bubble.mine{background:#171717;color:#fff;align-self:flex-end}
.member-message-bubble small{display:block;margin-top:5px;font-size:11px;opacity:.62}
.member-message-quick{display:flex;gap:7px;padding:8px 14px 0;overflow-x:auto}
.member-message-quick button{border:1px solid rgba(23,23,23,.12);border-radius:999px;background:#fff;padding:7px 10px;white-space:nowrap;cursor:pointer}
.member-message-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:12px 14px 14px}
.member-message-composer textarea{resize:none;min-height:46px;max-height:130px;border:1px solid rgba(23,23,23,.14);border-radius:13px;padding:11px 12px}
.member-message-empty{padding:14px;color:rgba(23,23,23,.55)}
.member-search-new{background:#f47c20!important;color:#fff!important;border-color:#f47c20!important;box-shadow:none!important;background-image:none!important}

@media (min-width:1025px){
  .member-drawer[data-account-view="listings"],.member-drawer[data-account-view="messages"]{align-items:center!important;justify-content:center!important;padding:12px!important}
  .member-drawer[data-account-view="listings"] .member-drawer-card,.member-drawer[data-account-view="messages"] .member-drawer-card{width:calc(100vw - 24px)!important;max-width:none!important;height:calc(100vh - 24px)!important;max-height:none!important;border-radius:24px!important;padding:24px 28px!important;overflow:auto!important}
  .member-drawer[data-account-view="messages"] .member-drawer-card{overflow:hidden!important;display:flex!important;flex-direction:column!important}
  .member-drawer[data-account-view="messages"] .member-drawer-content{min-height:0!important;flex:1!important;overflow:hidden!important}
  .member-drawer[data-account-view="messages"] .member-account-view{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important}
  .member-drawer[data-account-view="messages"] .member-messaging-shell{flex:1!important;height:auto!important;min-height:0!important}
  .member-drawer[data-account-view="listings"] .owner-listing-owned-list{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(330px,1fr))!important;gap:14px!important}
  .member-drawer[data-account-view="listings"] .owner-listing-form{max-width:1220px!important;margin-inline:auto!important}
  .member-account-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:auto auto auto!important;align-items:stretch!important}
  .member-account-tabs button{width:100%!important;min-width:0!important;min-height:44px!important}
  .member-account-tabs button[data-account-view="account"]{grid-column:1!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="messages"]{grid-column:1!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="reviews"]{grid-column:2!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="listings"]{grid-column:3!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="searches"]{grid-column:4!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="activity"]{grid-column:1!important;grid-row:3!important}
}
@media (max-width:760px){
  .member-message-topbar{align-items:stretch;flex-direction:column}
  .member-message-filters{display:grid;grid-template-columns:1fr}
  .member-message-filters input[type="search"]{min-width:0;width:100%}
  .member-message-integration-grid,.member-message-owner-grid{grid-template-columns:1fr}
  .member-messaging-shell{grid-template-columns:1fr;height:auto;min-height:0}
  .member-message-thread-list{max-height:280px}
  .member-message-conversation{min-height:58vh}
  .member-message-bubble{max-width:88%}
  .member-message-composer{grid-template-columns:1fr}
}

/* v14 messaging class alignment */
.member-message-thread-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.member-message-unread{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#f47c20;color:#fff;font-size:12px;font-weight:850;flex:0 0 auto}
.member-message-preview,.member-message-meta{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.member-message-preview{margin-top:6px;font-size:13px;line-height:1.35;color:rgba(23,23,23,.62)}
.member-message-meta{margin-top:7px;font-size:11px;color:rgba(23,23,23,.48)}
.member-message-thread.active{background:#fff;box-shadow:0 5px 18px rgba(23,23,23,.06)}
@media (min-width:1025px){
  .member-drawer[data-account-view="messages"] #memberDrawerContent{min-height:0!important;flex:1!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
  .member-drawer[data-account-view="messages"] #memberDrawerContent>.member-account-tabs{flex:0 0 auto!important}
  .member-drawer[data-account-view="messages"] #memberDrawerContent>.member-account-view{flex:1!important;min-height:0!important}
}


/* V36 — messaging integrations live inside the Messages page */
.member-message-owner-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.member-message-connect-btn{background:#f47c20!important;background-image:none!important;border:1px solid #f47c20!important;color:#fff!important;box-shadow:none!important;text-shadow:none!important}
.member-message-connect-btn:hover{background:#df6e18!important;border-color:#df6e18!important;transform:none!important;box-shadow:none!important}
.member-message-connections-page[hidden]{display:none!important}
.member-message-connections-page{flex:1;min-height:0;overflow:auto;padding:clamp(18px,2.6vw,30px);border:1px solid rgba(23,23,23,.1);border-radius:20px;background:#fbfaf7;color:#171717}
.member-message-guide-kicker{display:inline-flex;margin:0 0 10px;padding:6px 10px;border-radius:999px;background:#fff0e5;color:#a94d0e;font-size:12px;font-weight:850;letter-spacing:.01em}
.member-message-connections-page h2{margin:0 0 10px;font-size:clamp(26px,3.3vw,38px);line-height:1.03;letter-spacing:-.035em}
.member-message-guide-intro{margin:0;max-width:760px;color:rgba(23,23,23,.67);font-size:15px;line-height:1.6}
.member-message-guide-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:20px 0 14px}
.member-message-guide-steps article{padding:17px;border:1px solid rgba(23,23,23,.09);border-radius:17px;background:#fff}
.member-message-guide-steps article>span{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:10px;background:#fff0e5;color:#c35c14;font-weight:900}
.member-message-guide-steps h3{margin:11px 0 6px;font-size:15px;line-height:1.25}
.member-message-guide-steps p{margin:0;color:rgba(23,23,23,.62);font-size:13px;line-height:1.5}
.member-message-guide-flow{margin:14px 0;padding:14px 16px;border-radius:14px;background:#171717;color:#fff;text-align:center;font-size:14px;font-weight:800;letter-spacing:.01em}
.member-message-guide-example{margin:14px 0 8px;padding:14px 16px;border-radius:14px;background:#f0efeb;line-height:1.55;font-size:13px}
.member-message-guide-safe{margin:10px 0 16px;color:rgba(23,23,23,.62);font-size:12px;line-height:1.5}
.member-message-connections-page .member-message-integrations{margin-top:18px;background:#fff}
.member-message-guide-actions{display:flex;align-items:center;gap:9px;justify-content:flex-start;margin-top:16px;flex-wrap:wrap}
@media(max-width:760px){
  .member-message-owner-actions{width:100%;justify-content:stretch}
  .member-message-owner-actions .btn{flex:1;min-width:0}
  .member-message-connections-page{padding:17px 14px;border-radius:17px}
  .member-message-guide-steps{grid-template-columns:1fr}
  .member-message-guide-actions{display:grid;grid-template-columns:1fr}
  .member-message-guide-actions .btn{width:100%}
}

/* === V21 — consistent full-screen account workspace on desktop === */
@media (min-width:1025px){
  .member-drawer[data-account-view]{
    align-items:center!important;
    justify-content:center!important;
    padding:12px!important;
  }
  .member-drawer[data-account-view] .member-drawer-card{
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    height:calc(100vh - 24px)!important;
    max-height:none!important;
    border-radius:24px!important;
    padding:24px 28px!important;
    overflow:auto!important;
  }
  .member-drawer[data-account-view] #memberDrawerContent{
    width:100%!important;
    max-width:none!important;
  }
  .member-drawer[data-account-view] .member-account-view{
    width:100%!important;
    max-width:none!important;
  }
  .member-drawer[data-account-view="reviews"] .member-owned-list,
  .member-drawer[data-account-view="searches"] .member-search-list,
  .member-drawer[data-account-view="activity"] .member-activity-list{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(310px,1fr))!important;
    gap:14px!important;
    align-items:start!important;
  }
  .member-drawer[data-account-view="messages"] .member-drawer-card{
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .member-drawer[data-account-view="messages"] #memberDrawerContent{
    min-height:0!important;
    flex:1!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .member-drawer[data-account-view="messages"] #memberDrawerContent>.member-account-tabs{
    flex:0 0 auto!important;
  }
  .member-drawer[data-account-view="messages"] #memberDrawerContent>.member-account-view{
    flex:1!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .member-drawer[data-account-view="messages"] .member-messaging-shell{
    flex:1!important;
    height:auto!important;
    min-height:0!important;
  }
}


/* === V22 — reliable desktop close control + owner portfolio map === */
@media (min-width:1025px){
  .member-drawer[data-account-view] .member-drawer-card{position:relative!important}
  .member-drawer[data-account-view] .member-panel-close{
    position:fixed!important;
    top:24px!important;
    right:28px!important;
    z-index:10040!important;
    pointer-events:auto!important;
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    margin:0!important;
  }
  .member-drawer[data-account-view] #memberDrawerTitle{padding-right:58px!important}
}
.owner-account-map-section{margin-top:28px;padding-top:22px;border-top:1px solid rgba(23,23,23,.12)}
.owner-account-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px}
.owner-account-map-head .eyebrow{margin:0 0 3px;color:rgba(23,23,23,.55);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.owner-account-map-head h3{margin:0;font-size:clamp(20px,2vw,28px);letter-spacing:-.025em}
.owner-account-map-head>span{font-size:12px;font-weight:800;color:rgba(23,23,23,.58)}
.owner-account-map-wrap{position:relative;min-height:390px;border:1px solid rgba(23,23,23,.12);border-radius:20px;overflow:hidden;background:#f2f1ed}
#ownerListingsAccountMap{width:100%;height:390px;min-height:390px}
.owner-account-map-empty{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:3;width:min(390px,calc(100% - 36px));padding:13px 16px;border:1px solid rgba(23,23,23,.10);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(23,23,23,.10);text-align:center;font-size:13px;font-weight:750;color:rgba(23,23,23,.62)}
.owner-account-map-marker{width:18px;height:18px;border:3px solid #fff;border-radius:999px;box-shadow:0 3px 10px rgba(0,0,0,.28);padding:0;cursor:pointer;background:#2f9e63}
.owner-account-map-marker.status-paused{background:#d89424}
.owner-account-map-marker.status-rented{background:#6c7480}
.owner-account-map-marker.status-removed{background:#b94a3a}
.owner-account-map-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;font-size:12px;font-weight:750;color:rgba(23,23,23,.62)}
.owner-account-map-legend span{display:inline-flex;align-items:center;gap:6px}
.owner-account-map-legend i{display:block;width:10px;height:10px;border-radius:999px;background:#2f9e63}
.owner-account-map-legend i.status-paused{background:#d89424}
.owner-account-map-legend i.status-rented{background:#6c7480}
@media (max-width:760px){
  .owner-account-map-head{align-items:flex-start;flex-direction:column;gap:5px}
  .owner-account-map-wrap,#ownerListingsAccountMap{height:300px;min-height:300px}
}


/* === V23 — map of places reviewed by the signed-in account === */
.member-review-places-section{margin-top:30px;padding-top:24px;border-top:1px solid rgba(23,23,23,.12)}
.member-review-places-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:14px}
.member-review-places-head>div{max-width:820px}
.member-review-places-head .eyebrow{margin:0 0 4px;color:rgba(23,23,23,.55);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.member-review-places-head h3{margin:0 0 7px;font-size:clamp(21px,2.2vw,30px);letter-spacing:-.03em}
.member-review-places-head p:not(.eyebrow){margin:0;color:rgba(23,23,23,.64);font-size:13px;line-height:1.55}
.member-review-places-head>span{flex:0 0 auto;padding:7px 10px;border:1px solid rgba(23,23,23,.10);border-radius:999px;background:#fff;font-size:12px;font-weight:850;color:rgba(23,23,23,.62)}
.member-review-places-layout{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);gap:18px;align-items:stretch}
.member-review-places-map-wrap{position:relative;min-height:560px;border:1px solid rgba(255,255,255,.82);border-radius:20px;overflow:hidden;background:#f2f1ed;box-shadow:0 0 0 8px rgba(255,255,255,.34),0 18px 42px rgba(35,38,44,.10),inset 0 1px 0 rgba(255,255,255,.94)}
#memberReviewPlacesMap{width:100%;height:560px;min-height:560px}
.member-review-places-empty{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:3;width:min(390px,calc(100% - 36px));padding:13px 16px;border:1px solid rgba(23,23,23,.10);border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(23,23,23,.10);text-align:center;font-size:13px;font-weight:750;color:rgba(23,23,23,.62)}
.member-review-place-marker{width:20px;height:20px;border:3px solid #fff;border-radius:999px;background:#e54528;box-shadow:0 3px 10px rgba(0,0,0,.28);padding:0;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.member-review-place-marker:hover,.member-review-place-marker.selected{transform:scale(1.22);box-shadow:0 0 0 4px rgba(229,69,40,.18),0 4px 14px rgba(0,0,0,.28)}
.member-review-place-details{min-height:560px;max-height:720px;overflow:auto;padding:18px;border:1px solid rgba(23,23,23,.12);border-radius:20px;background:#fff;scrollbar-gutter:stable}
.member-review-place-details-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid rgba(23,23,23,.09)}
.member-review-place-details-head .eyebrow{margin:0 0 3px;color:rgba(23,23,23,.50);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.member-review-place-details-head h3{margin:0;font-size:20px;line-height:1.2}
.member-review-place-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.member-review-place-summary span{padding:6px 9px;border-radius:999px;background:#f3f1ec;font-size:11px;font-weight:850;white-space:nowrap}
.member-review-place-sections{display:grid;gap:20px;padding-top:16px}
.member-review-place-sections section{display:grid;gap:9px}
.member-review-place-sections h4{margin:0;font-size:14px}
.member-review-place-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.member-review-place-section-head .btn{padding:7px 10px;font-size:11px}
.member-review-place-review,.member-review-place-listing{padding:13px;border:1px solid rgba(23,23,23,.10);border-radius:14px;background:#fbfaf7}
.member-review-place-review.mine{border-color:rgba(229,69,40,.24);background:rgba(229,69,40,.045)}
.member-review-place-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.member-review-place-badge{display:inline-flex;padding:4px 7px;border-radius:999px;background:#e54528;color:#fff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.member-review-place-review p{margin:7px 0;font-size:13px;line-height:1.45;white-space:pre-wrap}
.member-review-place-review small{color:rgba(23,23,23,.52);font-size:11px}
.member-review-place-unit{color:rgba(23,23,23,.58);font-size:11px!important;font-weight:750}
.member-review-place-muted{margin:0;padding:11px 12px;border-radius:12px;background:#f6f5f2;color:rgba(23,23,23,.58);font-size:12px;line-height:1.45}
.member-review-place-listing{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;align-items:center}
.member-review-place-listing>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.member-review-place-listing>div span{color:rgba(23,23,23,.58);font-size:11px}
.member-review-place-listing p{grid-column:1;margin:0;color:rgba(23,23,23,.62);font-size:12px}
.member-review-place-listing .btn{grid-column:2;grid-row:1 / span 2;padding:8px 10px;font-size:11px}
.member-review-place-placeholder{display:grid;min-height:260px;place-items:center;color:rgba(23,23,23,.55);text-align:center}
@media (max-width:1100px){.member-review-places-layout{grid-template-columns:1fr}.member-review-places-map-wrap,#memberReviewPlacesMap{height:400px;min-height:400px}.member-review-place-details{min-height:0;max-height:none}}
@media (max-width:760px){.member-review-places-head{flex-direction:column;gap:8px}.member-review-places-map-wrap,#memberReviewPlacesMap{height:310px;min-height:310px}.member-review-place-details{padding:14px}.member-review-place-details-head{flex-direction:column}.member-review-place-summary{justify-content:flex-start}.member-review-place-section-head{align-items:flex-start;flex-direction:column}.member-review-place-listing{grid-template-columns:1fr}.member-review-place-listing .btn{grid-column:1;grid-row:auto;justify-self:start}}

/* v25 — deterministic review selection in My Reviews */
.member-review-place-review.selected{border-color:rgba(229,69,40,.58);box-shadow:0 0 0 3px rgba(229,69,40,.10);background:rgba(229,69,40,.065)}
.member-review-place-review-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.member-review-place-review-actions .btn{padding:7px 9px;font-size:11px}
.member-review-locate{white-space:nowrap}

/* V30 — property follow */
.property-follow-inline{display:flex;justify-content:flex-start;margin-top:14px}.property-follow-inline-top{margin:0 0 16px}.member-review-place-follow{margin-top:10px}.member-activity-list article>p:first-of-type{margin-bottom:3px}

/* v34 — review edit / Cloudflare verification stays above account and mobile menus */
#reviewEditRequestModal{z-index:2147483000!important;isolation:isolate}
#reviewEditRequestModal.open{display:grid!important}
#reviewEditRequestModal .modal-card{position:relative;z-index:2!important}
#reviewEditRequestModal .captcha-block,#review-edit-turnstile{position:relative;z-index:4!important;overflow:visible!important}
#reviewEditRequestModal iframe{position:relative!important;z-index:5!important}


/* V37 — Connections entry is always visible in Messages; owner-only actions stay conditional. */
.member-message-topbar .member-message-connect-btn{display:inline-flex!important}


/* === V39 — desktop messaging connections page uses the full workspace === */
@media (min-width:1025px){
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-guide-open{
    flex:1!important;
    min-height:0!important;
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-topbar{
    display:none!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-connections-page{
    display:block!important;
    flex:1 1 auto!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:clamp(34px,4.2vw,64px) clamp(38px,5.2vw,82px)!important;
    overflow:auto!important;
    border-radius:22px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-kicker{
    margin-bottom:14px!important;
    padding:8px 13px!important;
    font-size:13px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-connections-page h2{
    max-width:1100px!important;
    margin-bottom:15px!important;
    font-size:clamp(38px,4.5vw,62px)!important;
    line-height:1!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-intro{
    max-width:980px!important;
    font-size:17px!important;
    line-height:1.65!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-steps{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
    margin:30px 0 20px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-steps article{
    min-height:190px!important;
    padding:25px!important;
    border-radius:20px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-steps article>span{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    font-size:18px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-steps h3{
    margin:16px 0 9px!important;
    font-size:18px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-steps p{
    font-size:14px!important;
    line-height:1.6!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-flow{
    margin:20px 0!important;
    padding:19px 22px!important;
    border-radius:17px!important;
    font-size:16px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-example{
    margin:18px 0 10px!important;
    padding:18px 20px!important;
    border-radius:17px!important;
    font-size:14px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-safe{
    margin:12px 0 22px!important;
    font-size:13px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-integrations{
    width:100%!important;
    max-width:none!important;
    margin:24px 0 0!important;
    padding:22px!important;
    border-radius:19px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-integrations>summary{
    font-size:17px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-integration-grid{
    gap:16px 20px!important;
    margin-top:18px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-integration-grid input,
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-integration-grid select,
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-integrations>form>input{
    min-height:46px!important;
    font-size:14px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-guide-open .member-message-guide-actions{
    margin-top:24px!important;
  }
}

/* V42 — desktop/tablet: align the Connections CTA with search + Unread */
@media (min-width:761px){
  .member-message-topbar{align-items:center!important}
  .member-message-owner-actions{align-self:center!important}
  .member-message-connect-btn{
    min-height:42px!important;
    height:42px!important;
    padding:8px 12px!important;
    border-radius:12px!important;
    font-size:13px!important;
    line-height:1!important;
    font-weight:760!important;
    align-self:center!important;
  }
}

/* V54 — Messages toolbar: remove inherited panel action top margin so Connect tools aligns with Search / Unread */
@media (min-width:761px){
  .member-message-topbar > .member-message-owner-actions{
    margin-top:0!important;
    align-self:center!important;
  }
}

/* V55 — owner listings: commercial / professional variants */
.owner-listing-commercial-section[hidden],
[data-listing-commercial][hidden],
[data-listing-residential][hidden]{display:none!important}
.owner-listing-commercial-section{
  padding:18px!important;
  border:1px solid rgba(47,158,99,.18)!important;
  border-radius:18px!important;
  background:rgba(47,158,99,.045)!important;
}
.owner-commercial-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:0 0 14px;
}
.owner-commercial-head h4{margin:0 0 5px;font-size:16px;line-height:1.25}
.owner-commercial-head p{margin:0;max-width:720px;color:rgba(23,23,23,.62);font-size:12.5px;line-height:1.48}
.owner-commercial-head>span{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 9px;
  border:1px solid rgba(47,158,99,.16);
  border-radius:10px;
  background:#fff;
  color:#287e52;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}
@media(max-width:760px){
  .owner-listing-commercial-section{padding:14px!important;border-radius:15px!important}
  .owner-commercial-head{display:block}
  .owner-commercial-head>span{margin-top:10px}
}

/* === 2026-08-26 v58 — favorites, listing engagement + public owner profile === */
@media (min-width:1025px){
  .member-account-tabs button[data-account-view="messages"]{grid-column:1!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="reviews"]{grid-column:2!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="favorites"]{grid-column:3!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="listings"]{grid-column:4!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="searches"]{grid-column:1!important;grid-row:3!important}
  .member-account-tabs button[data-account-view="activity"]{grid-column:2!important;grid-row:3!important}
}
@media (min-width:761px) and (max-width:1024px){
  .member-account-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .member-account-tabs button{min-width:0!important;width:100%!important}
}
.member-listing-engagement-mini{display:flex;align-items:center;gap:7px 12px;flex-wrap:wrap;margin-top:8px;color:rgba(23,23,23,.58);font-size:12px;line-height:1.35}
.member-listing-engagement-mini span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.member-favorite-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 16px}
.member-favorite-heading h3{margin:2px 0 0;font-size:clamp(22px,2.5vw,30px);line-height:1.08}
.member-favorite-heading>span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid rgba(23,23,23,.1);border-radius:12px;background:#fff;font-weight:850}
.member-favorite-list{display:grid;gap:12px}
.member-favorite-card{padding:15px 16px;border:1px solid rgba(23,23,23,.1);border-radius:17px;background:rgba(255,255,255,.78)}
.member-favorite-main{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-width:0}
.member-favorite-main>div:first-child{min-width:0}
.member-favorite-main strong{display:block;overflow-wrap:anywhere}
.member-favorite-main p{margin:5px 0 0;color:rgba(23,23,23,.61);font-size:13px;line-height:1.4}
.member-favorite-badge{display:inline-flex!important;width:max-content;margin:0 0 8px;padding:5px 8px;border-radius:9px;background:rgba(229,69,40,.08);color:#b93922;font-size:11px!important;font-weight:850}
.member-favorite-unavailable{display:inline-flex;align-items:center;min-height:40px;color:rgba(23,23,23,.48);font-size:12px}
.member-favorite-empty{display:grid;place-items:center;min-height:220px;padding:28px;text-align:center;border:1px dashed rgba(23,23,23,.14);border-radius:18px;color:rgba(23,23,23,.52)}
.member-favorite-empty span{font-size:38px;line-height:1}.member-favorite-empty p{margin:8px 0 0}
.owner-listing-engagement{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;margin:12px 0 0;padding:10px 12px;border:1px solid rgba(23,23,23,.09);border-radius:13px;background:rgba(255,255,255,.72);color:rgba(23,23,23,.64);font-size:12px;line-height:1.35}
.owner-listing-engagement>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.owner-listing-like{display:inline-flex;align-items:center;gap:4px;min-height:30px;margin:0;padding:4px 8px;border:1px solid rgba(229,69,40,.16);border-radius:9px;background:#fff;color:#b93c25;cursor:pointer;font:inherit}
.owner-listing-like em{font-style:normal;font-weight:750}.owner-listing-like.is-liked{background:rgba(229,69,40,.09);border-color:rgba(229,69,40,.24)}
.owner-public-profile{margin:14px 0 0;padding:14px 15px;border:1px solid rgba(23,23,23,.1);border-radius:16px;background:#fbfaf7}
.owner-public-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.owner-public-profile-head>div>span{display:block;margin-bottom:3px;color:rgba(23,23,23,.5);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.owner-public-profile-head strong{font-size:16px;line-height:1.25}
.owner-public-profile-activity{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid rgba(47,158,99,.16);border-radius:9px;background:rgba(47,158,99,.06);color:#287e52;font-size:11px;font-weight:800;white-space:nowrap}
.owner-public-profile-meta{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;margin-top:10px;color:rgba(23,23,23,.59);font-size:12px;line-height:1.4}
@media(max-width:760px){
  .member-favorite-main{display:block}
  .member-favorite-main .member-listing-engagement-mini{margin-top:10px}
  .member-favorite-card .member-panel-actions{flex-wrap:wrap}
  .owner-listing-engagement{gap:7px 10px}
  .owner-public-profile-head{display:block}
  .owner-public-profile-activity{margin-top:9px}
}


/* === V95 — Messages stay primary; owner tools are secondary and collapsed === */
.member-message-owner-tools{
  flex:0 0 auto;
  margin:0 14px 14px;
  padding:0;
  border:1px solid rgba(23,23,23,.10);
  border-radius:13px;
  background:#faf9f6;
  overflow:hidden;
}
.member-message-owner-tools>summary{
  min-height:42px;
  padding:10px 13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  list-style:none;
  cursor:pointer;
  font-size:13px;
  font-weight:850;
  color:rgba(23,23,23,.78);
  user-select:none;
}
.member-message-owner-tools>summary::-webkit-details-marker{display:none}
.member-message-owner-tools>summary::after{
  content:"⌄";
  font-size:17px;
  line-height:1;
  transition:transform .18s ease;
}
.member-message-owner-tools[open]>summary{
  border-bottom:1px solid rgba(23,23,23,.08);
}
.member-message-owner-tools[open]>summary::after{
  transform:rotate(180deg);
}
.member-message-owner-tools-body{
  padding:12px 14px 13px;
}
.member-message-owner-tools-body>.member-panel-actions{
  margin-top:10px;
}
.member-message-bubbles{
  min-height:120px;
}
/* The actual discussion always gets the flexible space before owner workflow controls. */
.member-message-conversation>.member-message-bubbles{
  flex:1 1 auto!important;
  min-height:0!important;
}
.member-message-conversation>.member-message-composer{
  flex:0 0 auto;
}
@media (min-width:761px){
  .member-message-owner-tools-body .member-message-owner-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  }
}
@media (max-width:760px){
  .member-message-owner-tools{
    margin:0 10px 10px;
  }
  .member-message-owner-tools-body{
    padding:10px 11px 12px;
  }
}


/* === V96 — Owner AI + visit calendar (FullCalendar Standard / MIT) === */
.member-owner-calendar-page{display:grid;gap:16px;min-height:0}
.member-owner-calendar-hero{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:16px;
  padding:18px;border:1px solid rgba(23,23,23,.09);border-radius:18px;background:#fbfaf7
}
.member-owner-calendar-hero h3{margin:0 0 7px;font-size:22px}
.member-owner-calendar-hero p{margin:0;color:rgba(23,23,23,.62);line-height:1.5}
.owner-ai-settings{display:grid;gap:10px}
.owner-ai-setting-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.owner-ai-settings label{display:grid;gap:5px;font-size:12px;font-weight:760}
.owner-ai-settings input,.owner-ai-settings select,.owner-ai-settings textarea,
.owner-calendar-toolbar input,.owner-calendar-toolbar select{
  width:100%;min-width:0;border:1px solid rgba(23,23,23,.14);border-radius:11px;background:#fff;
  padding:9px 10px;color:#171717;box-sizing:border-box
}
.owner-ai-settings textarea{resize:vertical;min-height:86px}
.owner-ai-enabled{
  display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important;
  padding:10px 12px;border:1px solid rgba(244,124,32,.22);border-radius:12px;background:#fff5ec
}
.owner-ai-enabled input{width:auto}
.owner-calendar-toolbar{
  display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,.55fr) auto;gap:10px;align-items:end;
  padding:13px 14px;border:1px solid rgba(23,23,23,.09);border-radius:16px;background:#fff
}
.owner-calendar-toolbar label{display:grid;gap:5px;font-size:12px;font-weight:760}
.owner-calendar-help{grid-column:1/-1;margin:0;color:rgba(23,23,23,.58);font-size:12px;line-height:1.45}
.owner-fullcalendar-wrap{
  padding:12px;border:1px solid rgba(23,23,23,.10);border-radius:18px;background:#fff;overflow:hidden
}
#ownerFullCalendar{min-height:580px}
#ownerFullCalendar .fc{font-size:13px}
#ownerFullCalendar .fc .fc-toolbar-title{font-size:19px}
#ownerFullCalendar .fc .fc-button{
  border:0!important;border-radius:9px!important;background:#171717!important;box-shadow:none!important
}
#ownerFullCalendar .fc .fc-button:disabled{opacity:.45}
#ownerFullCalendar .fc .fc-day-today{background:rgba(244,124,32,.055)!important}
#ownerFullCalendar .owner-calendar-availability{
  background:rgba(244,124,32,.14)!important;border:1px dashed rgba(197,91,17,.55)!important;color:#82400f!important
}
#ownerFullCalendar .owner-calendar-visit{
  background:#171717!important;border-color:#171717!important;color:#fff!important
}
#ownerFullCalendar .owner-calendar-visit-tentative{opacity:.72}
.owner-calendar-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:rgba(23,23,23,.64)}
.owner-calendar-legend span{display:inline-flex;align-items:center;gap:6px}
.owner-calendar-legend i{width:12px;height:12px;border-radius:4px;display:inline-block}
.owner-calendar-legend .available{background:rgba(244,124,32,.18);border:1px dashed rgba(197,91,17,.6)}
.owner-calendar-legend .visit{background:#171717}
.owner-calendar-visits,.owner-ai-drafts{
  padding:15px;border:1px solid rgba(23,23,23,.09);border-radius:16px;background:#fff
}
.owner-calendar-visits h4,.owner-ai-drafts h4{margin:0 0 10px}
.owner-calendar-visit-list,.owner-ai-draft-list{display:grid;gap:9px}
.owner-calendar-visit-card,.owner-ai-draft-card{
  padding:12px;border:1px solid rgba(23,23,23,.09);border-radius:13px;background:#fbfaf7
}
.owner-calendar-visit-card header,.owner-ai-draft-card header{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px
}
.owner-calendar-visit-card strong,.owner-ai-draft-card strong{display:block}
.owner-calendar-visit-card p,.owner-ai-draft-card p{margin:6px 0;color:rgba(23,23,23,.65);line-height:1.45}
.owner-calendar-visit-card small,.owner-ai-draft-card small{color:rgba(23,23,23,.48)}
.owner-ai-draft-body{
  margin:10px 0!important;padding:11px;border-radius:11px;background:#fff;white-space:pre-wrap;color:#171717!important
}
.owner-ai-badge{
  display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;
  background:#fff0e5;color:#a94d0e;font-size:11px;font-weight:850
}
.member-message-bubble small .owner-ai-message-label,
.owner-ai-message-label{font-weight:800}
@media (min-width:1025px){
  .member-account-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-flow:row!important}
  .member-account-tabs button{grid-column:auto!important;grid-row:auto!important}
  .member-drawer[data-account-view="calendar"] .member-drawer-card{
    width:calc(100vw - 24px)!important;max-width:none!important;height:calc(100vh - 24px)!important;max-height:none!important;
    border-radius:24px!important;padding:24px 28px!important;overflow:auto!important
  }
}
@media(max-width:900px){
  .member-owner-calendar-hero{grid-template-columns:1fr}
  .owner-calendar-toolbar{grid-template-columns:1fr 1fr}
  .owner-calendar-toolbar .btn{width:100%}
  .owner-ai-setting-row{grid-template-columns:1fr 1fr}
  #ownerFullCalendar{min-height:520px}
}
@media(max-width:620px){
  .owner-calendar-toolbar,.owner-ai-setting-row{grid-template-columns:1fr}
  .owner-fullcalendar-wrap{padding:6px}
  #ownerFullCalendar{min-height:500px}
  #ownerFullCalendar .fc .fc-toolbar{display:grid;gap:8px}
  #ownerFullCalendar .fc .fc-toolbar-chunk{display:flex;justify-content:center;flex-wrap:wrap}
  .owner-calendar-visit-card header,.owner-ai-draft-card header{display:block}
}

/* === V97 — compact account navigation + owner tools moved above messages === */
/* Keep the dialog title for screen readers, but remove the redundant visible heading. */
.member-drawer #memberDrawerTitle{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* The selected black tab already identifies the current section. The navigation is
   part of the content flow, so it naturally disappears when the user scrolls down. */
.member-drawer .member-account-tabs{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
  flex:0 0 auto!important;
  background:rgba(255,255,255,.72)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  margin-top:0!important;
  padding-right:58px!important;
}
.member-account-tabs button{
  grid-column:auto!important;
  grid-row:auto!important;
}

/* Desktop: Account is the first keyboard item but sits neatly at the upper right,
   in the same grid as the other sections rather than occupying a row by itself. */
@media (min-width:1025px){
  .member-account-tabs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,auto)!important;
  }
  .member-account-tabs button[data-account-view="messages"]{grid-column:1!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="calendar"]{grid-column:2!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="reviews"]{grid-column:3!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="account"]{grid-column:4!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="favorites"]{grid-column:1!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="listings"]{grid-column:2!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="searches"]{grid-column:3!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="activity"]{grid-column:4!important;grid-row:2!important}

  /* Messages used to keep the tabs permanently outside the scroll area. Let the
     drawer own the vertical scroll instead, while keeping the messaging workspace roomy. */
  .member-drawer[data-account-view="messages"] .member-drawer-card{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    display:block!important;
  }
  .member-drawer[data-account-view="messages"] #memberDrawerContent{
    min-height:0!important;
    overflow:visible!important;
    display:block!important;
  }
  .member-drawer[data-account-view="messages"] #memberDrawerContent>.member-account-view{
    display:block!important;
    height:auto!important;
    min-height:0!important;
  }
  .member-drawer[data-account-view="messages"] .member-messaging-shell{
    height:calc(100vh - 120px)!important;
    min-height:560px!important;
  }
}

/* Tablet: same principle, with Account at the top right of the first row. */
@media (min-width:761px) and (max-width:1024px){
  .member-account-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .member-account-tabs button[data-account-view="messages"]{grid-column:1!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="calendar"]{grid-column:2!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="account"]{grid-column:3!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="reviews"]{grid-column:1!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="favorites"]{grid-column:2!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="listings"]{grid-column:3!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="searches"]{grid-column:1!important;grid-row:3!important}
  .member-account-tabs button[data-account-view="activity"]{grid-column:2!important;grid-row:3!important}
}

/* iPhone: two compact columns. Account remains top-right and scrolls away with the page. */
@media (max-width:760px){
  .member-account-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding-right:52px!important}
  .member-account-tabs button[data-account-view="messages"]{grid-column:1!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="account"]{grid-column:2!important;grid-row:1!important}
  .member-account-tabs button[data-account-view="calendar"]{grid-column:1!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="reviews"]{grid-column:2!important;grid-row:2!important}
  .member-account-tabs button[data-account-view="favorites"]{grid-column:1!important;grid-row:3!important}
  .member-account-tabs button[data-account-view="listings"]{grid-column:2!important;grid-row:3!important}
  .member-account-tabs button[data-account-view="searches"]{grid-column:1!important;grid-row:4!important}
  .member-account-tabs button[data-account-view="activity"]{grid-column:2!important;grid-row:4!important}
}

/* Owner workflow controls now live in the conversation header, never beneath the composer. */
.member-message-conversation-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,340px);
  align-items:start;
  gap:12px 16px;
}
.member-message-conversation-title{min-width:0}
.member-message-conversation-head .member-message-owner-tools{
  width:100%;
  margin:0!important;
  align-self:start;
  border-color:rgba(23,23,23,.11);
  background:#faf9f6;
}
.member-message-conversation-head .member-message-owner-tools>summary{
  min-height:38px;
  padding:8px 11px;
  font-size:12px;
}
.member-message-conversation-head .member-message-owner-tools-body{
  padding:10px 11px 11px;
}

@media (max-width:760px){
  .member-message-conversation-head{
    grid-template-columns:1fr;
    gap:10px;
    padding:13px 13px 10px;
  }
  .member-message-conversation-head .member-message-owner-tools{
    width:100%;
  }
}


/* === Owner AI paid credits + explicit activation === */
.owner-ai-payment-notice{padding:12px 14px;border:1px solid rgba(229,69,40,.18);border-radius:14px;background:#fff0e5;color:#7a3512;font-weight:800;line-height:1.4}
.owner-ai-credit-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(23,23,23,.10);border-radius:16px;background:#fbfaf7;color:#171717;box-shadow:none}
.owner-ai-credit-bar>div{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}.owner-ai-credit-bar span{font-size:12px;font-weight:800;text-transform:none;letter-spacing:0;color:rgba(23,23,23,.58)}.owner-ai-credit-bar strong{font-size:22px;line-height:1;font-weight:900;letter-spacing:-.02em;color:#171717}
.owner-ai-topup-btn{flex:0 0 auto;border:1px solid rgba(23,23,23,.13)!important;background:#fff!important;color:#171717!important;box-shadow:none!important;white-space:nowrap;min-height:42px}
.owner-ai-topup-btn:hover{background:#f3f1ec!important;border-color:rgba(23,23,23,.20)!important}
.owner-ai-activation{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid rgba(23,23,23,.10);border-radius:18px;background:#fff}.owner-ai-activation>div{min-width:0}.owner-ai-activation strong{display:flex;align-items:center;gap:9px;font-size:16px}.owner-ai-activation strong i{width:10px;height:10px;border-radius:50%;background:#a8a8a8;box-shadow:0 0 0 4px rgba(23,23,23,.06)}.owner-ai-activation.is-active strong i{background:#2b9a61;box-shadow:0 0 0 4px rgba(43,154,97,.13)}.owner-ai-activation p{margin:7px 0 0;color:rgba(23,23,23,.62);font-size:13px;line-height:1.5}.owner-ai-activation small{display:block;margin-top:7px;color:#a94d0e;font-weight:800}
@media(max-width:700px){.owner-ai-credit-bar,.owner-ai-activation{align-items:stretch;flex-direction:column}.owner-ai-credit-bar .btn,.owner-ai-activation .btn{width:100%}.owner-ai-credit-bar{padding:13px 14px}.owner-ai-credit-bar>div{justify-content:space-between;align-items:center}.owner-ai-credit-bar strong{font-size:22px}}


/* === V98 — Google Calendar-like owner availability agenda === */
.owner-availability-agenda{
  display:grid;gap:12px;padding:18px;border:1px solid rgba(23,23,23,.09);border-radius:22px;background:#fff
}
.owner-availability-agenda-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:18px;align-items:end}
.owner-availability-agenda-head h3{margin:8px 0 6px;font-size:clamp(22px,2vw,30px);letter-spacing:-.025em}
.owner-availability-agenda-head p{margin:0;max-width:760px;color:rgba(23,23,23,.62);line-height:1.5}
.owner-calendar-listing-filter{display:grid;gap:6px;font-size:12px;font-weight:800}
.owner-calendar-listing-filter select{width:100%;min-width:0;border:1px solid rgba(23,23,23,.14);border-radius:12px;background:#fff;padding:11px 12px;color:#171717;box-sizing:border-box}
.owner-availability-agenda .owner-calendar-help{grid-column:auto;padding:10px 12px;border-radius:12px;background:#fbfaf7}
.owner-availability-agenda .owner-fullcalendar-wrap{padding:0;border:1px solid rgba(23,23,23,.09);border-radius:18px;overflow:hidden}
.owner-availability-agenda #ownerFullCalendar{min-height:690px}
#ownerFullCalendar .fc-theme-standard td,#ownerFullCalendar .fc-theme-standard th{border-color:rgba(23,23,23,.075)}
#ownerFullCalendar .fc-scrollgrid{border:0}
#ownerFullCalendar .fc .fc-col-header-cell{background:#fbfaf7}
#ownerFullCalendar .fc .fc-col-header-cell-cushion{padding:11px 6px;font-weight:850;color:#171717;text-decoration:none}
#ownerFullCalendar .fc .fc-timegrid-slot{height:1.75em}
#ownerFullCalendar .fc .fc-timegrid-slot-label-cushion{font-size:11px;color:rgba(23,23,23,.48)}
#ownerFullCalendar .fc .fc-timegrid-now-indicator-line{border-width:2px 0 0}
#ownerFullCalendar .fc .fc-timegrid-now-indicator-arrow{border-width:5px 0 5px 6px}
#ownerFullCalendar .fc .fc-highlight{background:rgba(244,124,32,.12)}
#ownerFullCalendar .owner-calendar-availability{border-radius:7px!important}
#ownerFullCalendar .owner-calendar-visit{border-radius:7px!important}
.owner-ai-settings-panel{border:1px solid rgba(23,23,23,.09);border-radius:18px;background:#fff;overflow:hidden}
.owner-ai-settings-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;cursor:pointer;font-weight:850;list-style:none}
.owner-ai-settings-panel>summary::-webkit-details-marker{display:none}
.owner-ai-settings-panel>summary:after{content:'+';display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#f4f1eb;font-size:20px;line-height:1}
.owner-ai-settings-panel[open]>summary:after{content:'–'}
.owner-ai-settings-panel>summary span{display:block}
.owner-ai-settings-panel>summary small{margin-left:auto;color:rgba(23,23,23,.48);font-weight:600}
.owner-ai-settings-panel .member-owner-calendar-hero{border:0;border-top:1px solid rgba(23,23,23,.08);border-radius:0;background:#fbfaf7}
@media(max-width:900px){
  .owner-availability-agenda-head{grid-template-columns:1fr}
  .owner-availability-agenda #ownerFullCalendar{min-height:620px}
}
@media(max-width:620px){
  .owner-availability-agenda{padding:12px;border-radius:18px}
  .owner-availability-agenda #ownerFullCalendar{min-height:650px}
  .owner-ai-settings-panel>summary{align-items:flex-start}.owner-ai-settings-panel>summary small{display:none}
  #ownerFullCalendar .fc .fc-toolbar-title{font-size:17px}
}


/* === V99 — Calendar sizing fix + availability-first optimization === */
.member-owner-calendar-page,.member-owner-calendar-page>*{min-width:0}
.owner-availability-agenda{min-width:0;overflow:visible}
.owner-availability-agenda .owner-fullcalendar-wrap{width:100%;min-width:0;box-sizing:border-box;overflow:visible}
#ownerFullCalendar{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
#ownerFullCalendar>.fc,#ownerFullCalendar .fc-view-harness,#ownerFullCalendar .fc-view-harness-active{width:100%;min-width:0;max-width:100%}
#ownerFullCalendar .fc-scrollgrid{width:100%!important;table-layout:fixed}
.owner-availability-optimization-note{display:flex;align-items:flex-start;gap:11px;padding:13px 15px;border:1px solid rgba(23,23,23,.09);border-radius:15px;background:#fbfaf7;color:#171717}
.owner-availability-optimization-note>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#f0eee8;font-weight:900}
.owner-availability-optimization-note strong{display:block;font-size:13px}
.owner-availability-optimization-note p{margin:4px 0 0;color:rgba(23,23,23,.58);font-size:12px;line-height:1.45}
@media(max-width:620px){
  .owner-availability-agenda .owner-fullcalendar-wrap{overflow-x:hidden}
  #ownerFullCalendar .fc .fc-toolbar{width:100%}
  #ownerFullCalendar .fc .fc-toolbar-chunk{min-width:0}
  #ownerFullCalendar .fc .fc-button{font-size:12px!important;padding:.45em .65em!important}
  .owner-availability-optimization-note{padding:12px}
}


/* === V100 — calendar export is secondary and stays at the bottom === */
.owner-calendar-export-panel{margin-top:2px;border:1px solid rgba(23,23,23,.09);border-radius:16px;background:#fff;overflow:hidden}
.owner-calendar-export-panel>summary{display:flex;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;list-style:none;font-size:13px;font-weight:850;color:#171717}
.owner-calendar-export-panel>summary::-webkit-details-marker{display:none}
.owner-calendar-export-panel>summary small{margin-left:auto;max-width:720px;color:rgba(23,23,23,.48);font-size:11px;font-weight:600;line-height:1.4;text-align:right}
.owner-calendar-export-panel>summary:after{content:'+';display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:#f4f1eb;font-size:18px;line-height:1}
.owner-calendar-export-panel[open]>summary:after{content:'–'}
.owner-calendar-export-body{padding:0 15px 15px;border-top:1px solid rgba(23,23,23,.07)}
.owner-calendar-export-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:10px;align-items:end;padding-top:13px}
.owner-calendar-export-grid label{display:grid;gap:6px;min-width:0}
.owner-calendar-export-grid label>span{font-size:11px;font-weight:800;color:rgba(23,23,23,.62)}
.owner-calendar-export-grid select{width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid rgba(23,23,23,.13);border-radius:11px;background:#fff;color:#171717;font:inherit;box-sizing:border-box}
.owner-calendar-export-grid .btn{min-height:42px;white-space:nowrap}
@media(max-width:760px){.owner-calendar-export-panel>summary{align-items:flex-start}.owner-calendar-export-panel>summary small{display:none}.owner-calendar-export-grid{grid-template-columns:1fr}.owner-calendar-export-grid .btn{width:100%}}


/* === V101 — native agenda fallback + credit glass card below optimization === */
.owner-ai-credit-glass{
  margin-top:0;
  padding:15px 18px;
  border:1px solid rgba(255,255,255,.86)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.62)!important;
  -webkit-backdrop-filter:blur(18px) saturate(135%);
  backdrop-filter:blur(18px) saturate(135%);
  box-shadow:0 16px 42px rgba(23,23,23,.065),0 0 0 1px rgba(23,23,23,.055),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.owner-ai-credit-balance{display:flex!important;align-items:baseline!important;gap:10px!important;min-width:0;flex-wrap:wrap}
.owner-ai-credit-balance span{font-size:12px!important;font-weight:800!important;color:rgba(23,23,23,.52)!important;letter-spacing:0!important;text-transform:none!important}
.owner-ai-credit-balance strong{font-size:24px!important;line-height:1!important;font-weight:900!important;color:#171717!important}
.owner-ai-topup-btn{
  border:1.5px solid #e54528!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.56)!important;
  color:#b93420!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.owner-ai-topup-btn:hover{border-color:#e54528!important;background:rgba(229,69,40,.07)!important;color:#a52f1d!important}
.owner-ai-payment-notice{margin-bottom:8px}

/* Do not depend on FullCalendar for the owner agenda. This internal week/day grid
   remains visible even if a third-party calendar bundle is blocked or loads late. */
.owner-availability-agenda .owner-fullcalendar-wrap{overflow:hidden!important;background:rgba(255,255,255,.68)!important}
#ownerFullCalendar{min-height:0!important;width:100%;display:block}
.owner-native-calendar{width:100%;min-width:0;background:#fff;color:#171717}
.owner-native-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(23,23,23,.08);background:rgba(251,250,247,.92)}
.owner-native-nav{display:flex;align-items:center;gap:6px}
.owner-native-nav button{appearance:none;min-width:36px;min-height:36px;padding:6px 10px;border:1px solid rgba(23,23,23,.10);border-radius:10px;background:#fff;color:#171717;font:inherit;font-weight:800;cursor:pointer}
.owner-native-nav button:hover{background:#f5f3ee}
.owner-native-title{min-width:0;text-align:center;font-size:17px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.owner-native-mode{justify-self:end;padding:6px 9px;border-radius:999px;background:#f4f1eb;color:rgba(23,23,23,.62);font-size:11px;font-weight:800}
.owner-native-scroll{position:relative;max-height:720px;overflow:auto;overscroll-behavior:contain;background:#fff;outline:none}
.owner-native-header{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:64px repeat(var(--owner-day-count),minmax(118px,1fr));min-width:max(100%,calc(64px + var(--owner-day-count)*118px));border-bottom:1px solid rgba(23,23,23,.09);background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.owner-native-day-head{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-left:1px solid rgba(23,23,23,.07);font-size:12px;color:rgba(23,23,23,.58)}
.owner-native-day-head strong{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:14px;color:#171717}
.owner-native-day-head.is-today strong{background:#171717;color:#fff}
.owner-native-body{display:grid;grid-template-columns:64px repeat(var(--owner-day-count),minmax(118px,1fr));min-width:max(100%,calc(64px + var(--owner-day-count)*118px));align-items:start}
.owner-native-time-axis{position:sticky;left:0;z-index:6;height:1088px;display:grid;grid-template-rows:repeat(17,64px);border-right:1px solid rgba(23,23,23,.12);background:#fbfaf7;box-shadow:7px 0 14px rgba(23,23,23,.035)}
.owner-native-time-axis span{position:static;transform:none;display:flex;align-items:flex-start;justify-content:flex-end;min-width:0;padding:7px 10px 0 4px;box-sizing:border-box;text-align:right;color:rgba(23,23,23,.70);font-size:11px;font-weight:750;line-height:1;white-space:nowrap}
.owner-native-day-column{position:relative;height:1088px;border-right:1px solid rgba(23,23,23,.075);background:repeating-linear-gradient(to bottom,transparent 0,transparent 15px,rgba(23,23,23,.055) 15px,rgba(23,23,23,.055) 16px),repeating-linear-gradient(to bottom,transparent 0,transparent 63px,rgba(23,23,23,.09) 63px,rgba(23,23,23,.09) 64px)}
.owner-native-slot{display:block;width:100%;height:16px;margin:0;padding:0;border:0;background:transparent;cursor:crosshair;position:relative;z-index:1}
.owner-native-slot:not(:disabled):hover{background:rgba(229,69,40,.055)}
.owner-native-slot.is-past{cursor:not-allowed;background:rgba(23,23,23,.012)}
.owner-native-event{position:absolute;left:4px;right:4px;z-index:4;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;min-height:24px;padding:4px 6px;border-radius:7px;overflow:hidden;text-align:left;font:inherit;cursor:pointer;box-sizing:border-box}
.owner-native-event strong{font-size:10px;line-height:1.1;white-space:nowrap}
.owner-native-event span{display:block;max-width:100%;font-size:10px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.owner-native-event.is-availability{border:1px dashed rgba(197,91,17,.62);background:rgba(244,124,32,.17);color:#7a3b0e}
.owner-native-event.is-visit{border:1px solid #171717;background:#171717;color:#fff}
.owner-native-event.is-tentative{opacity:.72}
.owner-native-drag-preview{position:absolute;left:3px;right:3px;z-index:3;border:1px solid rgba(229,69,40,.48);border-radius:6px;background:rgba(229,69,40,.12);pointer-events:none}
.owner-native-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;border-top:1px solid rgba(23,23,23,.07);background:#fbfaf7}
.owner-native-mobile-help{margin:0;padding:9px 12px;border-top:0;color:rgba(23,23,23,.50);font-size:11px;line-height:1.4;background:transparent}
.owner-native-save-status{flex:0 0 auto;min-width:0;padding:7px 12px;color:#267a50;font-size:11px;font-weight:800;opacity:0;transform:translateY(2px);transition:opacity .16s ease,transform .16s ease}
.owner-native-save-status.show{opacity:1;transform:translateY(0)}
.owner-native-calendar.is-selecting,.owner-native-calendar.is-selecting *{user-select:none}
@media(max-width:760px){
  .owner-ai-credit-glass{align-items:stretch!important;flex-direction:column!important;padding:14px!important}
  .owner-ai-credit-glass .owner-ai-topup-btn{width:100%}
  .owner-native-toolbar{grid-template-columns:1fr auto;padding:10px;gap:8px}
  .owner-native-title{grid-column:1/-1;grid-row:1;text-align:left;font-size:16px}
  .owner-native-nav{grid-column:1;grid-row:2}
  .owner-native-mode{grid-column:2;grid-row:2}
  .owner-native-scroll{max-height:650px}
  .owner-native-header,.owner-native-body{grid-template-columns:54px repeat(var(--owner-day-count),minmax(230px,1fr));min-width:100%}
  .owner-native-time-axis{height:1088px}
}


/* === V102 — native owner calendar grid: explicit columns, no CSS-variable repeat() === */
.owner-native-header,
.owner-native-body{
  grid-template-columns:64px repeat(7,minmax(0,1fr));
  min-width:100%;
}
.owner-native-calendar[data-day-count="1"] .owner-native-header,
.owner-native-calendar[data-day-count="1"] .owner-native-body{
  grid-template-columns:54px minmax(0,1fr);
}
.owner-native-axis-corner{
  position:sticky;
  left:0;
  z-index:10;
  min-width:0;
  border-right:1px solid rgba(23,23,23,.12);
  background:rgba(251,250,247,.98);
  box-shadow:7px 0 14px rgba(23,23,23,.035);
}
.owner-native-day-head,
.owner-native-day-column{
  min-width:0;
}
.owner-native-day-head{
  flex-direction:column;
  gap:2px;
}
.owner-native-scroll{
  width:100%;
  min-width:0;
}
@media(min-width:621px){
  .owner-native-header,
  .owner-native-body{overflow:visible}
}


/* === V99 — Compact account language preference === */
.member-language-editor[hidden]{display:none!important}
.member-language-editor{
  width:min(720px,100%);
  margin:18px 0 12px!important;
  padding:16px 18px!important;
  border:1px solid rgba(23,23,23,.11)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.66)!important;
  box-shadow:0 12px 34px rgba(23,23,23,.06)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.member-language-editor form{display:grid;gap:10px!important}
.member-language-editor select{width:100%;min-height:46px}
.member-language-editor .btn{justify-self:start;width:auto!important;min-width:180px}
.member-account-bottom-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin:18px 0 14px;
}
.member-account-bottom-actions .btn{margin:0!important}
.member-language-compact-status{min-height:0;margin-left:4px}
@media(max-width:620px){
  .member-language-editor{width:100%;padding:14px!important}
  .member-language-editor .btn{width:100%!important;justify-self:stretch}
  .member-account-bottom-actions{display:grid;grid-template-columns:1fr;align-items:stretch}
  .member-account-bottom-actions .btn{width:100%!important;justify-content:center}
  .member-language-compact-status{margin-left:0}
}

@media(max-width:620px){
  .owner-native-footer{align-items:flex-start;flex-direction:column;gap:0}
  .owner-native-save-status{padding-top:0}
}

/* === V9 — connected calendar subscriptions === */
.owner-calendar-connect-panel{
  overflow:hidden;border:1px solid rgba(23,23,23,.10);border-radius:22px;
  background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(248,247,243,.68));
  box-shadow:0 14px 35px rgba(23,23,23,.06),inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
}
.owner-calendar-connect-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding:15px 18px;cursor:pointer;list-style:none}
.owner-calendar-connect-panel>summary::-webkit-details-marker{display:none}
.owner-calendar-connect-panel>summary span{font-weight:900;font-size:16px}
.owner-calendar-connect-panel>summary small{max-width:760px;color:rgba(23,23,23,.56);font-size:12px;line-height:1.45;text-align:right}
.owner-calendar-connect-panel[open]>summary{border-bottom:1px solid rgba(23,23,23,.08)}
.owner-calendar-connect-body{padding:16px 18px 18px}
.owner-calendar-connect-loading,.owner-calendar-connect-empty p{margin:0;color:rgba(23,23,23,.58)}
.owner-calendar-connect-empty{display:flex;align-items:center;justify-content:space-between;gap:18px}
.owner-calendar-connect-primary{flex:0 0 auto;border-color:rgba(244,124,32,.78)!important}
.owner-calendar-connect-settings{display:flex;justify-content:flex-end;margin-bottom:14px}
.owner-calendar-connect-settings label{display:grid;gap:6px;min-width:min(360px,100%);font-size:12px;font-weight:850}
.owner-calendar-connect-settings select{min-height:44px;border:1px solid rgba(23,23,23,.12);border-radius:13px;background:rgba(255,255,255,.8);padding:0 12px;font:inherit}
.owner-calendar-connect-apps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.owner-calendar-connect-apps .btn{min-height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;text-align:left;border-radius:16px!important}
.owner-calendar-connect-apps strong{font-size:14px}
.owner-calendar-connect-apps small{font-size:11px;color:rgba(23,23,23,.55);font-weight:700}
.owner-calendar-connect-google-help{margin:12px 0 0;color:rgba(23,23,23,.53);font-size:12px;line-height:1.45}
.owner-calendar-connect-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(23,23,23,.08)}
.owner-calendar-connect-footer>small{max-width:760px;color:rgba(23,23,23,.50);line-height:1.45}
.owner-calendar-connect-footer .member-panel-actions{flex:0 0 auto;margin:0}
@media(max-width:900px){.owner-calendar-connect-apps{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-calendar-connect-panel>summary{align-items:flex-start;flex-direction:column;gap:5px}.owner-calendar-connect-panel>summary small{text-align:left}.owner-calendar-connect-footer,.owner-calendar-connect-empty{align-items:stretch;flex-direction:column}.owner-calendar-connect-footer .member-panel-actions{width:100%}}
@media(max-width:520px){.owner-calendar-connect-apps{grid-template-columns:1fr}.owner-calendar-connect-body{padding:13px}.owner-calendar-connect-settings{justify-content:stretch}.owner-calendar-connect-settings label{width:100%}.owner-calendar-connect-footer .member-panel-actions{display:grid;grid-template-columns:1fr 1fr}.owner-calendar-connect-footer .btn{width:100%}}


/* === V10 — CSP-safe calendar event positioning ===
   The site CSP blocks inline style attributes, so availability/visit blocks must
   be positioned with stylesheet classes rather than style="top/height". */
.owner-native-day-column{position:relative}
.owner-native-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  display:grid;
  grid-template-rows:repeat(68,16px);
  grid-template-columns:minmax(0,1fr);
  pointer-events:none;
  overflow:hidden;
}
.owner-native-event{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:1px 4px;
  align-self:stretch;
  justify-self:stretch;
  z-index:2;
  pointer-events:auto;
}
.owner-native-drag-preview{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  height:auto!important;
  min-height:0;
  margin:0 3px;
  align-self:stretch;
  justify-self:stretch;
  z-index:3;
  pointer-events:none;
}
.owner-native-calendar.is-selecting .owner-native-event{pointer-events:none}
.owner-native-start-0{grid-row-start:1}
.owner-native-start-1{grid-row-start:2}
.owner-native-start-2{grid-row-start:3}
.owner-native-start-3{grid-row-start:4}
.owner-native-start-4{grid-row-start:5}
.owner-native-start-5{grid-row-start:6}
.owner-native-start-6{grid-row-start:7}
.owner-native-start-7{grid-row-start:8}
.owner-native-start-8{grid-row-start:9}
.owner-native-start-9{grid-row-start:10}
.owner-native-start-10{grid-row-start:11}
.owner-native-start-11{grid-row-start:12}
.owner-native-start-12{grid-row-start:13}
.owner-native-start-13{grid-row-start:14}
.owner-native-start-14{grid-row-start:15}
.owner-native-start-15{grid-row-start:16}
.owner-native-start-16{grid-row-start:17}
.owner-native-start-17{grid-row-start:18}
.owner-native-start-18{grid-row-start:19}
.owner-native-start-19{grid-row-start:20}
.owner-native-start-20{grid-row-start:21}
.owner-native-start-21{grid-row-start:22}
.owner-native-start-22{grid-row-start:23}
.owner-native-start-23{grid-row-start:24}
.owner-native-start-24{grid-row-start:25}
.owner-native-start-25{grid-row-start:26}
.owner-native-start-26{grid-row-start:27}
.owner-native-start-27{grid-row-start:28}
.owner-native-start-28{grid-row-start:29}
.owner-native-start-29{grid-row-start:30}
.owner-native-start-30{grid-row-start:31}
.owner-native-start-31{grid-row-start:32}
.owner-native-start-32{grid-row-start:33}
.owner-native-start-33{grid-row-start:34}
.owner-native-start-34{grid-row-start:35}
.owner-native-start-35{grid-row-start:36}
.owner-native-start-36{grid-row-start:37}
.owner-native-start-37{grid-row-start:38}
.owner-native-start-38{grid-row-start:39}
.owner-native-start-39{grid-row-start:40}
.owner-native-start-40{grid-row-start:41}
.owner-native-start-41{grid-row-start:42}
.owner-native-start-42{grid-row-start:43}
.owner-native-start-43{grid-row-start:44}
.owner-native-start-44{grid-row-start:45}
.owner-native-start-45{grid-row-start:46}
.owner-native-start-46{grid-row-start:47}
.owner-native-start-47{grid-row-start:48}
.owner-native-start-48{grid-row-start:49}
.owner-native-start-49{grid-row-start:50}
.owner-native-start-50{grid-row-start:51}
.owner-native-start-51{grid-row-start:52}
.owner-native-start-52{grid-row-start:53}
.owner-native-start-53{grid-row-start:54}
.owner-native-start-54{grid-row-start:55}
.owner-native-start-55{grid-row-start:56}
.owner-native-start-56{grid-row-start:57}
.owner-native-start-57{grid-row-start:58}
.owner-native-start-58{grid-row-start:59}
.owner-native-start-59{grid-row-start:60}
.owner-native-start-60{grid-row-start:61}
.owner-native-start-61{grid-row-start:62}
.owner-native-start-62{grid-row-start:63}
.owner-native-start-63{grid-row-start:64}
.owner-native-start-64{grid-row-start:65}
.owner-native-start-65{grid-row-start:66}
.owner-native-start-66{grid-row-start:67}
.owner-native-start-67{grid-row-start:68}
.owner-native-span-1{grid-row-end:span 1}
.owner-native-span-2{grid-row-end:span 2}
.owner-native-span-3{grid-row-end:span 3}
.owner-native-span-4{grid-row-end:span 4}
.owner-native-span-5{grid-row-end:span 5}
.owner-native-span-6{grid-row-end:span 6}
.owner-native-span-7{grid-row-end:span 7}
.owner-native-span-8{grid-row-end:span 8}
.owner-native-span-9{grid-row-end:span 9}
.owner-native-span-10{grid-row-end:span 10}
.owner-native-span-11{grid-row-end:span 11}
.owner-native-span-12{grid-row-end:span 12}
.owner-native-span-13{grid-row-end:span 13}
.owner-native-span-14{grid-row-end:span 14}
.owner-native-span-15{grid-row-end:span 15}
.owner-native-span-16{grid-row-end:span 16}
.owner-native-span-17{grid-row-end:span 17}
.owner-native-span-18{grid-row-end:span 18}
.owner-native-span-19{grid-row-end:span 19}
.owner-native-span-20{grid-row-end:span 20}
.owner-native-span-21{grid-row-end:span 21}
.owner-native-span-22{grid-row-end:span 22}
.owner-native-span-23{grid-row-end:span 23}
.owner-native-span-24{grid-row-end:span 24}
.owner-native-span-25{grid-row-end:span 25}
.owner-native-span-26{grid-row-end:span 26}
.owner-native-span-27{grid-row-end:span 27}
.owner-native-span-28{grid-row-end:span 28}
.owner-native-span-29{grid-row-end:span 29}
.owner-native-span-30{grid-row-end:span 30}
.owner-native-span-31{grid-row-end:span 31}
.owner-native-span-32{grid-row-end:span 32}
.owner-native-span-33{grid-row-end:span 33}
.owner-native-span-34{grid-row-end:span 34}
.owner-native-span-35{grid-row-end:span 35}
.owner-native-span-36{grid-row-end:span 36}
.owner-native-span-37{grid-row-end:span 37}
.owner-native-span-38{grid-row-end:span 38}
.owner-native-span-39{grid-row-end:span 39}
.owner-native-span-40{grid-row-end:span 40}
.owner-native-span-41{grid-row-end:span 41}
.owner-native-span-42{grid-row-end:span 42}
.owner-native-span-43{grid-row-end:span 43}
.owner-native-span-44{grid-row-end:span 44}
.owner-native-span-45{grid-row-end:span 45}
.owner-native-span-46{grid-row-end:span 46}
.owner-native-span-47{grid-row-end:span 47}
.owner-native-span-48{grid-row-end:span 48}
.owner-native-span-49{grid-row-end:span 49}
.owner-native-span-50{grid-row-end:span 50}
.owner-native-span-51{grid-row-end:span 51}
.owner-native-span-52{grid-row-end:span 52}
.owner-native-span-53{grid-row-end:span 53}
.owner-native-span-54{grid-row-end:span 54}
.owner-native-span-55{grid-row-end:span 55}
.owner-native-span-56{grid-row-end:span 56}
.owner-native-span-57{grid-row-end:span 57}
.owner-native-span-58{grid-row-end:span 58}
.owner-native-span-59{grid-row-end:span 59}
.owner-native-span-60{grid-row-end:span 60}
.owner-native-span-61{grid-row-end:span 61}
.owner-native-span-62{grid-row-end:span 62}
.owner-native-span-63{grid-row-end:span 63}
.owner-native-span-64{grid-row-end:span 64}
.owner-native-span-65{grid-row-end:span 65}
.owner-native-span-66{grid-row-end:span 66}
.owner-native-span-67{grid-row-end:span 67}
.owner-native-span-68{grid-row-end:span 68}

/* === V11 — visible availability lanes + separate cancellation list === */
.owner-native-event.is-availability{
  justify-self:start!important;
  margin-left:4px!important;
  margin-right:0!important;
  box-sizing:border-box!important;
  transition:filter .14s ease,box-shadow .14s ease,transform .14s ease;
}
.owner-native-event.is-availability:hover{filter:saturate(1.08);box-shadow:0 3px 12px rgba(122,59,14,.15)}
.owner-native-event.is-availability.owner-native-lanes-1{width:calc(100% - 8px)!important}
.owner-native-event.is-availability.owner-native-lanes-2{width:calc(50% - 6px)!important}
.owner-native-event.is-availability.owner-native-lanes-3{width:calc(33.333333% - 5px)!important}
.owner-native-event.is-availability.owner-native-lanes-4{width:calc(25% - 5px)!important}
.owner-native-event.is-availability.owner-native-lanes-5{width:calc(20% - 5px)!important}
.owner-native-event.is-availability.owner-native-lanes-6{width:calc(16.666667% - 5px)!important}
.owner-native-event.is-availability.owner-native-lanes-7{width:calc(14.285714% - 5px)!important}
.owner-native-event.is-availability.owner-native-lanes-8{width:calc(12.5% - 5px)!important}
.owner-native-event.is-availability.owner-native-lane-0{transform:translateX(0)!important}
.owner-native-event.is-availability.owner-native-lane-1{transform:translateX(100%)!important}
.owner-native-event.is-availability.owner-native-lane-2{transform:translateX(200%)!important}
.owner-native-event.is-availability.owner-native-lane-3{transform:translateX(300%)!important}
.owner-native-event.is-availability.owner-native-lane-4{transform:translateX(400%)!important}
.owner-native-event.is-availability.owner-native-lane-5{transform:translateX(500%)!important}
.owner-native-event.is-availability.owner-native-lane-6{transform:translateX(600%)!important}
.owner-native-event.is-availability.owner-native-lane-7{transform:translateX(700%)!important}
.owner-native-event.is-visit{justify-self:stretch!important;width:auto!important;transform:none!important;z-index:5!important}

.owner-availability-blocks{
  margin-top:16px;
  padding:16px;
  border:1px solid rgba(23,23,23,.09);
  border-radius:16px;
  background:#fbfaf7;
}
.owner-availability-blocks-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}
.owner-availability-blocks-head>div{display:grid;gap:3px}
.owner-availability-blocks-head>div>span{font-size:11px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;color:rgba(23,23,23,.48)}
.owner-availability-blocks-head>div>strong{font-size:15px;line-height:1.25}
.owner-availability-blocks-head>small{max-width:520px;color:rgba(23,23,23,.5);font-size:11px;line-height:1.4;text-align:right}
.owner-availability-block-list{display:grid;gap:8px}
.owner-availability-block{
  display:grid;
  grid-template-columns:minmax(170px,.7fr) minmax(220px,1.3fr) auto;
  gap:12px;
  align-items:center;
  min-width:0;
  padding:11px 12px;
  border:1px solid rgba(197,91,17,.18);
  border-radius:13px;
  background:#fff;
  box-shadow:0 4px 14px rgba(23,23,23,.025);
}
.owner-availability-block-date,.owner-availability-block-main{min-width:0;display:grid;gap:3px}
.owner-availability-block-date strong{font-size:12px;text-transform:capitalize}
.owner-availability-block-date span{font-size:15px;font-weight:900;color:#7a3b0e}
.owner-availability-block-main strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.owner-availability-block-main small{font-size:11px;color:rgba(23,23,23,.48)}
.owner-availability-cancel{min-height:38px!important;margin:0!important;white-space:nowrap;border-color:rgba(185,60,37,.18)!important;color:#a43b28!important;background:#fff!important}
.owner-availability-cancel:hover{background:rgba(185,60,37,.06)!important;border-color:rgba(185,60,37,.28)!important}
.owner-availability-empty{margin:0;padding:13px;border:1px dashed rgba(23,23,23,.12);border-radius:12px;color:rgba(23,23,23,.52);font-size:12px;text-align:center;background:#fff}
.owner-availability-block.is-focused{animation:ownerAvailabilityFocus 1.8s ease}
@keyframes ownerAvailabilityFocus{0%,100%{box-shadow:0 4px 14px rgba(23,23,23,.025)}15%,70%{box-shadow:0 0 0 3px rgba(244,124,32,.2),0 10px 28px rgba(122,59,14,.1);border-color:rgba(197,91,17,.48)}}
@media(max-width:760px){
  .owner-availability-blocks{padding:12px;margin-top:12px}
  .owner-availability-blocks-head{align-items:flex-start;flex-direction:column;gap:5px}
  .owner-availability-blocks-head>small{text-align:left}
  .owner-availability-block{grid-template-columns:1fr;gap:8px}
  .owner-availability-cancel{width:100%!important}
}


/* === V12 — Mastra runtime + intelligent owner tasks === */
.owner-ai-runtime-intro{display:grid;align-content:start;gap:6px}
.owner-ai-runtime-intro>small{max-width:680px;color:rgba(23,23,23,.5);font-size:11.5px;line-height:1.45}
.owner-ai-runtime-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.owner-mastra-badge{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border:1px solid rgba(23,23,23,.10);border-radius:999px;background:rgba(255,255,255,.72);color:rgba(23,23,23,.72);font-size:11px;font-weight:850;white-space:nowrap}
.owner-ai-provider-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.owner-ai-provider-row>label{min-width:0}
.owner-ai-runtime-state{display:grid;gap:2px;min-width:150px;padding:8px 10px;border:1px solid rgba(23,23,23,.09);border-radius:11px;background:#fbfaf7}
.owner-ai-runtime-state strong{font-size:11px}.owner-ai-runtime-state span{font-size:10.5px;color:rgba(23,23,23,.5)}
.owner-ai-switches{display:grid;gap:7px}
.owner-ai-switches label{display:flex!important;align-items:flex-start;gap:8px!important;padding:9px 10px;border:1px solid rgba(23,23,23,.08);border-radius:11px;background:#fbfaf7;font-size:11.5px!important;line-height:1.4}
.owner-ai-switches input{width:auto!important;flex:0 0 auto;margin-top:2px}

.owner-tasks-section{padding:17px;border:1px solid rgba(23,23,23,.09);border-radius:18px;background:rgba(255,255,255,.76);box-shadow:0 8px 26px rgba(23,23,23,.035)}
.owner-tasks-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.owner-tasks-head h3{margin:6px 0 5px;font-size:20px;letter-spacing:-.02em}.owner-tasks-head p{margin:0;max-width:760px;color:rgba(23,23,23,.58);font-size:12.5px;line-height:1.48}
.owner-tasks-layout{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(360px,1.1fr);gap:14px;align-items:start}
.owner-task-month,.owner-task-list-panel{min-width:0;border:1px solid rgba(23,23,23,.085);border-radius:15px;background:#fff;overflow:hidden}
.owner-task-month-toolbar{display:grid;grid-template-columns:auto 1fr auto auto;gap:7px;align-items:center;padding:10px;border-bottom:1px solid rgba(23,23,23,.08)}
.owner-task-month-toolbar>strong{text-align:center;text-transform:capitalize;font-size:14px}.owner-task-month-toolbar .btn{min-height:34px!important;padding:6px 9px!important;margin:0!important}
.owner-task-weekdays,.owner-task-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.owner-task-weekdays{border-bottom:1px solid rgba(23,23,23,.07);background:#fbfaf7}.owner-task-weekdays span{padding:7px 4px;text-align:center;color:rgba(23,23,23,.48);font-size:10px;font-weight:800}
.owner-task-month-cell{position:relative;min-width:0;min-height:82px;padding:6px;border-right:1px solid rgba(23,23,23,.06);border-bottom:1px solid rgba(23,23,23,.06);background:#fff}.owner-task-month-cell:nth-child(7n){border-right:0}.owner-task-month-cell.is-empty{background:#faf9f6}.owner-task-month-cell.is-today{background:rgba(244,124,32,.055);box-shadow:inset 0 0 0 1px rgba(244,124,32,.16)}
.owner-task-day-number{display:grid;place-items:center;width:23px;height:23px;border-radius:999px;font-size:10px;font-weight:850}.owner-task-month-cell.is-today .owner-task-day-number{background:#171717;color:#fff}
.owner-task-day-items{display:grid;gap:3px;margin-top:3px}.owner-task-day-items>small{padding-left:3px;color:rgba(23,23,23,.45);font-size:9px}
.owner-task-day-chip{width:100%;min-width:0;padding:3px 5px;border:0;border-radius:6px;background:#f3f1ec;color:#171717;text-align:left;font:inherit;font-size:9px;font-weight:750;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.owner-task-day-chip.priority-high{background:#fff0e9;color:#9b3e24}.owner-task-day-chip.priority-low{color:rgba(23,23,23,.58)}
.owner-task-list-panel{padding:12px}.owner-task-list-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.owner-task-list-title strong{font-size:14px}.owner-task-list-title span{display:grid;place-items:center;min-width:27px;height:27px;border-radius:999px;background:#171717;color:#fff;font-size:11px;font-weight:850}
.owner-task-list{display:grid;gap:8px}.owner-task-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px;border:1px solid rgba(23,23,23,.085);border-left:3px solid rgba(23,23,23,.16);border-radius:12px;background:#fbfaf7}.owner-task-card.priority-high{border-left-color:#e45b35}.owner-task-card.priority-low{border-left-color:rgba(23,23,23,.22)}.owner-task-card.is-done{opacity:.62}.owner-task-card.is-focused{animation:ownerTaskFocus 1.6s ease}
@keyframes ownerTaskFocus{0%,100%{box-shadow:none}20%,70%{box-shadow:0 0 0 3px rgba(244,124,32,.18),0 9px 24px rgba(23,23,23,.08)}}
.owner-task-card-check button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid rgba(23,23,23,.15);border-radius:999px;background:#fff;color:#171717;cursor:pointer;font-size:16px;font-weight:900}.owner-task-card.is-done .owner-task-card-check button{background:#171717;color:#fff}
.owner-task-card-main{min-width:0}.owner-task-card-title{display:flex;align-items:center;gap:6px;min-width:0}.owner-task-card-title strong{font-size:13px;line-height:1.3}.owner-task-ai-badge{padding:2px 5px;border-radius:999px;background:#fff0e5;color:#a94d0e;font-size:9px;font-weight:850}
.owner-task-card-meta{display:flex;align-items:center;gap:4px 10px;flex-wrap:wrap;margin-top:5px;color:rgba(23,23,23,.51);font-size:10.5px}.owner-task-card-main p{margin:6px 0 0;color:rgba(23,23,23,.64);font-size:11px;line-height:1.42;white-space:pre-wrap}
.owner-task-card-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:flex-end}.owner-task-card-actions .btn{min-height:32px!important;padding:5px 8px!important;margin:0!important;font-size:10px!important}
.owner-task-empty{margin:0;padding:18px 10px;text-align:center;color:rgba(23,23,23,.48);font-size:11.5px}
.owner-task-done{margin-top:10px;border-top:1px solid rgba(23,23,23,.07);padding-top:8px}.owner-task-done>summary{cursor:pointer;color:rgba(23,23,23,.58);font-size:11px;font-weight:800}.owner-task-done[open]>summary{margin-bottom:8px}
.owner-task-create{margin-top:13px;border:1px solid rgba(23,23,23,.085);border-radius:14px;background:#fbfaf7;overflow:hidden}.owner-task-create>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;cursor:pointer;list-style:none}.owner-task-create>summary::-webkit-details-marker{display:none}.owner-task-create>summary span{font-size:12px;font-weight:850}.owner-task-create>summary small{color:rgba(23,23,23,.48);font-size:10.5px}.owner-task-create form{padding:0 13px 13px;border-top:1px solid rgba(23,23,23,.07)}.owner-task-create-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1.4fr;gap:8px;padding-top:11px}.owner-task-create label{display:grid;gap:4px;font-size:10.5px;font-weight:760}.owner-task-create input,.owner-task-create select,.owner-task-create textarea{width:100%;min-width:0;padding:8px 9px;border:1px solid rgba(23,23,23,.13);border-radius:9px;background:#fff;color:#171717;box-sizing:border-box}.owner-task-create>form>label{margin-top:8px}
@media(max-width:1050px){.owner-tasks-layout{grid-template-columns:1fr}.owner-task-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.owner-ai-provider-row{grid-template-columns:1fr}.owner-ai-runtime-state{min-width:0}.owner-tasks-section{padding:12px}.owner-tasks-head{flex-direction:column}.owner-task-month-cell{min-height:62px;padding:4px}.owner-task-day-chip{font-size:8px;padding:2px 3px}.owner-task-month-toolbar{grid-template-columns:auto 1fr auto}.owner-task-month-toolbar>[data-owner-task-action="month-today"]{grid-column:1/-1;grid-row:2}.owner-task-card{grid-template-columns:auto minmax(0,1fr)}.owner-task-card-actions{grid-column:1/-1;justify-content:flex-start;padding-left:38px}.owner-task-create-grid{grid-template-columns:1fr}.owner-task-create>summary{align-items:flex-start;flex-direction:column;gap:3px}}


/* === V13 — overlapping availability confirmation === */
.owner-availability-parallel-note{
  margin:2px 2px 0!important;
  padding-top:2px;
  color:rgba(23,23,23,.50)!important;
  font-size:11px!important;
  line-height:1.45!important;
}

/* v14 — navigation classique + séparation candidats/locataires */
.member-drawer .member-account-tabs{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:none!important;
  grid-auto-rows:minmax(44px,auto)!important;
  grid-auto-flow:row!important;
  gap:8px!important;
  align-items:stretch!important;
  padding:8px!important;
}
.member-drawer .member-account-tabs button{
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:44px!important;
  margin:0!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  justify-content:center!important;
  text-align:center!important;
}

.member-message-inbox-switch{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:0 0 10px;
  padding:4px;
  border:1px solid rgba(23,23,23,.10);
  border-radius:14px;
  background:rgba(255,255,255,.62);
}
.member-message-inbox-switch button{
  min-height:44px;
  border:0;
  border-radius:10px;
  padding:9px 12px;
  background:transparent;
  color:#404040;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.member-message-inbox-switch button[aria-pressed="true"]{
  background:#171717;
  color:#fff;
  box-shadow:0 7px 18px rgba(0,0,0,.10);
}
.member-message-inbox-switch button span{
  display:inline-flex;
  min-width:22px;
  height:22px;
  margin-left:5px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(127,127,127,.14);
  font-size:.78em;
}
.member-message-inbox-switch button[aria-pressed="true"] span{background:rgba(255,255,255,.16)}
.member-message-conversation-head{
  gap:10px!important;
  flex-wrap:wrap!important;
}
.member-message-conversation-title{min-width:min(100%,280px);flex:1 1 320px}
.member-message-conversation-title small{display:block;margin-top:4px;color:#777;line-height:1.35}
.member-message-conversation-actions{
  display:flex;
  flex:0 1 auto;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  flex-wrap:wrap;
}
.member-message-type-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(23,23,23,.10);
  background:#f5f4f1;
  font-size:.82rem;
  font-weight:800;
  white-space:nowrap;
}
.member-message-type-chip.is-tenant{background:#fff;border-color:rgba(23,23,23,.20)}
.member-message-delete{color:#7b2929!important}
.owner-task-create[data-no-tenants="true"]>summary{cursor:default}

@media (max-width:700px){
  .member-drawer .member-account-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    padding:7px!important;
  }
  .member-drawer .member-account-tabs button{min-height:42px!important;padding:9px 7px!important;font-size:.94rem!important}
  .member-message-inbox-switch{position:sticky;top:0;z-index:4;margin-bottom:8px;background:rgba(250,249,246,.94);backdrop-filter:blur(12px)}
  .member-message-inbox-switch button{min-height:42px;padding:8px 6px;font-size:.9rem}
  .member-message-conversation-actions{width:100%;justify-content:flex-start}
  .member-message-conversation-actions .btn{min-height:38px!important;padding:7px 10px!important;font-size:.86rem!important}
  .member-message-type-chip{min-height:32px;padding:5px 9px}
}


/* v15 — menu de compte rempli naturellement, sans cases vides */
.member-drawer .member-account-tabs{
  grid-auto-flow:row!important;
}
.member-drawer .member-account-tabs > button{
  grid-area:auto!important;
  order:initial!important;
}


/* v16 — menu classique + repli intelligent en une ligne */
.member-drawer .member-account-tabs{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-rows:minmax(46px,auto)!important;
  gap:10px!important;
  align-items:stretch!important;
  padding:8px!important;
}
.member-drawer .member-account-tabs > button{
  grid-column:auto!important;
  grid-row:auto!important;
  grid-area:auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  margin:0!important;
  padding:10px 12px!important;
  justify-content:center!important;
  text-align:center!important;
}
.member-drawer.member-tabs-collapsed .member-account-tabs{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:7px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  padding:8px 10px!important;
  margin:0 0 8px!important;
  border:1px solid rgba(23,23,23,.08)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.58)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  box-shadow:0 14px 30px rgba(23,23,23,.08)!important,inset 0 1px 0 rgba(255,255,255,.72)!important;
  position:sticky!important;
  top:0!important;
  z-index:14!important;
}
.member-drawer.member-tabs-collapsed .member-account-tabs::-webkit-scrollbar{display:none!important}
.member-drawer.member-tabs-collapsed .member-account-tabs > button{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  min-height:38px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  font-size:.95rem!important;
  white-space:nowrap!important;
}
@media (max-width:980px){
  .member-drawer .member-account-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
}
@media (max-width:700px){
  .member-drawer .member-account-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    padding:6px!important;
  }
  .member-drawer .member-account-tabs > button{
    min-height:42px!important;
    padding:9px 8px!important;
    font-size:.94rem!important;
  }
  .member-drawer.member-tabs-collapsed .member-account-tabs{
    padding:7px 8px!important;
    border-radius:16px!important;
    top:0!important;
  }
  .member-drawer.member-tabs-collapsed .member-account-tabs > button{
    min-height:36px!important;
    padding:7px 12px!important;
    font-size:.9rem!important;
  }
}


/* v17 — ordre desktop classique demandé */
@media (min-width:981px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(46px,auto))!important;
    grid-auto-rows:unset!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="account"]{grid-column:1!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="calendar"]{grid-column:2!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="searches"]{grid-column:3!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="activity"]{grid-column:4!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="messages"]{grid-column:1!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="reviews"]{grid-column:2!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="favorites"]{grid-column:3!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="listings"]{grid-column:4!important;grid-row:2!important}
}


/* v22 — entête de conversation plus propre */
.member-message-conversation-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:14px 18px!important;
}
.member-message-conversation-title{min-width:0!important;}
.member-message-conversation-actions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(190px,1fr))!important;
  gap:10px!important;
  align-self:start!important;
  justify-content:end!important;
  min-width:min(100%,420px);
}
.member-message-conversation-actions .btn{
  width:100%!important;
  min-height:54px!important;
  padding:12px 16px!important;
  justify-content:center!important;
  text-align:center!important;
}
.member-message-conversation-footer-tools{
  margin-top:12px!important;
}
.member-message-conversation-footer-tools .member-message-owner-tools{
  margin:0!important;
  border:1px solid rgba(23,23,23,.08)!important;
  background:#faf9f6!important;
}
.member-message-conversation-footer-tools .member-message-owner-tools>summary{
  min-height:44px!important;
  padding:10px 14px!important;
  font-size:.95rem!important;
}
.member-message-conversation-footer-tools .member-message-owner-tools-body{
  padding:12px 14px 14px!important;
}
.member-message-type-chip{display:none!important;}
.member-message-conversation-head .member-message-owner-tools{display:none!important;}

@media (max-width:980px){
  .member-message-conversation-actions{
    grid-template-columns:repeat(2,minmax(170px,1fr))!important;
    min-width:min(100%,360px);
  }
}
@media (max-width:700px){
  .member-message-conversation-head{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .member-message-conversation-actions{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:1fr!important;
    justify-content:flex-start!important;
  }
  .member-message-conversation-actions .btn{
    min-height:44px!important;
    padding:9px 12px!important;
  }
}


/* v24 — suppression définitive du suivi propriétaire + réponses proposées visibles */
.member-message-owner-tools,
.member-message-conversation-footer-tools{
  display:none!important;
}
.member-message-quick{
  display:flex!important;
  flex:0 0 auto!important;
  gap:8px!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:10px 14px 0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  background:#fff!important;
}
.member-message-quick::-webkit-scrollbar{display:none!important;}
.member-message-quick button{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-height:36px!important;
  margin:0!important;
  padding:7px 11px!important;
  border:1px solid rgba(23,23,23,.12)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#171717!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
.member-message-quick button:hover{background:#f5f4f1!important;}
.member-message-conversation>.member-message-composer{
  flex:0 0 auto!important;
  margin:0!important;
}
@media(max-width:700px){
  .member-message-quick{padding:8px 10px 0!important;}
  .member-message-quick button{font-size:.87rem!important;padding:7px 10px!important;}
}


/* v25 — davantage d'espace pour lire réellement la conversation */
.member-message-bubbles{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-height:0!important;
  padding:20px 18px!important;
  gap:12px!important;
  scroll-padding-block:20px!important;
}
.member-message-bubble{
  box-sizing:border-box!important;
  max-width:min(86%,920px)!important;
  line-height:1.48!important;
}

@media (min-width:1025px){
  .member-drawer[data-account-view="messages"] .member-messaging-shell{
    height:auto!important;
    min-height:720px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-conversation{
    height:clamp(720px,76dvh,900px)!important;
    min-height:720px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-bubbles{
    flex:1 1 0!important;
    min-height:480px!important;
  }
  .member-message-thread-list{
    max-height:clamp(720px,76dvh,900px)!important;
  }
}

@media (min-width:701px) and (max-width:1024px){
  .member-drawer[data-account-view="messages"] .member-messaging-shell{
    min-height:660px!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-conversation{
    min-height:660px!important;
    height:72dvh!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-bubbles{
    flex:1 1 0!important;
    min-height:410px!important;
  }
  .member-message-bubble{max-width:90%!important;}
}

@media (max-width:700px){
  .member-drawer[data-account-view="messages"] .member-message-conversation{
    min-height:68dvh!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-bubbles{
    min-height:46dvh!important;
    padding:14px 11px!important;
  }
  .member-message-bubble{
    max-width:94%!important;
    line-height:1.45!important;
  }
}


/* v27 — croix du menu toujours au premier plan sur iPhone et iPad */
@media (max-width:1024px){
  #memberDrawer{
    isolation:isolate!important;
  }
  #memberDrawer .member-drawer-card{
    position:relative!important;
    isolation:isolate!important;
  }
  #memberDrawer .member-panel-close{
    position:fixed!important;
    top:calc(12px + env(safe-area-inset-top))!important;
    right:clamp(14px,3vw,26px)!important;
    z-index:2147483000!important;
    pointer-events:auto!important;
    display:grid!important;
    place-items:center!important;
    background:#fff!important;
    box-shadow:0 8px 22px rgba(23,23,23,.12)!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
    touch-action:manipulation!important;
  }
  #memberDrawer #memberDrawerContent,
  #memberDrawer .member-account-view,
  #memberDrawer .member-messaging-shell,
  #memberDrawer .member-message-conversation,
  #memberDrawer .member-message-bubbles{
    position:relative!important;
    z-index:auto!important;
  }
  #memberDrawer .member-account-tabs{
    z-index:20!important;
  }
}

@media (min-width:701px) and (max-width:1024px){
  #memberDrawer #memberDrawerTitle{
    padding-right:62px!important;
  }
}

@media (max-width:700px){
  #memberDrawer #memberDrawerTitle{
    padding-right:58px!important;
  }
}

/* === v34 — restore the polished account menu from v16/v17 and keep mobile/tablet close above messaging === */
.member-drawer .member-account-tabs{
  grid-auto-flow:row!important;
}
.member-drawer .member-account-tabs > button{
  grid-area:auto!important;
  order:initial!important;
}

/* Expanded menu: the exact two-row desktop arrangement previously approved. */
@media (min-width:981px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(46px,auto))!important;
    grid-auto-rows:unset!important;
    grid-auto-flow:row!important;
    align-items:stretch!important;
    gap:10px!important;
    padding:8px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:10px 12px!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="account"]{grid-column:1!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="calendar"]{grid-column:2!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="searches"]{grid-column:3!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="activity"]{grid-column:4!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="messages"]{grid-column:1!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="reviews"]{grid-column:2!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="favorites"]{grid-column:3!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[data-account-view="listings"]{grid-column:4!important;grid-row:2!important}
}

/* Keep the v16 one-line glass collapse instead of letting old housing-ai rules reshape it. */
.member-drawer.member-tabs-collapsed .member-account-tabs{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:7px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  padding:8px 10px!important;
  margin:0 0 8px!important;
  border:1px solid rgba(23,23,23,.08)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.58)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  box-shadow:0 14px 30px rgba(23,23,23,.08)!important,inset 0 1px 0 rgba(255,255,255,.72)!important;
  position:sticky!important;
  top:0!important;
  z-index:40!important;
}
.member-drawer.member-tabs-collapsed .member-account-tabs::-webkit-scrollbar{display:none!important}
.member-drawer.member-tabs-collapsed .member-account-tabs > button{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  min-height:38px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  font-size:.95rem!important;
  white-space:nowrap!important;
  grid-column:auto!important;
  grid-row:auto!important;
}

/* iPad/iPhone: the close control must always be the top-most interactive layer. */
@media (max-width:1024px){
  #memberDrawer{
    isolation:isolate!important;
  }
  #memberDrawer .member-drawer-card{
    position:relative!important;
    isolation:isolate!important;
  }
  #memberDrawer .member-panel-close{
    position:fixed!important;
    top:calc(12px + env(safe-area-inset-top))!important;
    right:clamp(14px,3vw,26px)!important;
    z-index:2147483646!important;
    pointer-events:auto!important;
    display:grid!important;
    place-items:center!important;
    background:#fff!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
    touch-action:manipulation!important;
    isolation:isolate!important;
  }
  #memberDrawer #memberDrawerContent,
  #memberDrawer .member-account-view,
  #memberDrawer .member-messaging-shell,
  #memberDrawer .member-message-thread-list,
  #memberDrawer .member-message-conversation,
  #memberDrawer .member-message-conversation-head,
  #memberDrawer .member-message-bubbles,
  #memberDrawer .member-message-quick,
  #memberDrawer .member-message-composer{
    position:relative!important;
    z-index:1!important;
  }
  #memberDrawer .member-account-tabs{z-index:30!important}
}
@media (min-width:701px) and (max-width:1024px){
  #memberDrawer #memberDrawerTitle{padding-right:62px!important}
}
@media (max-width:700px){
  #memberDrawer #memberDrawerTitle{padding-right:58px!important}
}


/* v35 — iOS/iPadOS: portal the close button outside the scroll/menu stacking context */
@media (max-width:1024px){
  #memberDrawer > .member-panel-close.member-panel-close-portal{
    position:fixed!important;
    top:calc(10px + env(safe-area-inset-top))!important;
    right:calc(10px + env(safe-area-inset-right))!important;
    left:auto!important;
    bottom:auto!important;
    z-index:2147483647!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    padding:0!important;
    margin:0!important;
    display:grid!important;
    place-items:center!important;
    border:1px solid rgba(23,23,23,.16)!important;
    border-radius:50%!important;
    background:#fffdf8!important;
    color:#171717!important;
    box-shadow:0 7px 20px rgba(23,23,23,.13)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    isolation:isolate!important;
    transform:none!important;
    -webkit-transform:none!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    clip-path:none!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  #memberDrawer > .member-panel-close.member-panel-close-portal::before{
    content:"×"!important;
    display:block!important;
    font-size:27px!important;
    font-weight:500!important;
    line-height:1!important;
    transform:translateY(-1px)!important;
  }
  /* The scrolling card can never paint over the portaled close button. */
  #memberDrawer > .member-drawer-card{
    z-index:1!important;
  }
}



/* === v37 — account menu: one shared glass bubble, softer dark base, light controls === */
.member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
  position:relative!important;
  overflow:visible!important;
  border:1px solid rgba(255,255,255,.72)!important;
  border-radius:24px!important;
  background:rgba(82,76,68,.115)!important;
  backdrop-filter:blur(22px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(145%)!important;
  box-shadow:
    0 0 0 7px rgba(255,255,255,.20),
    0 15px 34px rgba(35,31,27,.09),
    inset 0 1px 0 rgba(255,255,255,.78),
    inset 0 -1px 0 rgba(69,61,53,.055)!important;
  margin:7px 8px 20px!important;
  padding:10px!important;
}
.member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
  border:0!important;
  outline:0!important;
  background:rgba(255,255,255,.30)!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#514d48!important;
  border-radius:14px!important;
  transition:background .16s ease,color .16s ease,transform .16s ease!important;
}
.member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:hover,
.member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:focus-visible{
  background:rgba(255,255,255,.48)!important;
  color:#272522!important;
  transform:translateY(-1px)!important;
}
.member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button[aria-current="page"]{
  background:#171717!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(23,23,23,.14)!important;
  transform:none!important;
}

/* The compact one-line version keeps the same single shared glass shell. */
.member-drawer.member-tabs-collapsed .member-account-tabs{
  border:1px solid rgba(255,255,255,.74)!important;
  background:rgba(82,76,68,.115)!important;
  backdrop-filter:blur(22px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(145%)!important;
  box-shadow:
    0 0 0 6px rgba(255,255,255,.18),
    0 13px 30px rgba(35,31,27,.085),
    inset 0 1px 0 rgba(255,255,255,.76)!important;
}
.member-drawer.member-tabs-collapsed .member-account-tabs > button{
  border:0!important;
  background:rgba(255,255,255,.30)!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#514d48!important;
}
.member-drawer.member-tabs-collapsed .member-account-tabs > button[aria-current="page"]{
  background:#171717!important;
  color:#fff!important;
  box-shadow:0 6px 15px rgba(23,23,23,.13)!important;
}

/* Desktop: preserve the approved 4 x 2 arrangement. */
@media (min-width:981px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(48px,auto))!important;
    gap:9px!important;
    padding:11px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    min-height:48px!important;
  }
}

/* iPad: same glass section, slightly tighter two-column layout. */
@media (min-width:701px) and (max-width:980px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    border-radius:22px!important;
    padding:10px!important;
    margin:7px 8px 18px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    min-height:46px!important;
  }
}

/* iPhone: keep the same visual language without making the menu bulky. */
@media (max-width:700px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    border-radius:20px!important;
    padding:8px!important;
    margin:6px 7px 16px!important;
    box-shadow:
      0 0 0 5px rgba(255,255,255,.18),
      0 12px 27px rgba(35,31,27,.08),
      inset 0 1px 0 rgba(255,255,255,.76)!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    min-height:43px!important;
    padding:9px 8px!important;
    border-radius:12px!important;
  }
}


/* === v38 — navigation compte: plaque verre chaude, compacte, sans bulles individuelles === */
.member-drawer .member-account-tabs{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.82)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,rgba(235,231,223,.92),rgba(225,219,210,.76))!important;
  background-image:linear-gradient(145deg,rgba(235,231,223,.92),rgba(225,219,210,.76))!important;
  backdrop-filter:blur(24px) saturate(125%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(125%)!important;
  box-shadow:
    0 12px 30px rgba(44,37,31,.085),
    0 1px 0 rgba(255,255,255,.78),
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(82,70,58,.05)!important;
  margin:8px 10px 20px!important;
  padding:8px!important;
}
.member-drawer .member-account-tabs::before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  pointer-events:none!important;
  left:1px!important;
  right:1px!important;
  top:1px!important;
  height:52%!important;
  border-radius:20px 20px 45% 45%!important;
  background:linear-gradient(180deg,rgba(255,255,255,.43),rgba(255,255,255,.08) 72%,transparent)!important;
}
.member-drawer .member-account-tabs > button{
  position:relative!important;
  z-index:1!important;
  isolation:isolate!important;
  appearance:none!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#514b45!important;
  border-radius:16px!important;
  min-width:0!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  font-weight:820!important;
  line-height:1.15!important;
  transition:color .16s ease,transform .16s ease!important;
}
.member-drawer .member-account-tabs > button::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:6px 8px!important;
  border-radius:13px!important;
  background:transparent!important;
  box-shadow:none!important;
  transition:background .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
.member-drawer .member-account-tabs > button:not([aria-current="page"]):hover{
  color:#211f1d!important;
  transform:translateY(-1px)!important;
}
.member-drawer .member-account-tabs > button:not([aria-current="page"]):hover::before{
  background:rgba(255,255,255,.22)!important;
}
.member-drawer .member-account-tabs > button:focus-visible{
  outline:2px solid rgba(229,69,40,.30)!important;
  outline-offset:-3px!important;
}
.member-drawer .member-account-tabs > button[aria-current="page"]{
  background:transparent!important;
  background-image:none!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
.member-drawer .member-account-tabs > button[aria-current="page"]::before{
  background:#171717!important;
  box-shadow:
    0 7px 17px rgba(23,23,23,.14),
    inset 0 1px 0 rgba(255,255,255,.10)!important;
}

/* PC + iPad : vraie barre 4 x 2, régulière et compacte. */
@media (min-width:701px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,52px)!important;
    grid-auto-flow:row!important;
    gap:4px 6px!important;
    padding:8px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    width:100%!important;
    min-height:52px!important;
    font-size:clamp(.92rem,1.25vw,1.02rem)!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="account"]{grid-column:1!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="calendar"]{grid-column:2!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="searches"]{grid-column:3!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="activity"]{grid-column:4!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="messages"]{grid-column:1!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="reviews"]{grid-column:2!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="favorites"]{grid-column:3!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="listings"]{grid-column:4!important;grid-row:2!important}
}

/* iPad : même composition que PC, simplement plus serrée. */
@media (min-width:701px) and (max-width:1024px){
  .member-drawer .member-account-tabs{
    margin:7px 8px 18px!important;
    border-radius:20px!important;
    padding:7px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    grid-template-rows:repeat(2,48px)!important;
    gap:3px 4px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    min-height:48px!important;
    padding:0 7px!important;
    font-size:.88rem!important;
  }
  .member-drawer .member-account-tabs > button::before{inset:5px 5px!important;border-radius:12px!important}
}

/* iPhone : 2 colonnes, regroupées selon l'usage, dans la même plaque de verre. */
@media (max-width:700px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(4,46px)!important;
    grid-auto-flow:row!important;
    gap:3px 4px!important;
    padding:7px!important;
    margin:6px 7px 16px!important;
    border-radius:19px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    width:100%!important;
    min-height:46px!important;
    padding:0 7px!important;
    font-size:.91rem!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button::before{
    inset:5px 5px!important;
    border-radius:12px!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="account"]{grid-column:1!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="calendar"]{grid-column:2!important;grid-row:1!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="messages"]{grid-column:1!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="reviews"]{grid-column:2!important;grid-row:2!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="favorites"]{grid-column:1!important;grid-row:3!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="listings"]{grid-column:2!important;grid-row:3!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="searches"]{grid-column:1!important;grid-row:4!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs button[data-account-view="activity"]{grid-column:2!important;grid-row:4!important}
}

/* Version recroquevillée : une vraie capsule de navigation, même langage visuel. */
.member-drawer.member-tabs-collapsed .member-account-tabs{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:2px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  padding:6px!important;
  margin:5px 8px 12px!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(235,231,223,.94),rgba(225,219,210,.82))!important;
}
.member-drawer.member-tabs-collapsed .member-account-tabs::-webkit-scrollbar{display:none!important}
.member-drawer.member-tabs-collapsed .member-account-tabs > button{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  min-height:40px!important;
  padding:0 11px!important;
  font-size:.9rem!important;
  white-space:nowrap!important;
  grid-area:auto!important;
}
.member-drawer.member-tabs-collapsed .member-account-tabs > button::before{
  inset:4px 4px!important;
  border-radius:11px!important;
}


/* === v39 — mobile/tablet messaging behaves like a dedicated conversation page === */
.member-message-mobile-nav{display:none}

@media (max-width:1024px){
  /* The candidate/tenant selector belongs to the inbox header. It must not float
     over the middle of a conversation while the user reads messages. */
  .member-drawer[data-account-view="messages"] .member-message-inbox-switch{
    position:relative!important;
    top:auto!important;
    z-index:auto!important;
    margin:0 0 10px!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  /* Inbox = one page. Conversation = another page. Never stack both vertically. */
  .member-drawer[data-account-view="messages"] .member-messaging-shell{
    display:block!important;
    grid-template-columns:none!important;
    height:auto!important;
    min-height:0!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-thread-list{
    display:block!important;
    width:100%!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .member-drawer[data-account-view="messages"] .member-message-conversation{
    display:none!important;
  }

  /* Clicking a thread enters the dedicated conversation page. */
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open > .member-message-inbox-switch,
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open > .member-message-topbar,
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open > .member-message-connections-page,
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open .member-message-thread-list{
    display:none!important;
  }
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open .member-message-conversation{
    display:flex!important;
    width:100%!important;
    height:calc(100dvh - 30px)!important;
    min-height:calc(100dvh - 30px)!important;
    max-height:calc(100dvh - 30px)!important;
    border-radius:20px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  /* In thread mode the account navigation disappears: this is visually a new page,
     like Messenger/Facebook, with one clear way back to the conversation list. */
  .member-drawer.member-message-thread-page #memberDrawerTitle,
  .member-drawer.member-message-thread-page .member-account-tabs{
    display:none!important;
  }
  .member-drawer.member-message-thread-page #memberDrawerContent{
    min-height:0!important;
  }
  .member-drawer.member-message-thread-page #memberDrawerContent > .member-account-view{
    margin:0!important;
    padding:0!important;
    min-height:0!important;
  }

  .member-message-mobile-nav{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    min-height:52px!important;
    padding:7px 12px!important;
    border-bottom:1px solid rgba(23,23,23,.08)!important;
    background:rgba(251,250,247,.96)!important;
  }
  .member-message-mobile-back{
    appearance:none!important;
    -webkit-appearance:none!important;
    min-height:38px!important;
    padding:7px 11px!important;
    border:1px solid rgba(23,23,23,.10)!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#171717!important;
    box-shadow:none!important;
    font:inherit!important;
    font-weight:800!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
  }
  .member-message-mobile-back:active{background:#f1f0ec!important}

  /* The header stays compact; the message history gets the actual reading space. */
  .member-drawer.member-message-thread-page .member-message-conversation-head{
    flex:0 0 auto!important;
  }
  .member-drawer.member-message-thread-page .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .member-drawer.member-message-thread-page .member-message-quick,
  .member-drawer.member-message-thread-page .member-message-composer{
    flex:0 0 auto!important;
  }
}

@media (max-width:700px){
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open .member-message-conversation{
    height:calc(100dvh - 16px)!important;
    min-height:calc(100dvh - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    border-radius:17px!important;
  }
  .member-message-mobile-nav{padding-top:calc(7px + env(safe-area-inset-top))!important}
}


/* === v42 — messaging grouped by property/building + owner conversation labels === */
.member-message-property{position:relative}
.member-message-property .member-message-preview{font-weight:750;color:rgba(23,23,23,.66)}
.member-message-property-nav{display:flex;align-items:center;gap:10px;padding:7px 5px 11px;border-bottom:1px solid rgba(23,23,23,.08);margin-bottom:6px}
.member-message-property-nav>div{min-width:0;display:grid;gap:2px}
.member-message-property-nav strong{font-size:.92rem;line-height:1.25;overflow-wrap:anywhere}
.member-message-property-nav small{color:rgba(23,23,23,.55);font-size:.76rem}
.member-message-property-back,.member-message-rename-trigger{appearance:none;-webkit-appearance:none;border:1px solid rgba(23,23,23,.10);background:rgba(255,255,255,.82);color:#171717;border-radius:11px;min-height:34px;padding:6px 9px;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer;box-shadow:none}
.member-message-property-back:hover,.member-message-rename-trigger:hover{background:#fff}
.member-message-person-email,.member-message-header-email{display:block;color:rgba(23,23,23,.58);font-size:.78rem;overflow-wrap:anywhere}
.member-message-name-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.member-message-name-line h3{min-width:0;overflow-wrap:anywhere}
.member-message-rename{display:inline-flex;align-items:center}
.member-message-rename-form{display:flex;align-items:center;gap:7px;flex-wrap:wrap;width:min(100%,520px);margin-top:6px}
.member-message-rename-form[hidden]{display:none!important}
.member-message-rename-form input{flex:1 1 220px;min-width:0;min-height:38px;border:1px solid rgba(23,23,23,.14);border-radius:10px;background:#fff;padding:8px 10px;font:inherit}
.member-message-rename-form .btn{min-height:36px!important;padding:7px 10px!important;font-size:.8rem!important}

@media (max-width:1024px){
  .member-message-property-nav{position:relative;top:auto;z-index:auto;background:transparent;padding:4px 2px 10px}
  .member-message-property-back{min-height:40px;padding:8px 11px}
  .member-message-rename-form{width:100%}
  .member-message-rename-form input{flex-basis:100%}
}


/* === v43 — active account tab is the real full-size button, no nested 3D pill === */
.member-drawer .member-account-tabs > button[aria-current="page"],
.member-drawer.member-tabs-collapsed .member-account-tabs > button[aria-current="page"]{
  background:#171717!important;
  background-image:none!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
  border-radius:14px!important;
}
.member-drawer .member-account-tabs > button[aria-current="page"]::before,
.member-drawer.member-tabs-collapsed .member-account-tabs > button[aria-current="page"]::before{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
  transform:none!important;
}

/* === v45 — iPhone: reclaim vertical space for the actual message history === */
@media (max-width:700px){
  /* The dedicated thread page should use the whole dynamic viewport instead of
     losing ~60px to the generic account-drawer padding. */
  .member-drawer.member-message-thread-page .member-drawer-card{
    height:100dvh!important;
    max-height:100dvh!important;
    padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .member-drawer.member-message-thread-page #memberDrawerContent{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .member-drawer.member-message-thread-page #memberDrawerContent > .member-account-view,
  .member-drawer.member-message-thread-page .member-messaging-shell{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open .member-message-conversation{
    flex:1 1 0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
  }

  /* Back bar: keep it easy to tap but stop it occupying a full header row. */
  .member-message-mobile-nav{
    min-height:44px!important;
    padding:4px 10px!important;
    padding-top:4px!important;
  }
  .member-message-mobile-back{
    min-height:34px!important;
    padding:5px 9px!important;
    border-radius:10px!important;
    font-size:.86rem!important;
  }

  /* The old mobile rules stacked the relationship buttons in two 44px rows.
     Keep them on one compact row so those pixels go back to the discussion. */
  .member-drawer.member-message-thread-page .member-message-conversation-head{
    padding:9px 11px 8px!important;
    gap:7px!important;
  }
  .member-drawer.member-message-thread-page .member-message-conversation-head h3{
    font-size:16px!important;
    line-height:1.2!important;
  }
  .member-drawer.member-message-thread-page .member-message-conversation-title > p{
    margin-top:2px!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  .member-drawer.member-message-thread-page .member-message-conversation-title > small{
    display:none!important;
  }
  .member-drawer.member-message-thread-page .member-message-conversation-actions{
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .member-drawer.member-message-thread-page .member-message-conversation-actions .btn{
    min-height:36px!important;
    padding:6px 8px!important;
    font-size:.78rem!important;
    line-height:1.15!important;
  }
  .member-drawer.member-message-thread-page .member-message-conversation-actions .btn:only-child{
    grid-column:1 / -1!important;
  }
  .member-drawer.member-message-thread-page .member-message-rename-trigger{
    min-height:30px!important;
    padding:4px 7px!important;
    font-size:.72rem!important;
  }

  /* Give the recovered space to the history itself. */
  .member-drawer.member-message-thread-page .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    padding:10px 10px 8px!important;
    gap:9px!important;
    overscroll-behavior:contain!important;
  }

  /* On iPhone the generic <=760px rule stacked textarea + Send vertically.
     Messenger-style side-by-side composer saves another full button row. */
  .member-drawer.member-message-thread-page .member-message-composer{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:end!important;
    gap:7px!important;
    padding:7px 9px calc(7px + env(safe-area-inset-bottom))!important;
    background:#fff!important;
    border-top:1px solid rgba(23,23,23,.07)!important;
  }
  .member-drawer.member-message-thread-page .member-message-composer textarea{
    min-height:42px!important;
    max-height:92px!important;
    padding:9px 10px!important;
  }
  .member-drawer.member-message-thread-page .member-message-composer .btn{
    min-height:42px!important;
    width:auto!important;
    padding:8px 12px!important;
    align-self:end!important;
  }

  /* Suggested replies stay available without becoming another tall block. */
  .member-drawer.member-message-thread-page .member-message-quick{
    padding:5px 8px 0!important;
    gap:6px!important;
    min-height:0!important;
  }
  .member-drawer.member-message-thread-page .member-message-quick button{
    padding:5px 8px!important;
    font-size:.78rem!important;
  }
}

/* === v48 — iPad: renter-only Delete action pinned to the right === */
@media (min-width:701px) and (max-width:1024px){
  /* Renter accounts have a single Delete action. Keep it on its own row at
     the same height, but pin the unchanged button to the right edge instead
     of leaving it visually around the centre of the iPad. */
  .member-drawer[data-account-view="messages"]
  .member-message-conversation-head:has(.member-message-conversation-actions > .member-message-delete:only-child){
    grid-template-columns:minmax(0,1fr)!important;
  }
  .member-drawer[data-account-view="messages"]
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    width:100%!important;
    min-width:0!important;
    grid-template-columns:minmax(170px,220px)!important;
    justify-content:end!important;
    justify-self:stretch!important;
  }
  .member-drawer[data-account-view="messages"]
  .member-message-conversation-actions > .member-message-delete:only-child{
    width:100%!important;
    min-height:54px!important;
    padding:12px 16px!important;
    justify-self:end!important;
  }
}

/* === v49 — messaging Russian-doll hierarchy: building → unit → conversation === */
.member-message-building .member-message-thread-head strong{font-weight:900}
.member-message-unit{margin-left:8px;width:calc(100% - 8px)}
.member-message-unit::before{content:'';position:absolute;left:-8px;top:10px;bottom:10px;width:2px;border-radius:999px;background:rgba(23,23,23,.10)}
.member-message-building-nav,.member-message-unit-nav{align-items:flex-start}
.member-message-building-nav>div,.member-message-unit-nav>div{padding-top:1px}
.member-message-thread-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.member-message-move{display:inline-flex;align-items:center;position:relative}
.member-message-move-form{display:grid;gap:8px;width:min(100%,560px);margin-top:6px;padding:10px;border:1px solid rgba(23,23,23,.10);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 8px 22px rgba(23,23,23,.07)}
.member-message-move-form[hidden]{display:none!important}
.member-message-move-form label{display:grid;gap:5px;font-size:.78rem;font-weight:800}
.member-message-move-form select{width:100%;min-width:240px;min-height:40px;border:1px solid rgba(23,23,23,.14);border-radius:10px;background:#fff;padding:8px 10px;font:inherit;color:#171717}
.member-message-move-form>div{display:flex;gap:7px;flex-wrap:wrap}
.member-message-move-form .btn{min-height:36px!important;padding:7px 10px!important;font-size:.8rem!important}
.member-message-location-line{overflow-wrap:anywhere}
.member-message-location-line strong{font-weight:850}

@media (max-width:1024px){
  .member-message-unit{margin-left:6px;width:calc(100% - 6px)}
  .member-message-unit::before{left:-6px}
  .member-message-thread-tools{width:100%}
  .member-message-move,.member-message-rename{max-width:100%}
  .member-message-move-form{width:100%}
  .member-message-move-form select{min-width:0}
}

@media (max-width:700px){
  .member-drawer.member-message-thread-page .member-message-thread-tools{gap:5px}
  .member-drawer.member-message-thread-page .member-message-move-trigger{min-height:30px!important;padding:4px 7px!important;font-size:.72rem!important}
  .member-drawer.member-message-thread-page .member-message-move-form{padding:7px;gap:6px;margin-top:4px;border-radius:10px;box-shadow:none}
  .member-drawer.member-message-thread-page .member-message-move-form select{min-height:36px;padding:6px 8px;font-size:.78rem}
  .member-drawer.member-message-thread-page .member-message-move-form label{font-size:.72rem}
  .member-drawer.member-message-thread-page .member-message-move-form .btn{min-height:32px!important;padding:5px 8px!important;font-size:.74rem!important}
}


/* === v50 — iPhone renter conversation: more vertical room for the actual discussion ===
   When the viewer is not in owner mode, the header only contains the Delete action.
   Keep that action on the same row as the conversation identity instead of spending
   a full extra row, and slightly compact the back bar/composer so the message history
   receives the recovered height. Owner conversations keep their existing layout. */
@media (max-width:700px){
  .member-drawer.member-message-thread-page
  .member-message-conversation:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-mobile-nav{
    min-height:36px!important;
    padding:3px 8px!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-mobile-back{
    min-height:30px!important;
    padding:4px 8px!important;
    font-size:.82rem!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation-head:has(.member-message-conversation-actions > .member-message-delete:only-child){
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:5px 8px!important;
    padding:6px 8px 5px!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation-head:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-conversation-title{
    min-width:0!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation-head:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-conversation-title > p{
    margin-top:1px!important;
    font-size:11px!important;
    line-height:1.2!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    width:auto!important;
    min-width:0!important;
    grid-template-columns:auto!important;
    justify-self:end!important;
    align-self:start!important;
    gap:0!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation-actions > .member-message-delete:only-child{
    grid-column:auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:30px!important;
    padding:4px 8px!important;
    font-size:.72rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    padding:8px 9px 7px!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-composer{
    gap:6px!important;
    padding:5px 8px calc(5px + env(safe-area-inset-bottom))!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-composer textarea{
    min-height:38px!important;
    max-height:82px!important;
    padding:8px 9px!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation:has(.member-message-conversation-actions > .member-message-delete:only-child)
  .member-message-composer .btn{
    min-height:38px!important;
    padding:7px 11px!important;
  }
}


/* === v51 — iPad conversation viewport: composer always visible without page scrolling ===
   Apply the same "conversation as a dedicated page" principle used on iPhone
   to 701–1024px layouts. The thread consumes the available dynamic viewport,
   the message history scrolls internally, and the composer remains visible at
   the bottom. Renter-only conversations also reclaim header space by keeping
   the lone Delete action compact and inline. */
@media (min-width:701px) and (max-width:1024px){
  .member-drawer.member-message-thread-page .member-drawer-card{
    height:100dvh!important;
    max-height:100dvh!important;
    padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .member-drawer.member-message-thread-page #memberDrawerContent{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .member-drawer.member-message-thread-page #memberDrawerContent > .member-account-view,
  .member-drawer.member-message-thread-page .member-messaging-shell{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .member-drawer[data-account-view="messages"]
  .member-account-view.member-message-thread-open .member-message-conversation{
    flex:1 1 0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
  }

  .member-drawer.member-message-thread-page .member-message-mobile-nav{
    flex:0 0 auto!important;
    min-height:42px!important;
    padding:4px 12px!important;
  }

  .member-drawer.member-message-thread-page .member-message-mobile-back{
    min-height:34px!important;
    padding:5px 10px!important;
    font-size:.86rem!important;
  }

  .member-drawer.member-message-thread-page .member-message-conversation-head{
    flex:0 0 auto!important;
    padding:9px 12px 8px!important;
    gap:8px 12px!important;
  }

  .member-drawer.member-message-thread-page .member-message-conversation-head h3{
    font-size:17px!important;
    line-height:1.2!important;
  }

  .member-drawer.member-message-thread-page .member-message-conversation-title > p{
    margin-top:2px!important;
    font-size:12px!important;
    line-height:1.25!important;
  }

  .member-drawer.member-message-thread-page .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:12px 14px 10px!important;
    gap:10px!important;
  }

  .member-drawer.member-message-thread-page .member-message-quick{
    flex:0 0 auto!important;
    padding:5px 10px 0!important;
  }

  .member-drawer.member-message-thread-page .member-message-composer{
    flex:0 0 auto!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:end!important;
    gap:8px!important;
    margin:0!important;
    padding:7px 12px calc(7px + env(safe-area-inset-bottom))!important;
    background:#fff!important;
    border-top:1px solid rgba(23,23,23,.07)!important;
  }

  .member-drawer.member-message-thread-page .member-message-composer textarea{
    min-height:42px!important;
    max-height:96px!important;
    padding:9px 11px!important;
  }

  .member-drawer.member-message-thread-page .member-message-composer .btn{
    min-height:42px!important;
    width:auto!important;
    padding:8px 14px!important;
    align-self:end!important;
  }

  /* Renter / non-owner iPad: one compact Delete action instead of a tall row. */
  .member-drawer.member-message-thread-page
  .member-message-conversation-head:has(.member-message-conversation-actions > .member-message-delete:only-child){
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    width:auto!important;
    min-width:0!important;
    grid-template-columns:auto!important;
    justify-self:end!important;
    align-self:start!important;
    gap:0!important;
  }

  .member-drawer.member-message-thread-page
  .member-message-conversation-actions > .member-message-delete:only-child{
    width:auto!important;
    min-width:0!important;
    min-height:34px!important;
    padding:6px 10px!important;
    font-size:.78rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}


/* === v52 — iPhone/iPad: account navigation auto-collapses into a blurred strip ===
   Desktop is intentionally untouched. The expanded 8-button layout remains exactly
   the same; only the compact state is redesigned to save vertical space. */
@media (max-width:1024px){
  .member-drawer .member-account-tabs{
    transform-origin:top center!important;
    transition:max-height .30s cubic-bezier(.2,.78,.22,1),min-height .30s cubic-bezier(.2,.78,.22,1),height .30s cubic-bezier(.2,.78,.22,1),padding .30s cubic-bezier(.2,.78,.22,1),margin .30s cubic-bezier(.2,.78,.22,1),border-radius .24s ease,background .20s ease,box-shadow .20s ease!important;
    will-change:max-height,height,padding,margin!important;
  }
  .member-drawer .member-account-tabs > button{
    transition:opacity .16s ease,transform .28s cubic-bezier(.2,.75,.22,1),color .16s ease!important;
  }

  .member-drawer.member-tabs-collapsed .member-account-tabs{
    position:sticky!important;
    top:0!important;
    z-index:35!important;
    display:grid!important;
    width:auto!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:4px 8px 10px!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.72)!important;
    border-radius:999px!important;
    background:rgba(229,225,218,.54)!important;
    background-image:linear-gradient(180deg,rgba(255,255,255,.38),rgba(228,223,215,.26))!important;
    backdrop-filter:blur(22px) saturate(140%)!important;
    -webkit-backdrop-filter:blur(22px) saturate(140%)!important;
    box-shadow:
      0 7px 20px rgba(35,31,27,.075),
      inset 0 1px 0 rgba(255,255,255,.82),
      inset 0 -1px 0 rgba(75,66,57,.045)!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }

  .member-drawer.member-tabs-collapsed .member-account-tabs::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    height:auto!important;
    border-radius:inherit!important;
    background:
      radial-gradient(120px 18px at 50% 5%,rgba(255,255,255,.68),transparent 72%),
      linear-gradient(90deg,rgba(255,255,255,.10),rgba(255,255,255,.42),rgba(255,255,255,.10))!important;
    pointer-events:none!important;
  }

  .member-drawer.member-tabs-collapsed .member-account-tabs::after{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    z-index:3!important;
    width:72px!important;
    height:5px!important;
    border-radius:999px!important;
    background:rgba(72,67,61,.30)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.72)!important;
    transform:translate(-50%,-50%)!important;
    pointer-events:none!important;
  }

  .member-drawer.member-tabs-collapsed .member-account-tabs > button{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-14px) scale(.985)!important;
  }

  .member-drawer.member-tabs-collapsed .member-account-tabs:focus-visible{
    outline:2px solid rgba(229,69,40,.32)!important;
    outline-offset:2px!important;
  }
}

/* iPad: animate from the existing 4 x 2 menu down to the one blurred strip. */
@media (min-width:701px) and (max-width:1024px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    max-height:126px!important;
  }
  .member-drawer.member-tabs-collapsed .member-account-tabs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,48px)!important;
  }
}

/* iPhone: animate from the existing 2 x 4 menu down to the same blurred strip. */
@media (max-width:700px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    max-height:220px!important;
  }
  .member-drawer.member-tabs-collapsed .member-account-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(4,46px)!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    margin-inline:7px!important;
  }
}


/* === v53 — mobile/tablet account chrome final layering === */
@media (max-width:1024px){
  #memberDrawer > .member-panel-close.member-panel-close-portal,
  #memberDrawer .member-panel-close{
    z-index:2147483646!important;
    pointer-events:auto!important;
  }

  #memberDrawer > .member-drawer-card{
    z-index:1!important;
  }

  /* The collapsed glass row must never cover the close control. */
  .member-drawer.member-tabs-collapsed .member-account-tabs{
    z-index:40!important;
  }
}


/* === v54 — iPhone/iPad: smoother, more controlled account-menu motion ===
   Mobile/tablet only. No desktop visual changes. */
@media (max-width:1024px){
  .member-drawer .member-account-tabs{
    transform:translateZ(0)!important;
    transform-origin:top center!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    transition:
      height .38s cubic-bezier(.22,1,.36,1),
      min-height .38s cubic-bezier(.22,1,.36,1),
      max-height .38s cubic-bezier(.22,1,.36,1),
      padding .38s cubic-bezier(.22,1,.36,1),
      margin .38s cubic-bezier(.22,1,.36,1),
      gap .34s cubic-bezier(.22,1,.36,1),
      border-radius .32s cubic-bezier(.22,1,.36,1),
      background .30s ease,
      box-shadow .30s ease,
      backdrop-filter .30s ease,
      -webkit-backdrop-filter .30s ease!important;
  }

  .member-drawer .member-account-tabs > button{
    transform-origin:center center!important;
    transition:
      opacity .22s ease,
      transform .34s cubic-bezier(.22,1,.36,1),
      color .18s ease,
      background .18s ease!important;
  }

  /* A tiny cascade on expansion makes the controls feel attached to one solid panel,
     without the "pop" effect of eight buttons appearing at once. */
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    opacity:1!important;
    transform:translateY(0) scale(1)!important;
  }
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(1),
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(2){transition-delay:.025s!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(3),
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(4){transition-delay:.045s!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(5),
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(6){transition-delay:.065s!important}
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(7),
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button:nth-child(8){transition-delay:.085s!important}

  .member-drawer.member-tabs-collapsed .member-account-tabs > button{
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(-9px) scale(.992)!important;
    transition:
      opacity .16s ease,
      transform .24s cubic-bezier(.4,0,.2,1),
      visibility 0s linear .18s!important;
    transition-delay:0s!important;
  }

  /* The glass handle itself fades in/out instead of appearing abruptly. */
  .member-drawer .member-account-tabs::after{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    z-index:3!important;
    width:72px!important;
    height:5px!important;
    border-radius:999px!important;
    background:rgba(72,67,61,.30)!important;
    box-shadow:0 1px 0 rgba(255,255,255,.72)!important;
    transform:translate(-50%,-42%) scaleX(.72)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:
      opacity .20s ease .04s,
      transform .34s cubic-bezier(.22,1,.36,1)!important;
  }
  .member-drawer.member-tabs-collapsed .member-account-tabs::after{
    opacity:1!important;
    transform:translate(-50%,-50%) scaleX(1)!important;
  }

  /* Keep the close control visually independent from the folding panel. */
  #memberDrawer > .member-panel-close.member-panel-close-portal,
  #memberDrawer .member-panel-close{
    transform:translateZ(0)!important;
    z-index:2147483646!important;
  }
}

/* Slightly slower expansion than collapse feels more deliberate on touch devices. */
@media (max-width:700px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    transition-duration:.42s!important;
  }
}
@media (min-width:701px) and (max-width:1024px){
  .member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    transition-duration:.40s!important;
  }
}


/* === v56 — iPhone/iPad: collapsed account bar belongs to the page flow ===
   It stays at the top of the account content, but scrolls away naturally with
   the page instead of remaining pinned to the viewport. Desktop unchanged. */
@media (max-width:1024px){
  .member-drawer.member-tabs-collapsed .member-account-tabs{
    position:relative!important;
    top:auto!important;
    inset-block-start:auto!important;
  }
}


/* === v59 — iPhone/iPad messaging: physically separate account menu from thread back control ===
   The account navigation must not exist as an interactive/painted layer while a real
   owner/tenant conversation page is open. This rule is intentionally LAST so the
   collapsed glass-bar rules cannot re-display it over the “Discussions” button. */
@media (max-width:1024px){
  #memberDrawer.member-drawer.member-message-thread-page .member-account-tabs,
  #memberDrawer.member-drawer.member-message-thread-page.member-tabs-collapsed .member-account-tabs{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
    opacity:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-nav{
    position:relative!important;
    z-index:120!important;
    pointer-events:auto!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-back{
    position:relative!important;
    z-index:121!important;
    pointer-events:auto!important;
    isolation:isolate!important;
  }

  /* The close X remains above both the thread back control and any account chrome. */
  #memberDrawer > .member-panel-close.member-panel-close-portal,
  #memberDrawer .member-panel-close{
    z-index:2147483646!important;
  }
}


/* === v60 — iPad parity with iPhone for account menu + messaging ===
   iPad only (701–1024px). The 8-section account menu collapses into one
   glass row, expands only on a deliberate tap, and real messaging threads
   physically remove the account menu from the interactive layer. */
@media (min-width:701px) and (max-width:1024px){
  /* Expanded iPad menu: 4 columns x 2 rows. */
  #memberDrawer.member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,48px)!important;
    grid-auto-flow:row!important;
    gap:3px 4px!important;
    max-height:126px!important;
    overflow:hidden!important;
  }

  /* Collapsed iPad menu: exactly one row high, same visual behaviour as iPhone. */
  #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs{
    display:grid!important;
    position:relative!important;
    top:auto!important;
    width:auto!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:5px 8px 12px!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.72)!important;
    border-radius:999px!important;
    background:rgba(229,225,218,.54)!important;
    background-image:linear-gradient(180deg,rgba(255,255,255,.38),rgba(228,223,215,.26))!important;
    backdrop-filter:blur(22px) saturate(140%)!important;
    -webkit-backdrop-filter:blur(22px) saturate(140%)!important;
    box-shadow:
      0 7px 20px rgba(35,31,27,.075),
      inset 0 1px 0 rgba(255,255,255,.82),
      inset 0 -1px 0 rgba(75,66,57,.045)!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    z-index:40!important;
  }

  #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs > button{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-9px) scale(.992)!important;
  }

  #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs::after{
    opacity:1!important;
    transform:translate(-50%,-50%) scaleX(1)!important;
  }

  /* A real owner/tenant conversation is a separate page.
     Remove the account menu completely so the “Conversations” back button
     cannot ever overlap or trigger the glass menu. */
  #memberDrawer.member-drawer.member-message-thread-page .member-account-tabs,
  #memberDrawer.member-drawer.member-message-thread-page.member-tabs-collapsed .member-account-tabs{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
    opacity:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-nav{
    position:relative!important;
    z-index:120!important;
    pointer-events:auto!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-back{
    position:relative!important;
    z-index:121!important;
    pointer-events:auto!important;
    isolation:isolate!important;
  }

  #memberDrawer > .member-panel-close.member-panel-close-portal,
  #memberDrawer .member-panel-close{
    z-index:2147483646!important;
  }
}


/* === v61 — real iPad widths above 1024px (landscape / larger iPad Pro) ===
   iPadOS can report 1112/1180/1194/1366 CSS px, so width-only <=1024 rules
   miss the device entirely. The .jtbs-ipad class is added only by JS on a
   genuine iPad/iPadOS touch device; ordinary PCs keep the desktop layout. */
@media (min-width:1025px) and (max-width:1366px){
  html.jtbs-ipad #memberDrawer.member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,48px)!important;
    grid-auto-flow:row!important;
    gap:3px 4px!important;
    max-height:126px!important;
    overflow:hidden!important;
    margin:7px 8px 18px!important;
    padding:7px!important;
    border-radius:20px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    padding:0 7px!important;
    font-size:.88rem!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs{
    display:grid!important;
    position:relative!important;
    top:auto!important;
    width:auto!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:5px 8px 12px!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.72)!important;
    border-radius:999px!important;
    background:rgba(229,225,218,.54)!important;
    background-image:linear-gradient(180deg,rgba(255,255,255,.38),rgba(228,223,215,.26))!important;
    backdrop-filter:blur(22px) saturate(140%)!important;
    -webkit-backdrop-filter:blur(22px) saturate(140%)!important;
    box-shadow:
      0 7px 20px rgba(35,31,27,.075),
      inset 0 1px 0 rgba(255,255,255,.82),
      inset 0 -1px 0 rgba(75,66,57,.045)!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
    z-index:40!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs > button{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-9px) scale(.992)!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs::after{
    opacity:1!important;
    transform:translate(-50%,-50%) scaleX(1)!important;
  }

  /* A selected owner/tenant discussion becomes a dedicated iPad page. */
  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-drawer-card{
    box-sizing:border-box!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page #memberDrawerTitle,
  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-account-tabs,
  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page.member-tabs-collapsed .member-account-tabs{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page #memberDrawerContent,
  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page #memberDrawerContent > .member-account-view,
  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-messaging-shell{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html.jtbs-ipad #memberDrawer[data-account-view="messages"]
  .member-account-view.member-message-thread-open > .member-message-inbox-switch,
  html.jtbs-ipad #memberDrawer[data-account-view="messages"]
  .member-account-view.member-message-thread-open > .member-message-topbar,
  html.jtbs-ipad #memberDrawer[data-account-view="messages"]
  .member-account-view.member-message-thread-open > .member-message-connections-page,
  html.jtbs-ipad #memberDrawer[data-account-view="messages"]
  .member-account-view.member-message-thread-open .member-message-thread-list{
    display:none!important;
  }

  html.jtbs-ipad #memberDrawer[data-account-view="messages"]
  .member-account-view.member-message-thread-open .member-message-conversation{
    display:flex!important;
    flex:1 1 0!important;
    flex-direction:column!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-nav{
    display:flex!important;
    flex:0 0 auto!important;
    position:relative!important;
    z-index:120!important;
    align-items:center!important;
    min-height:42px!important;
    padding:4px 12px!important;
    border-bottom:1px solid rgba(23,23,23,.08)!important;
    background:rgba(251,250,247,.96)!important;
    pointer-events:auto!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-back{
    display:inline-flex!important;
    align-items:center!important;
    position:relative!important;
    z-index:121!important;
    min-height:34px!important;
    padding:5px 10px!important;
    border:1px solid rgba(23,23,23,.10)!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#171717!important;
    font-size:.86rem!important;
    font-weight:800!important;
    pointer-events:auto!important;
    isolation:isolate!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-message-conversation-head{
    flex:0 0 auto!important;
    padding:9px 12px 8px!important;
    gap:8px 12px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding:12px 14px 10px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer.member-message-thread-page .member-message-composer{
    flex:0 0 auto!important;
    margin:0!important;
    padding:7px 12px calc(7px + env(safe-area-inset-bottom))!important;
    background:#fff!important;
    border-top:1px solid rgba(23,23,23,.07)!important;
  }

  html.jtbs-ipad #memberDrawer > .member-panel-close.member-panel-close-portal,
  html.jtbs-ipad #memberDrawer .member-panel-close{
    z-index:2147483646!important;
  }
}


/* === v62 — iPad: visible dark grab/expand handle in the blurred account bar ===
   Explicitly redraw the centered handle so it remains visible after all legacy
   ::before/::after rules and communicates that the glass bar is tappable. */
@media (min-width:701px) and (max-width:1024px){
  #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    z-index:6!important;
    width:min(28%,132px)!important;
    min-width:84px!important;
    height:6px!important;
    border-radius:999px!important;
    background:rgba(47,44,40,.58)!important;
    box-shadow:
      0 1px 0 rgba(255,255,255,.72),
      0 2px 7px rgba(23,23,23,.10)!important;
    opacity:1!important;
    transform:translate(-50%,-50%)!important;
    pointer-events:none!important;
  }
}

/* Real iPadOS in landscape / larger iPad Pro widths. */
@media (min-width:1025px) and (max-width:1366px){
  html.jtbs-ipad #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    z-index:6!important;
    width:min(28%,132px)!important;
    min-width:84px!important;
    height:6px!important;
    border-radius:999px!important;
    background:rgba(47,44,40,.58)!important;
    box-shadow:
      0 1px 0 rgba(255,255,255,.72),
      0 2px 7px rgba(23,23,23,.10)!important;
    opacity:1!important;
    transform:translate(-50%,-50%)!important;
    pointer-events:none!important;
  }
}


/* === v63 — iPad messaging stays two-pane; composer always visible ===
   iPhone keeps the dedicated full-screen conversation page.
   iPad behaves like desktop messaging: discussion list at left, selected
   conversation at right, both contained inside the available viewport. */

/* Standard iPad/tablet widths. */
@media (min-width:701px) and (max-width:1024px){
  #memberDrawer.member-drawer[data-account-view="messages"]{
    align-items:center!important;
    justify-content:center!important;
    padding:12px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] > .member-drawer-card{
    box-sizing:border-box!important;
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    height:calc(100dvh - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    padding:18px 20px!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent > .member-account-tabs{
    flex:0 0 auto!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent > .member-account-view{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-inbox-switch,
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-topbar{
    flex:0 0 auto!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-messaging-shell{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:minmax(240px,34%) minmax(0,1fr)!important;
    gap:12px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-thread-list{
    display:block!important;
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-conversation{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
    overflow:hidden!important;
    border:1px solid rgba(23,23,23,.1)!important;
    border-radius:17px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-conversation-head{
    flex:0 0 auto!important;
    padding:9px 11px 8px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    padding:11px 12px 9px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-quick{
    flex:0 0 auto!important;
    padding:5px 10px 0!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-composer{
    flex:0 0 auto!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:end!important;
    gap:8px!important;
    margin:0!important;
    padding:7px 10px 8px!important;
    background:#fff!important;
    border-top:1px solid rgba(23,23,23,.07)!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-composer textarea{
    min-height:40px!important;
    max-height:88px!important;
    padding:8px 10px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-composer .btn{
    min-height:40px!important;
    width:auto!important;
    padding:7px 12px!important;
  }

  /* No iPhone-style second page and no “Discussions” back bar on iPad. */
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-mobile-nav,
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-mobile-back{
    display:none!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open .member-message-thread-list{
    display:block!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open .member-message-conversation{
    display:flex!important;
  }
}

/* Real iPadOS landscape / larger iPad Pro widths.
   Ordinary PCs do not receive this because .jtbs-ipad is device-detected. */
@media (min-width:1025px) and (max-width:1366px){
  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] > .member-drawer-card{
    box-sizing:border-box!important;
    height:calc(100dvh - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent{
    flex:1 1 0!important;
    min-height:0!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent > .member-account-view{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-messaging-shell{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:minmax(270px,32%) minmax(0,1fr)!important;
    gap:12px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-message-thread-list{
    display:block!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-message-conversation{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-message-composer{
    flex:0 0 auto!important;
    margin:0!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-message-mobile-nav,
  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-message-mobile-back{
    display:none!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"] .member-account-view.member-message-thread-open .member-message-thread-list{
    display:block!important;
  }
}


/* === v64 — iPad messaging: keep Delete anchored at the far right === */
@media (min-width:701px) and (max-width:1024px){
  #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions{
    width:auto!important;
    min-width:0!important;
    justify-self:end!important;
    align-self:start!important;
    margin-left:auto!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    display:flex!important;
    justify-content:flex-end!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions > .member-message-delete:only-child{
    width:auto!important;
    min-width:0!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }
}

/* Real iPadOS landscape / larger iPad Pro widths. */
@media (min-width:1025px) and (max-width:1366px){
  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions{
    width:auto!important;
    min-width:0!important;
    justify-self:end!important;
    align-self:start!important;
    margin-left:auto!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    display:flex!important;
    justify-content:flex-end!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions > .member-message-delete:only-child{
    width:auto!important;
    min-width:0!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }
}


/* === v65 — iPhone messaging controls: larger, cleaner touch targets ===
   iPhone only. Make the back-to-discussions button and the single Delete
   action feel intentional and properly integrated into the conversation UI. */
@media (max-width:700px){
  #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-nav{
    min-height:48px!important;
    padding:5px 9px!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-back{
    min-height:40px!important;
    padding:8px 12px!important;
    border-radius:13px!important;
    font-size:.9rem!important;
    line-height:1.1!important;
    font-weight:820!important;
    border:1px solid rgba(23,23,23,.11)!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:
      0 3px 10px rgba(23,23,23,.055),
      inset 0 1px 0 rgba(255,255,255,.9)!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page .member-message-mobile-back:active{
    transform:scale(.985)!important;
    background:#f4f3ef!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    align-self:start!important;
    justify-self:end!important;
    width:auto!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page
  .member-message-conversation-actions > .member-message-delete:only-child{
    min-height:38px!important;
    padding:8px 11px!important;
    border-radius:12px!important;
    font-size:.8rem!important;
    line-height:1.05!important;
    font-weight:800!important;
    border:1px solid rgba(23,23,23,.11)!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:
      0 3px 10px rgba(23,23,23,.05),
      inset 0 1px 0 rgba(255,255,255,.9)!important;
  }

  #memberDrawer.member-drawer.member-message-thread-page
  .member-message-conversation-actions > .member-message-delete:only-child:active{
    transform:scale(.985)!important;
    background:#f4f3ef!important;
  }
}


/* === v71 — PC messaging: composer visible immediately, no outer-page scroll ===
   Desktop only. The account drawer itself stays fixed to the viewport.
   The left discussion list and the message history are the two scrollable areas.
   iPhone/iPad keep their dedicated rules. */
@media (min-width:1025px){
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] > .member-drawer-card{
    box-sizing:border-box!important;
    height:calc(100dvh - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent > .member-account-tabs{
    flex:0 0 auto!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] #memberDrawerContent > .member-account-view{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-inbox-switch,
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-topbar{
    flex:0 0 auto!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-messaging-shell{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:hidden!important;
    align-items:stretch!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-thread-list{
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-conversation{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    height:100%!important;
    max-height:none!important;
    overflow:hidden!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-conversation-head{
    flex:0 0 auto!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-bubbles{
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-quick{
    flex:0 0 auto!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"] .member-message-composer{
    flex:0 0 auto!important;
    margin:0!important;
    position:relative!important;
    bottom:auto!important;
    background:#fff!important;
    z-index:3!important;
  }
}


/* === v72 — PC account menu: iPad-like folding glass bar + hover expansion ===
   Desktop only. The menu auto-folds after opening, expands when the mouse enters
   the glass bar, then stays expanded until one of the 8 account sections is chosen. */
@media (min-width:1025px){
  html:not(.jtbs-ipad) #memberDrawer.member-drawer .member-account-tabs{
    position:relative!important;
    transform:translateZ(0)!important;
    transform-origin:top center!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    transition:
      height .36s cubic-bezier(.22,1,.36,1),
      min-height .36s cubic-bezier(.22,1,.36,1),
      max-height .36s cubic-bezier(.22,1,.36,1),
      padding .36s cubic-bezier(.22,1,.36,1),
      margin .36s cubic-bezier(.22,1,.36,1),
      gap .32s cubic-bezier(.22,1,.36,1),
      border-radius .30s cubic-bezier(.22,1,.36,1),
      background .26s ease,
      box-shadow .26s ease,
      backdrop-filter .26s ease,
      -webkit-backdrop-filter .26s ease!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer .member-account-tabs > button{
    transform-origin:center center!important;
    transition:
      opacity .18s ease,
      transform .30s cubic-bezier(.22,1,.36,1),
      color .18s ease,
      background .18s ease!important;
  }

  /* Keep the current desktop expanded arrangement; only give it a finite
     animated height so it can fold smoothly into the glass bar. */
  html:not(.jtbs-ipad) #memberDrawer.member-drawer:not(.member-tabs-collapsed) .member-account-tabs{
    min-height:0!important;
    height:auto!important;
    max-height:190px!important;
    overflow:hidden!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer:not(.member-tabs-collapsed) .member-account-tabs > button{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }

  /* Folded state: same visual language as iPad. */
  html:not(.jtbs-ipad) #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs{
    display:grid!important;
    position:relative!important;
    top:auto!important;
    inset-block-start:auto!important;
    width:auto!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:5px 8px 12px!important;
    padding:0!important;
    gap:0!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.72)!important;
    border-radius:999px!important;
    background:rgba(229,225,218,.54)!important;
    background-image:linear-gradient(180deg,rgba(255,255,255,.38),rgba(228,223,215,.26))!important;
    backdrop-filter:blur(22px) saturate(140%)!important;
    -webkit-backdrop-filter:blur(22px) saturate(140%)!important;
    box-shadow:
      0 7px 20px rgba(35,31,27,.075),
      inset 0 1px 0 rgba(255,255,255,.82),
      inset 0 -1px 0 rgba(75,66,57,.045)!important;
    cursor:pointer!important;
    z-index:40!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    border-radius:inherit!important;
    background:
      radial-gradient(150px 20px at 50% 4%,rgba(255,255,255,.68),transparent 72%),
      linear-gradient(90deg,rgba(255,255,255,.10),rgba(255,255,255,.42),rgba(255,255,255,.10))!important;
    pointer-events:none!important;
  }

  /* Wide dark center handle: it visually reads as an interactive control. */
  html:not(.jtbs-ipad) #memberDrawer.member-drawer .member-account-tabs::after{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    z-index:6!important;
    width:112px!important;
    height:6px!important;
    border-radius:999px!important;
    background:rgba(47,44,40,.56)!important;
    box-shadow:
      0 1px 0 rgba(255,255,255,.72),
      0 2px 7px rgba(23,23,23,.09)!important;
    opacity:0!important;
    transform:translate(-50%,-44%) scaleX(.76)!important;
    pointer-events:none!important;
    transition:
      opacity .18s ease,
      transform .30s cubic-bezier(.22,1,.36,1)!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs::after{
    opacity:1!important;
    transform:translate(-50%,-50%) scaleX(1)!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs > button{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-9px) scale(.992)!important;
    transition-delay:0s!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer.member-tabs-collapsed .member-account-tabs:focus-visible{
    outline:2px solid rgba(229,69,40,.30)!important;
    outline-offset:2px!important;
  }

  /* The close X is never part of the hoverable glass control and always remains
     the highest interactive layer. */
  html:not(.jtbs-ipad) #memberDrawer > .member-panel-close.member-panel-close-portal,
  html:not(.jtbs-ipad) #memberDrawer .member-panel-close{
    position:relative;
    z-index:2147483646!important;
    pointer-events:auto!important;
    transform:translateZ(0)!important;
  }
}


/* === v75 — Candidates/Tenants live INSIDE the existing account glass menu ===
   No second messaging bubble. These two controls exist only while Messages is
   the active account section, and only for owner accounts. */

/* Shared visual treatment for the two message-mode buttons. */
#memberDrawer.member-drawer[data-account-view="messages"]
.member-account-tabs > button.member-account-message-filter{
  position:relative!important;
}

#memberDrawer.member-drawer[data-account-view="messages"]
.member-account-tabs > button.member-account-message-filter > span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:21px!important;
  height:21px!important;
  margin-left:5px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  font-size:.76em!important;
  font-weight:800!important;
  line-height:1!important;
  background:rgba(23,23,23,.08)!important;
}

#memberDrawer.member-drawer[data-account-view="messages"]
.member-account-tabs > button.member-account-message-filter[aria-pressed="true"]{
  color:#fff!important;
  background:transparent!important;
}

#memberDrawer.member-drawer[data-account-view="messages"]
.member-account-tabs > button.member-account-message-filter[aria-pressed="true"]::before{
  background:#171717!important;
  box-shadow:
    0 7px 17px rgba(23,23,23,.14),
    inset 0 1px 0 rgba(255,255,255,.10)!important;
}

#memberDrawer.member-drawer[data-account-view="messages"]
.member-account-tabs > button.member-account-message-filter[aria-pressed="true"] > span{
  position:relative!important;
  z-index:2!important;
  color:#171717!important;
  background:rgba(255,255,255,.88)!important;
}

/* PC: keep everything in the SAME glass plate.
   The normal menu is 4x2; Messages adds a temporary third row for the two
   message filters. Because the whole account menu folds away on mouse leave,
   this extra height only exists while the user is actually using it. */
@media (min-width:1025px){
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(3,52px)!important;
    max-height:178px!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="prospect"]{
    grid-column:1 / span 2!important;
    grid-row:3!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="tenant"]{
    grid-column:3 / span 2!important;
    grid-row:3!important;
  }
}

/* iPad portrait / standard widths: same single bubble, third row appears only
   while the account menu is expanded in Messages. */
@media (min-width:701px) and (max-width:1024px){
  #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(3,48px)!important;
    max-height:174px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="prospect"]{
    grid-column:1 / span 2!important;
    grid-row:3!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="tenant"]{
    grid-column:3 / span 2!important;
    grid-row:3!important;
  }
}

/* Real iPadOS landscape / larger iPad Pro widths. */
@media (min-width:1025px) and (max-width:1366px){
  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(3,48px)!important;
    max-height:174px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="prospect"]{
    grid-column:1 / span 2!important;
    grid-row:3!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="tenant"]{
    grid-column:3 / span 2!important;
    grid-row:3!important;
  }
}

/* iPhone: existing 2-column plate simply gains a fifth row. */
@media (max-width:700px){
  #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(5,46px)!important;
    max-height:258px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="prospect"]{
    grid-column:1!important;
    grid-row:5!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]:not(.member-tabs-collapsed)
  .member-account-tabs > button[data-message-inbox="tenant"]{
    grid-column:2!important;
    grid-row:5!important;
  }
}


/* === v77 — Instagram-like per-message action ===
   Only the sender's own messages have an action menu.
   The subtle ellipsis sits on the INNER side of the bubble (toward the visual
   center of the conversation), never on the outer screen edge. */
#memberDrawer.member-drawer[data-account-view="messages"] .member-message-row{
  position:relative!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-row.mine{
  justify-content:flex-end!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-row.theirs{
  justify-content:flex-start!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-row .member-message-bubble{
  flex:0 1 auto!important;
  align-self:auto!important;
}

/* For my right-aligned bubble, the action is immediately to its LEFT,
   which is the center-facing / Instagram-like side. */
#memberDrawer.member-drawer[data-account-view="messages"] .member-message-more-wrap{
  position:relative!important;
  flex:0 0 auto!important;
  align-self:center!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-more{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:29px!important;
  height:29px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:rgba(23,23,23,.48)!important;
  font-size:20px!important;
  font-weight:760!important;
  line-height:1!important;
  letter-spacing:1px!important;
  cursor:pointer!important;
  opacity:.42!important;
  transform:translateY(-1px)!important;
  transition:
    opacity .15s ease,
    background .15s ease,
    color .15s ease,
    transform .15s ease!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-row:hover .member-message-more,
#memberDrawer.member-drawer[data-account-view="messages"] .member-message-more:focus-visible,
#memberDrawer.member-drawer[data-account-view="messages"] .member-message-more[aria-expanded="true"]{
  opacity:1!important;
  color:rgba(23,23,23,.78)!important;
  background:rgba(23,23,23,.055)!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-more:active{
  transform:translateY(-1px) scale(.94)!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-menu{
  position:absolute!important;
  right:0!important;
  top:calc(100% + 5px)!important;
  z-index:220!important;
  min-width:126px!important;
  padding:5px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:13px!important;
  background:rgba(250,249,247,.94)!important;
  backdrop-filter:blur(18px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(135%)!important;
  box-shadow:
    0 12px 30px rgba(24,22,20,.14),
    inset 0 1px 0 rgba(255,255,255,.90)!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-menu[hidden]{
  display:none!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-menu button{
  width:100%!important;
  min-height:36px!important;
  padding:7px 10px!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  color:#b42318!important;
  text-align:left!important;
  font:inherit!important;
  font-size:.85rem!important;
  font-weight:780!important;
  cursor:pointer!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-menu button:hover,
#memberDrawer.member-drawer[data-account-view="messages"] .member-message-menu button:focus-visible{
  background:rgba(180,35,24,.075)!important;
  outline:none!important;
}

/* Touch devices have no hover state, so keep the dots faintly discoverable. */
@media (hover:none), (pointer:coarse){
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-more{
    width:31px!important;
    height:31px!important;
    opacity:.58!important;
  }
}

/* Phone: preserve message width while leaving just enough room for the dots. */
@media (max-width:700px){
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-row{
    gap:3px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-row .member-message-bubble{
    max-width:calc(90% - 28px)!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-more{
    width:26px!important;
    height:28px!important;
    font-size:18px!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-menu{
    right:-2px!important;
    min-width:118px!important;
  }
}


/* === v78 — Direct trash icon + centered delete confirmation ===
   PC, iPad and iPhone. The confirmation is centered inside the discussion pane. */

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash-wrap{
  position:relative!important;
  flex:0 0 auto!important;
  align-self:center!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:30px!important;
  height:30px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  color:rgba(23,23,23,.42)!important;
  cursor:pointer!important;
  opacity:.46!important;
  transition:opacity .15s ease,color .15s ease,background .15s ease,transform .15s ease!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash svg{
  width:15px!important;
  height:15px!important;
  display:block!important;
  pointer-events:none!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-row:hover .member-message-trash,
#memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash:focus-visible{
  opacity:1!important;
  color:rgba(180,35,24,.84)!important;
  background:rgba(180,35,24,.065)!important;
  outline:none!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash:active{
  transform:scale(.93)!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] #memberMessageConversation{
  position:relative!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm-layer{
  position:absolute!important;
  inset:0!important;
  z-index:500!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  background:rgba(248,247,244,.22)!important;
  backdrop-filter:blur(2.5px)!important;
  -webkit-backdrop-filter:blur(2.5px)!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm-layer[hidden]{
  display:none!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm{
  width:min(330px,calc(100% - 28px))!important;
  padding:18px 18px 15px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:18px!important;
  background:rgba(250,249,247,.96)!important;
  backdrop-filter:blur(22px) saturate(138%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(138%)!important;
  box-shadow:0 20px 48px rgba(25,22,20,.18),inset 0 1px 0 rgba(255,255,255,.92)!important;
  text-align:center!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm p{
  margin:0 0 15px!important;
  color:#171717!important;
  font-size:.96rem!important;
  line-height:1.42!important;
  font-weight:700!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm-actions button{
  min-height:40px!important;
  border-radius:12px!important;
  padding:8px 12px!important;
  font:inherit!important;
  font-size:.9rem!important;
  font-weight:800!important;
  cursor:pointer!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm-no{
  border:1px solid rgba(23,23,23,.10)!important;
  background:rgba(255,255,255,.82)!important;
  color:#171717!important;
}

#memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm-yes{
  border:1px solid rgba(180,35,24,.12)!important;
  background:#b42318!important;
  color:#fff!important;
}

@media (hover:none), (pointer:coarse){
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash{
    width:31px!important;
    height:31px!important;
    opacity:.62!important;
  }
}

@media (max-width:700px){
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash{
    width:27px!important;
    height:29px!important;
  }
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-trash svg{
    width:14px!important;
    height:14px!important;
  }
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm-layer{
    padding:12px!important;
  }
  #memberDrawer.member-drawer[data-account-view="messages"] .member-message-delete-confirm{
    width:min(300px,calc(100% - 14px))!important;
    padding:16px 15px 14px!important;
  }
}


/* === v79 — Messaging context cleanup ===
   The global messaging controls are useful only at the first/root level.
   Once an owner opens an address/building, hide the whole top bar on every
   device (PC, iPad, iPhone) to give the location/conversation more height. */
#memberDrawer.member-drawer[data-account-view="messages"]
.member-account-view.member-message-location-open > .member-message-topbar{
  display:none!important;
}


/* === v80 — Messaging polish ===
   1) PC tenant conversations: the single Delete action stays at far right.
   2) iPad Prospects: building/address title stays on one line.
   3) Suggested replies are removed in JS for candidate conversations. */

/* PC — a tenant conversation has only Delete; keep it anchored right. */
@media (min-width:1025px){
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-head:has(.member-message-conversation-actions > .member-message-delete:only-child){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    width:auto!important;
    min-width:0!important;
    justify-self:end!important;
    align-self:start!important;
    justify-content:flex-end!important;
    margin-left:auto!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-actions > .member-message-delete:only-child{
    width:auto!important;
    min-width:0!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }
}

/* iPad — Prospects building/address title on a single line.
   We truncate only if the address is exceptionally long rather than wrapping
   onto a second line and consuming vertical space. */
@media (min-width:701px) and (max-width:1024px){
  #memberDrawer.member-drawer[data-account-view="messages"]
  .member-account-view.member-message-inbox-prospect
  .member-message-building .member-message-thread-head{
    min-width:0!important;
  }

  #memberDrawer.member-drawer[data-account-view="messages"]
  .member-account-view.member-message-inbox-prospect
  .member-message-building .member-message-thread-head strong{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (min-width:1025px) and (max-width:1366px){
  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]
  .member-account-view.member-message-inbox-prospect
  .member-message-building .member-message-thread-head{
    min-width:0!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="messages"]
  .member-account-view.member-message-inbox-prospect
  .member-message-building .member-message-thread-head strong{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}


/* === v81 — PC tenant conversation: single Delete truly at far right ===
   v22 still made the actions container a 2-column CSS grid. With only one
   button left, that button occupied grid column 1, so it looked centered.
   Force this specific one-button state to flex on desktop. */
@media (min-width:1025px){
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-head
  .member-message-conversation-actions:has(> .member-message-delete:only-child){
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    justify-self:end!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    margin-left:auto!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="messages"]
  .member-message-conversation-head
  .member-message-conversation-actions > .member-message-delete:only-child{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    white-space:nowrap!important;
  }
}


/* === v82 — Calendar height optimization ===
   Goal: a full 06:00–23:00 day is visible at once, without vertical scrolling
   inside the agenda. PC + iPad are strongly compacted; iPhone is compacted a
   little less to preserve touch readability. */

/* Shared: the calendar itself must no longer become a second vertical scroller. */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-scroll{
  max-height:none!important;
  overflow-y:hidden!important;
  overscroll-behavior-x:contain!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda{
  gap:8px!important;
  padding:12px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda-head{
  gap:12px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda-head h3{
  margin:4px 0 3px!important;
  font-size:clamp(20px,1.7vw,25px)!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda-head p{
  font-size:12px!important;
  line-height:1.34!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-calendar-help{
  padding:7px 10px!important;
  font-size:11px!important;
  line-height:1.3!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-toolbar{
  padding:7px 10px!important;
  gap:8px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-nav button{
  min-width:32px!important;
  min-height:32px!important;
  padding:4px 8px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-title{
  font-size:15px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-day-head{
  min-height:40px!important;
  gap:1px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-day-head strong{
  width:26px!important;
  height:26px!important;
  font-size:13px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-footer{
  min-height:30px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-mobile-help{
  padding:6px 9px!important;
  font-size:10px!important;
  line-height:1.25!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-calendar-legend{
  font-size:11px!important;
  gap:10px!important;
}

/* PC — 68 quarter-hour slots × 8px = 544px for the complete day. */
@media (min-width:1025px){
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis{
    height:544px!important;
    grid-template-rows:repeat(17,32px)!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-day-column{
    height:544px!important;
    background:
      repeating-linear-gradient(to bottom,transparent 0,transparent 7px,rgba(23,23,23,.045) 7px,rgba(23,23,23,.045) 8px),
      repeating-linear-gradient(to bottom,transparent 0,transparent 31px,rgba(23,23,23,.09) 31px,rgba(23,23,23,.09) 32px)!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-slot{
    height:8px!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-overlay{
    grid-template-rows:repeat(68,8px)!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis span{
    padding:5px 8px 0 4px!important;
    font-size:10px!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event{
    margin:1px 3px!important;
    padding:2px 4px!important;
    border-radius:5px!important;
  }

  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event strong,
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event span{
    font-size:9px!important;
    line-height:1.05!important;
  }
}

/* iPad — same compact full-day geometry, including real iPadOS landscape
   where the CSS viewport can be wider than 1024px. */
@media (min-width:701px) and (max-width:1024px){
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis{
    height:544px!important;
    grid-template-rows:repeat(17,32px)!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-day-column{
    height:544px!important;
    background:
      repeating-linear-gradient(to bottom,transparent 0,transparent 7px,rgba(23,23,23,.045) 7px,rgba(23,23,23,.045) 8px),
      repeating-linear-gradient(to bottom,transparent 0,transparent 31px,rgba(23,23,23,.09) 31px,rgba(23,23,23,.09) 32px)!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-slot{
    height:8px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-overlay{
    grid-template-rows:repeat(68,8px)!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis span{
    padding:5px 7px 0 3px!important;
    font-size:10px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event{
    margin:1px 2px!important;
    padding:2px 3px!important;
    border-radius:5px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event strong,
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event span{
    font-size:8.5px!important;
    line-height:1.02!important;
  }
}

@media (min-width:1025px) and (max-width:1366px){
  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis{
    height:544px!important;
    grid-template-rows:repeat(17,32px)!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-day-column{
    height:544px!important;
    background:
      repeating-linear-gradient(to bottom,transparent 0,transparent 7px,rgba(23,23,23,.045) 7px,rgba(23,23,23,.045) 8px),
      repeating-linear-gradient(to bottom,transparent 0,transparent 31px,rgba(23,23,23,.09) 31px,rgba(23,23,23,.09) 32px)!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-slot{
    height:8px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-overlay{
    grid-template-rows:repeat(68,8px)!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis span{
    padding:5px 7px 0 3px!important;
    font-size:10px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event{
    margin:1px 2px!important;
    padding:2px 3px!important;
    border-radius:5px!important;
  }

  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event strong,
  html.jtbs-ipad #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event span{
    font-size:8.5px!important;
    line-height:1.02!important;
  }
}

/* iPhone — slightly less compression: 68 × 9px = 612px.
   Still shows the whole day without the previous 1088px-tall internal scroll. */
@media (max-width:700px){
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda{
    padding:9px!important;
    gap:7px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda-head{
    gap:7px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda-head h3{
    font-size:19px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-agenda-head p{
    font-size:11px!important;
    line-height:1.28!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-calendar-listing-filter select{
    padding:8px 10px!important;
    min-height:38px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-toolbar{
    padding:7px 8px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis{
    height:612px!important;
    grid-template-rows:repeat(17,36px)!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-day-column{
    height:612px!important;
    background:
      repeating-linear-gradient(to bottom,transparent 0,transparent 8px,rgba(23,23,23,.045) 8px,rgba(23,23,23,.045) 9px),
      repeating-linear-gradient(to bottom,transparent 0,transparent 35px,rgba(23,23,23,.09) 35px,rgba(23,23,23,.09) 36px)!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-slot{
    height:9px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-overlay{
    grid-template-rows:repeat(68,9px)!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-time-axis span{
    padding:5px 6px 0 2px!important;
    font-size:9px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-day-head{
    min-height:38px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event{
    margin:1px 3px!important;
    padding:2px 4px!important;
    border-radius:5px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event strong,
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event span{
    font-size:9px!important;
    line-height:1.03!important;
  }
}


/* === v83 — Calendar interaction upgrade ===
   - iPad/iPhone: tapping an empty time opens a proper From/To range editor
     instead of instantly creating a fixed 30-minute window.
   - Saved availability: Edit + Cancel actions on every device.
   - Visits always render as opaque black blocks ABOVE availability.
   - Availability stays as one continuous full-width background instead of
     being split into side-by-side "checkerboard" lanes. */

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-calendar{
  position:relative!important;
}

/* Availability is a continuous underlay. Parallel availability windows may
   overlap each other visually, but they no longer split the orange background
   into alternating narrow columns. */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event.is-availability{
  width:calc(100% - 8px)!important;
  transform:none!important;
  z-index:3!important;
  opacity:1!important;
  margin-left:4px!important;
  margin-right:4px!important;
}

/* A visit always wins visually over an availability block. Even tentative
   visits stay opaque black so the availability underneath never shows through. */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event.is-visit{
  z-index:20!important;
  width:auto!important;
  transform:none!important;
  opacity:1!important;
  background:#171717!important;
  border-color:#171717!important;
  color:#fff!important;
  box-shadow:0 2px 8px rgba(23,23,23,.16)!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event.is-visit.is-tentative{
  opacity:1!important;
  border-style:dashed!important;
}

/* Touch range editor, centered inside the calendar. */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-layer{
  position:absolute!important;
  inset:0!important;
  z-index:80!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:16px!important;
  background:rgba(248,247,244,.26)!important;
  backdrop-filter:blur(2.5px)!important;
  -webkit-backdrop-filter:blur(2.5px)!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-layer[hidden]{
  display:none!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor{
  width:min(390px,calc(100% - 24px))!important;
  padding:17px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  border-radius:18px!important;
  background:rgba(250,249,247,.97)!important;
  box-shadow:0 20px 48px rgba(23,23,23,.17),inset 0 1px 0 rgba(255,255,255,.92)!important;
  backdrop-filter:blur(22px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(135%)!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-head{
  display:grid!important;
  gap:3px!important;
  margin-bottom:13px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-head strong{
  font-size:16px!important;
  line-height:1.25!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-head span{
  color:rgba(23,23,23,.56)!important;
  font-size:12px!important;
  text-transform:capitalize!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-fields{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-fields label,
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-fields label{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
  color:rgba(23,23,23,.68)!important;
  font-size:11px!important;
  font-weight:850!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-fields input,
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-fields input{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(23,23,23,.12)!important;
  border-radius:11px!important;
  background:#fff!important;
  padding:7px 10px!important;
  color:#171717!important;
  font:inherit!important;
  font-size:16px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
  margin-top:13px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-actions .btn{
  width:100%!important;
  min-height:40px!important;
  margin:0!important;
}

/* Saved availability: two actions and an inline time editor. */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-block{
  grid-template-columns:minmax(170px,.7fr) minmax(220px,1.3fr) auto!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-block-actions{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:7px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit{
  min-height:38px!important;
  margin:0!important;
  white-space:nowrap!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-form{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px 14px!important;
  align-items:end!important;
  padding:12px!important;
  border-top:1px solid rgba(23,23,23,.075)!important;
  background:#fbfaf7!important;
  border-radius:11px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-form[hidden]{
  display:none!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-main{
  display:grid!important;
  gap:7px!important;
  min-width:0!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-date{
  font-size:12px!important;
  font-weight:850!important;
  text-transform:capitalize!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-fields{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(120px,180px))!important;
  gap:9px!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  flex-wrap:wrap!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-actions .btn{
  min-height:38px!important;
  margin:0!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-status{
  grid-column:1 / -1!important;
  min-height:0!important;
  font-size:11px!important;
  color:#a43b28!important;
}

/* iPad + phone: actions stay easy to tap and the editor reflows cleanly. */
@media (max-width:1024px){
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-block-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-block-actions .btn{
    width:100%!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-form{
    grid-template-columns:1fr!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-actions{
    justify-content:stretch!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-actions .btn{
    width:100%!important;
  }
}

@media (max-width:700px){
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor-layer{
    padding:10px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-editor{
    width:min(320px,calc(100% - 10px))!important;
    padding:15px!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-range-fields,
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-edit-fields{
    grid-template-columns:1fr 1fr!important;
  }

  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-availability-block{
    grid-template-columns:1fr!important;
  }
}


/* === v84 — Owner AI settings split by conversation type === */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-activation-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:12px!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px 15px!important;
  border:1px solid rgba(23,23,23,.08)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.78)!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-card.is-active{
  border-color:rgba(23,23,23,.16)!important;
  background:rgba(247,246,242,.96)!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-copy{
  min-width:0!important;
  display:grid!important;
  gap:4px!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-copy strong{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  font-size:14px!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-copy strong i{
  width:7px!important;height:7px!important;border-radius:999px!important;background:rgba(23,23,23,.25)!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-card.is-active .owner-ai-mode-copy strong i{
  background:#171717!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-copy p{
  margin:0!important;color:rgba(23,23,23,.62)!important;font-size:11px!important;line-height:1.38!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-copy small{
  color:#a43b28!important;font-size:10px!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-card .btn{
  min-width:94px!important;margin:0!important;white-space:nowrap!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-settings{
  gap:12px!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-runtime-intro{
  gap:5px!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-runtime-badges{
  margin-bottom:2px!important;
}
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-settings .owner-ai-setting-row{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
@media (max-width:800px){
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-activation-grid{grid-template-columns:1fr!important;}
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-settings .owner-ai-setting-row{grid-template-columns:1fr!important;}
}
@media (max-width:700px){
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-card{grid-template-columns:1fr!important;padding:12px!important;}
  #memberDrawer.member-drawer[data-account-view="calendar"] .owner-ai-mode-card .btn{width:100%!important;}
}


/* === v85 — Calendar desktop wheel + clean availability + live time preview ===
   PC: vertical wheel movement over the calendar belongs to the account/page
   scroller, not to the horizontal calendar viewport. This removes the
   "scrolling into nothing" / sticky-wheel feeling. */
@media (min-width:1025px){
  html:not(.jtbs-ipad) #memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-scroll{
    overscroll-behavior-y:auto!important;
    overscroll-behavior-x:contain!important;
  }
}

/* Availability windows: clean solid fill, no dashed/dotted outline on any
   device. Visits keep their own black visual layer above them. */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-event.is-availability{
  border:0!important;
  outline:0!important;
  box-shadow:inset 0 0 0 1px rgba(197,91,17,.10)!important;
}

/* PC drag selection shows its exact From–To time live, so the user can see
   the selected hours before releasing the mouse. */
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-drag-preview{
  overflow:visible!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-drag-preview::after{
  content:attr(data-owner-native-range-label)!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  z-index:8!important;
  transform:translate(-50%,-50%)!important;
  max-width:calc(100% - 10px)!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:rgba(250,249,247,.96)!important;
  border:1px solid rgba(23,23,23,.08)!important;
  box-shadow:0 2px 8px rgba(23,23,23,.08)!important;
  color:#171717!important;
  font-size:10px!important;
  font-weight:850!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}

#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-drag-preview:not([data-owner-native-range-label])::after,
#memberDrawer.member-drawer[data-account-view="calendar"] .owner-native-drag-preview[data-owner-native-range-label=""]::after{
  display:none!important;
}
