/*
 * BeaMiiLocal - Home UI system
 * Version: 2.1.0
 * Final, last-loaded visual contract for the front page.
 */

.app--home .beamii-home{
  --beamii-home-ink:#17324d;
  --beamii-home-muted:#6b7f92;
  --beamii-home-blue:#2187b8;
  --beamii-home-line:rgba(27,65,94,.08);
  --beamii-home-card:#fff;
  --beamii-home-shadow:0 8px 22px rgba(20,50,73,.08);
  gap:0;
  padding-inline:0;
  background:
    radial-gradient(circle at 4% 7%, rgba(68,177,218,.08), transparent 24%),
    radial-gradient(circle at 96% 56%, rgba(64,148,193,.055), transparent 28%),
    linear-gradient(180deg, #f3f9fc 0%, #eaf4fa 100%);
}

.app--home .beamii-home > section[data-beamii-home-section],
.app--home .beamii-discovery-launcher,
.app--home .beamii-home-customize{
  width:100%;
  min-width:0;
}

.app--home .beamii-home > section[data-beamii-home-section]{
  margin:0 0 28px;
  padding:0;
}

.app--home .beamii-home__section-divider{
  display:none;
}

/* Same header language in every content section. */
.app--home .beamii-home__sectionhead--with-icon,
.app--home .beamii-home__posts-heading{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  margin:0 0 11px;
  padding:0 2px;
  border:0;
  background:transparent;
  box-shadow:none;
}

.app--home .beamii-home__sectionhead-copy,
.app--home .beamii-home__posts-heading-copy{
  flex:1 1 auto;
  min-width:0;
}

.app--home .beamii-home__sectionhead-icon,
.app--home .beamii-home__posts-heading-icon{
  display:grid;
  place-items:center;
  flex:0 0 42px;
  width:42px;
  height:42px;
  margin:0;
  border:1px solid rgba(33,135,184,.12);
  border-radius:14px;
  background:#fff;
  color:var(--beamii-home-section-accent, var(--beamii-home-blue));
  box-shadow:0 6px 16px rgba(20,50,73,.07);
}

.app--home .beamii-home__sectionhead-icon::after,
.app--home .beamii-home__posts-heading-icon::after{
  content:none;
}

.app--home .beamii-home__sectionhead-icon i,
.app--home .beamii-home__posts-heading-icon i{
  color:inherit;
  font-size:15px;
  line-height:1;
}

.app--home .beamii-home__sectiontitle{
  margin:0;
  color:var(--beamii-home-ink);
  font-size:1.18rem;
  line-height:1.08;
  font-weight:950;
  letter-spacing:-.025em;
}

.app--home .beamii-home__sectionsub{
  display:block;
  margin:4px 0 0;
  color:var(--beamii-home-muted);
  font-size:.75rem;
  line-height:1.35;
  font-weight:520;
}

/* Quiet per-section accent only on the icon. */
.app--home [data-beamii-home-section-id="posts"]{--beamii-home-section-accent:#2187b8;}
.app--home [data-beamii-home-section-id="lokalsnak"]{--beamii-home-section-accent:#3b83a9;}
.app--home [data-beamii-home-section-id="nearest"]{--beamii-home-section-accent:#246cc1;}
.app--home [data-beamii-home-section-id="associations"]{--beamii-home-section-accent:#4d7da7;}
.app--home [data-beamii-home-section-id="events"],
.app--home [data-beamii-home-section-id="food-events"]{--beamii-home-section-accent:#df8b24;}
.app--home [data-beamii-home-section-id="routes"]{--beamii-home-section-accent:#27886a;}
.app--home [data-beamii-home-section-id="smagen"]{--beamii-home-section-accent:#6d8f35;}

/* Personalize is a utility, not a hero card. */
.app--home .beamii-home-customize{
  margin:0 0 16px;
}

.app--home .beamii-home-customize__card{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:8px 10px 8px 12px;
  border:1px solid var(--beamii-home-line);
  border-radius:16px;
  background:rgba(255,255,255,.82);
  box-shadow:0 5px 14px rgba(20,50,73,.05);
}

.app--home .beamii-home-customize__copy{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-width:0;
}

.app--home .beamii-home-customize__kicker{
  color:#718496;
  font-size:.59rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.app--home .beamii-home-customize__copy strong{
  margin-top:2px;
  color:#17324d;
  font-size:.77rem;
  line-height:1.2;
  font-weight:900;
}

.app--home .beamii-home-customize__copy > span:last-child{
  display:none;
}

.app--home .beamii-home-customize__actions{
  display:flex;
  gap:6px;
  margin:0;
}

.app--home .beamii-home-customize__btn{
  min-height:38px;
  padding:0 12px;
  border:1px solid #d6e7ef;
  border-radius:999px;
  background:#f6fafc;
  color:#27465e;
  box-shadow:none;
  font-size:.70rem;
  font-weight:850;
}

/* Oplevelsesfinder: same radius/shadow rhythm as the rest of the app. */
.app--home .beamii-discovery-launcher{
  margin:0 0 28px;
}

.app--home .beamii-discovery-launcher__card{
  min-height:0;
  padding:18px 64px 17px 18px;
  overflow:hidden;
  border:1px solid rgba(33,135,184,.16);
  border-radius:20px;
  background:linear-gradient(135deg,#f7fcff 0%,#eaf8fd 100%);
  box-shadow:0 8px 22px rgba(20,80,110,.07);
}

.app--home .beamii-discovery-launcher__eyebrow{
  margin-bottom:7px;
}

.app--home .beamii-discovery-launcher__card h2{
  margin:0;
  font-size:1.15rem;
  line-height:1.1;
  letter-spacing:-.02em;
}

.app--home .beamii-discovery-launcher__card p{
  max-width:34ch;
  margin:6px 0 10px;
  color:#60788c;
  font-size:.76rem;
  line-height:1.4;
}

.app--home .beamii-discovery-launcher__chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.app--home .beamii-discovery-launcher__chips span{
  min-height:26px;
  padding:0 9px;
  border:1px solid #d4eaf4;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:#2f607d;
  font-size:.64rem;
  font-weight:800;
}

.app--home .beamii-discovery-launcher__chips span:nth-child(n+4){
  display:none;
}

.app--home .beamii-discovery-launcher__go{
  width:44px;
  height:44px;
  border-radius:15px;
  box-shadow:0 7px 16px rgba(23,132,184,.17);
}

/* Shared secondary navigation under rails.
 * Explicitly reset legacy flex-wrap/direction rules from app.css. */
.app--home .beamii-home__nearby-foot,
.app--home .beamii-home__association-foot{
  display:flex;
  flex-flow:row nowrap;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  margin:8px 0 0;
  padding:0 2px;
}

.app--home .beamii-home__nearby-foot > a,
.app--home .beamii-home__association-foot > a,
.app--home a.beamii-home__nearby-foot{
  display:inline-flex;
  flex:1 1 0;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:auto;
  min-width:0;
  min-height:38px;
  max-width:none;
  margin:0;
  padding:0 12px;
  border:1px solid #d8e7ef;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#27465e;
  box-shadow:0 4px 12px rgba(20,50,73,.045);
  font-size:.70rem;
  line-height:1;
  font-weight:850;
  text-decoration:none;
  white-space:nowrap;
}

.app--home .beamii-home__nearby-foot > a:only-child,
.app--home .beamii-home__association-foot > a:only-child,
.app--home a.beamii-home__nearby-foot:only-child{
  flex-basis:100%;
}

.app--home .beamii-home__nearby-foot > a i,
.app--home .beamii-home__association-foot > a i,
.app--home a.beamii-home__nearby-foot i{
  color:var(--beamii-home-section-accent, #2187b8);
}

/* Empty/loading states should feel embedded, not like another large card. */
.app--home .beamii-home__empty-state,
.app--home .beamii-home__association-empty,
.app--home .beamii-home__nearby-loading{
  width:100%;
  min-height:0;
  margin:0;
  padding:16px;
  border:1px solid rgba(27,65,94,.08);
  border-radius:18px;
  background:rgba(255,255,255,.72);
  box-shadow:none;
}

/* Lokalsnak on home: compact and calm. */
.app--home .beamii-home__sectionshell--lokalsnak{
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-list{
  display:grid;
  gap:8px;
}

.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-card.is-compact,
.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-empty,
.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-home-login{
  margin:0;
  padding:14px;
  border:1px solid rgba(27,65,94,.08);
  border-radius:18px;
  background:rgba(255,255,255,.78);
  box-shadow:none;
}

.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-empty{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:4px 10px;
  align-items:center;
  min-height:76px;
  text-align:left;
}

.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-empty > span{
  grid-row:1 / span 2;
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:12px;
  background:#edf7fb;
  color:#2187b8;
}

.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-empty strong,
.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-empty p{
  margin:0;
}

.app--home .beamii-home__section--lokalsnak .beamii-lokalsnak-empty p{
  color:#6c8194;
  font-size:.72rem;
  line-height:1.35;
}

.app--home .beamii-home__lokalsnak-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:7px;
}

.app--home .beamii-home__lokalsnak-actions a{
  color:#315975;
  font-size:.69rem;
  font-weight:850;
  text-decoration:none;
}

/* Event cards use the same shared home-card component as every other rail. */

/* Strict home rhythm: old generic home rules must not leak into individual sections. */
.app--home .beamii-home__sectionshell > div{
  margin-inline:0;
}

.app--home .beamii-home__places-quick-rail,
.app--home .beamii-home__nearby-slider,
.app--home .beamii-home__association-slider,
.app--home .beamii-home__event-slider,
.app--home .beamii-home__quick-slider{
  align-items:stretch;
  gap:10px;
}

.app--home .beamii-home__places-quick-rail > .beamii-places-quick__card:not(.beamii-entity-card),
.app--home .beamii-home__nearby-slider > .beamii-places-quick__card:not(.beamii-entity-card),
.app--home .beamii-home__event-slider > .beamii-places-quick__card:not(.beamii-entity-card),
.app--home .beamii-home__quick-slider > .beamii-places-quick__card:not(.beamii-entity-card){
  align-self:stretch;
  border-radius:18px;
  box-shadow:0 7px 18px rgba(20,50,73,.07);
}

.app--home .beamii-home__nearby-dots{
  margin:5px 0 0;
}

.app--home .beamii-home__nearby-dots + .beamii-home__nearby-foot,
.app--home .beamii-home__nearby-dots + .beamii-home__association-foot{
  margin-top:7px;
}

@media (hover:hover) and (pointer:fine){
  .app--home .beamii-places-quick__card:not(.beamii-entity-card):hover,
  .app--home .beamii-home__post-card:hover{
    transform:translateY(-2px);
    box-shadow:0 11px 26px rgba(20,50,73,.10);
  }
}

@media (max-width:390px){
  .app--home .beamii-home > section[data-beamii-home-section],
  .app--home .beamii-discovery-launcher{
    margin-bottom:24px;
  }

  .app--home .beamii-home__sectionhead--with-icon,
  .app--home .beamii-home__posts-heading{
    gap:9px;
    margin-bottom:10px;
  }

  .app--home .beamii-home__sectionhead-icon,
  .app--home .beamii-home__posts-heading-icon{
    flex-basis:39px;
    width:39px;
    height:39px;
    border-radius:13px;
  }

  .app--home .beamii-home__sectiontitle{
    font-size:1.11rem;
  }

  .app--home .beamii-home__sectionsub{
    font-size:.72rem;
  }

  .app--home .beamii-discovery-launcher__card{
    padding:16px 58px 15px 15px;
    border-radius:19px;
  }

  .app--home .beamii-discovery-launcher__go{
    right:13px;
    width:40px;
    height:40px;
  }
}

@media (min-width:760px){
  .app--home .beamii-home > section[data-beamii-home-section]{
    margin-bottom:32px;
  }

  .app--home .beamii-home__sectiontitle{
    font-size:1.3rem;
  }
}
