.l2-games-page{
  --game-ink:#17233d;
  --game-muted:#6b7890;
  min-height:100vh;
  background:
    radial-gradient(circle at 5% 0%,rgba(79,124,255,.08),transparent 25%),
    radial-gradient(circle at 95% 8%,rgba(139,108,246,.08),transparent 23%),
    linear-gradient(180deg,#fbfcff 0%,#f2f5fa 100%);
}
.l2-games-page > .l2lg-app{
  width:min(1240px,calc(100% - 32px)) !important;
  margin:0 auto !important;
  padding:28px 0 56px !important;
}
.l2-games-page .l2lg-game-grid{
  gap:20px !important;
}
.l2-games-page .l2lg-game-wrap{
  position:relative;
  min-width:0;
  isolation:isolate;
}
.l2-games-page .l2lg-game-card{
  --accent:#4f7cff;
  --accent-soft:rgba(79,124,255,.13);
  --accent-glow:rgba(79,124,255,.22);
  position:relative;
  min-height:264px !important;
  padding:30px 28px 78px !important;
  border-radius:30px !important;
  border:1px solid rgba(28,43,73,.08) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(248,250,254,.98) 100%) !important;
  color:var(--game-ink) !important;
  box-shadow:
    0 10px 24px rgba(24,37,65,.055),
    0 2px 4px rgba(24,37,65,.03),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
  overflow:hidden !important;
  transform:translateZ(0);
  transition:transform .25s cubic-bezier(.2,.75,.2,1),box-shadow .25s ease,border-color .25s ease;
}
.l2-games-page .l2lg-game-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:7px;
  background:linear-gradient(90deg,var(--accent),rgba(255,255,255,.15));
  pointer-events:none;
}
.l2-games-page .l2lg-game-card::after{
  content:"";
  position:absolute;
  width:210px;
  height:210px;
  right:-78px;
  top:-86px;
  border-radius:50%;
  background:radial-gradient(circle,var(--accent-glow) 0%,rgba(255,255,255,0) 68%);
  pointer-events:none;
  transition:transform .35s ease,opacity .35s ease;
}
.l2-games-page .l2lg-game-card:hover{
  transform:translateY(-9px) !important;
  border-color:rgba(24,37,65,.12) !important;
  box-shadow:
    0 24px 48px rgba(24,37,65,.12),
    0 8px 18px rgba(24,37,65,.05),
    0 0 0 1px var(--accent-soft),
    0 0 34px var(--accent-soft) !important;
}
.l2-games-page .l2lg-game-card:hover::after{
  transform:scale(1.14);
}
.l2-games-page .l2lg-game-card .icon{
  position:relative;
  z-index:2;
  width:76px !important;
  height:76px !important;
  flex:0 0 76px;
  margin:0 0 20px !important;
  border-radius:24px !important;
  font-size:38px !important;
  background:linear-gradient(145deg,#fff,var(--accent-soft)) !important;
  border:1px solid rgba(255,255,255,.92);
  box-shadow:
    0 14px 26px rgba(24,37,65,.10),
    inset 0 0 0 1px rgba(255,255,255,.8) !important;
  transition:transform .25s ease,box-shadow .25s ease;
}
.l2-games-page .l2lg-game-card:hover .icon{
  transform:translateY(-3px) rotate(-2deg) scale(1.035);
  box-shadow:
    0 18px 30px rgba(24,37,65,.13),
    0 0 0 6px var(--accent-soft);
}
.l2-games-page .l2lg-game-card b{
  position:relative;
  z-index:2;
  display:block;
  margin:0 !important;
  color:var(--game-ink) !important;
  font-size:23px !important;
  line-height:1.28 !important;
  font-weight:900 !important;
  letter-spacing:-.025em;
}
.l2-games-page .l2lg-game-card small{
  position:relative;
  z-index:2;
  display:block;
  max-width:92%;
  margin-top:7px;
  color:var(--game-muted) !important;
  font-size:14px !important;
  line-height:1.7 !important;
  font-weight:600 !important;
}
.l2-games-page .l2lg-game-card small::before{
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  margin-inline-end:7px;
  border-radius:50%;
  background:var(--accent);
  vertical-align:middle;
  box-shadow:0 0 0 4px var(--accent-soft);
}
.l2-games-page .l2lg-game-wrap::after{
  content:"↗";
  position:absolute;
  left:22px;
  bottom:22px;
  z-index:4;
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:var(--accent);
  color:#fff;
  font-size:19px;
  font-weight:900;
  box-shadow:0 10px 22px var(--accent-glow);
  pointer-events:none;
  transition:transform .25s ease,box-shadow .25s ease;
}
.l2-games-page .l2lg-game-wrap:hover::after{
  transform:translate(2px,-2px) rotate(-3deg);
  box-shadow:0 14px 28px var(--accent-glow);
}
.l2-games-page .game-word{--accent:#f0b72f;--accent-soft:rgba(240,183,47,.14);--accent-glow:rgba(240,183,47,.24)}
.l2-games-page .game-sentence{--accent:#4f7cff;--accent-soft:rgba(79,124,255,.13);--accent-glow:rgba(79,124,255,.22)}
.l2-games-page .game-grammar{--accent:#8b6cf6;--accent-soft:rgba(139,108,246,.14);--accent-glow:rgba(139,108,246,.23)}
.l2-games-page .game-listening{--accent:#2db587;--accent-soft:rgba(45,181,135,.14);--accent-glow:rgba(45,181,135,.23)}
.l2-games-page .game-picture{--accent:#e96b99;--accent-soft:rgba(233,107,153,.14);--accent-glow:rgba(233,107,153,.23)}
.l2-games-page .game-quest{--accent:#43ad55;--accent-soft:rgba(67,173,85,.14);--accent-glow:rgba(67,173,85,.22)}
.l2-games-page .game-word .icon{background:linear-gradient(145deg,#fffdf5,rgba(240,183,47,.18)) !important}
.l2-games-page .game-sentence .icon{background:linear-gradient(145deg,#fbfdff,rgba(79,124,255,.18)) !important}
.l2-games-page .game-grammar .icon{background:linear-gradient(145deg,#fdfbff,rgba(139,108,246,.18)) !important}
.l2-games-page .game-listening .icon{background:linear-gradient(145deg,#fafffd,rgba(45,181,135,.18)) !important}
.l2-games-page .game-picture .icon{background:linear-gradient(145deg,#fffafd,rgba(233,107,153,.18)) !important}
.l2-games-page .game-quest .icon{background:linear-gradient(145deg,#fbfffb,rgba(67,173,85,.18)) !important}
.l2-games-page .l2lg-votes{
  right:14px !important;
  bottom:17px !important;
  z-index:5;
  padding:4px !important;
  gap:5px !important;
  border-radius:15px !important;
  background:rgba(245,248,253,.82) !important;
  border:1px solid rgba(24,37,65,.06);
  box-shadow:0 7px 18px rgba(24,37,65,.07);
  backdrop-filter:blur(10px);
}
.l2-games-page .l2lg-vote{
  min-height:34px;
  border-radius:11px !important;
  padding:7px 9px !important;
  font-size:12px !important;
  background:#fff !important;
  border-color:rgba(24,37,65,.08) !important;
}
.l2-games-page .l2lg-vote.is-selected{
  background:var(--game-ink) !important;
  color:#fff !important;
}
@media(max-width:1040px){
  .l2-games-page .l2lg-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .l2-games-page > .l2lg-app{
    width:min(100% - 18px,1240px) !important;
    padding:16px 0 32px !important;
  }
  .l2-games-page .l2lg-game-grid{grid-template-columns:1fr;gap:14px !important}
  .l2-games-page .l2lg-game-card{
    min-height:214px !important;
    padding:22px 20px 72px !important;
    border-radius:25px !important;
  }
  .l2-games-page .l2lg-game-card .icon{
    width:66px !important;
    height:66px !important;
    flex-basis:66px;
    border-radius:20px !important;
    font-size:33px !important;
    margin-bottom:17px !important;
  }
  .l2-games-page .l2lg-game-card b{font-size:20px !important}
  .l2-games-page .l2lg-game-card small{font-size:13px !important}
  .l2-games-page .l2lg-game-wrap::after{
    left:18px;
    bottom:18px;
    width:37px;
    height:37px;
    border-radius:13px;
  }
}/* Card photography redesign */
.l2-games-page .l2lg-game-card{
  display:flex !important;
  align-items:stretch !important;
  min-height:286px !important;
  padding:14px 14px 72px !important;
  border-radius:28px !important;
  background:#fff !important;
  border:1px solid rgba(23,35,61,.08) !important;
  text-align:left !important;
}
.l2-games-page .l2lg-game-card::before{
  height:5px !important;
  z-index:5;
}
.l2-games-page .l2lg-game-card::after{opacity:.45 !important}
.l2-games-page .l2lg-card-image{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  height:138px;
  flex:0 0 138px;
  margin:0 0 18px;
  overflow:hidden;
  border-radius:21px;
  background:#eef2f7;
  box-shadow:0 10px 24px rgba(24,37,65,.10);
}
.l2-games-page .l2lg-card-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(13,23,43,0) 44%,rgba(13,23,43,.22) 100%);
  pointer-events:none;
}
.l2-games-page .l2lg-card-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .45s cubic-bezier(.2,.75,.2,1),filter .3s ease;
}
.l2-games-page .l2lg-game-card:hover .l2lg-card-image img{
  transform:scale(1.065);
  filter:saturate(1.05);
}
.l2-games-page .l2lg-game-card b{
  margin-top:0 !important;
}
.l2-games-page .l2lg-game-card small{
  margin-top:6px !important;
}
.l2-games-page .l2lg-game-wrap::after{content:none !important}@media(max-width:720px){
  .l2-games-page .l2lg-game-card{
    min-height:248px !important;
    padding:10px 10px 66px !important;
    border-radius:23px !important;
  }
  .l2-games-page .l2lg-card-image{
    height:124px;
    flex-basis:124px;
    margin-bottom:15px;
    border-radius:18px;
  }
  .l2-games-page .l2lg-game-card b{font-size:20px !important}
  .l2-games-page .l2lg-game-card small{font-size:13px !important}
}/* Small visual game icons — no large photography */
.l2-games-page .l2lg-game-card{
  min-height:238px !important;
  padding:27px 26px 68px !important;
}
.l2-games-page .l2lg-card-image{
  width:76px !important;
  height:76px !important;
  flex:0 0 76px !important;
  margin:0 0 18px !important;
  border-radius:22px !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.l2-games-page .l2lg-card-image::after{
  display:none !important;
}
.l2-games-page .l2lg-card-image img{
  width:76px !important;
  height:76px !important;
  object-fit:contain !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  transition:transform .25s ease,filter .25s ease !important;
}
.l2-games-page .l2lg-game-card:hover .l2lg-card-image img{
  transform:translateY(-3px) scale(1.045) !important;
  filter:none !important;
}
.l2-games-page .l2lg-game-card b{font-size:22px !important}
@media(max-width:720px){
  .l2-games-page .l2lg-game-card{
    min-height:210px !important;
    padding:21px 19px 64px !important;
  }
  .l2-games-page .l2lg-card-image,
  .l2-games-page .l2lg-card-image img{
    width:64px !important;
    height:64px !important;
  }
}/* Final compact icon treatment */
.l2-games-page .l2lg-game-card{
  min-height:222px !important;
  padding:24px 24px 66px !important;
}
.l2-games-page .l2lg-card-image,
.l2-games-page .l2lg-card-image img{
  width:54px !important;
  height:54px !important;
}
.l2-games-page .l2lg-card-image{
  flex:0 0 54px !important;
  margin:0 0 15px !important;
}
.l2-games-page .l2lg-game-card b{
  font-size:21px !important;
}
.l2-games-page .l2lg-game-card small{
  margin-top:5px !important;
}
.l2-games-page .game-word .l2lg-card-image img{filter:none}
@media(max-width:720px){
  .l2-games-page .l2lg-game-card{
    min-height:194px !important;
    padding:20px 18px 62px !important;
  }
  .l2-games-page .l2lg-card-image,
  .l2-games-page .l2lg-card-image img{
    width:48px !important;
    height:48px !important;
  }
  .l2-games-page .l2lg-card-image{
    flex-basis:48px !important;
    margin-bottom:13px !important;
  }
  .l2-games-page .l2lg-game-card b{font-size:19px !important}
}/* SVG icon cards */
.l2-games-page .l2lg-card-icon{
  position:relative;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:center;
  width:56px;
  height:56px;
  margin:0 0 16px;
  border-radius:18px;
  background:rgba(255,255,255,.72);
  box-shadow:0 8px 20px rgba(24,37,65,.08),inset 0 0 0 1px rgba(255,255,255,.75);
  transition:transform .22s ease,box-shadow .22s ease;
}
.l2-games-page .l2lg-card-icon svg{
  display:block;
  width:34px;
  height:34px;
}
.l2-games-page .l2lg-game-card:hover .l2lg-card-icon{
  transform:translateY(-2px) scale(1.04);
  box-shadow:0 11px 24px rgba(24,37,65,.11),0 0 0 5px rgba(79,124,255,.07);
}
.l2-games-page .game-word .l2lg-card-icon{color:#e9a81f}
.l2-games-page .game-sentence .l2lg-card-icon{color:#4f7cff}
.l2-games-page .game-grammar .l2lg-card-icon{color:#8b6cf6}
.l2-games-page .game-listening .l2lg-card-icon{color:#2db587}
.l2-games-page .game-picture .l2lg-card-icon{color:#e96b99}
.l2-games-page .game-quest .l2lg-card-icon{color:#43ad55}
.l2-games-page .l2lg-card-image{display:none !important}
@media(max-width:720px){
  .l2-games-page .l2lg-card-icon{
    width:50px;
    height:50px;
    margin-bottom:13px;
    border-radius:16px;
  }
  .l2-games-page .l2lg-card-icon svg{
    width:30px;
    height:30px;
  }
}/* Individual game card color themes */
.l2-games-page .l2lg-game-card.game-word{
  background:linear-gradient(145deg,#fff9df 0%,#ffe9a8 100%) !important;
  --card-accent:#e5a71b;
}
.l2-games-page .l2lg-game-card.game-sentence{
  background:linear-gradient(145deg,#f1f5ff 0%,#dbe6ff 100%) !important;
  --card-accent:#4f7cff;
}
.l2-games-page .l2lg-game-card.game-grammar{
  background:linear-gradient(145deg,#f7f2ff 0%,#e5d9ff 100%) !important;
  --card-accent:#8b6cf6;
}
.l2-games-page .l2lg-game-card.game-listening{
  background:linear-gradient(145deg,#edfdf7 0%,#c9f0df 100%) !important;
  --card-accent:#2db587;
}
.l2-games-page .l2lg-game-card.game-picture{
  background:linear-gradient(145deg,#fff2f7 0%,#ffd9e7 100%) !important;
  --card-accent:#e96b99;
}
.l2-games-page .l2lg-game-card.game-quest{
  background:linear-gradient(145deg,#eefaf0 0%,#d1efd5 100%) !important;
  --card-accent:#43ad55;
}
.l2-games-page .l2lg-game-card::before{
  background:linear-gradient(90deg,var(--card-accent),rgba(255,255,255,.3)) !important;
}
.l2-games-page .l2lg-game-card b,
.l2-games-page .l2lg-game-card small{
  position:relative;
  z-index:3;
}
.l2-games-page .l2lg-card-icon{
  background:rgba(255,255,255,.78) !important;
}
.l2-games-page .l2lg-game-card{
  border-color:rgba(255,255,255,.7) !important;
}
/* In-game modern UI */
.l2-games-page .l2lg-modal-dialog{
  width:min(1080px,100%) !important;
  max-height:min(92vh,920px) !important;
  padding:28px !important;
  border-radius:30px !important;
  background:linear-gradient(180deg,#fbfcff 0%,#f4f7fb 100%) !important;
  border:1px solid rgba(255,255,255,.82) !important;
  box-shadow:0 42px 110px rgba(7,16,35,.40) !important;
}
.l2-games-page .l2lg-modal-top{
  align-items:center !important;
  padding-right:58px !important;
}
.l2-games-page .l2lg-mini-label{
  display:inline-flex !important;
  align-items:center;
  min-height:28px;
  padding:6px 10px !important;
  border-radius:999px !important;
  background:#edf3ff !important;
  color:#4f7cff !important;
  letter-spacing:.08em !important;
}
.l2-games-page .l2lg-modal-top h3{
  margin-top:7px !important;
  font-size:28px !important;
  font-weight:900 !important;
}
.l2-games-page .l2lg-hud{
  gap:8px !important;
}
.l2-games-page .l2lg-hud span{
  min-width:88px;
  padding:11px 13px !important;
  border-radius:15px !important;
  background:#fff !important;
  border:1px solid #e3e9f2 !important;
  box-shadow:0 7px 18px rgba(24,37,65,.055) !important;
}
.l2-games-page .l2lg-hud b{
  margin-left:4px;
  color:#315fd4;
  font-size:15px;
}
.l2-games-page .l2lg-progress{
  position:relative;
  height:9px !important;
  margin:18px 0 24px !important;
}
.l2-games-page .l2lg-modal[data-round] .l2lg-progress::after{
  content:attr(data-round);
  position:absolute;
  right:0;
  bottom:14px;
  color:#7a879b;
  font-size:11px;
  font-weight:800;
}
.l2-games-page .l2lg-game-body{
  min-height:360px !important;
}
.l2-games-page .l2lg-question{
  border-radius:24px !important;
  padding:28px !important;
  border:1px solid #e2e8f1 !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 18px 42px rgba(20,33,58,.065) !important;
}
.l2-games-page .l2lg-question h4{
  font-size:25px !important;
  line-height:1.55 !important;
  font-weight:900 !important;
}
.l2-games-page .l2lg-options{
  gap:11px !important;
  margin-top:22px !important;
}
.l2-games-page .l2lg-option{
  position:relative;
  min-height:58px;
  padding:14px 48px 14px 17px !important;
  border-radius:17px !important;
  background:#f8faff !important;
  border:1px solid #dde5f0 !important;
  color:#1c2942 !important;
  font-size:15px;
  font-weight:700 !important;
  box-shadow:0 5px 14px rgba(24,37,65,.035) !important;
}
.l2-games-page .l2lg-option::before{
  content:"";
  position:absolute;
  right:16px;
  top:50%;
  width:12px;
  height:12px;
  border-radius:50%;
  border:2px solid #bdc8d9;
  transform:translateY(-50%);
  transition:.18s ease;
}
.l2-games-page .l2lg-option:hover{
  transform:translateY(-2px) !important;
  border-color:#a8bff2 !important;
  background:#f0f5ff !important;
  box-shadow:0 10px 22px rgba(58,91,151,.09) !important;
}
.l2-games-page .l2lg-option.correct{
  border-color:#66cca0 !important;
  background:#eafaf3 !important;
  color:#126540 !important;
}
.l2-games-page .l2lg-option.correct::before{
  border-color:#27a96f;
  background:#27a96f;
  box-shadow:inset 0 0 0 3px #eafaf3;
}
.l2-games-page .l2lg-option.wrong{
  border-color:#f0a4aa !important;
  background:#fff0f1 !important;
  color:#a42f3a !important;
}
.l2-games-page .l2lg-option.wrong::before{
  border-color:#df5b67;
  background:#df5b67;
  box-shadow:inset 0 0 0 3px #fff0f1;
}
.l2-games-page .l2lg-option:disabled{
  cursor:default !important;
}
.l2-games-page .l2lg-inline-feedback{
  min-height:24px;
  margin-top:15px;
  padding:0 2px;
  color:#6e7b90;
  font-size:13px;
  font-weight:750;
}
.l2-games-page .l2lg-actions{
  gap:10px !important;
}
.l2-games-page .l2lg-btn{
  min-height:44px;
  padding:11px 17px !important;
  border-radius:14px !important;
  font-weight:800 !important;
}
.l2-games-page .l2lg-listen-wave{
  height:132px !important;
  margin-bottom:22px !important;
  border-radius:23px !important;
  background:
    radial-gradient(circle at center,rgba(255,255,255,.8),transparent 56%),
    linear-gradient(135deg,#e9f9f3,#e7edff) !important;
  border:1px solid rgba(96,125,177,.10);
}
.l2-games-page .l2lg-listen-wave i{
  width:5px;
  margin:0 2px;
  background:linear-gradient(180deg,#4f7cff,#31b995);
  box-shadow:0 4px 10px rgba(79,124,255,.12);
}
.l2-games-page .l2lg-listen-wave:not(.is-playing) i{
  animation-play-state:paused;
  height:16px !important;
  opacity:.35 !important;
}
.l2-games-page .l2lg-timer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:58px;
  min-height:44px;
  padding:0 13px;
  border-radius:14px;
  background:#fff;
  border:1px solid #e1e8f1;
  color:#23314a;
  box-shadow:0 7px 17px rgba(24,37,65,.05);
}
.l2-games-page .l2lg-sentence-game{
  background:linear-gradient(180deg,#fff 0%,#f7f9fd 100%) !important;
}
.l2-games-page .l2lg-sentence-badge{
  background:#edf3ff !important;
  color:#426bd8 !important;
}
.l2-games-page .l2lg-build-area{
  min-height:94px !important;
  border-radius:18px !important;
  background:#f7faff !important;
}
.l2-games-page .l2lg-word-bank-card,
.l2-games-page .l2lg-build-card{
  border-radius:20px !important;
}
.l2-games-page .l2lg-word-chip,
.l2-games-page .l2lg-built-chip{
  border-radius:12px !important;
  background:#edf3ff !important;
  border-color:#d0ddf5 !important;
  color:#2452a2 !important;
  box-shadow:0 5px 12px rgba(53,83,141,.06);
}
.l2-games-page .l2lg-word-chip:hover,
.l2-games-page .l2lg-built-chip:hover{
  background:#e1ebff !important;
  border-color:#a9c0ef !important;
}
.l2-games-page .l2lg-word-chip.is-used{
  opacity:.26 !important;
}
.l2-games-page .l2lg-picture-layout{
  gap:22px !important;
}
.l2-games-page .l2lg-picture-visual{
  padding:8px;
  border-radius:23px;
  background:#eef2f8;
}
.l2-games-page .l2lg-image{
  max-height:430px;
  object-fit:cover !important;
  border-radius:18px !important;
}
.l2-games-page .l2lg-transcript{
  min-height:104px !important;
  border-radius:17px !important;
  background:#f8faff !important;
  color:#334155 !important;
}
.l2-games-page .l2lg-feedback{
  border-radius:21px !important;
  background:linear-gradient(145deg,#f5f8ff,#eefaf6) !important;
}
@media(max-width:720px){
  .l2-games-page .l2lg-modal-dialog{
    padding:14px !important;
    border-radius:23px !important;
  }
  .l2-games-page .l2lg-modal-top{
    padding-right:0 !important;
  }
  .l2-games-page .l2lg-modal-top h3{
    font-size:22px !important;
  }
  .l2-games-page .l2lg-hud span{
    min-width:0;
    flex:1;
    font-size:11px;
  }
  .l2-games-page .l2lg-question{
    padding:18px !important;
    border-radius:20px !important;
  }
  .l2-games-page .l2lg-question h4{
    font-size:20px !important;
  }
  .l2-games-page .l2lg-option{
    min-height:54px;
    padding-right:43px !important;
    font-size:14px;
  }
  .l2-games-page .l2lg-listen-wave{
    height:100px !important;
  }
  .l2-games-page .l2lg-picture-visual{
    padding:5px;
  }
  .l2-games-page .l2lg-image{
    width:100% !important;
    max-width:100% !important;
    max-height:320px;
  }
}/* Results screen */
.l2-games-page .l2lg-finish-card{
  text-align:center !important;
  padding:34px 28px 30px !important;
}
.l2-games-page .l2lg-finish-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 11px;
  border-radius:999px;
  background:#edf3ff;
  color:#4f7cff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
}
.l2-games-page .l2lg-finish-card h4{
  margin:14px 0 4px !important;
  font-size:32px !important;
}
.l2-games-page .l2lg-finish-sub{
  margin:0 !important;
  color:#718096 !important;
  font-size:14px;
}
.l2-games-page .l2lg-finish-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:26px auto 18px;
  max-width:700px;
}
.l2-games-page .l2lg-finish-stats>div{
  padding:18px 12px;
  border-radius:18px;
  background:#fff;
  border:1px solid #e3e9f2;
  box-shadow:0 8px 20px rgba(24,37,65,.05);
}
.l2-games-page .l2lg-finish-stats small{
  display:block;
  margin-bottom:6px;
  color:#7a879a;
  font-size:11px;
  font-weight:800;
}
.l2-games-page .l2lg-finish-stats strong{
  color:#1c2942;
  font-size:26px;
  font-weight:900;
}
.l2-games-page .l2lg-finish-meter{
  width:min(700px,100%);
  height:9px;
  margin:0 auto 24px;
  overflow:hidden;
  border-radius:999px;
  background:#e8edf5;
}
.l2-games-page .l2lg-finish-meter span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#4f7cff,#39bd91);
  transition:width .45s ease;
}
.l2-games-page .l2lg-finish-card .l2lg-actions{
  justify-content:center !important;
}
@media(max-width:560px){
  .l2-games-page .l2lg-finish-card{padding:26px 16px !important}
  .l2-games-page .l2lg-finish-card h4{font-size:26px !important}
  .l2-games-page .l2lg-finish-stats{gap:8px}
  .l2-games-page .l2lg-finish-stats>div{padding:14px 8px}
  .l2-games-page .l2lg-finish-stats strong{font-size:21px}
}/* Language flag rendering */
.l2-games-page .l2lg-language-btn .flag{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:24px !important;
  min-width:24px !important;
  height:20px !important;
  font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif !important;
  font-size:19px !important;
  line-height:1 !important;
  font-style:normal !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  overflow:visible !important;
}
.l2-games-page .l2lg-language-btn{
  gap:7px !important;
}
@media(max-width:720px){
  .l2-games-page .l2lg-language-btn .flag{
    width:22px !important;
    min-width:22px !important;
    font-size:18px !important;
  }
}
/* Desktop-safe vector flags: independent of Windows/Edge emoji fonts. */
.l2-games-page .l2lg-language-btn .flag{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:24px !important;
  min-width:24px !important;
  height:18px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  line-height:0 !important;
  font-size:0 !important;
  font-family:initial !important;
}
.l2-games-page .l2lg-language-btn .flag svg,
.l2-games-page .l2lg-language-btn .flag-img{
  display:block !important;
  width:24px !important;
  height:16px !important;
  max-width:none !important;
  flex:0 0 24px !important;
  object-fit:cover !important;
  border-radius:3px !important;
}
.l2-games-page .l2lg-language-btn{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
}
.l2-games-page .l2lg-level-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:42px !important;
  height:26px !important;
  margin:0 0 12px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  font-size:10px !important;
  font-weight:950 !important;
  letter-spacing:.3px !important;
  line-height:1 !important;
  direction:ltr !important;
}
.l2-games-page .l2lg-level-a1,.l2-games-page .l2lg-level-a2{background:#eaf8f1!important;color:#198754!important;border:1px solid #cdebdc!important}
.l2-games-page .l2lg-level-b1{background:#eef4ff!important;color:#2457a6!important;border:1px solid #d6e4fb!important}
.l2-games-page .l2lg-level-b2{background:#fff5e8!important;color:#b7791f!important;border:1px solid #f4ddbb!important}
.l2-games-page .l2lg-level-c1{background:#f3edff!important;color:#6d46b8!important;border:1px solid #e0d4fb!important}
.l2-games-page .l2lg-question>h4{margin-top:0!important}
.l2-games-page .game-shadowing{--accent:#ef6c57;--accent-soft:rgba(239,108,87,.14);--accent-glow:rgba(239,108,87,.23)}
.l2-games-page .game-speak{--accent:#e25bb0;--accent-soft:rgba(226,91,176,.14);--accent-glow:rgba(226,91,176,.23)}
.l2-games-page .game-pronunciation{--accent:#7658e8;--accent-soft:rgba(118,88,232,.14);--accent-glow:rgba(118,88,232,.23)}
.l2-games-page .game-dictation{--accent:#00a6a6;--accent-soft:rgba(0,166,166,.14);--accent-glow:rgba(0,166,166,.23)}
.l2-games-page .game-roleplay{--accent:#f08a39;--accent-soft:rgba(240,138,57,.14);--accent-glow:rgba(240,138,57,.23)}
.l2-games-page .game-shadowing .l2lg-card-icon{color:#ef6c57}
.l2-games-page .game-speak .l2lg-card-icon{color:#e25bb0}
.l2-games-page .game-pronunciation .l2lg-card-icon{color:#7658e8}
.l2-games-page .game-dictation .l2lg-card-icon{color:#00a6a6}
.l2-games-page .game-roleplay .l2lg-card-icon{color:#f08a39}
.l2-games-page .l2lg-speech-game,
.l2-games-page .l2lg-pronunciation-game,
.l2-games-page .l2lg-dictation-game{min-height:430px}
.l2-games-page .l2lg-speech-kicker{display:block;margin:0 0 8px;color:#7c889c;font-size:10px;font-weight:950;letter-spacing:.12em}
.l2-games-page .l2lg-target-sentence{margin:20px 0;padding:24px 22px;border:1px solid #e4e9f1;border-radius:20px;background:linear-gradient(135deg,#f8fbff,#fff);font-size:clamp(20px,3vw,29px);font-weight:900;line-height:1.9;text-align:center;color:#18263f;box-shadow:0 12px 26px rgba(24,37,65,.05)}
.l2-games-page .l2lg-speech-goal{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:14px 0;color:#66748a}
.l2-games-page .l2lg-speech-goal span{padding:7px 11px;border-radius:999px;background:#f5f7fb;border:1px solid #e6ebf2;font-size:10px;font-weight:850}
.l2-games-page .l2lg-pronunciation-word{margin:18px auto 24px;width:min(430px,100%);padding:28px;border-radius:24px;background:linear-gradient(145deg,#f8f5ff,#fff);border:1px solid #e3dcfb;color:#674cc4;text-align:center;font-size:clamp(32px,7vw,54px);font-weight:950;letter-spacing:.02em}
.l2-games-page .l2lg-roleplay-scene{display:inline-flex;margin:0 0 10px;padding:9px 13px;border-radius:12px;background:#fff4e9;border:1px solid #f6ddc4;color:#b46720;font-size:11px;font-weight:950}
.l2-games-page .l2lg-dictation-input{display:block;width:100%;box-sizing:border-box;margin:20px 0;padding:16px 18px;border:1px solid #dfe5ed;border-radius:17px;background:#fbfcfe;color:#17233d;font:inherit;font-size:14px;line-height:1.9;resize:vertical;outline:none;transition:border-color .18s ease,box-shadow .18s ease}
.l2-games-page .l2lg-dictation-input:focus{border-color:#00a6a6;box-shadow:0 0 0 4px rgba(0,166,166,.10)}
.l2-games-page .l2lg-speech-game .l2lg-actions,
.l2-games-page .l2lg-dictation-game .l2lg-actions,
.l2-games-page .l2lg-pronunciation-game .l2lg-actions{align-items:center;justify-content:center;flex-wrap:wrap}
.l2-games-page .l2lg-speech-game [data-stop]:not(:disabled){background:#fff2f1;border-color:#f1c8c3;color:#b4483c}
.l2-games-page .l2lg-speech-game .l2lg-timer{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:42px;padding:0 12px;border-radius:12px;background:#17233d;color:#fff;font-size:14px;font-weight:950;direction:ltr}
.l2-games-page .l2lg-speech-game .l2lg-transcript{margin-top:18px;min-height:82px}
@media(max-width:720px){
  .l2-games-page .l2lg-game-card{min-height:238px !important}
  .l2-games-page .l2lg-speech-game,
  .l2-games-page .l2lg-pronunciation-game,
  .l2-games-page .l2lg-dictation-game{min-height:390px}
  .l2-games-page .l2lg-target-sentence{padding:19px 15px;font-size:20px}
  .l2-games-page .l2lg-pronunciation-word{padding:22px;font-size:38px}
}
.l2-games-page .l2lg-game-grid{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:stretch !important;
  gap:18px !important;
  padding-top:4px !important;
}
.l2-games-page .l2lg-game-wrap{
  position:relative !important;
  flex:0 1 calc((100% - 54px) / 4) !important;
  max-width:calc((100% - 54px) / 4) !important;
  min-width:0 !important;
  display:flex !important;
}
.l2-games-page .l2lg-game-card{
  width:100% !important;
  min-height:250px !important;
  height:250px !important;
  box-sizing:border-box !important;
  padding:26px 24px 68px !important;
  border-radius:24px !important;
  border:1px solid #e5eaf1 !important;
  background:#ffffff !important;
  color:#17233d !important;
  box-shadow:0 10px 26px rgba(24,37,65,.065) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:0 !important;
  overflow:hidden !important;
  transition:transform .20s ease,box-shadow .20s ease,border-color .20s ease !important;
}
.l2-games-page .l2lg-game-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 0 auto 0 !important;
  height:5px !important;
  background:var(--card-accent,var(--accent,#4f7cff)) !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.l2-games-page .l2lg-game-card::after{
  content:"" !important;
  position:absolute !important;
  width:150px !important;
  height:150px !important;
  right:-75px !important;
  bottom:-75px !important;
  top:auto !important;
  left:auto !important;
  border-radius:50% !important;
  background:var(--accent-soft,rgba(79,124,255,.07)) !important;
  filter:none !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.l2-games-page .l2lg-game-card:hover{
  transform:translateY(-5px) !important;
  border-color:color-mix(in srgb,var(--card-accent,#4f7cff) 25%,#e5eaf1) !important;
  box-shadow:0 18px 34px rgba(24,37,65,.11) !important;
  filter:none !important;
}
.l2-games-page .l2lg-card-icon{
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  min-height:58px !important;
  flex:0 0 58px !important;
  margin:1px 0 18px !important;
  border-radius:17px !important;
  background:var(--accent-soft,rgba(79,124,255,.10)) !important;
  box-shadow:none !important;
  color:var(--card-accent,var(--accent,#4f7cff)) !important;
  z-index:3 !important;
}
.l2-games-page .l2lg-card-icon svg{
  width:32px !important;
  height:32px !important;
}
.l2-games-page .l2lg-game-card:hover .l2lg-card-icon{
  transform:translateY(-2px) !important;
  box-shadow:none !important;
}
.l2-games-page .l2lg-game-card b{
  display:block !important;
  width:100% !important;
  min-height:30px !important;
  margin:0 !important;
  color:#17233d !important;
  font-size:19px !important;
  line-height:1.5 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  text-align:left !important;
  z-index:3 !important;
}
.l2-games-page .l2lg-game-card small{
  display:block !important;
  width:100% !important;
  min-height:40px !important;
  margin:6px 0 0 !important;
  color:#718096 !important;
  font-size:12px !important;
  line-height:1.7 !important;
  font-weight:700 !important;
  text-align:left !important;
  z-index:3 !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-votes{
  right:12px !important;
  bottom:11px !important;
  left:12px !important;
  width:auto !important;
  justify-content:flex-end !important;
  padding:4px !important;
  gap:6px !important;
  border-radius:13px !important;
  background:#f7f9fc !important;
  border:1px solid #e9edf3 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote{
  min-width:66px !important;
  height:34px !important;
  padding:0 9px !important;
  border-radius:9px !important;
  border:1px solid #e1e6ee !important;
  background:#fff !important;
  color:#667085 !important;
  box-shadow:none !important;
  font-size:11px !important;
  font-weight:850 !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote:hover{
  transform:none !important;
  color:#27364d !important;
  background:#fff !important;
  border-color:#d5dce6 !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote.is-selected{
  background:#17233d !important;
  color:#fff !important;
  border-color:#17233d !important;
}
.l2-games-page .game-shadowing{--card-accent:#ef6c57;--accent-soft:rgba(239,108,87,.10)}
.l2-games-page .game-speak{--card-accent:#d85aad;--accent-soft:rgba(216,90,173,.10)}
.l2-games-page .game-pronunciation{--card-accent:#7658e8;--accent-soft:rgba(118,88,232,.10)}
.l2-games-page .game-dictation{--card-accent:#00a3a3;--accent-soft:rgba(0,163,163,.10)}
.l2-games-page .game-roleplay{--card-accent:#ef8a3b;--accent-soft:rgba(239,138,59,.10)}
.l2-games-page .game-word{--card-accent:#dfa41b;--accent-soft:rgba(223,164,27,.10)}
.l2-games-page .game-sentence{--card-accent:#4f7cff;--accent-soft:rgba(79,124,255,.10)}
.l2-games-page .game-grammar{--card-accent:#8b6cf6;--accent-soft:rgba(139,108,246,.10)}
.l2-games-page .game-listening{--card-accent:#2db587;--accent-soft:rgba(45,181,135,.10)}
.l2-games-page .game-picture{--card-accent:#e96b99;--accent-soft:rgba(233,107,153,.10)}
.l2-games-page .game-quest{--card-accent:#43ad55;--accent-soft:rgba(67,173,85,.10)}
@media(max-width:1040px){
  .l2-games-page .l2lg-game-wrap{
    flex-basis:calc((100% - 36px) / 3) !important;
    max-width:calc((100% - 36px) / 3) !important;
  }
}
@media(max-width:820px){
  .l2-games-page .l2lg-game-wrap{
    flex-basis:calc((100% - 18px) / 2) !important;
    max-width:calc((100% - 18px) / 2) !important;
  }
}
@media(max-width:720px){
  .l2-games-page .l2lg-game-grid{
    gap:14px !important;
  }
  .l2-games-page .l2lg-game-wrap{
    flex-basis:100% !important;
    max-width:100% !important;
  }
  .l2-games-page .l2lg-game-card{
    min-height:214px !important;
    height:214px !important;
    padding:21px 19px 64px !important;
    border-radius:21px !important;
  }
  .l2-games-page .l2lg-card-icon{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
    flex-basis:50px !important;
    margin-bottom:14px !important;
  }
  .l2-games-page .l2lg-card-icon svg{
    width:29px !important;
    height:29px !important;
  }
  .l2-games-page .l2lg-game-card b{
    font-size:18px !important;
    min-height:28px !important;
  }
  .l2-games-page .l2lg-game-card small{
    font-size:11px !important;
    min-height:36px !important;
  }
}.l2-games-page .l2lg-game-wrap .l2lg-votes{
  position:absolute !important;
  right:14px !important;
  left:auto !important;
  bottom:13px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  padding:3px !important;
  gap:3px !important;
  min-height:38px !important;
  border:1px solid #e8ecf3 !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 5px 16px rgba(23,35,61,.07) !important;
  backdrop-filter:blur(8px) !important;
  z-index:8 !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  width:42px !important;
  min-width:42px !important;
  height:32px !important;
  padding:0 7px !important;
  border:0 !important;
  border-radius:10px !important;
  background:transparent !important;
  color:#8b96a8 !important;
  font:800 12px/1 Vazirmatn,sans-serif !important;
  transition:background .18s ease,color .18s ease,transform .18s ease !important;
  cursor:pointer !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote-icon{
  width:16px !important;
  height:16px !important;
  flex:0 0 16px !important;
  display:block !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote:hover{
  transform:translateY(-1px) !important;
  background:#f5f7fa !important;
  color:#49566b !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote.is-selected{
  background:var(--card-accent,#4f7cff) !important;
  color:#fff !important;
  box-shadow:0 5px 12px color-mix(in srgb,var(--card-accent,#4f7cff) 24%,transparent) !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-dislike.is-selected{
  background:#e66b78 !important;
  color:#fff !important;
  box-shadow:0 5px 12px rgba(230,107,120,.22) !important;
}
.l2-games-page .l2lg-game-wrap .l2lg-vote:focus-visible{
  outline:2px solid var(--card-accent,#4f7cff) !important;
  outline-offset:2px !important;
}
@media(max-width:767px){
  .l2-games-page .l2lg-game-wrap .l2lg-votes{
    right:11px !important;
    bottom:10px !important;
    min-height:36px !important;
    padding:3px !important;
    border-radius:13px !important;
  }
  .l2-games-page .l2lg-game-wrap .l2lg-vote{
    width:40px !important;
    min-width:40px !important;
    height:30px !important;
    gap:4px !important;
    padding:0 6px !important;
    font-size:11px !important;
  }
  .l2-games-page .l2lg-game-wrap .l2lg-vote-icon{width:15px !important;height:15px !important;flex-basis:15px !important}
}
