/* ═══════════════════════════════════════════════════════════
 arena-core.css — Единые стили Арены (стример + игрок)
 ═══════════════════════════════════════════════════════════ */

/* ── Skeleton pulse ── */
@keyframes pulse { 0%,100%{opacity:.35} 50%{opacity:.55} }

/* ── Arena Tabs ── */
.arena-tabs { display:flex; gap:4px; background:rgba(0,0,0,.35); border-radius:12px; padding:4px; margin-bottom:10px; overflow-x:auto; }
.arena-tab { flex:1; padding:12px 10px; border:none; border-radius:10px; font-size:12px; font-weight:700; cursor:pointer; background:transparent; color:var(--text-muted); font-family:var(--font-body); transition:all .2s; white-space:nowrap; min-width:70px; text-align:center; }
.arena-tab--active { background:linear-gradient(135deg,var(--fire-500),var(--fire-400)); color:#fff; box-shadow:0 4px 16px rgba(255,107,26,.25); }

/* ── Sub Tabs ── */
.sub-tabs { display:flex; gap:4px; margin-bottom:12px; }
.sub-tab { padding:8px 14px; border:none; border-radius:8px; font-size:12px; font-weight:600; cursor:pointer; background:rgba(255,255,255,.03); color:var(--text-muted); transition:all .2s; border:1px solid transparent; }
.sub-tab--active { background:rgba(255,255,255,.08); color:var(--text-primary); border-color:rgba(255,255,255,.1); }

/* ── Step Creator ── */
.step { background:var(--bg-card); border:1px solid rgba(255,255,255,.04); border-radius:12px; padding:12px 16px; margin-bottom:10px; transition:all .3s; }
.step--locked { opacity:.4; pointer-events:none; }
.step__head { display:flex; align-items:center; gap:8px; margin-bottom:8px; }
.step__num { width:24px; height:24px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:800; color:#fff; background:var(--fire-500); }
.step__title { font-family:var(--font-display); font-size:16px; letter-spacing:.5px; }

/* ── 2-column create layout ── */
.create-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.create-grid .step--full { grid-column:1/-1; }
.create-grid .step { margin-bottom:0; display:flex; flex-direction:column; }
.create-grid .step__head { margin-bottom:6px; }

/* ── Opponent Tabs ── */
.opp-tabs { display:flex; gap:2px; background:rgba(0,0,0,.3); border-radius:10px; padding:3px; margin-bottom:10px; }
.opp-tab { flex:1; padding:8px 10px; border:none; border-radius:8px; font-size:12px; font-weight:600; cursor:pointer; background:transparent; color:var(--text-muted); transition:all .2s; }
.opp-tab--active { background:var(--fire-500); color:#fff; }

/* ── Search ── */
.search-row { position:relative; display:flex; align-items:center; width:100%; }
.search-input { width:100%; padding:12px 48px 12px 16px; background:rgba(0,0,0,.4); border:1px solid rgba(255,255,255,.1); border-radius:12px; color:var(--text-primary); font-size:14px; outline:none; transition:all .2s ease; }
.search-input:focus { border-color:var(--fire-500); background:rgba(0,0,0,.6); box-shadow:0 0 15px rgba(249,115,22,.25); }
.search-btn { position:absolute; right:6px; top:50%; transform:translateY(-50%); width:36px; height:36px; border:none; border-radius:8px; background:linear-gradient(135deg,var(--fire-500),#ea580c); color:#fff; cursor:pointer; font-size:16px; display:flex; align-items:center; justify-content:center; transition:all .2s ease; box-shadow:0 2px 8px rgba(249,115,22,.3); }
.search-btn:hover { transform:translateY(-50%) scale(1.05); box-shadow:0 4px 12px rgba(249,115,22,.5); }

/* ── Opponent Items ── */
.opp-item { display:flex; align-items:center; gap:10px; padding:10px; background:rgba(255,255,255,.03); border-radius:10px; margin-top:6px; cursor:pointer; border:1px solid transparent; transition:all .2s; }
.opp-item:hover { border-color:rgba(255,107,26,.3); background:rgba(255,255,255,.05); }
.opp-item--selected { border-color:var(--fire-500); background:rgba(255,107,26,.06); }

/* ── Pills ── */
.pill-grid { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:6px; }
.pill { padding:6px 12px; border:1px solid rgba(255,255,255,.06); border-radius:8px; font-size:12px; font-weight:600; cursor:pointer; background:rgba(255,255,255,.03); color:var(--text-muted); transition:all .2s; }
.pill--active { background:var(--fire-500); color:#fff; border-color:var(--fire-500); }
.pill-sm { padding:4px 10px; min-width:32px; text-align:center; }

/* ── Condition Cards ── */
.cond-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.cond-card { padding:10px 8px; background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06); border-radius:10px; text-align:center; cursor:pointer; transition:all .2s; }
.cond-card:hover { border-color:rgba(255,255,255,.12); }
.cond-card--active { border-color:var(--fire-500); background:rgba(255,107,26,.06); }
.cond-card__icon { font-size:20px; margin-bottom:2px; display:flex; align-items:center; justify-content:center; min-height:28px; }
.cond-card__name { font-weight:700; font-size:12px; }
.cond-card__desc { font-size:10px; color:var(--text-muted); margin-top:0; }
.cond-icon { width:1.4em; height:1.4em; display:inline-block; vertical-align:middle; object-fit:contain; margin-top:-0.15em; }

/* ── Solo Mode Buttons (cond-btn) ── */
.cond-btn {
 display:flex; flex-direction:column; align-items:center; justify-content:center;
 gap:6px; padding:14px 10px;
 background:rgba(255,255,255,.03); border:2px solid rgba(255,255,255,.07);
 border-radius:12px; cursor:pointer; transition:all .22s ease;
 color:var(--text-muted); width:100%; text-align:center;
 font-family:var(--font-body);
}
.cond-btn:hover {
 border-color:rgba(249,115,22,.35);
 background:rgba(249,115,22,.05);
 color:var(--text-secondary);
 transform:translateY(-2px);
 box-shadow:0 4px 16px rgba(249,115,22,.1);
}
.cond-btn--active {
 border-color:var(--fire-500);
 background:rgba(249,115,22,.1);
 color:#fff;
 box-shadow:0 0 0 3px rgba(249,115,22,.15), 0 4px 16px rgba(249,115,22,.2);
}
.cond-btn__icon { font-size:28px; line-height:1; filter:drop-shadow(0 2px 6px rgba(0,0,0,.5)); }
.cond-btn__label { font-weight:800; font-size:13px; letter-spacing:.3px; }
.cond-btn__desc { font-size:11px; color:var(--text-muted); line-height:1.3; }
.cond-btn--active .cond-btn__desc { color:rgba(255,255,255,.6); }


/* ── Battles ── */
.battles-grid { display:flex; gap:6px; }
.bat-btn { flex:1; padding:8px; border:1px solid rgba(255,255,255,.06); border-radius:8px; text-align:center; cursor:pointer; font-weight:700; background:rgba(255,255,255,.03); color:var(--text-muted); transition:all .2s; font-size:13px; }
.bat-btn--active { border-color:var(--fire-500); background:var(--fire-500); color:#fff; }
.bat-custom-input { width:56px; min-width:56px; flex:none; padding:8px 4px; border:1px solid rgba(255,255,255,.06); border-radius:8px; text-align:center; font-weight:700; background:rgba(255,255,255,.03); color:var(--text-muted); font-size:13px; font-family:var(--font-body); outline:none; transition:all .2s; -moz-appearance:textfield; }
.bat-custom-input::-webkit-inner-spin-button, .bat-custom-input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.bat-custom-input:focus { border-color:var(--fire-500); color:var(--text-primary); background:rgba(249,115,22,.06); }
.bat-custom-input--active { border-color:var(--fire-500) !important; background:rgba(249,115,22,.12) !important; color:#fff !important; box-shadow:0 0 8px rgba(249,115,22,.2); }

/* ── Wager ── */
.wager-display { font-family:var(--font-display); font-size:28px; color:var(--fire-400); text-align:center; margin:4px 0; }
.wager-slider { width:100%; appearance:none; height:6px; background:rgba(255,255,255,.08); border-radius:3px; outline:none; }
.wager-slider::-webkit-slider-thumb { appearance:none; width:20px; height:20px; border-radius:50%; background:var(--fire-500); cursor:grab; }
.wager-minmax { display:flex; justify-content:space-between; font-size:11px; color:var(--text-muted); margin-top:2px; }

/* ── Submit ── */
.submit-btn { width:100%; padding:14px; border:none; border-radius:12px; font-size:15px; font-weight:800; cursor:pointer; background:linear-gradient(135deg,var(--fire-500),var(--fire-400)); color:#fff; font-family:var(--font-display); letter-spacing:1px; transition:all .3s; box-shadow:0 4px 16px rgba(255,107,26,.2); }
.submit-btn:hover { transform:translateY(-2px); box-shadow:0 6px 24px rgba(255,107,26,.3); }
.submit-btn:disabled { opacity:.4; pointer-events:none; }

/* ── Summary ── */
.summary-bar { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; padding:8px; background:rgba(0,0,0,.3); border-radius:8px; margin-bottom:10px; font-size:12px; color:var(--text-muted); }
.summary-tag { padding:4px 10px; background:rgba(255,255,255,.04); border-radius:6px; }

/* ── TC Labels ── */
.tc-label { font-size:11px; font-weight:700; color:var(--text-muted); text-transform:uppercase; letter-spacing:1px; margin-bottom:4px; display:flex; align-items:center; gap:6px; }
.tc-field { margin-bottom:10px; }

/* ── Challenge Cards Grid ── */
.ch-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
@media (max-width: 1400px) { .ch-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px) { .ch-grid { grid-template-columns: 1fr; } }

.ch-card { display:flex; background:rgba(22,24,29,0.8); border:1px solid rgba(249,115,22,0.15); border-radius:12px; overflow:hidden; transition:all .3s; backdrop-filter:blur(10px); position:relative; }
.ch-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:100%; box-shadow:inset 0 0 12px rgba(249,115,22,0.05); pointer-events:none; border-radius:12px; }
.ch-card:hover { border-color:rgba(249,115,22,.6); transform:translateY(-2px); box-shadow:0 8px 24px rgba(249,115,22,0.15); background:rgba(22,24,29,0.95); }
.ch-card__accent { width:4px; min-height:100%; background:linear-gradient(180deg,var(--fire-400),var(--fire-500)); flex-shrink:0; box-shadow: 2px 0 8px rgba(249,115,22,0.4); }
.ch-card__body { flex:1; min-width:0; padding:10px 12px; display:flex; flex-direction:column; gap:6px; z-index:1; }
.ch-card__top { display:flex; align-items:flex-start; gap:10px; min-width:0; }
.ch-card__icon { font-size:24px; flex-shrink:0; filter: drop-shadow(0 2px 6px rgba(0,0,0,0.8)); margin-top:2px; }
.ch-card__info { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.ch-card__title { font-family:var(--font-display); font-size:16px; letter-spacing:0.5px; line-height:1.1; display:flex; align-items:center; gap:6px; max-width:100%; text-shadow:0 1px 3px rgba(0,0,0,0.8); }
.ch-card__title-text { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; min-width:0; color:#fff; }
.ch-card__condition-badge { display:inline-flex; align-items:center; gap:4px; padding:2px 6px; border-radius:4px; background:rgba(249,115,22,.15); border:1px solid rgba(249,115,22,.4); color:#fb923c; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:0.5px; box-shadow:inset 0 0 8px rgba(249,115,22,.1), 0 2px 4px rgba(0,0,0,0.4); text-shadow:0 1px 1px rgba(0,0,0,.5); max-width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ch-card__reward-box { text-align:right; flex-shrink:0; background:linear-gradient(135deg, rgba(200,170,110,0.1), rgba(200,170,110,0.02)); border:1px solid rgba(200,170,110,0.3); padding:4px 8px; border-radius:8px; box-shadow:inset 0 2px 4px rgba(0,0,0,.4); display:flex; flex-direction:column; justify-content:center; }
.ch-card__reward-num { font-family:var(--font-display); font-size:20px; line-height:1; color:var(--fire-400); letter-spacing:1px; margin-bottom:1px; text-shadow:0 2px 4px rgba(0,0,0,.8); }
.ch-card__reward-label { font-size:8px; font-weight:800; color:#c8aa6e; text-transform:uppercase; letter-spacing:1px; }
.ch-card__bottom { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:6px; border-top:1px dashed rgba(249,115,22,.2); margin-top: auto; }
.ch-card__stats { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.ch-card__stat { font-size:11px; color:var(--text-subtle); display:flex; align-items:center; gap:4px; background:rgba(0,0,0,0.2); padding:2px 6px; border-radius:4px; border:1px solid rgba(255,255,255,0.03); }
.ch-card__stat strong { color:var(--text-primary); font-weight:700; }
.ch-badge { display:inline-block; padding:2px 8px; border-radius:4px; font-size:10px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; border:1px solid transparent; box-shadow:0 2px 4px rgba(0,0,0,0.3); }
.ch-badge--active { background:rgba(34,197,94,.15); color:#4ade80; border-color:rgba(34,197,94,.4); }
.ch-badge--ended { background:rgba(100,100,100,.15); color:#a0a0a0; border-color:rgba(100,100,100,.3); }
.ch-card__join { padding:6px 14px; border:none; border-radius:8px; font-size:11px; font-weight:800; cursor:pointer; background:linear-gradient(135deg,var(--fire-500),var(--fire-400)); color:#fff; font-family:var(--font-display); letter-spacing:1px; transition:all .2s; white-space:nowrap; box-shadow:0 2px 8px rgba(249,115,22,0.3); text-shadow:0 1px 2px rgba(0,0,0,0.2); }
.ch-card__join:hover { transform:scale(1.05); box-shadow:0 4px 16px rgba(249,115,22,.5); filter:brightness(1.1); }

/* ── Team Battle Cards ── */
.tb-card { background:var(--bg-card); border:1px solid rgba(255,255,255,.04); border-radius:16px; padding:20px; margin-bottom:14px; }
.tb-card__header { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.tb-card__title { font-family:var(--font-display); font-size:18px; }
.tb-card__wager { font-family:var(--font-display); font-size:20px; color:var(--fire-400); display:flex; align-items:center; gap:4px; }
.tb-card__meta { display:flex; gap:10px; font-size:12px; color:var(--text-muted); margin-bottom:14px; flex-wrap:wrap; }
.tb-card__meta span { display:flex; align-items:center; gap:3px; }
.tb-vs { display:grid; grid-template-columns:1fr auto 1fr; gap:12px; align-items:start; }
.tb-team { border:2px solid rgba(255,255,255,.06); border-radius:12px; padding:12px; }
.tb-team--alpha { border-color:rgba(59,130,246,.15); background:rgba(59,130,246,.03); }
.tb-team--bravo { border-color:rgba(239,68,68,.15); background:rgba(239,68,68,.03); }
.tb-team__head { display:flex; justify-content:space-between; font-weight:700; font-size:13px; margin-bottom:8px; }
.tb-team__head--alpha { color:#60a5fa; }
.tb-team__head--bravo { color:#f87171; }
.tb-slot { padding:6px 8px; background:rgba(255,255,255,.03); border-radius:6px; margin-bottom:4px; font-size:12px; display:flex; justify-content:space-between; align-items:center; }
.tb-slot--empty { color:var(--text-muted); font-style:italic; cursor:pointer; }
.tb-slot--empty:hover { background:rgba(255,255,255,.06); }
.tb-vs__badge { display:flex; align-items:center; justify-content:center; font-weight:900; font-size:14px; background:rgba(255,255,255,.06); border-radius:50%; width:36px; height:36px; align-self:center; color:var(--text-muted); }
.tb-actions { display:flex; gap:8px; margin-top:12px; }
.tb-btn { flex:1; padding:10px; border:none; border-radius:10px; font-size:13px; font-weight:700; cursor:pointer; transition:all .2s; }
.tb-btn--start { background:linear-gradient(135deg,var(--fire-500),var(--fire-400)); color:#fff; }
.tb-btn--start:disabled { opacity:.4; }
.tb-btn--cancel { background:transparent; border:1px solid rgba(239,68,68,.2); color:#ef4444; }

/* ── Team Creator ── */
.team-creator { background:var(--bg-card); border:1px solid rgba(255,255,255,.04); border-radius:16px; padding:24px; }

/* ── Duel Cards Grid ── */
.duels-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
@media (max-width: 1400px) { .duels-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:768px) { .duels-grid { grid-template-columns:1fr; } }

.duel-card {
 background:rgba(22,24,29,0.85);
 border:1px solid rgba(255,255,255,.06);
 border-radius:16px;
 padding:20px;
 display:flex; flex-direction:column; gap:12px;
 position:relative; overflow:hidden;
 backdrop-filter:blur(10px);
 transition:all .3s ease;
}
.duel-card::before {
 content:''; position:absolute; top:0; left:0; right:0; height:3px;
 background:linear-gradient(90deg,var(--fire-500),var(--fire-400),#fbbf24);
 opacity:.6; transition:opacity .3s;
}
.duel-card:hover { border-color:rgba(249,115,22,.4); transform:translateY(-3px); box-shadow:0 12px 32px rgba(249,115,22,.12); }
.duel-card:hover::before { opacity:1; }

.duel-card__vs { display:flex; flex-direction:column; gap:6px; }
.duel-card__players { font-family:var(--font-display); font-weight:800; font-size:17px; letter-spacing:.3px; line-height:1.3; text-shadow:0 1px 3px rgba(0,0,0,.5); }
.duel-card__info { font-size:12px; color:var(--text-muted); display:flex; flex-wrap:wrap; gap:4px; align-items:center; }
.duel-card__status {
 padding:5px 14px; border-radius:20px; font-size:11px; font-weight:800;
 letter-spacing:.5px; text-transform:uppercase;
 display:inline-flex; align-items:center; gap:4px;
}
.duel-card__actions { display:flex; gap:8px; margin-top:auto; padding-top:4px; }
.duel-card__actions .duel-act { flex:1; text-align:center; }
.duel-act { padding:8px 14px; font-size:12px; font-weight:700; border-radius:10px; border:none; cursor:pointer; transition:all .2s; font-family:'Manrope',sans-serif; }
.duel-act--accept { background:rgba(34,197,94,.15); color:#4ade80; border:1px solid rgba(34,197,94,.3); }
.duel-act--accept:hover { background:rgba(34,197,94,.25); transform:scale(1.03); }
.duel-act--decline { background:rgba(239,68,68,.12); color:#f87171; border:1px solid rgba(239,68,68,.25); }
.duel-act--decline:hover { background:rgba(239,68,68,.2); }

/* ── Empty State ── */
.empty-state { text-align:center; padding:40px 20px; color:var(--text-muted); }
.empty-state__icon { font-size:48px; margin-bottom:10px; }
.empty-state__title { font-family:var(--font-display); font-size:20px; margin-bottom:6px; color:var(--text-secondary); }

/* ── Toast ── */
.toast { position:fixed; bottom:24px; left:50%; transform:translateX(-50%); padding:14px 28px; border-radius:12px; font-size:14px; font-weight:600; color:#fff; z-index:9999; animation:slideUp .3s ease; max-width:90vw; word-break:break-word; text-align:center; box-shadow:0 8px 32px rgba(0,0,0,.5); }
.toast--success,.toast--ok { background:linear-gradient(135deg,#22c55e,#16a34a); }
.toast--error { background:linear-gradient(135deg,#ef4444,#dc2626); }
.toast--info { background:linear-gradient(135deg,#3b82f6,#2563eb); }
@keyframes slideUp { from{transform:translateX(-50%) translateY(20px);opacity:0} to{transform:translateX(-50%) translateY(0);opacity:1} }
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:.85} }

/* ── WoT Bind Banner ── */
.wot-bind-banner { position:fixed; bottom:20px; right:20px; padding:12px 20px; background:linear-gradient(135deg,#3b82f6,#6366f1); border-radius:12px; color:#fff; font-size:13px; font-weight:600; z-index:99; box-shadow:0 6px 24px rgba(59,130,246,.3); cursor:pointer; }

/* ── Cascading Tank Selector ── */
.tank-cascade-sel {
 width:100%; padding:9px 14px; background:#0f1115; border:1px solid #23262f;
 border-radius:10px; color:#e8eaf0; font-size:13px; outline:none;
 font-family:'Manrope',sans-serif; cursor:pointer; appearance:none;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%234b5160' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
 background-repeat:no-repeat; background-position:right 12px center; background-size:10px;
 padding-right:32px; transition:border-color .2s;
}
.tank-cascade-sel:focus, .tank-cascade-sel:not(:disabled):hover { border-color:#f97316; }
.tank-cascade-sel option { background:#16181d; color:#e8eaf0; }
.tank-cascade-row { display:flex; gap:8px; }

.tank-picker {
 max-height:180px; overflow-y:auto; background:rgba(0,0,0,.25);
 border:1px solid #23262f; border-radius:10px; padding:4px;
 scrollbar-width:thin; scrollbar-color:#23262f transparent;
}
.tank-picker__item {
 display:flex; align-items:center; gap:8px; padding:7px 10px;
 font-size:13px; color:#c0c4d0; cursor:pointer; border-radius:7px;
 border-bottom:1px solid rgba(35,38,47,.5); transition:background .15s;
}
.tank-picker__item:last-child { border-bottom:none; }
.tank-picker__item:hover { background:rgba(249,115,22,.08); color:#e8eaf0; }
.tank-picker__class { font-size:11px; font-weight:700; color:#f97316; min-width:24px; text-align:center; }
.tank-picker__name { flex:1; font-weight:500; }
.tank-picker__loading, .tank-picker__empty { text-align:center; padding:12px; font-size:12px; color:#4b5160; }

.tank-selected-badge { display:inline-flex; align-items:center; gap:6px; padding:7px 12px;
 background:rgba(34,197,94,.08); border:1px solid rgba(34,197,94,.2); border-radius:10px; font-size:13px; }
.tank-selected-badge__tier { color:#f97316; font-weight:800; font-size:12px; }
.tank-selected-badge__class { color:#8b91a0; font-size:11px; font-weight:700; }
.tank-selected-badge__name { color:#4ade80; font-weight:600; flex:1; }
.tank-selected-badge__clear { background:none; border:none; cursor:pointer; color:#f87171; font-size:14px; padding:2px 4px; border-radius:4px; transition:all .2s; }
.tank-selected-badge__clear:hover { background:rgba(244,63,94,.15); }

/* ── Duels List Sections ── */
.duels-section-title { font-size:11px; font-weight:800; letter-spacing:.08em; color:#4b5160; text-transform:uppercase; margin:12px 0 6px; padding:0 4px; }
.duels-section-title:first-child { margin-top:0; }

.duel-card--incoming { border-color:rgba(249,115,22,.4); background:rgba(249,115,22,.04); }
.duel-card--incoming .duel-card__players { color:#f97316; }
.duel-card--incoming::before { background:linear-gradient(90deg,#f97316,#fb923c,#fbbf24); }

.duel-act--check { background:rgba(59,130,246,.12); color:#60a5fa; border:1px solid rgba(59,130,246,.25); }
.duel-act--check:hover { background:rgba(59,130,246,.22); }
.duel-act--cancel { background:rgba(156,163,175,.08); color:#9ca3af; border:1px solid rgba(156,163,175,.15); }
.duel-act--cancel:hover { background:rgba(239,68,68,.12); color:#f87171; border-color:rgba(239,68,68,.25); }

.duel-card--outgoing { border-color:rgba(245,158,11,.2); }
.duel-card--outgoing::before { background:linear-gradient(90deg,#f59e0b,#fbbf24); opacity:.3; }

/* ── Responsive ── */
@media (max-width:768px) {
 .create-grid { grid-template-columns:1fr; }
 .create-grid .step--full { grid-column:1; }
 .cond-grid { grid-template-columns:repeat(2,1fr); }
 .tb-vs { grid-template-columns:1fr; gap:8px; }
 .tb-vs__badge { justify-self:center; }
 .tank-cascade-row { flex-direction:column; }
}


/* ══ Smooth Back-and-Forth Glowing Buttons (Uninterrupted GPU Smooth) ══ */
@keyframes smoothGlowBackAndForth {
  0% {
    background-position: 0% 50%;
    box-shadow: 0 0 12px rgba(245, 158, 11, 0.4);
  }
  50% {
    background-position: 100% 50%;
    box-shadow: 0 0 25px rgba(245, 158, 11, 0.75), 0 0 40px rgba(239, 68, 68, 0.4);
  }
  100% {
    background-position: 0% 50%;
    box-shadow: 0 0 12px rgba(245, 158, 11, 0.4);
  }
}

@keyframes smoothRaidGlow {
  0% {
    background-position: 0% 50%;
    box-shadow: 0 0 12px rgba(244, 63, 94, 0.4);
  }
  50% {
    background-position: 100% 50%;
    box-shadow: 0 0 25px rgba(244, 63, 94, 0.8), 0 0 40px rgba(234, 179, 8, 0.45);
  }
  100% {
    background-position: 0% 50%;
    box-shadow: 0 0 12px rgba(244, 63, 94, 0.4);
  }
}

@keyframes smoothDuelGlow {
  0% {
    background-position: 0% 50%;
    box-shadow: 0 0 12px rgba(249, 115, 22, 0.4);
  }
  50% {
    background-position: 100% 50%;
    box-shadow: 0 0 25px rgba(249, 115, 22, 0.75), 0 0 35px rgba(34, 197, 94, 0.4);
  }
  100% {
    background-position: 0% 50%;
    box-shadow: 0 0 12px rgba(249, 115, 22, 0.4);
  }
}

.glow-btn-gold {
  background: linear-gradient(135deg, #f59e0b, #d97706, #ef4444, #f59e0b) !important;
  background-size: 300% 300% !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  border: 1px solid rgba(251, 191, 36, 0.7) !important;
  animation: smoothGlowBackAndForth 5s ease-in-out infinite !important;
  will-change: background-position, box-shadow;
  transform: translateZ(0);
}

.glow-btn-raid {
  background: linear-gradient(135deg, #f43f5e, #be123c, #eab308, #f43f5e) !important;
  background-size: 300% 300% !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  border: 1px solid rgba(244, 63, 94, 0.7) !important;
  animation: smoothRaidGlow 5s ease-in-out infinite !important;
  will-change: background-position, box-shadow;
  transform: translateZ(0);
}

.glow-btn-duels {
  background: linear-gradient(135deg, #f97316, #ea580c, #22c55e, #f97316) !important;
  background-size: 300% 300% !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  border: 1px solid rgba(249, 115, 22, 0.7) !important;
  animation: smoothDuelGlow 5s ease-in-out infinite !important;
  will-change: background-position, box-shadow;
  transform: translateZ(0);
}
