/* Kinokritiker PLAY
   Editorial skin: the game keeps its interaction model but follows the
   light, red-accented visual system of the main Kinokritiker experience. */

.play-page {
    --play-surface: var(--cc-surface);
    --play-subtle: var(--cc-bg-2);
    --play-line: var(--cc-line);
    --play-text: var(--cc-ink);
    --play-copy: var(--cc-ink-2);
    --play-muted: #5b6573;
    --play-accent: var(--cc-red);
    --play-accent-hover: var(--cc-red-2);
    background: var(--cc-bg);
}

.play-page .play-shell {
    min-height: 72vh;
    padding: 54px 0 84px;
    background: var(--cc-bg);
    color: var(--play-text);
}
.play-page .play-shell h1,
.play-page .play-shell h2,
.play-page .play-shell h3 { color: var(--play-text); }
.play-page .play-stage { max-width: 1040px !important; }
.play-page .play-stage__head { align-items: center; margin-bottom: 32px; }
.play-page .play-stage__head h1,
.play-page .play-result__hero h1 {
    font-size: clamp(2.45rem, 5.4vw, 4.8rem);
    line-height: .96;
    letter-spacing: -.055em;
}
.play-page .play-stage__head h1::after,
.play-page .play-result__hero h1::after,
.play-page .play-clubs__hero h1::after,
.play-page .play-club__hero h1::after,
.play-page .play-club-invite h1::after,
.play-page .play-arena__hero h1::after,
.play-page .play-duel-result__hero h1::after,
.play-page .play-duel-invite h1::after {
    content: "";
    display: block;
    width: 60px;
    height: 4px;
    margin-top: 16px;
    border-radius: 2px;
    background: var(--play-accent);
}
.play-page .play-stage__head p,
.play-page .play-result__hero p,
.play-page .play-arena__hero p,
.play-page .play-duel-result__hero p,
.play-page .play-clubs__hero p,
.play-page .play-club__hero p,
.play-page .play-club-invite > p { color: var(--play-copy); }
.play-page .play-eyebrow { color: var(--play-accent); }

.play-page .play-day {
    border-color: var(--play-line);
    border-radius: var(--cc-radius);
    background: var(--play-surface);
    box-shadow: 0 8px 24px rgba(20,24,33,.06);
}
.play-page .play-day span { color: var(--play-accent); }
.play-page .play-day strong { color: var(--play-text); }
.play-page .play-progress__meta { color: var(--play-muted); }
.play-page .play-progress__track { background: #d6dbe1; }
.play-page .play-progress__track span { background: var(--play-accent); transition: width .55s cubic-bezier(.2,.75,.25,1); }

.play-page .play-feedback,
.play-page .play-notice {
    border-color: var(--play-line);
    background: var(--play-surface);
    color: var(--play-copy);
    box-shadow: 0 6px 18px rgba(20,24,33,.05);
}
.play-page .play-feedback strong { color: var(--play-text); }
.play-page .play-feedback p { color: var(--play-copy); }
.play-page .play-feedback.is-correct { border-left-color: #23824d; background: #edf8f1; }
.play-page .play-feedback.is-wrong,
.play-page .play-notice.is-error { border-left-color: var(--play-accent); background: #fff0f1; }
.play-page .play-feedback.is-signal { border-left-color: var(--cc-steel); background: #eef3f8; }

.play-page .play-card,
.play-page .play-gate,
.play-page .play-result__dna,
.play-page .play-result__recommendations,
.play-page .play-result__pending,
.play-page .play-share-card,
.play-page .play-season-card,
.play-page .play-season-resolution,
.play-page .play-clubs__list,
.play-page .play-clubs__create,
.play-page .play-club-ranking,
.play-page .play-club__members,
.play-page .play-club__controls,
.play-page .play-club-share,
.play-page .play-club-invite,
.play-page .play-arena-dashboard,
.play-page .play-arena__rules article,
.play-page .play-arena__launch,
.play-page .play-result__challenge,
.play-page .play-duel-invite,
.play-page .play-duel-wait,
.play-page .play-versus article,
.play-page .play-compatibility,
.play-page .play-duel-review__item,
.play-page .play-duel-scoreboard,
.play-page .cc-play-profile,
.play-page .cc-arena-profile {
    border-color: var(--play-line);
    background: var(--play-surface);
    color: var(--play-text);
    box-shadow: var(--cc-shadow);
}
.play-page .play-card,
.play-page .play-gate,
.play-page .play-result__dna,
.play-page .play-result__recommendations,
.play-page .play-result__pending,
.play-page .play-share-card,
.play-page .play-season-card,
.play-page .play-season-resolution,
.play-page .play-arena-dashboard,
.play-page .play-arena__rules article,
.play-page .play-arena__launch,
.play-page .play-result__challenge,
.play-page .play-duel-invite,
.play-page .play-duel-wait,
.play-page .play-versus article,
.play-page .play-compatibility { border-radius: var(--cc-radius); }

.play-page .play-card { padding: clamp(24px, 4.5vw, 46px); }
.play-page .play-card__meta { margin-bottom: 24px; color: var(--play-muted); }
.play-page .play-card__image { background: var(--play-subtle); }
.play-page .play-card__hint { color: var(--play-copy); }
.play-page .play-option {
    min-height: 68px;
    border-color: #cfd5dc;
    border-radius: 11px;
    background: var(--play-subtle);
    color: var(--play-text);
}
.play-page .play-option:hover,
.play-page .play-option:focus-visible {
    border-color: var(--play-accent);
    background: #fff0f1;
    color: var(--play-text);
    box-shadow: 0 0 0 3px rgba(196,30,38,.1);
}
.play-page .play-option > span { background: #cfd5dd; color: var(--cc-steel); }
.play-page .play-option:hover > span,
.play-page .play-option:focus-visible > span { background: var(--play-accent); color: #fff; }
.play-page .play-option.is-pressed {
    border-color: var(--play-accent);
    background: #ffe5e7;
    transform: scale(.985);
}
.play-page .play-option.is-pressed > span { background: var(--play-accent); color: #fff; }
.play-page .play-options[aria-busy="true"] .play-option { pointer-events: none; }
.play-page .play-options[aria-busy="true"] .play-option:not(.is-pressed) { opacity: .62; }
.play-page .play-feedback:focus { outline: 3px solid rgba(196,30,38,.24); outline-offset: 3px; }

.play-page .play-gate__visual { background: linear-gradient(145deg, var(--play-accent), #8e151c); }
.play-page .play-gate__content h2 { color: var(--play-text); }
.play-page .play-gate__content p { color: var(--play-copy); }
.play-page .play-gate__content ul { color: var(--play-text); }
.play-page .play-gate__content li::before { color: var(--play-accent); }
.play-page .play-gate__content > small { color: var(--play-muted); }
.play-page .play-gate__actions .btn--ghost,
.play-page .play-result__actions .btn--ghost,
.play-page .play-arena__actions .btn--ghost,
.play-page .play-arena__launch .btn--ghost,
.play-page .play-arena__hero p + .btn,
.play-page .play-clubs__hero .btn--ghost,
.play-page .play-club-invite__actions .btn--ghost,
.play-page .play-duel-wait > .btn--ghost,
.play-page .play-duel-invite > .btn--ghost {
    color: var(--play-text);
    border-color: var(--play-line);
    background: var(--play-surface);
}
.play-page .play-gate__actions .btn--ghost:hover,
.play-page .play-result__actions .btn--ghost:hover,
.play-page .play-arena__actions .btn--ghost:hover,
.play-page .play-arena__launch .btn--ghost:hover,
.play-page .play-arena__hero p + .btn:hover {
    color: var(--play-text);
    border-color: #c9cfd6;
    background: var(--play-subtle);
}

.play-page .play-result__stats article {
    border-color: var(--play-line);
    border-radius: var(--cc-radius);
    background: var(--play-surface);
    box-shadow: 0 8px 24px rgba(20,24,33,.06);
}
.play-page .play-result__stats span { color: var(--play-text); }
.play-page .play-result__stats strong { color: var(--play-muted); }
.play-page .play-share-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    margin-top: 34px;
    padding: clamp(22px, 4vw, 34px);
}
.play-page .play-share-card__mark {
    display: grid;
    width: 58px;
    height: 58px;
    place-items: center;
    border-radius: 50%;
    background: #fff0f1;
    color: var(--play-accent);
    font: 900 1.4rem var(--cc-mono);
}
.play-page .play-share-card__copy h2 { margin: 4px 0 7px; }
.play-page .play-share-card__copy p { margin: 0; color: var(--play-copy); line-height: 1.55; }
.play-page .play-share-card__copy strong { color: var(--play-text); }
.play-page .play-share-card__action { display: grid; justify-items: end; gap: 7px; }
.play-page .play-share-card__action .cc-btn { min-height: 48px; }
.play-page .play-share-card__action > a { color: var(--play-accent); font-weight: 700; }
.play-page .play-share-card__action p { min-height: 1.2em; margin: 0; color: var(--play-muted); font-size: .75rem; }
.play-page .play-section-head h2 { color: var(--play-text); }
.play-page .play-dna-chips span {
    border-color: #cfd5dc;
    background: var(--play-subtle);
    color: var(--play-text);
}
.play-page .play-result__dna > p,
.play-page .play-result__pending p { color: var(--play-copy); }
.play-page .play-recommendation {
    min-height: 235px;
    border-color: var(--play-line);
    background: var(--play-subtle);
    color: var(--play-text) !important;
}
.play-page .play-recommendation:hover {
    border-color: var(--play-accent);
    background: #fff;
    box-shadow: 0 8px 24px rgba(20,24,33,.08);
}
.play-page .play-recommendation__score { color: var(--play-accent); }
.play-page .play-recommendation h3 { color: var(--play-text); }
.play-page .play-recommendation p { color: var(--play-copy); }

.play-page .play-season-card__head h2,
.play-page .play-season-resolution__head h2,
.play-page .play-season-resolution__next h3,
.play-page .play-season-card__components strong,
.play-page .play-season-card__foot div strong,
.play-page .play-season-resolution__facts strong { color: var(--play-text); }
.play-page .play-season-card__head p,
.play-page .play-season-resolution__head p,
.play-page .play-season-card__components p,
.play-page .play-season-resolution__facts small,
.play-page .play-season-resolution__next p,
.play-page .play-season-resolution__action span { color: var(--play-copy); }
.play-page .play-season-card__total { border-color: rgba(196,30,38,.28); background: #fff0f1; }
.play-page .play-season-card__total strong { color: var(--play-text); }
.play-page .play-season-card__total span,
.play-page .play-season-card__components small,
.play-page .play-season-card__label { color: var(--play-accent); }
.play-page .play-season-card__components article,
.play-page .play-season-resolution__facts > div,
.play-page .play-season-resolution__next,
.play-page .play-season-resolution__action {
    border-color: var(--play-line);
    background: var(--play-subtle);
}
.play-page .play-season-card__foot { border-top-color: var(--play-line); }
.play-page .play-season-card__foot div span,
.play-page .play-season-card__foot p,
.play-page .play-season-resolution__facts dt,
.play-page .play-season-resolution__status time { color: var(--play-muted); }
.play-page .play-season-resolution__status { border-color: #b8dec6; background: #edf8f1; }
.play-page .play-season-resolution__status strong { color: #176b3a; }
.play-page .play-season-resolution__next { border-left-color: var(--play-accent); }
.play-page .play-season-resolution__action,
.play-page .play-season-resolution__action strong { color: var(--play-text); }
.play-page .play-season-resolution__action:hover {
    border-color: var(--play-accent);
    color: var(--play-text);
    background: #fff0f1;
}

.play-page .play-clubs,
.play-page .play-club,
.play-page .play-club-invite { color: var(--play-text); }
.play-page .play-clubs__hero h1,
.play-page .play-club__hero h1,
.play-page .play-club-invite h1 { color: var(--play-text); }
.play-page .play-club-list__item,
.play-page .play-club-ranking__list li,
.play-page .play-club-members article {
    border-color: var(--play-line);
    background: var(--play-subtle);
    color: var(--play-text);
}
.play-page .play-club-list__item:hover { border-color: var(--play-accent); background: #fff0f1; }
.play-page .play-club-list__item strong,
.play-page .play-club-ranking__person span { color: var(--play-text); }
.play-page .play-club-list__item small,
.play-page .play-club-ranking .play-section-head p,
.play-page .play-club-ranking__heading small,
.play-page .play-club-ranking__empty,
.play-page .play-club-members small { color: var(--play-muted); }
.play-page .play-club-list__item em,
.play-page .play-club__status { color: #176b3a; background: #e2f3e8; }
.play-page .play-club-list__item em.is-closed,
.play-page .play-club__status.is-closed { color: var(--play-copy); background: var(--play-subtle); }
.play-page .play-club-share { border-color: rgba(196,30,38,.3); background: #fff7f7; }
.play-page .play-club-share__row input,
.play-page .play-invite-share input { border-color: var(--play-line); background: #fff; color: var(--play-text); }
.play-page .play-club__back { color: var(--play-text) !important; background: var(--play-subtle); }
.play-page .play-club__back:hover { background: #d6dbe1; }
.play-page .play-club-ranking__heading > span { color: #176b3a; background: #e2f3e8; }
.play-page .play-club-ranking__list li::marker { color: var(--play-accent); }
.play-page .play-club-ranking__list dl div,
.play-page .play-club__danger-form label { color: var(--play-copy); }
.play-page .play-club-ranking__list dd { color: var(--play-text); }
.play-page .play-club-ranking__archive details { border-top-color: var(--play-line); }
.play-page .play-club-ranking__archive summary::after { color: var(--play-accent); }
.play-page .play-club-ranking__archive summary small { color: var(--play-muted); }
.play-page .play-club-members__avatar { background: var(--play-accent); }
.play-page .play-club__controls .btn.is-danger { color: #fff; border-color: var(--play-accent); background: var(--play-accent); }
.play-page .play-club__controls .btn.is-danger:hover { background: var(--play-accent-hover); }
.play-page .play-club-invite__decline { color: var(--play-copy); }
.play-page .play-club-share noscript p,
.play-page .play-club-invite noscript p { color: var(--play-accent); }

.play-page .play-arena__hero h1,
.play-page .play-duel-result__hero h1 { color: var(--play-text); }
.play-page .play-arena__reel {
    border-color: rgba(196,30,38,.28);
    background: radial-gradient(circle, #fff0f1 0 58%, transparent 59%), var(--play-surface);
    box-shadow: 0 14px 36px rgba(20,24,33,.08);
}
.play-page .play-arena__reel span { color: var(--play-text); }
.play-page .play-arena__reel small { color: var(--play-accent); }
.play-page .play-arena__rules article { min-height: 210px; }
.play-page .play-arena__rules article > span { color: var(--play-accent); }
.play-page .play-arena__rules p,
.play-page .play-arena__launch p,
.play-page .play-result__challenge p,
.play-page .cc-arena-profile > p { color: var(--play-copy); }
.play-page .play-arena__launch,
.play-page .play-result__challenge { background: #fff7f7; }
.play-page .play-arena__fineprint { color: var(--play-muted); }
.play-page .play-section-head--split > a { color: var(--play-copy); }
.play-page .play-arena-stats div,
.play-page .cc-play-profile__stats div {
    border-color: var(--play-line);
    background: var(--play-subtle);
}
.play-page .play-arena-stats strong,
.play-page .cc-play-profile__stats strong { color: var(--play-text); }
.play-page .play-arena-stats span,
.play-page .cc-play-profile__stats span { color: var(--play-muted); }
.play-page .play-arena-feed .play-section-head h3 { color: var(--play-text); }
.play-page .play-arena-feed__item {
    border-color: var(--play-line);
    background: var(--play-subtle);
    color: var(--play-text);
}
.play-page .play-arena-feed__item:hover { border-color: var(--play-accent); }
.play-page .play-arena-feed__item.is-expired {
    opacity: 1;
    border-color: var(--play-line);
    background: #eef0f2;
}
.play-page .play-arena-feed__item strong { color: var(--play-text); }
.play-page .play-arena-feed__item small,
.play-page .play-arena-feed__item time { color: var(--play-muted); }
.play-page .play-arena-feed__icon { background: #fff0f1; color: var(--play-accent); }
.play-page .play-arena-feed__result { color: var(--play-accent); }
.play-page .cc-play-profile h2,
.play-page .cc-arena-profile h2 { color: var(--play-text); }
.play-page .cc-play-profile__traits span { background: var(--play-subtle); color: var(--play-text); }
.play-page .cc-play-profile > p { color: var(--play-copy); }

.play-page .play-duel__arena-link { color: var(--play-copy); }
.play-page .play-duel-scoreboard__live { background: #fff0f1; color: var(--play-accent); }
.play-page .play-duel-scoreboard div strong { color: var(--play-text); }
.play-page .play-duel-scoreboard div small { color: var(--play-muted); }
.play-page .play-duel-scoreboard b { color: var(--play-accent); }
.play-page .play-duel-invite__mark { border-color: rgba(196,30,38,.32); background: #fff0f1; }
.play-page .play-duel-invite__mark span { color: var(--play-accent); }
.play-page .play-duel-invite > p,
.play-page .play-duel-wait > p { color: var(--play-copy); }
.play-page .play-duel-invite ul { color: var(--play-text); }
.play-page .play-duel-invite li::before { color: var(--play-accent); }
.play-page .play-duel-invite__hint,
.play-page .play-invite-share small { color: var(--play-muted); }
.play-page .play-duel-wait__icon { background: #fff0f1; color: var(--play-accent); }
.play-page .play-invite-share label { color: var(--play-copy); }
.play-page .play-versus article.is-viewer { border-color: var(--play-accent); background: #fff0f1; }
.play-page .play-versus article strong { color: var(--play-text); }
.play-page .play-versus article span,
.play-page .play-versus article small,
.play-page .play-versus > div small { color: var(--play-muted); }
.play-page .play-versus > div span { color: var(--play-accent); }
.play-page .play-compatibility__score { border-color: #d5dce5; border-top-color: var(--cc-steel); }
.play-page .play-compatibility__score span { color: var(--play-text); }
.play-page .play-compatibility__score small,
.play-page .play-contrast-list span { color: var(--play-muted); }
.play-page .play-compatibility__copy > p,
.play-page .play-duel-review__body { color: var(--play-copy); }
.play-page .play-contrast-list li { border-bottom-color: var(--play-line); }
.play-page .play-duel-review__item { box-shadow: none; }
.play-page .play-duel-review__item summary > span,
.play-page .play-duel-review__item summary > small { color: var(--play-muted); }
.play-page .play-duel-review__choices p { background: var(--play-subtle); }
.play-page .play-duel-review__choices strong { color: var(--play-text); }
.play-page .play-duel-review__body a { color: var(--play-accent); }
.play-page .play-duel-review__choices .is-correct { color: #23824d; }
.play-page .play-duel-review__choices .is-wrong { color: var(--play-accent); }

@media (max-width: 760px) {
    .play-page .play-shell { padding-top: 32px; padding-bottom: 60px; }
    .play-page .play-stage__head h1,
    .play-page .play-result__hero h1 { font-size: clamp(2.3rem, 11vw, 3.6rem); }
    .play-page .play-share-card { grid-template-columns: 1fr; align-items: start; }
    .play-page .play-share-card__action { width: 100%; justify-items: start; }
    .play-page .play-share-card__action .cc-btn { width: 100%; }
}

@media (max-width: 480px) {
    .play-page .play-card,
    .play-page .play-gate,
    .play-page .play-result__dna,
    .play-page .play-result__recommendations,
    .play-page .play-result__pending,
    .play-page .play-season-card,
    .play-page .play-season-resolution,
    .play-page .play-clubs__list,
    .play-page .play-clubs__create,
    .play-page .play-club-ranking,
    .play-page .play-club__members,
    .play-page .play-club__controls,
    .play-page .play-club-share,
    .play-page .play-club-invite,
    .play-page .play-arena-dashboard,
    .play-page .play-arena__rules article,
    .play-page .play-arena__launch,
    .play-page .play-result__challenge,
    .play-page .play-duel-invite,
    .play-page .play-duel-wait,
    .play-page .play-versus article,
    .play-page .play-compatibility { border-radius: 12px; }
    .play-page .play-day { width: 100%; }
    .play-page .play-option { min-height: 62px; }
}

@media (prefers-reduced-motion: reduce) {
    .play-page .play-progress__track span,
    .play-page .play-option { transition: none; }
    .play-page .play-option.is-pressed { transform: none; }
}
