/* LAIS shared layout layer — applies in BOTH themes (Classic + Maroon).
   Full-width / full-bleed: removes narrow centered containers. Display only. */
html body .wrap { max-width: none !important; width: 100% !important; margin: 0 !important;
  padding-left: clamp(16px, 4vw, 56px) !important; padding-right: clamp(16px, 4vw, 56px) !important; }
/* Main hub: card spans the screen, tiles become a responsive grid */
html body .hub-card { width: 100% !important; max-width: none !important; margin: 0 !important;
  padding-left: clamp(16px, 4vw, 56px) !important; padding-right: clamp(16px, 4vw, 56px) !important; }
html body .hub:not(.hidden) { display: block !important; }
html body .hub-grid { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important; gap: 22px !important; }
html body .hub-choice-primary { grid-column: 1 / -1; }
@media (max-width: 640px) { html body .hub-grid { grid-template-columns: 1fr !important; gap: 18px !important; } }
/* Guiding text under the 75% goal (map header) — desktop only, all themes */
.lais-mission { display: none; }
@media (min-width: 900px) and (hover: hover) {
  .lais-mission { display: block; max-width: 62ch; margin: 14px 0 4px; }
  .lais-mission-rule { display: block; width: 64px; height: 1px; margin: 0 0 10px; background: linear-gradient(90deg, #C9A45C, rgba(201,164,92,0)); }
  .lais-mission-motto { margin: 0 0 6px; font-size: 11px; font-weight: 700; letter-spacing: .26em; text-transform: uppercase; color: #E3C27A; }
  .lais-mission-line { margin: 0; font-size: 14px; line-height: 1.5; font-style: italic; color: rgba(244,236,250,.82); }
  html[data-theme="maroon"] .lais-mission-motto { color: #F1D9A8; }
  html[data-theme="maroon"] .lais-mission-line { color: #F1E2E8; }
  html[data-theme="enterprise"] .lais-mission-rule { background: linear-gradient(90deg, #C8902E, rgba(200,144,46,0)); }
  html[data-theme="enterprise"] .lais-mission-motto { color: #E2B65C; }
  html[data-theme="enterprise"] .lais-mission-line { color: #DCE8F3; }
}
/* v5 desktop, Classic (dusk): visible sector grid, month cards, heat legend */
@media (min-width: 900px) and (hover: hover){
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .map-shell::before{opacity:1;background-image:linear-gradient(rgba(232,121,249,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(232,121,249,.07) 1px,transparent 1px);background-size:40px 40px;background-position:center center}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body svg.map #zoneLabels text{dominant-baseline:central;paint-order:stroke fill;stroke:rgba(10,4,22,.7);stroke-width:3px;stroke-linejoin:round}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .heatwave-soon{margin-bottom:26px}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .heatwave-soon::after{content:"Quiet \2192 Busy";display:block;margin-top:10px;height:22px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#c4b5e0;line-height:34px;background:linear-gradient(90deg,#2a0f4a,#6d28d9 40%,#c026d3 70%,#f5d76e) top left/min(320px,60%) 8px no-repeat;border-radius:4px}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip{position:relative;overflow:hidden;min-height:86px;padding:10px 10px 14px;align-items:flex-start;text-align:left;transition:transform .32s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease,background .15s}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip .chip-mon{font-size:10.5px;letter-spacing:.18em}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip .chip-val{font-size:22px}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip .chip-unit{text-transform:none;letter-spacing:.04em;font-size:9.5px}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip::after{content:"";position:absolute;left:10px;right:10px;bottom:7px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--lais-bar,#c026d3) 0 calc(var(--lais-pct-of-goal,0) * 1%),rgba(232,121,249,.12) 0)}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip.updating::after, html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip.slot::after, html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip.past::after{display:none}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip[data-lais-tier="gold"]{box-shadow:inset 3px 0 0 #f5d76e;--lais-bar:#f5d76e}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip[data-lais-tier="warm"]{box-shadow:inset 3px 0 0 #c4b5e0;--lais-bar:#c4b5e0}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip[data-lais-tier="low"]{box-shadow:inset 3px 0 0 #fb7185;--lais-bar:#fb7185}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip.active::after{background:linear-gradient(90deg,#1a0533 0 calc(var(--lais-pct-of-goal,0) * 1%),rgba(26,5,51,.18) 0)}
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip:hover:not(:disabled):not(.active){transform:translateY(-3px)}
  @media (prefers-reduced-motion: reduce){ html:not([data-theme="maroon"]):not([data-theme="enterprise"]) .story-month-chips .chip:hover{transform:none} }
}
/* v5 desktop: Mood trend view sits on the panel grid (score column + full-width sparkline) */
@media (min-width: 900px) and (hover: hover){
  .heartbeat-panel .hb-mood-hero{display:grid;grid-template-columns:minmax(150px,180px) minmax(0,1fr);align-items:center;gap:24px;min-height:0;padding:6px 0 2px}
  .heartbeat-panel .hb-mood-spark{min-width:0;width:100%}
  .heartbeat-panel .heartbeat-svg{overflow:visible}
  .heartbeat-panel .hb-preview-note{margin-top:8px}
  html[data-theme="maroon"] body .hb-mood-score{background:linear-gradient(135deg,#8A1538,#5C0632) !important;-webkit-background-clip:text !important;background-clip:text !important;color:transparent !important;filter:none !important}
  html[data-theme="maroon"] body .hb-mood-score .unit{color:#6B6066 !important;-webkit-text-fill-color:#6B6066}
  html[data-theme="enterprise"] body .hb-mood-score{background:none !important;color:#0F3550 !important;-webkit-text-fill-color:#0F3550;filter:none !important}
  html[data-theme="enterprise"] body .hb-mood-score .unit{color:#405068 !important;-webkit-text-fill-color:#405068}
}

/* ===== v6 desktop: Heat Wave frosted inset + legend (all themes) ===== */
.hw-legend { display: none; }
@media (min-width: 900px) and (hover: hover) {
  .heatwave-soon {
    margin: 18px 4px 32px !important;
    padding: 20px 24px 18px !important;
    position: relative;
    overflow: hidden;
  }
  .heatwave-soon::before { opacity: .9; }
  /* kill the old ::after Quiet→Busy bar; replaced by .hw-legend */
  .heatwave-soon::after { content: none !important; display: none !important; background: none !important; height: 0 !important; margin: 0 !important; }
  .hw-legend {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid rgba(0,0,0,.06);
  }
  .hw-legend-end {
    flex: 0 0 auto;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
  }
  .hw-legend-bar {
    flex: 1 1 auto;
    height: 10px;
    border-radius: 999px;
    position: relative;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.12), 0 1px 0 rgba(255,255,255,.5);
  }
  .hw-legend-bar::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(90deg,
      transparent 0%,
      rgba(255,255,255,.22) 18%,
      transparent 40%,
      transparent 60%,
      rgba(255,255,255,.12) 82%,
      transparent 100%);
    pointer-events: none;
  }

  /* Classic (dusk) — light improvement, keep purple family */
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .heatwave-soon {
    background: rgba(18,12,40,.55) !important;
    border: 1px solid rgba(232,121,249,.22) !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06) !important;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .heatwave-soon .hb-title { color: #f0abfc !important; }
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .heatwave-soon .hw-badge {
    background: rgba(232,121,249,.14) !important;
    border-color: rgba(240,171,252,.4) !important;
    color: #f5d0fe !important;
  }
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .hw-legend {
    border-top-color: rgba(232,121,249,.16);
  }
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .hw-legend-end { color: #c4b5e0; }
  html:not([data-theme="maroon"]):not([data-theme="enterprise"]) body .hw-legend-bar {
    background: linear-gradient(90deg, #2a0f4a 0%, #6d28d9 38%, #c026d3 68%, #f5d76e 100%);
  }
}
