/* ================= Мультики ================= */
#cut { position: fixed; inset: 0; z-index: 80; cursor: pointer; }
@keyframes cutIn { from { opacity: 0; } }
#cut canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.cut-bar { position: absolute; left: 0; right: 0; background: #05031a; border-color: var(--out); z-index: 1; }
.cut-bar.top { top: 0; height: 64px; border-bottom: 4px solid var(--out); display: flex; align-items: center; justify-content: center; }
.cut-title { font-family: 'Rubik', sans-serif; font-weight: 800; font-size: 24px; color: var(--gold); letter-spacing: .5px;
  text-shadow: 0 3px 0 var(--out), 2px 2px 0 var(--out), -2px 2px 0 var(--out), 2px -2px 0 var(--out), -2px -2px 0 var(--out); }
.cut-bar.bottom { bottom: 0; min-height: 130px; border-top: 4px solid var(--out); padding: 14px max(24px, 12vw) 18px; }
.cut-who { font-weight: 900; font-size: 15px; letter-spacing: 1px; margin-bottom: 4px; text-transform: uppercase; }
.cut-text { font-size: 21px; font-weight: 800; line-height: 1.4; color: #fff7e6; min-height: 58px; }
.cut-next { position: absolute; right: 22px; bottom: 10px; font-size: 12px; color: var(--muted); animation: pulse 1.4s infinite; }
.cut-skip {
  position: absolute; top: 14px; right: 18px; z-index: 2; padding: 7px 14px; border-radius: 12px; font-weight: 900; font-size: 13px;
  border: 3px solid var(--out); background: linear-gradient(180deg, #3a3396, #282370); box-shadow: 0 3px 0 var(--out); color: var(--text);
}
.cut-skip:hover { filter: brightness(1.2); }
#log-cuts { margin-bottom: 6px; }
#log-cuts .sub-title { margin-top: 4px; }
.cuts { display: flex; flex-direction: column; gap: 7px; margin-bottom: 8px; }
.cut-item { text-align: left; padding: 10px 13px; border-radius: 14px; font-weight: 900; font-size: 14px; border: 3px solid var(--out);
  background: linear-gradient(180deg, #8a5cf0, #5e36c0); box-shadow: 0 4px 0 var(--out); color: #fff; }
button.cut-item:hover { filter: brightness(1.12); }
.cut-item.locked { background: #1d1858; color: var(--muted); box-shadow: none; }
.cut-item small { display: block; font-weight: 700; font-size: 11.5px; margin-top: 2px; }
@media (max-width: 860px) { .cut-text { font-size: 17px; } .cut-bar.bottom { padding: 12px 16px 16px; } }

/* развилки сюжета */
.cut-choices { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 10px; }
.cut-choices button {
  flex: 1 1 220px; text-align: left; padding: 10px 14px; border-radius: 14px; cursor: pointer; color: var(--out);
  border: 3px solid var(--out); background: linear-gradient(180deg, var(--gold-hi), var(--gold) 50%, var(--gold-lo));
  box-shadow: inset 0 2px 0 rgba(255,255,255,.6), 0 4px 0 var(--gold-sh), 0 5px 0 var(--out); transition: transform .08s, filter .15s;
}
.cut-choices button:hover { filter: brightness(1.08); transform: translateY(-2px); }
.cut-choices button b { display: block; font-size: 16px; font-weight: 900; }
.cut-choices button small { display: block; font-size: 12.5px; font-weight: 800; color: #5a3a08; margin-top: 2px; }
.cut-bar.bottom { min-height: 150px; }
