.cast-person { min-width: 56px; min-height: 64px; display: grid; justify-items: center; gap: 6px; color: var(--text); }
.cast-avatar { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle at 35% 30%, #5e95d1, #1a1a1a 75%); position: relative; overflow: hidden; }
.cast-avatar::after { content: ""; position: absolute; inset: 0; background-image: radial-gradient(#ffffff55 0.7px, transparent 0.9px); background-size: 4px 4px; }
.cast-avatar .ini { position: relative; z-index: 1; font: 700 12px var(--mono); letter-spacing: 0.08em; }
.cast-avatar.sm { width: 36px; height: 36px; flex-basis: 36px; }
.cast-avatar.sm .ini { font-size: 10px; }
.cast-avatar.bench { opacity: 0.45; }
.cast-list { padding: 4px 14px; }
.cast-row { min-height: 64px; color: var(--text); }
.cast-row .t small { white-space: normal; overflow: visible; text-overflow: clip; }
.cast-row .side { max-width: 84px; display: grid; justify-items: end; gap: 5px; }
.cast-rule { margin-top: 14px; }
.cast-hero { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.cast-hero > div { flex: 1; min-width: 150px; }
.cast-hero .btns { flex-basis: 100%; margin-top: 0; }
.cast-edit { display: block; }
.cast-edit .card { display: grid; gap: 12px; }
.cast-field { display: grid; gap: 6px; margin-top: 12px; }
.cast-field .field { min-height: 46px; }
.cast-field .note { min-height: 96px; }
.cast-kv { display: grid; grid-template-columns: minmax(90px, 0.7fr) 1.3fr; gap: 12px; padding: 7px 0; border-top: 1px solid var(--line-d); }
.cast-kv:first-child { border-top: 0; }
.cast-kv b { font: 400 9px/1.5 var(--mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--text-3); }
.cast-kv span { font: 600 13px/1.35 var(--mono); letter-spacing: 0.02em; text-transform: uppercase; overflow-wrap: anywhere; }
.cast-stories { margin-top: 12px; }
.cast-story { padding: 8px 0; border-top: 1px solid var(--line-d); font: 10px/1.5 var(--mono); color: var(--text-2); }
.cast-story:first-of-type { border-top: 0; }
.cast-offer-button { min-height: 44px; }
.cast-offer { min-height: 64px; }
.cast-offers:empty { display: none; }
.cast-edit .btn, .cast-versions .btn, .cast-hero .btn, .cast-person .btn, .form .btn { min-height: 44px; }
#scr-detail .tbar .disc { width: 44px; height: 44px; }
.cast-versions { padding: 4px 14px; }
.cast-versions .row { min-height: 58px; align-items: flex-start; }
.cast-progress { display: flex; gap: 6px; margin-bottom: 18px; }
.cast-progress span { flex: 1; height: 3px; border-radius: 2px; background: rgba(255,255,255,0.12); }
.cast-progress span.on { background: var(--gold-l); }
@media (max-width: 390px) {
  .cast-hero > div { min-width: 130px; }
  .cast-kv { grid-template-columns: 0.85fr 1.15fr; }
}
