/* ACADEMY GLOBAL QA R1
   Shared visual/interaction contract for Poker, Tysiac, Warcaby and Gomoku Academy. */

.academy-game-page{
  --academy-teal:#63ddc3;
  --academy-teal-deep:#0d6957;
  --academy-gold:#f4da98;
  --academy-panel:linear-gradient(145deg,rgba(7,38,31,.96),rgba(3,18,15,.99));
}

.academy-game-page .page-shell{
  width:min(1360px,calc(100% - 64px))!important;
  margin-inline:auto!important;
  padding-bottom:42px!important;
}

.academy-game-page .page-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 330px!important;
  gap:20px!important;
  align-items:start!important;
  background:transparent!important;
}

.academy-game-page .main-column{min-width:0}

.academy-game-page .academy-side-column{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
  position:static!important;
  top:auto!important;
  align-self:start!important;
}

.academy-game-page .academy-side-column>section,
.academy-game-page .academy-side-column>nav{
  border:0!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 0 0,rgba(35,164,132,.09),transparent 40%),
    var(--academy-panel)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.19),inset 0 1px 0 rgba(255,255,255,.025)!important;
}

.academy-game-page .academy-side-column progress{
  width:100%;
  height:7px;
  border:0;
  border-radius:999px;
  overflow:hidden;
  background:#10251f;
}
.academy-game-page .academy-side-column progress::-webkit-progress-bar{background:#10251f}
.academy-game-page .academy-side-column progress::-webkit-progress-value{background:linear-gradient(90deg,#1aa27f,#71e7cd)}
.academy-game-page .academy-side-column progress::-moz-progress-bar{background:linear-gradient(90deg,#1aa27f,#71e7cd)}

.academy-game-page .hero-card{
  border:0!important;
  box-shadow:0 22px 52px rgba(0,0,0,.20)!important;
}
.academy-game-page .hero-copy h1{letter-spacing:-.04em}
.academy-game-page .hero-copy h1 span{color:var(--academy-teal)!important}
.academy-game-page .hero-actions{
  grid-template-columns:minmax(0,1.42fr) minmax(150px,.68fr)!important;
  gap:16px!important;
}
.academy-game-page .cta-primary{
  width:100%!important;
  min-width:0!important;
  min-height:62px!important;
  white-space:normal!important;
}
.academy-game-page .cta-secondary{
  min-width:0!important;
  min-height:52px!important;
}

.academy-game-page [data-poker-section-nav],
.academy-game-page [data-tysiac-section-nav],
.academy-game-page [data-warcaby-section-nav],
.academy-game-page [data-gomoku-section-nav]{
  top:80px!important;
  z-index:35!important;
  border:0!important;
  background:rgba(4,25,20,.93)!important;
  backdrop-filter:blur(12px);
  box-shadow:0 10px 24px rgba(0,0,0,.16)!important;
}

.academy-game-page main section[id]{scroll-margin-top:148px}

.academy-game-page button,
.academy-game-page a{touch-action:manipulation}

.academy-game-page button:focus-visible,
.academy-game-page a:focus-visible,
.academy-game-page input:focus-visible,
.academy-game-page summary:focus-visible{
  outline:2px solid #78e4ca!important;
  outline-offset:3px!important;
}

.academy-game-page .academy-side-column a,
.academy-game-page .academy-side-column button{min-height:40px}

.academy-game-page .site-header,
.academy-game-page .site-footer,
.academy-game-page .footer-bottom{border:0!important}

.academy-game-page .footer-inner,
.academy-game-page .footer-bottom{
  width:min(1360px,calc(100% - 64px))!important;
}

.academy-game-page .footer-news input{
  border:0!important;
  box-shadow:inset 0 0 0 1px rgba(99,221,195,.10)!important;
}

.academy-game-page .footer-news form button{
  border:0!important;
  background:linear-gradient(135deg,#0e6c59,#128871)!important;
  color:#fff!important;
}

.academy-game-page .modal-box{
  border:0!important;
  background:
    radial-gradient(circle at 0 0,rgba(36,161,129,.12),transparent 38%),
    linear-gradient(145deg,#082d25,#041813)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.academy-game-page .modal-x{
  border:0!important;
  background:rgba(255,255,255,.05)!important;
}
.academy-game-page .modal-ok{
  border:0!important;
  background:linear-gradient(135deg,#0e6c59,#128871)!important;
  color:#fff!important;
}

.academy-game-page .hero-copy,
.academy-game-page .academy-side-column,
.academy-game-page [class*="module-strip"] button,
.academy-game-page [class*="-path-grid"] a{min-width:0}

.academy-game-page h1,
.academy-game-page h2,
.academy-game-page h3,
.academy-game-page strong,
.academy-game-page small{overflow-wrap:anywhere}

@media(max-width:1180px){
  .academy-game-page .page-shell{width:min(1120px,calc(100% - 32px))!important}
  .academy-game-page .page-grid{grid-template-columns:1fr!important}
  .academy-game-page .academy-side-column{
    position:static!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  .academy-game-page [data-poker-section-nav],
  .academy-game-page [data-tysiac-section-nav],
  .academy-game-page [data-warcaby-section-nav],
  .academy-game-page [data-gomoku-section-nav]{top:66px!important}
}

@media(max-width:820px){
  .academy-game-page .hero-actions{grid-template-columns:1fr!important;gap:12px!important}
  .academy-game-page .academy-side-column{grid-template-columns:1fr!important}
  .academy-game-page main section[id]{scroll-margin-top:128px}
}

@media(max-width:560px){
  .academy-game-page .page-shell{width:calc(100% - 20px)!important}
  .academy-game-page .footer-inner,
  .academy-game-page .footer-bottom{width:calc(100% - 32px)!important}
}

@media(prefers-reduced-motion:reduce){
  .academy-game-page *{scroll-behavior:auto!important}
}

/* R20 — Academy progress integrity: explicit "mark as done" step and exercise hints */
.academy-hint{
  margin:12px 0 0!important;
  color:#b9d3ca!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.academy-mark{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 16px;
  margin:14px 0 6px;
  padding:12px 16px;
  border-radius:14px;
  background:rgba(8,48,40,.55);
}
.academy-mark__btn{
  min-height:44px;
  padding:0 18px;
  border:1px solid rgba(120,228,202,.55);
  border-radius:999px;
  background:rgba(10,78,63,.55);
  color:#e6faf3;
  font:800 14px/1.2 var(--sans,"Open Sans",system-ui,sans-serif);
  cursor:pointer;
}
.academy-mark__btn:hover{background:rgba(14,102,83,.7)}
.academy-mark__btn[aria-pressed="true"]{
  border-color:rgba(120,228,202,.9);
  background:rgba(18,126,102,.78);
  color:#fff;
}
.academy-mark__btn:focus-visible{
  outline:2px solid #78e4ca!important;
  outline-offset:3px!important;
}
.academy-mark__note{
  color:#b9d3ca;
  font-size:13px;
  line-height:1.5;
}
