/* ============================================================
   БРОСКИ И ТРАВМЫ
   ============================================================ */


/* ---------- вкладка «Броски» ---------- */
.thr-panel { display: flex; flex-direction: column; gap: 16px; max-width: 760px; margin: 0 auto; }
.thr-pickers { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
.thr-pick {
    flex: 1 1 140px; max-width: 220px; min-width: 140px; background: var(--surface);
    border: 1px solid var(--border); border-radius: var(--radius);
    padding: 12px; text-align: center;
}
.thr-pick label { display: block; font-size: .8rem; margin-bottom: 8px; color: var(--text-dim); }
.thr-pick input {
    width: 64px; text-align: center; font-family: var(--mono);
    font-size: 1.3rem; font-weight: 700; padding: 6px 4px;
}
.thr-step { display: inline-flex; align-items: center; gap: 6px; }
.thr-step .btn { min-width: 32px; height: 32px; padding: 0 8px; font-size: 1rem; font-weight: 700; }
.thr-pick.y { border-color: rgba(232, 195, 58, .4); }
.thr-pick.g { border-color: rgba(159, 212, 74, .4); }
.thr-pick.b { border-color: rgba(140, 140, 150, .4); }
.thr-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.thr-actions .big { flex: 1; min-width: 180px; }

.thr-stage { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; min-height: 64px; }
.tdie {
    width: 52px; height: 52px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-family: var(--mono); font-size: 1.45rem; font-weight: 700;
    border: 1px solid; animation: thr-pop .25s ease backwards;
}
@keyframes thr-pop { from { transform: scale(.4) rotate(-14deg); opacity: 0; } to { transform: none; opacity: 1; } }
.tdie.rolling { filter: blur(.6px); opacity: .75; }
.tdie.y { background: #2a230f; border-color: #e8c33a; color: #e8c33a; box-shadow: 0 0 10px rgba(232, 195, 58, .25); }
.tdie.g { background: #16230f; border-color: #9fd44a; color: #9fd44a; box-shadow: 0 0 10px rgba(159, 212, 74, .25); }
.tdie.b { background: #191919; border-color: #8c8c96; color: #b9b9c4; }
.tdie.six { box-shadow: 0 0 14px rgba(232, 195, 58, .55); }
.tdie.one { box-shadow: 0 0 14px rgba(217, 83, 74, .5); }
.tdie.y.one { color: #d9534a; border-color: #d9534a; }
.tdie.b.one { color: #e07a5a; border-color: #e07a5a; }

.thr-success { width: 100%; font-family: var(--mono); letter-spacing: 1px; color: var(--text-dim); font-size: .95rem; }
.thr-success b { color: var(--accent); font-size: 1.2rem; }

.thr-cons { display: flex; flex-direction: column; gap: 8px; }
.thr-cons-item { border-left: 3px solid; padding: 8px 12px; font-size: .85rem; background: var(--surface); border-radius: 0 8px 8px 0; }
.thr-cons-item.bio { border-color: #d9534a; }
.thr-cons-item.boom { border-color: #e07a5a; }
.thr-cons-item.rad { border-color: var(--hazard); }
.thr-apply { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.thr-apply select { padding: 6px 8px; font-size: .85rem; }

/* ---------- окно травм ---------- */
.inj-controls { display: flex; gap: 10px; align-items: center; margin: 14px 0; flex-wrap: wrap; font-size: .82rem; color: var(--text-dim); }
.inj-controls input { width: 90px; padding: 7px 9px; font-family: var(--mono); font-weight: 700; }
.inj-result {
    border: 1px solid var(--border-dim); border-radius: var(--radius);
    padding: 14px; background: var(--surface); min-height: 60px; font-size: .88rem;
}
.inj-result b { color: var(--danger); display: block; margin-bottom: 6px; }
.inj-result.fatal { border-color: rgba(217, 83, 74, .5); background: #1c1211; }
.inj-fatal {
    display: inline-block; margin-left: 10px; padding: 2px 8px;
    border: 1px solid var(--danger); border-radius: 6px;
    color: var(--danger); font-size: .72rem; font-weight: 700;
}
.inj-result p { margin: 4px 0; }
.inj-meta { color: var(--text-dim); font-size: .78rem; }

/* --- быстрые броски d66 / d666 --- */
.thr-quick { display: flex; gap: 8px; }
.thr-quick .btn { font-family: var(--mono); min-width: 64px; }
.thr-quick-out { min-height: 38px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.thr-quick-dice { display: inline-flex; gap: 6px; }
.thr-quick-dice i {
    font-style: normal; width: 34px; height: 34px; border-radius: 8px;
    display: inline-flex; align-items: center; justify-content: center;
    font-family: var(--mono); font-weight: 700; font-size: 1.1rem;
    background: var(--surface); border: 1px solid var(--border);
    animation: thr-pop .25s ease backwards;
}
.thr-quick-dice i.rolling { filter: blur(.6px); opacity: .75; }
.thr-quick-total { color: var(--accent); font-family: var(--mono); }
