/* =========================================================
   Get Help Now style.css — CLEAN FLUID DROP-IN
   Owns ONLY Get Help Now page/template styles.

   Cleanup notes:
   - One filter system only
   - No stacked hotfix overrides
   - Compact utility controls
   - Shorter ZIP / distance / location / search buttons
   - Tighter pagination
   ========================================================= */

/* =========================================================
   0) TOKENS
   ========================================================= */
:root{
  --aa-font-family:var(--rrh-font-family,inherit);

  --aa-text:var(--rrh-text,#334843);
  --aa-heading:var(--rrh-heading-text,#39554c);
  --aa-text-soft:var(--rrh-muted-text,#5f706b);
  --aa-muted:var(--rrh-light-muted-text,#6c706b);

  --aa-shell-bg:var(--rrh-glass-bg,rgba(245,246,236,.35));
  --aa-panel-bg:var(--rrh-glass-bg-strong,rgba(255,255,255,.56));
  --aa-card-bg:rgba(244,240,232,.25);
  --aa-meta-bg:rgba(255,255,255,.34);
  --aa-pill-bg:rgba(255,255,255,.62);

  --aa-button-bg:var(--rrh-button-bg,rgba(242,243,237,.92));
  --aa-button-bg-hover:var(--rrh-button-bg-hover,rgba(255,255,255,.78));
  --aa-button-bg-active:var(--rrh-button-bg-active,rgba(223,232,212,.98));

  --aa-border:rgba(122,106,78,.12);
  --aa-border-soft:rgba(122,106,78,.10);
  --aa-border-strong:rgba(122,106,78,.18);
  --aa-button-border:rgba(122,106,78,.14);
  --aa-button-border-hover:rgba(122,106,78,.24);

  --aa-radius-xs:10px;
  --aa-radius-sm:12px;
  --aa-radius-md:16px;
  --aa-radius-lg:22px;
  --aa-radius-pill:999px;

  --aa-shell-pad:clamp(10px,2vw,20px);
  --aa-panel-pad:clamp(10px,1.4vw,14px);
  --aa-card-pad:clamp(11px,1.3vw,14px);

  --aa-gap-xs:6px;
  --aa-gap-sm:8px;
  --aa-gap-md:12px;
  --aa-gap-lg:clamp(12px,1.6vw,18px);

  --aa-control-h:36px;
  --aa-page-h:32px;

  --aa-title-size:clamp(30px,4vw,40px);
  --aa-col-title-size:clamp(25px,3.2vw,34px);
  --aa-card-title-size:clamp(17px,1.55vw,20px);
  --aa-body-size:clamp(13px,1.15vw,15px);
  --aa-small-size:clamp(11px,.95vw,12.5px);
  --aa-button-size:clamp(11px,.9vw,12.5px);

  --aa-shadow-panel:0 4px 12px rgba(0,0,0,.04),0 18px 40px rgba(0,0,0,.04);
  --aa-shadow-card:0 2px 6px rgba(0,0,0,.08),0 8px 18px rgba(0,0,0,.07);
  --aa-shadow-card-soft:0 2px 6px rgba(0,0,0,.04),0 8px 18px rgba(0,0,0,.03);

  --aa-max-width:1420px;
}

/* =========================================================
   1) PAGE SHELL
   ========================================================= */
#tbl-calendar-shell,
#tbl-calendar-shell *,
#tbl-calendar-container,
#tbl-calendar-container *{
  box-sizing:border-box;
  font-family:var(--aa-font-family);
}

#tbl-calendar-shell{
  width:100%;
  max-width:100%;
  margin:0 auto;
  padding:var(--aa-shell-pad);
  overflow:visible;
}

#tbl-calendar-shell > .meetings-resources{
  margin:0 0 2px !important;
  color:var(--aa-text);
  font-style:italic;
  font-size:var(--aa-title-size);
  line-height:1.05;
  font-weight:400;
}

#tbl-calendar-shell .site-social__divider{
  margin:8px 0 14px !important;
}

#tbl-calendar-shell .site-social__divider hr{
  border:0 !important;
  height:1px !important;
  margin:0 !important;
  background:rgba(57,85,76,.14) !important;
}

#tbl-calendar-shell > .meetings-directions{
  max-width:980px;
  margin:0 0 10px !important;
  color:var(--aa-muted);
  font-size:clamp(13px,1.25vw,16px);
  line-height:1.42;
}

#tbl-calendar-container{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:visible;
}

#tbl-calendar-container.rrh-card{
  padding:clamp(10px,2vw,20px) !important;
  border-radius:var(--aa-radius-lg) !important;
  background:rgba(255,255,255,.55) !important;
  box-shadow:var(--aa-shadow-panel) !important;
}

#tbl-calendar-container .rrh-controls-card{
  display:block !important;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0 0 10px !important;
  padding:var(--aa-panel-pad) !important;
  border-radius:var(--aa-radius-md) !important;
  border:1px solid var(--aa-border-soft) !important;
  background:var(--aa-panel-bg) !important;
  box-shadow:var(--aa-shadow-panel) !important;
  overflow:hidden !important;
}

#tbl-calendar-container .tbl-calendar__controls{
  width:100%;
  margin:0 0 10px !important;
}

#tbl-calendar-container .rrh-empty-state{
  margin:0;
  padding:clamp(12px,1.4vw,16px);
  border:1px solid var(--aa-border);
  border-radius:var(--aa-radius-md);
  background:rgba(255,255,255,.45);
  color:var(--aa-text-soft);
}

/* =========================================================
   2) STATUS PILL
   ========================================================= */
.rrh-filter-status-wrap{
  display:flex;
  justify-content:flex-start;
  width:100%;
  min-width:0;
  margin:0 0 8px;
  padding:0 2px;
}

.rrh-filter-status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:4px;
  max-width:100%;
  min-height:26px;
  padding:4px 12px;
  border-radius:13px;
  border:1px solid rgba(122,106,78,.18);
  background:rgba(223,232,207,.78);
  color:#39554c;
  font-size:clamp(13px,1.12vw,15px);
  font-weight:700;
  font-style:italic;
  line-height:1;
  box-shadow:0 1px 4px rgba(0,0,0,.05) inset;
}

.rrh-status-sep{
  opacity:.22;
  font-weight:600;
  padding:0 3px;
}

.rrh-status-part{
  font-weight:700;
}

.rrh-status-part-0{ color:#39554c; }
.rrh-status-part-1{ color:#567161; }
.rrh-status-part-2{ color:#6b5a3f; }
.rrh-status-part-3{ color:#4e6474; }

/* =========================================================
   3) FILTER UTILITY BAR
   ========================================================= */
#tbl-calendar-container #recovery-filter-form{
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
}

#tbl-calendar-container #recovery-filter-form .rrh-filters{
  display:grid !important;
  grid-template-columns:
    minmax(105px,.75fr)
    minmax(72px,.42fr)
    minmax(105px,.68fr)
    minmax(135px,.95fr)
    minmax(145px,1fr)
    minmax(170px,1.35fr)
    minmax(88px,.55fr)
    minmax(108px,.70fr) !important;
  gap:8px !important;
  align-items:center !important;
  justify-content:stretch !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  overflow:visible !important;
}

#tbl-calendar-container #recovery-filter-form .rrh-field,
#tbl-calendar-container #recovery-filter-form .rrh-actions{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

#tbl-calendar-container #recovery-filter-form .rrh-input,
#tbl-calendar-container #recovery-filter-form .rrh-select,
#tbl-calendar-container #recovery-filter-form .rrh-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:var(--aa-control-h) !important;
  min-height:var(--aa-control-h) !important;
  max-height:var(--aa-control-h) !important;
  padding:0 10px !important;
  border-radius:11px !important;
  border:1px solid var(--aa-border-soft) !important;
  background:rgba(255,255,255,.58) !important;
  color:var(--aa-text) !important;
  font-size:13px !important;
  line-height:1.1 !important;
  text-align:center !important;
  text-align-last:center !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

#tbl-calendar-container #recovery-filter-form .rrh-select{
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

#tbl-calendar-container #recovery-filter-form input[name="q"],
#tbl-calendar-container #recovery-filter-form input[name="zip"]{
  text-align:left !important;
  text-align-last:left !important;
}

#tbl-calendar-container #recovery-filter-form input[name="q"]{
  min-width:0 !important;
}

#tbl-calendar-container #recovery-filter-form .rrh-btn{
  border-color:var(--aa-button-border) !important;
  background:var(--aa-button-bg) !important;
  font-weight:800 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.58),
    0 1px 2px rgba(0,0,0,.035) !important;
}

#tbl-calendar-container #use-location{
  background:rgba(242,243,237,.88) !important;
}

#tbl-calendar-container #apply-filters{
  background:rgba(229,235,218,.92) !important;
  border-color:rgba(122,106,78,.20) !important;
  color:#2f473f !important;
}

#tbl-calendar-container #recovery-filter-form .rrh-input:focus,
#tbl-calendar-container #recovery-filter-form .rrh-select:focus{
  outline:none !important;
  border-color:rgba(98,132,105,.38) !important;
  background:rgba(248,250,246,.94) !important;
  box-shadow:0 0 0 3px rgba(98,132,105,.10) !important;
}

#tbl-calendar-container #recovery-filter-form .rrh-btn:hover{
  background:var(--aa-button-bg-hover) !important;
  border-color:var(--aa-button-border-hover) !important;
}

#tbl-calendar-container #apply-filters:hover{
  background:rgba(238,244,228,.98) !important;
}

#tbl-calendar-container #recovery-filter-form .rrh-btn.is-active{
  background:var(--aa-button-bg-active) !important;
  border-color:rgba(122,106,78,.25) !important;
}

/* Prevent the ugly overlap zone: switch before the controls run out of room. */
@media (max-width:1080px){
  #tbl-calendar-container #recovery-filter-form .rrh-filters{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

@media (max-width:720px){
  #tbl-calendar-container #recovery-filter-form .rrh-filters{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  #tbl-calendar-container #recovery-filter-form input[name="q"]{
    grid-column:1 / -1 !important;
  }
}

@media (max-width:420px){
  #tbl-calendar-container #recovery-filter-form .rrh-filters{
    grid-template-columns:1fr !important;
  }
}

/* =========================================================
   4) RESULTS GRID
   ========================================================= */
.aa-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr)) !important;
  gap:var(--aa-gap-lg) !important;
  align-items:start !important;
  width:100% !important;
  max-width:var(--aa-max-width);
  margin:0 auto;
  min-width:0 !important;
}

.aa-left,
.aa-right{
  min-width:0 !important;
  min-height:0 !important;
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-self:start !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.aa-scroll-panel{
  min-width:0 !important;
  width:100% !important;
  display:block !important;
}

.aa-results-list{
  display:flex !important;
  flex-direction:column !important;
  gap:var(--aa-gap-md) !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

.aa-section-card{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.no-resources,
.aa-left .aa-scroll-panel > p,
.aa-right .aa-scroll-panel > p{
  margin:0 !important;
  padding:clamp(12px,1.4vw,16px) !important;
  border:1px solid var(--aa-border) !important;
  border-radius:var(--aa-radius-md) !important;
  background:rgba(255,255,255,.42) !important;
  color:var(--aa-text-soft) !important;
  font-size:var(--aa-body-size) !important;
  line-height:1.45 !important;
}

/* =========================================================
   5) COLUMN HEADERS / STICKY STATE / PAGERS
   ========================================================= */
.rrh-colhead{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 0 var(--aa-gap-sm) !important;
  padding:0 !important;
  background:transparent !important;
}

.rrh-colhead h2,
.rrh-colhead h3,
.rrh-colhead .meetings-resources{
  margin:0 0 7px !important;
  color:var(--aa-text) !important;
  font-style:italic !important;
  font-size:var(--aa-col-title-size) !important;
  font-weight:400 !important;
  line-height:1.05 !important;
}

.rrh-colhead.is-fixed{
  position:fixed;
  z-index:999;
  width:auto !important;
  max-width:none !important;
  padding:8px 10px 10px !important;
  border-radius:14px !important;
  border:1px solid rgba(122,106,78,.10) !important;
  background:rgba(246,245,236,.92) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.04),0 18px 40px rgba(0,0,0,.04) !important;
}

.rrh-colhead.is-fixed::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-12px;
  height:16px;
  background:linear-gradient(to bottom,rgba(246,245,236,.65),rgba(246,245,236,0));
  pointer-events:none;
}

.aa-column-pager{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,auto)) !important;
  justify-content:start !important;
  align-items:center !important;
  gap:6px !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 0 var(--aa-gap-sm) !important;
  padding:0 !important;
}

.aa-column-pager .rrh-page-btn,
.aa-column-pager .rrh-page-select,
.aa-column-pager .rrh-page-display{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:clamp(34px,4vw,42px) !important;
  max-width:100% !important;
  height:var(--aa-page-h) !important;
  min-height:var(--aa-page-h) !important;
  max-height:var(--aa-page-h) !important;
  padding:0 9px !important;
  border-radius:10px !important;
  border:1px solid var(--aa-button-border) !important;
  background:var(--aa-button-bg) !important;
  color:var(--aa-text) !important;
  font-size:clamp(10.5px,.9vw,12px) !important;
  font-weight:700 !important;
  line-height:1 !important;
  text-align:center !important;
  text-align-last:center !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}

.aa-column-pager .rrh-page-btn:hover{
  background:var(--aa-button-bg-hover) !important;
  border-color:var(--aa-button-border-hover) !important;
}

.aa-column-pager .rrh-page-btn.is-disabled{
  color:rgba(0,0,0,.42) !important;
  background:rgba(0,0,0,.04) !important;
  border-color:rgba(0,0,0,.12) !important;
  pointer-events:none !important;
  cursor:default !important;
}

.aa-column-pager .rrh-page-select-wrap{
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  min-width:0 !important;
}

.aa-column-pager .rrh-page-select{
  width:68px !important;
  min-width:68px !important;
  appearance:auto !important;
}

.aa-column-pager .rrh-page-display,
.aa-column-pager .rrh-page-select-wrap.is-disabled,
.aa-column-pager .rrh-page-select-wrap.is-disabled .rrh-page-select,
.aa-column-pager .rrh-page-select-wrap.is-disabled .rrh-page-display{
  display:none !important;
}

/* =========================================================
   6) CARDS
   ========================================================= */
.aa-resource-card,
.aa-meeting-card,
.aa-info-box-resource,
.resource-item{
  display:flex !important;
  flex-direction:column !important;
  gap:var(--aa-gap-sm) !important;
  width:100% !important;
  min-width:0 !important;
  min-height:100% !important;
  margin:0 !important;
  padding:var(--aa-card-pad) !important;
  border-radius:var(--aa-radius-md) !important;
  border:1px solid var(--aa-border) !important;
  background:var(--aa-card-bg) !important;
  box-shadow:var(--aa-shadow-card) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  cursor:default !important;
  transition:none !important;
}

.aa-resource-card:hover,
.aa-meeting-card:hover,
.aa-info-box-resource:hover,
.resource-item:hover{
  background:var(--aa-card-bg) !important;
  box-shadow:var(--aa-shadow-card-soft) !important;
  transform:none !important;
}

.aa-resource-card > *,
.aa-meeting-card > *,
.aa-info-box-resource > *,
.resource-item > *{
  min-width:0 !important;
}

.aa-card-top{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:var(--aa-gap-sm) !important;
  width:100% !important;
}

.aa-card-title-wrap{
  min-width:0 !important;
  flex:1 1 auto !important;
}

.aa-card-title,
.resource-title{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 !important;
  color:var(--aa-text) !important;
}

.aa-card-title{
  font-size:var(--aa-card-title-size) !important;
  line-height:1.22 !important;
  font-weight:500 !important;
}

.resource-title-text{
  min-width:0 !important;
  overflow-wrap:anywhere !important;
}

.aa-card-subtitle{
  margin:3px 0 0 !important;
  color:var(--aa-text-soft) !important;
  font-size:var(--aa-small-size) !important;
  line-height:1.35 !important;
}

/* =========================================================
   7) BADGES / PILLS / TAGS
   ========================================================= */
.aa-resource-tags,
.aa-types,
.resource-badges,
.resource-tags,
.rrh-badge-row,
.rrh-badge-row--inline{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.rrh-pill,
.calendar-filter-pill,
.crc-category-pill,
.aa-card-pill,
.aa-resource-tag,
.resource-pill,
.type-label,
.tag-pill,
.verified-badge,
.aa-types-pill,
.rrh-badge,
.aa-badge,
.aa-pill,
.aa-resource-badge,
.aa-status-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  height:clamp(24px,2.5vw,28px) !important;
  min-height:clamp(24px,2.5vw,28px) !important;
  min-width:clamp(68px,7vw,78px) !important;
  padding:0 clamp(8px,1vw,10px) !important;
  border-radius:var(--aa-radius-pill) !important;
  border:1px solid rgba(122,106,78,.16) !important;
  background:var(--aa-pill-bg) !important;
  color:var(--aa-text) !important;
  font-size:clamp(10px,.9vw,11.5px) !important;
  font-weight:700 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  text-decoration:none !important;
  box-shadow:none !important;
  margin:0 !important;
}

.aa-tier-box,
.aa-card-pill--status{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:clamp(24px,2.5vw,28px) !important;
  padding:0 clamp(9px,1vw,12px) !important;
  margin:0 !important;
  border-radius:var(--aa-radius-pill) !important;
  border:1px solid rgba(122,106,78,.12) !important;
  background:rgba(244,242,235,.75) !important;
  color:var(--aa-text) !important;
  font-size:clamp(10px,.9vw,11.5px) !important;
  line-height:1 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.aa-verified-tag,
.verified-badge,
.rrh-badge--verified{
  background:rgba(232,245,235,.78) !important;
  border-color:rgba(79,140,91,.26) !important;
  color:#2f5e3e !important;
}

.rrh-badge--sponsored{
  background:rgba(255,246,220,.82) !important;
  border-color:rgba(177,134,35,.28) !important;
  color:#6b531f !important;
}

.rrh-badge--featured{
  background:rgba(226,238,255,.80) !important;
  border-color:rgba(74,112,160,.25) !important;
  color:#2d4f75 !important;
}

.rrh-badge--standard{
  background:rgba(236,253,245,.84) !important;
  border-color:rgba(79,140,91,.22) !important;
  color:#2f5e3e !important;
}

.rrh-badge--free-listing{
  background:rgba(245,245,244,.92) !important;
  border-color:rgba(122,106,78,.14) !important;
}

/* =========================================================
   8) RESOURCE ICONS + TOOLTIP
   ========================================================= */
.resource-icon-wrap{
  position:relative !important;
  flex:0 0 auto !important;
  width:30px !important;
  min-width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center !important;
  margin-right:0 !important;
  border-radius:10px !important;
  border:1px solid color-mix(in srgb,currentColor 45%,white) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 1px 2px rgba(0,0,0,.04) !important;
}

.resource-icon-svg{
  display:inline-flex !important;
  width:16px !important;
  height:16px !important;
}

.resource-icon-wrap svg,
.resource-icon-svg svg{
  width:18px !important;
  height:18px !important;
  stroke:currentColor !important;
  fill:none !important;
}

.tooltip-wrap,
.resource-icon-wrap{
  position:relative !important;
}

.tooltip-wrap::after,
.resource-icon-wrap[data-rrh-tooltip]::after{
  position:absolute !important;
  top:calc(100% + 8px) !important;
  left:0 !important;
  width:260px !important;
  max-width:min(260px,80vw) !important;
  white-space:normal !important;
  background:rgb(242,243,237) !important;
  color:#555 !important;
  border:1px solid rgba(0,0,0,.22) !important;
  padding:10px 12px !important;
  border-radius:10px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.14) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transition:opacity .12s ease,visibility .12s ease !important;
  z-index:999999 !important;
}

.tooltip-wrap::after{
  content:attr(data-tooltip);
}

.resource-icon-wrap[data-rrh-tooltip]::after{
  content:attr(data-rrh-tooltip);
  font-weight:400 !important;
}

.tooltip-wrap:hover::after,
.tooltip-wrap:focus::after,
.tooltip-wrap:focus-within::after,
.resource-icon-wrap:hover::after,
.resource-icon-wrap:focus::after,
.resource-icon-wrap:focus-within::after{
  opacity:1 !important;
  visibility:visible !important;
}

/* =========================================================
   9) META / ADDRESS / TIMES
   ========================================================= */
.aa-resource-address{
  margin:0 !important;
  color:var(--aa-text-soft) !important;
  font-size:var(--aa-body-size) !important;
  line-height:1.42 !important;
}

.aa-distance-pill{
  color:#4e7a5d !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

.aa-resource-meta,
.aa-meeting-times,
.aa-resource-card .aa-card-meta,
.aa-resource-card .aa-resource-meta,
.aa-meeting-card .aa-card-meta,
.aa-meeting-card .aa-meeting-meta{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr)) !important;
  gap:var(--aa-gap-sm) !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

.aa-meta-box{
  min-width:0 !important;
  padding:clamp(7px,.9vw,9px) clamp(9px,1vw,11px) !important;
  border-radius:var(--aa-radius-sm) !important;
  border:1px solid rgba(122,106,78,.10) !important;
  background:var(--aa-meta-bg) !important;
  box-shadow:none !important;
}

.aa-meta-label{
  display:block !important;
  margin:0 0 3px !important;
  color:var(--aa-text-soft) !important;
  font-size:clamp(10px,.85vw,11px) !important;
  line-height:1.1 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
}

.aa-meta-value{
  display:block !important;
  color:var(--aa-text) !important;
  font-size:clamp(12px,1vw,13px) !important;
  line-height:1.32 !important;
  font-weight:600 !important;
  overflow-wrap:anywhere !important;
}

.aa-meeting-card .aa-time{
  font-size:clamp(13px,1.2vw,15px) !important;
  font-weight:700 !important;
}

/* =========================================================
   10) ACTION BUTTONS
   ========================================================= */
.aa-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  width:100% !important;
  margin:0 !important;
  margin-top:auto !important;
  padding-top:10px !important;
}

.aa-card-actions{
  margin-top:10px !important;
}

.aa-btn,
.aa-actions .aa-btn,
.aa-actions .aa-action-link,
.aa-actions a,
.aa-actions button,
.resource-click{
  flex:1 1 82px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  gap:5px !important;
  min-width:70px !important;
  max-width:100% !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  padding:0 8px !important;
  border-radius:10px !important;
  border:1px solid var(--aa-button-border) !important;
  background:var(--aa-button-bg) !important;
  color:var(--aa-text) !important;
  text-decoration:none !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    0 1px 2px rgba(0,0,0,.04) !important;
  transition:
    background-color .18s ease,
    border-color .18s ease,
    color .18s ease,
    box-shadow .18s ease,
    transform .18s ease !important;
}

.aa-btn:hover,
.aa-actions .aa-btn:hover,
.aa-actions .aa-action-link:hover,
.aa-actions a:hover,
.aa-actions button:hover,
.resource-click:hover{
  background:var(--aa-button-bg-hover) !important;
  border-color:var(--aa-button-border-hover) !important;
  color:var(--aa-text) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.7),
    0 6px 14px rgba(0,0,0,.06) !important;
  transform:translateY(-1px) !important;
  text-decoration:none !important;
}

.aa-actions svg{
  flex:0 0 auto !important;
  width:15px !important;
  height:15px !important;
}

.aa-actions .btn-text{
  display:inline-flex !important;
  align-items:center !important;
  line-height:1 !important;
}

.aa-btn.btn-phone svg,
.aa-btn.btn-phone:hover svg{ stroke:#28a745 !important; }

.aa-btn.btn-website svg,
.aa-btn.btn-website:hover svg{ stroke:#0073aa !important; }

.aa-btn.btn-email svg,
.aa-btn.btn-email:hover svg{ stroke:#d14836 !important; }

.aa-btn.btn-directions svg,
.aa-btn.btn-directions:hover svg{ stroke:#ff9800 !important; }

.aa-btn.btn-share svg,
.aa-btn.btn-share:hover svg{ stroke:#6f42c1 !important; }

.aa-btn.btn-calendar svg,
.aa-btn.btn-calendar:hover svg{ stroke:#d14836 !important; }

/* =========================================================
   11) FLUID GUARDRAILS
   ========================================================= */
@media (max-width:760px){
  #tbl-calendar-shell{
    padding:clamp(10px,2vw,16px) !important;
  }

  #tbl-calendar-container.rrh-card{
    padding:clamp(10px,2vw,16px) !important;
  }

  .aa-grid{
    grid-template-columns:1fr !important;
    gap:var(--aa-gap-lg) !important;
  }

  .rrh-colhead,
  .rrh-colhead.is-fixed{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    width:100% !important;
    max-width:100% !important;
    z-index:1 !important;
    padding:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    border:0 !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  .rrh-colhead::after,
  .rrh-colhead.is-fixed::after{
    display:none !important;
    content:none !important;
  }

  .aa-column-pager{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    justify-content:stretch !important;
  }

  .aa-column-pager .rrh-page-btn,
  .aa-column-pager .rrh-page-select,
  .aa-column-pager .rrh-page-display{
    width:100% !important;
    min-width:0 !important;
    padding:0 5px !important;
  }

  .aa-column-pager .rrh-page-select-wrap{
    width:100% !important;
  }

  .aa-column-pager .rrh-page-select{
    width:100% !important;
    min-width:0 !important;
  }
}

@media (max-width:640px){
  #tbl-calendar-shell{
    padding:8px !important;
  }

  #tbl-calendar-shell > .meetings-directions{
    font-size:13px !important;
    line-height:1.35 !important;
  }

  #tbl-calendar-container.rrh-card,
  #tbl-calendar-container .rrh-controls-card{
    border-radius:18px !important;
    padding:10px !important;
  }

  #tbl-calendar-container #recovery-filter-form .rrh-input,
  #tbl-calendar-container #recovery-filter-form .rrh-select,
  #tbl-calendar-container #recovery-filter-form .rrh-btn{
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    font-size:12.5px !important;
  }

  .aa-card-top{
    flex-direction:row !important;
    align-items:flex-start !important;
    gap:10px !important;
    margin-bottom:12px !important;
  }

  .aa-tier-box,
  .aa-card-pill--status{
    align-self:flex-start !important;
  }

  .aa-resource-meta,
  .aa-meeting-times,
  .aa-resource-card .aa-card-meta,
  .aa-resource-card .aa-resource-meta,
  .aa-meeting-card .aa-card-meta,
  .aa-meeting-card .aa-meeting-meta{
    grid-template-columns:1fr !important;
  }

  .aa-resource-tag,
  .aa-types-pill,
  .rrh-badge,
  .aa-badge,
  .aa-pill,
  .aa-resource-badge,
  .aa-status-badge{
    white-space:normal !important;
  }

  .aa-actions{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    align-items:center !important;
    gap:7px !important;
  }

  .aa-actions .aa-btn,
  .aa-actions .aa-action-link,
  .aa-actions a,
  .aa-actions button,
  .resource-click{
    width:100% !important;
    min-width:0 !important;
    height:34px !important;
    min-height:34px !important;
    max-height:34px !important;
    padding:0 7px !important;
    font-size:11px !important;
    align-self:center !important;
  }

  .tooltip-wrap::after,
  .resource-icon-wrap[data-rrh-tooltip]::after{
    left:0 !important;
    right:auto !important;
    max-width:calc(100vw - 40px) !important;
  }
}

/* =========================================================
   12) PRINT
   ========================================================= */
@media print{
  #tbl-calendar-container #recovery-filter-form,
  .aa-column-pager,
  .aa-actions{
    display:none !important;
  }

  #tbl-calendar-shell,
  #tbl-calendar-container,
  #tbl-calendar-container .rrh-controls-card{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:#fff !important;
    box-shadow:none !important;
  }

  .aa-grid{
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  .aa-resource-card,
  .aa-meeting-card{
    break-inside:avoid !important;
    box-shadow:none !important;
    background:#fff !important;
    border:1px solid #ccc !important;
  }
}
/* =========================================================
   Get Help Now card rail rewrite — distance + aligned pill rows
   May 28 2026
   ========================================================= */
.aa-card-top{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
  width:100% !important;
  margin-bottom:12px !important;
}

.aa-card-title-wrap{
  flex:1 1 auto !important;
  min-width:0 !important;
  padding-right:10px !important;
}

.aa-card-distance-pill,
.aa-distance-pill.aa-card-distance-pill{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:auto !important;
  height:clamp(24px,2.5vw,28px) !important;
  min-height:clamp(24px,2.5vw,28px) !important;
  padding:0 clamp(11px,1.15vw,14px) !important;
  border-radius:999px !important;
  border:1px solid rgba(79,140,91,.25) !important;
  background:rgba(232,245,235,.84) !important;
  color:#2f6b45 !important;
  font-size:clamp(10px,.9vw,11.5px) !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  box-shadow:none !important;
  margin:0 !important;
}

.aa-card-pill-row{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.aa-card-pill-row .aa-card-pill-left{
  flex:1 1 auto !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  width:auto !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}

.aa-card-pill-row .aa-card-pill-status{
  flex:0 0 auto !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  width:auto !important;
  min-width:fit-content !important;
  margin:0 !important;
  padding:0 !important;
  margin-left:auto !important;
}

.aa-card-pill-row .rrh-badge-row,
.aa-card-pill-row .rrh-badge-row--inline{
  width:auto !important;
  justify-content:flex-end !important;
}

.aa-card-pill-row .aa-tier-box,
.aa-card-pill-row .rrh-badge,
.aa-card-pill-row .aa-resource-tag,
.aa-card-pill-row .aa-types-pill{
  margin:0 !important;
}

.aa-card-pill-row--meeting .aa-card-pill-status--meeting{
  align-self:center !important;
}

.aa-resource-address .aa-distance-pill:not(.aa-card-distance-pill){
  display:none !important;
}

@media (max-width:640px){
  .aa-card-pill-row{
    align-items:flex-start !important;
  }
  .aa-card-pill-row .aa-card-pill-status{
    max-width:46% !important;
  }
}


/* =========================================================
   Get Help Now narrow/minimized card fixes — May 28 2026
   - Preserve 12px title/distance breathing room
   - Keep action buttons visible when cards narrow
   ========================================================= */
.aa-card-top{
  margin-bottom:12px !important;
}

.aa-card-title-wrap{
  min-width:0 !important;
}

.aa-card-distance-pill,
.aa-distance-pill.aa-card-distance-pill{
  flex:0 0 auto !important;
}

.aa-actions{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr)) !important;
  gap:7px !important;
  width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
}

.aa-actions .aa-btn,
.aa-actions .aa-action-link,
.aa-actions a,
.aa-actions button,
.resource-click{
  width:100% !important;
  min-width:0 !important;
  flex:none !important;
  overflow:hidden !important;
}

.aa-actions .btn-text{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

@media (max-width:520px){
  .aa-actions{
    grid-template-columns:1fr !important;
  }
}
