.flash{
  padding:10px 12px;
  border-radius:14px;
  margin:0 0 12px;
  border:1px solid var(--line);
  background:var(--panel);
}
.flash.good{border-color:rgba(76,255,180,.25)}
.flash.bad{border-color:rgba(255,92,122,.25)}

.list{display:flex; flex-direction:column; gap:10px}
.row{
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  padding:12px;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid var(--line);
}
.row:hover{background:rgba(255,255,255,.06)}
.row .left{min-width:0}
.row .title{font-weight:800; margin:0 0 4px; line-height:1.35}

@media (prefers-reduced-motion:no-preference){
  .card,
  .partners-card,
  .topic,
  .board,
  .panel{
    transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease);
  }
  .card:hover,
  .partners-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--shadow2);
    border-color:rgba(214,178,94,.22);
  }
}

.reveal{opacity:0; transform:translateY(10px)}
.reveal.in{opacity:1; transform:translateY(0)}
@media (prefers-reduced-motion:no-preference){
  .reveal{transition:opacity .45s var(--ease), transform .45s var(--ease)}
}

.partner-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
.partner-item{
  display:block;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.partner-item img{width:100%; height:100%; display:block; object-fit:cover}
.partner-cap{
  padding:10px 12px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.partners-card{width:100%; max-width:100%; overflow:hidden; border-radius:18px}
#partners{max-width:100%; overflow:hidden}
#partners .bd{overflow:hidden}
#partnersScroller{max-width:100%; min-width:0}

.scroll-container,
.partners-hscroll{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  display:flex;
  gap:12px;
  padding:12px;
  overflow-x:auto;
  overflow-y:hidden;
  white-space:nowrap;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  scroll-snap-type:x mandatory;
}
.scroll-container::-webkit-scrollbar,
.partners-hscroll::-webkit-scrollbar{height:0}

.partners-hscroll .partner-item,
.scroll-container .partner-item{
  flex:0 0 auto;
  width:260px;
  max-width:82vw;
  scroll-snap-align:start;
  box-sizing:border-box;
}
.partners-hscroll .partner-item img,
.scroll-container .partner-item img{
  width:100%;
  height:132px;
  display:block;
  object-fit:cover;
}

.hscroll-wrap{position:relative; max-width:100%}
.hscroll-wrap .hs-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:36px;
  height:36px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(10,12,22,.55);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:2;
  backdrop-filter:blur(10px);
}
.hscroll-wrap .hs-btn:hover{background:rgba(10,12,22,.75); border-color:rgba(214,178,94,.28)}
.hscroll-wrap .hs-btn.prev{left:10px}
.hscroll-wrap .hs-btn.next{right:10px}

.lv-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  backdrop-filter:blur(6px);
}
.lv-badge.gray{background:rgba(255,255,255,.06); color:#ccc}
.lv-badge.blue{background:linear-gradient(180deg, rgba(31,78,255,.28), rgba(31,78,255,.10)); border-color:rgba(31,78,255,.35); color:#fff}
.lv-badge.purple{background:linear-gradient(180deg, rgba(106,43,255,.28), rgba(106,43,255,.10)); border-color:rgba(106,43,255,.35); color:#fff}
.lv-badge.gold{background:linear-gradient(180deg, rgba(214,178,94,.30), rgba(214,178,94,.12)); border-color:rgba(214,178,94,.45); color:#fff; box-shadow:0 0 16px rgba(214,178,94,.18)}
.lv-badge.legend{background:linear-gradient(180deg, #ff0000, #ff9900); border-color:rgba(255,120,0,.60); color:#fff; box-shadow:0 0 18px rgba(255,80,0,.35)}

.lv-bar{
  width:100%;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
  margin-top:6px;
}
.lv-fill{height:100%; border-radius:999px; transition:width .45s cubic-bezier(.2,.8,.2,1)}
.lv-fill.gray{background:#666}
.lv-fill.blue{background:linear-gradient(90deg,#1f4eff,#35d4ff)}
.lv-fill.purple{background:linear-gradient(90deg,#6a2bff,#ff4fd8)}
.lv-fill.gold{background:linear-gradient(90deg,#d4af37,#ffd700)}
.lv-fill.legend{background:linear-gradient(90deg,#ff0000,#ff9900)}


.scoryon-panel{background:linear-gradient(180deg, rgba(120,215,255,.10), rgba(214,178,94,.06));border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:14px;margin-bottom:14px;box-shadow:var(--shadowSoft)}
.scoryon-panel .panel-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;align-items:center}
.scoryon-panel .panel-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.scoryon-mini-list{display:grid;gap:8px}
.scoryon-mini-item{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
