/* Homepage practice, sponsor and account placement. */
.community-home .practice-entry {
  background: linear-gradient(180deg, #ffffff40, transparent 85%), linear-gradient(100deg, #ffe5ed 0%, #f3e5fb 28%, #e8dcfa 50%, #e2edfc 74%, #def5ff 100%);
  border: 1px solid #ffffffd9;
  box-shadow: 0 10px 30px #988db610, inset 0 1px 0 #fff9;
  margin-bottom: 16px;
}
.community-home .practice-difficulty > span {
  display: block;
  width: 100%;
  text-align: center;
  letter-spacing: .12em;
}
.community-home .practice-ad {
  box-sizing: border-box;
  width: calc(100% - 40px);
  max-width: 1200px;
  margin: 0 auto 20px;
  padding: 14px 18px;
  border-color: #e6e5ed;
  background: #ffffffb8;
  box-shadow: 0 4px 18px #65758b06;
}
.community-home .practice-ad .sidebar-card__title {margin-bottom: 10px;}
.community-home .practice-ad .sidebar-card__title > div {display: flex; align-items: center; gap: 10px;}
.community-home .practice-ad .sidebar-card__title h3 {margin: 0; font-size: 13px;}
.community-home .practice-ad .ad-unit-box {min-height: 100px; background: #f8fafc;}
.community-home .hero__account {min-height: 0; min-width: 0; width: 100%;}
.community-home .hero__account .account-card {
  box-sizing: border-box;
  width: min(100%, 450px);
  margin: 0;
  padding: 30px;
  border-radius: 28px;
  text-align: left;
  box-shadow: 0 22px 60px #4977a223, inset 0 1px 0 #fff;
}
.community-home .hero__account .sidebar-card__title {margin-bottom: 22px;}
.community-home .hero__account .sidebar-card__title h3 {font-size: 23px;}
.community-home .hero__account .account-card p {font-size: 14px; line-height: 1.8;}
.community-home .hero__account .account-card .account-note {font-size: 12px !important;}
.community-home .hero__account .account-login {min-height: 48px;}
.community-home .hero__account .acc-name {overflow-wrap: anywhere; font-size: 21px;}
.community-home .hero__account .acc-row {gap: 16px;}
@media(max-width: 760px) {
  .community-home .practice-ad {width: calc(100% - 32px); padding: 12px 14px; margin-bottom: 8px;}
  .community-home .hero__account .account-card {padding: 24px; border-radius: 24px;}
}
/* Reserve a compact banner without cropping an ad creative. Its actual ad unit
   has an inline fixed 50px height (AdSense expandable-width/fixed-height code). */
.community-home .practice-ad {
  position: relative;
  width: var(--practice-ad-width, calc(100% - 40px));
  height: var(--practice-ad-height, 92px);
  min-height: 0;
  padding: 0 14px;
}
.community-home .practice-ad .sidebar-card__title {
  position: absolute; top: 6px; left: 14px; right: 14px; height: 14px; margin: 0;
}
.community-home .practice-ad .sidebar-card__title :is(span,h3) {font-size: 9px; line-height: 1;}
.community-home .practice-ad .ad-unit-box {
  position: absolute; top: 24px; bottom: 6px; left: 14px; right: 14px;
  min-height: 0; overflow: visible; border-radius: 8px;
}
.community-home .practice-ad .ad-unit-box ins.adsbygoogle {min-height: 50px; flex: 0 0 100%;}
.community-home .game-story-menu i svg {width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8;}
.community-home .game-story-menu {max-height: calc(100dvh - 110px); overflow-y: auto;}

/* Editorial links lead to published game content, rather than sample activity. */
.community-home .practice-entry .practice-intro-link {
  display: inline-flex;
  justify-content: flex-start;
  gap: 8px;
  min-height: 36px;
  margin-top: 10px;
  padding: 4px 0;
  background: transparent;
  color: #574676;
  border-radius: 6px;
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.community-home .practice-intro-link span {font-size: inherit; letter-spacing: 0; color: inherit;}
.community-home .practice-intro-link svg {width: 17px; height: 17px;}
.community-home .practice-entry .practice-intro-link:focus-visible {outline: 3px solid #7561a3; outline-offset: 4px;}
.community-home .community-region-note {max-width: 240px; color: #5d7180; font: 12px/1.6 var(--font-read);}
.community-home .sidebar-guide-copy {margin: 0; color: #527082; font: 13px/1.7 var(--font-read);}
.community-home .sidebar-guide-list {margin: 14px 0 18px; padding-left: 18px; color: #527082; font: 12px/1.7 var(--font-read);}
.community-home .sidebar-guide-list li + li {margin-top: 8px;}
.community-home .trend-list a {display: block; border-radius: 5px;}
.community-home .trend-list a:focus-visible {outline: 3px solid #a18bc4; outline-offset: 5px;}
.community-home .trend-list a strong {font-size: 13px; line-height: 1.5;}
.community-home .trend-list a span {font-size: 12px; line-height: 1.6; color: #5e7585;}
.community-home .guild-content-card {display: flex; flex-direction: column; min-height: 276px;}
.community-home .guild-content-card .guild-emblem {position: static; align-self: flex-start; flex: 0 0 auto; margin-bottom: 10px; opacity: 1; font: inherit;}
.community-home .guild-content-card .guild-emblem svg {width: 27px; height: 27px;}
.community-home .guild-content-card h3 {font-size: 23px; line-height: 1.35;}
.community-home .guild-content-card p {margin: 8px 0 20px; font: 13px/1.75 var(--font-read); opacity: 1;}
.community-home .guild-content-card button {position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; min-height: 44px; margin-top: auto; padding: 10px 13px; border: 1px solid #ffffff80; border-radius: 12px; background: #ffffffef; color: #21465b; text-align: left; font: 700 13px/1.5 var(--font-read); cursor: pointer;}
.community-home .guild-content-card button:hover {background: #fff;}
.community-home .guild-content-card button:focus-visible {outline: 3px solid #fff; outline-offset: 4px;}
.community-home .guild-content-card button svg {width: 16px; height: 16px; flex: 0 0 auto;}
.community-home #free-practice {scroll-margin-top: 100px;}
@media(max-width: 760px) {
  .community-home .guild-content-card {min-height: 250px;}
  .community-home #free-practice {scroll-margin-top: 82px;}
}
