/* === SOURCE: css/045-v4110k-bugfix-tabs-dropdown.css === */

/* Independent Mastery / Facilities pages. */
#advancedPanel .advanced-grid{grid-template-columns:minmax(0,1fr)!important;}
#advancedPanel .advanced-card[hidden]{display:none!important;}
#advancedPanel .mastery-card{grid-column:auto!important;}

/* The archetype picker is portaled to body on desktop and mobile so the left
   scroll column cannot clip the final archetypes. */
.mobile-model-menu.model-menu-portaled{
  position:fixed!important;
  z-index:99999!important;
  right:auto!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
}

/* The former top-level Advanced group no longer exists. */
.editor-advanced-group{display:none!important;}

/* === SOURCE: css/046-v4110k2-mastery-two-column.css === */

/* v4.1.10k2 · Mastery: compact two-column 7+6 layout on desktop. */
@media (min-width:1181px){
  #advancedPanel .mastery-card{
    width:100%;
  }
  #advancedPanel .mastery-list-head{
    display:none!important;
  }
  #advancedPanel .mastery-summary{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    padding:10px 14px!important;
  }
  #advancedPanel .mastery-summary>div{
    min-height:48px;
    padding:8px 11px!important;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  #advancedPanel .mastery-list{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(7,minmax(0,1fr))!important;
    grid-auto-flow:column!important;
    gap:7px 10px!important;
    padding:10px 12px 12px!important;
  }
  #advancedPanel .mastery-row{
    min-width:0;
    min-height:0;
    display:grid!important;
    grid-template-columns:minmax(108px,.72fr) minmax(0,1fr) minmax(0,.88fr)!important;
    gap:6px!important;
    align-items:stretch!important;
    padding:6px 7px!important;
    border:1px solid rgba(255,255,255,.055)!important;
    border-radius:13px!important;
    background:rgba(255,255,255,.014);
    overflow:hidden;
  }
  #advancedPanel .mastery-row.current-model{
    border-color:rgba(213,177,73,.16)!important;
    background:linear-gradient(90deg,rgba(213,177,73,.065),rgba(255,255,255,.012) 60%)!important;
  }
  #advancedPanel .mastery-row.fully-mastered{
    border-color:rgba(215,181,90,.16)!important;
    background:linear-gradient(90deg,rgba(215,181,90,.075),rgba(215,181,90,.02) 48%,rgba(255,255,255,.01))!important;
  }
  #advancedPanel .mastery-model{
    gap:7px!important;
    padding:0 3px!important;
  }
  #advancedPanel .mastery-logo-shell{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px!important;
  }
  #advancedPanel .mastery-logo-shell img{
    width:28px!important;
    height:28px!important;
  }
  #advancedPanel .mastery-model-copy strong{
    font-size:11px!important;
    line-height:1.12;
  }
  #advancedPanel .mastery-model-copy small{
    margin-top:2px!important;
    font-size:7.8px!important;
  }
  #advancedPanel .mastery-node{
    min-height:0!important;
    height:100%;
    padding:5px 7px!important;
    border-radius:10px!important;
    gap:2px!important;
  }
  #advancedPanel .mastery-node-level{
    font-size:8.5px!important;
    line-height:1.05;
  }
  #advancedPanel .mastery-node-stats{
    font-size:8.8px!important;
    line-height:1.22!important;
  }
}

/* Medium desktop/tablet: keep a single readable column rather than squeezing. */
@media (max-width:1180px) and (min-width:761px){
  #advancedPanel .mastery-list-head{display:none!important;}
  #advancedPanel .mastery-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    padding:9px 10px 12px!important;
    overflow-y:auto!important;
  }
  #advancedPanel .mastery-row{
    border:1px solid rgba(255,255,255,.05)!important;
    border-radius:12px!important;
    padding:6px 7px!important;
  }
}

/* === SOURCE: css/047-v430-build-showcase-card.css === */

/* v4.3.0 · restrained FC-style Build showcase card */
@media(min-width:1500px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(205px,.70fr) minmax(275px,.84fr) minmax(430px,1.30fr) minmax(270px,.76fr)!important;
    gap:13px!important;
  }
}
@media(min-width:1100px) and (max-width:1499px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(185px,.62fr) minmax(245px,.78fr) minmax(360px,1.08fr) minmax(225px,.70fr)!important;
    gap:10px!important;
  }
}
.overview-showcase-column{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px 0;
  overflow:visible;
}
.fc-build-showcase-card{
  position:relative;
  width:min(100%,342px);
  aspect-ratio:576/800;
  isolation:isolate;
  filter:drop-shadow(0 22px 38px rgba(0,0,0,.34));
  font-variant-numeric:tabular-nums lining-nums;
}
.fc-build-card-frame{
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  pointer-events:none;
}
.fc-build-card-player-stage{
  position:absolute;
  z-index:2;
  left:10.8%;
  right:9.4%;
  top:10.2%;
  height:55.5%;
  overflow:hidden;
  pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
}
.fc-build-card-player{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 20%;
  opacity:.985;
  filter:saturate(.94) contrast(1.045) brightness(.97);
  transform:scale(1.055);
  transform-origin:50% 48%;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 76%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 76%,transparent 100%);
}
.fc-build-card-player-fade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(7,7,8,.02) 0%,transparent 53%,rgba(7,8,10,.35) 72%,rgba(7,8,10,.96) 100%),
    linear-gradient(90deg,rgba(7,8,10,.28),transparent 16%,transparent 84%,rgba(7,8,10,.28));
}
.fc-build-card-level-lockup{
  position:absolute;
  z-index:4;
  left:17.5%;
  top:15.2%;
  min-width:74px;
  color:#ead58b;
  text-shadow:0 2px 10px rgba(0,0,0,.62);
}
.fc-build-card-level-lockup strong{
  display:block;
  font-size:clamp(17px,1.45vw,25px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.035em;
}
.fc-build-card-level-lockup span{
  display:block;
  margin-top:7px;
  color:#d4bf76;
  font-size:clamp(10px,.72vw,13px);
  line-height:1;
  font-weight:850;
  letter-spacing:.08em;
}
.fc-build-card-plus{
  position:absolute;
  z-index:5;
  left:5.3%;
  top:49.2%;
  width:49px;
  height:49px;
  transform:rotate(45deg);
  border:2px solid #d9bd63;
  background:linear-gradient(145deg,rgba(15,16,16,.98),rgba(38,31,12,.96));
  box-shadow:
    0 0 0 2px rgba(0,0,0,.78),
    0 0 0 3px rgba(222,192,96,.36),
    0 8px 18px rgba(0,0,0,.40);
}
.fc-build-card-plus::before{
  content:"";
  position:absolute;
  inset:4px;
  border:1px solid rgba(241,215,129,.45);
}
.fc-build-card-plus-inner{
  position:absolute;
  inset:6px;
  display:grid;
  place-items:center;
  transform:rotate(-45deg);
}
.fc-build-card-plus img{
  width:28px;
  height:28px;
  object-fit:contain;
  filter:sepia(1) saturate(1.25) brightness(1.28) drop-shadow(0 1px 3px rgba(0,0,0,.45));
}
.fc-build-card-plus span{
  display:none;
  color:#ead58b;
  font-size:10px;
  font-weight:900;
  letter-spacing:-.03em;
}
.fc-build-card-plus.is-silver{
  border-color:#c9d0d4;
  background:linear-gradient(145deg,rgba(17,20,23,.98),rgba(72,77,80,.90));
}
.fc-build-card-plus.is-silver::before{border-color:rgba(223,229,232,.38)}
.fc-build-card-plus.is-silver img{filter:grayscale(1) brightness(1.55) drop-shadow(0 1px 3px rgba(0,0,0,.45))}
.fc-build-card-plus.is-hidden{display:none}
.fc-build-card-identity{
  position:absolute;
  z-index:5;
  left:14%;
  right:10%;
  top:60.2%;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  text-align:center;
  text-shadow:0 2px 9px rgba(0,0,0,.78);
}
.fc-build-card-logo{
  width:31px;
  height:31px;
  flex:0 0 31px;
  object-fit:contain;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.48));
}
.fc-build-card-identity.is-specialization .fc-build-card-logo{display:none}
.fc-build-card-name-lockup{min-width:0}
.fc-build-card-name-lockup strong{
  display:block;
  color:#ead58b;
  font-size:clamp(16px,1.20vw,22px);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.035em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fc-build-card-name-lockup span{
  display:block;
  margin-top:4px;
  color:#c9b873;
  font-size:clamp(8px,.60vw,11px);
  line-height:1;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fc-build-card-face-stats{
  position:absolute;
  z-index:5;
  left:12.4%;
  right:9.6%;
  top:70.5%;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:1px;
}
.fc-build-card-face-stat{
  min-width:0;
  text-align:center;
  text-shadow:0 2px 7px rgba(0,0,0,.72);
}
.fc-build-card-face-stat span{
  display:block;
  color:#cdbb7e;
  font-size:clamp(7px,.50vw,10px);
  line-height:1;
  font-weight:800;
  letter-spacing:.025em;
}
.fc-build-card-face-stat strong{
  display:block;
  margin-top:5px;
  color:#ead58b;
  font-size:clamp(15px,1.10vw,21px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.025em;
}
@media(min-width:761px) and (max-width:1099px){
  body.build-overview-active .build-overview-grid{
    grid-template-columns:minmax(190px,.74fr) minmax(250px,.92fr) minmax(350px,1.26fr)!important;
  }
  .overview-showcase-column{grid-column:1/-1;padding:18px 0 2px}
  .fc-build-showcase-card{width:min(310px,38vw)}
}
@media(max-width:760px){
  .overview-showcase-column{padding:8px 0 2px}
  .fc-build-showcase-card{width:min(310px,88vw)}
  .fc-build-card-level-lockup strong{font-size:23px}
  .fc-build-card-level-lockup span{font-size:12px}
  .fc-build-card-name-lockup strong{font-size:20px}
  .fc-build-card-name-lockup span{font-size:10px}
  .fc-build-card-face-stat span{font-size:9px}
  .fc-build-card-face-stat strong{font-size:19px}
}
