/* FULLSTORY / PMOVIE ======================================== */
.pmovie {display: block; color: var(--text);}
.pmovie__top {display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 24px; align-items: start; margin-bottom: 28px;}
.pmovie__poster-col, .pmovie__content-col {min-width: 0;}
.pmovie__poster-box {position: sticky; top: 20px; background: var(--panel); border: 1px solid var(--border); border-radius: var(--radius-lg);
	overflow: hidden; box-shadow: var(--shadow-md);}
.pmovie__poster {display: block; width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: cover; background: var(--bg-input);}
.pmovie__poster--placeholder {opacity: 0.88;}

/* HEADER / TITLE / BADGES ======================================== */
.pmovie__header {margin-bottom: 18px;}
.pmovie__title {margin: 0; font-size: clamp(28px, 3vw, 42px); line-height: 1.12; font-weight: 800; letter-spacing: -0.02em; color: var(--text);}
.pmovie__subtitle {margin-top: 10px; font-size: 16px; line-height: 1.45; color: var(--text-muted);}
.pmovie__header-line {display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 30px;}
.pmovie__badges, .pmovie__ratings, .pmovie__actions {display: flex; align-items: center; flex-wrap: wrap; gap: 10px;}
.pmovie__badge, .pmovie__rating-box, .pmovie__btn {display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 6px 12px;
	border-radius: 999px; font-size: 13px; font-weight: 700; line-height: 1; letter-spacing: 0.02em; text-decoration: none; box-shadow: var(--shadow-sm);}
.pmovie__badge--year {background: rgba(255, 255, 255, 0.07); border: 1px solid var(--border-strong); color: var(--text);}
.pmovie__badge--quality {background: var(--accent); color: var(--accent-contrast);}
.pmovie__badge--translate, .pmovie__rating-box {background: rgba(61, 131, 255, 0.18); border: 1px solid rgba(61, 131, 255, 0.28); color: #dfeaff;}
.pmovie__ratings {margin: 0;} .pmovie__rating-box {gap: 6px; min-width: auto;}
.pmovie__rating-label {font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #dfeaff; opacity: 0.82;}
.pmovie__rating-value {font-size: 14px; line-height: 1; font-weight: 800; color: #ffffff;}
.pmovie__btn {transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;} .pmovie__btn:hover {transform: translateY(-1px);}
.pmovie__btn--trailer, .pmovie__btn--imdb {background: rgba(245, 197, 24, 0.16); color: #f5c518; border: 1px solid rgba(245, 197, 24, 0.4);}
.pmovie__btn--trailer:hover, .pmovie__btn--imdb:hover {background: rgba(245, 197, 24, 0.24); color: #ffe680;}

/* META INFO ======================================== */
.pmovie__meta {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 18px; margin-bottom: 22px;}
.pmovie__meta-item {position: relative; padding: 14px; padding-left: 35px; background: var(--panel); border: 1px solid var(--border); border-radius: var(--radius-md);}
.pmovie__meta-item::before {content: "" !important; position: absolute; left: 10px; width: 17px; height: 17px; display: block !important; background: var(--accent);
	opacity: 0.95; pointer-events: none; transform: none !important; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center;
	mask-position: center; -webkit-mask-size: contain; mask-size: contain;} .pmovie__meta-item--full {grid-column: 1 / -1;}
.pmovie__meta-label {margin-bottom: 6px; font-size: 12px; font-weight: 700; line-height: 1.2; letter-spacing: 0.04em; text-transform: uppercase;
	color: var(--text-muted);} .pmovie__meta-value {font-size: 15px; line-height: 1.5; color: var(--text); word-break: break-word;}

/* Жанр */
.pmovie__meta-item--genre::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M7 5l2 14M15 5l2 14M3 9h18M3 15h18'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M7 5l2 14M15 5l2 14M3 9h18M3 15h18'/%3E%3C/svg%3E"); }
/* Държава */
.pmovie__meta-item--country::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M2 12h20M12 2a15.3 15.3 0 0 1 0 20M12 2a15.3 15.3 0 0 0 0 20'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M2 12h20M12 2a15.3 15.3 0 0 1 0 20M12 2a15.3 15.3 0 0 0 0 20'/%3E%3C/svg%3E"); }
/* Времетраене */
.pmovie__meta-item--duration::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
/* Режисьор */
.pmovie__meta-item--director::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 16l4-12 4 12M6 11h4M14 5h6M14 12h6M14 19h6'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 16l4-12 4 12M6 11h4M14 5h6M14 12h6M14 19h6'/%3E%3C/svg%3E"); }
/* Участват */
.pmovie__meta-item--actors::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E"); }
/* Как да гледам */
.pmovie__meta-item--watch::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H7l-4 4V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4z'/%3E%3Cpath d='M8 9h8M8 13h5'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a4 4 0 0 1-4 4H7l-4 4V7a4 4 0 0 1 4-4h10a4 4 0 0 1 4 4z'/%3E%3Cpath d='M8 9h8M8 13h5'/%3E%3C/svg%3E"); }

/* WATCH INFO ======================================== */
.pmovie__watch-info {background: linear-gradient(180deg, rgba(61, 131, 255, 0.12), rgba(61, 131, 255, 0.05)), var(--panel); border-color: rgba(61, 131, 255, 0.24);}
.pmovie__watch-info .pmovie__meta-value {line-height: 1.6;} .pmovie__watch-title, .pmovie__watch-plr {font-weight: 800; color: #f5c518;}
.pmovie__watch-plr {display: inline-flex; align-items: center; justify-content: center; min-height: 22px; padding: 2px 8px; border-radius: 999px;
	background: rgba(245, 197, 24, 0.14); border: 1px solid rgba(245, 197, 24, 0.34); color: #ffe680; font-size: 12px; line-height: 1; letter-spacing: 0.04em;}

/* SECTIONS ======================================== */
.pmovie__section-head {display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 25px;}
.pmovie__section-title {margin: 0; font-size: clamp(20px, 2vw, 28px); line-height: 1.2; font-weight: 800; color: var(--text);}
.pmovie__story, .pmovie__player, .pmovie__share, .pmovie__related {margin-top: 28px; padding: 22px; background: var(--panel); border: 1px solid var(--border);
	border-radius: var(--radius-lg); box-shadow: var(--shadow-md);} .pmovie__story-text {font-size: 16px; line-height: 1.75; color: var(--text-soft);}
.pmovie__story-text > *:first-child {margin-top: 0;} .pmovie__story-text > *:last-child {margin-bottom: 0;}
.pmovie__story-text h2, .pmovie__story-text h3, .pmovie__story-text h4 {color: var(--text); line-height: 1.3;}
.pmovie__story-text a {color: var(--accent); text-decoration: none;} .pmovie__story-text a:hover {text-decoration: underline;}
.pmovie__story-text img {max-width: 100%; height: auto; border-radius: 12px;} .pmovie__story-text ul, .pmovie__story-text ol {padding-left: 22px;}
.pmovie__story-text blockquote {margin: 18px 0; padding: 16px 18px; background: rgba(255, 255, 255, 0.05); border-left: 3px solid var(--accent);
	border-radius: 10px; color: var(--text);}

/* PLAYER TABS ======================================== */
.player-tabs {display: block;} .player-tabs__nav {display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 16px;}
.player-tabs__btn {display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 14px; background: var(--panel-soft);
	border: 1px solid var(--border-strong); border-radius: 12px; color: var(--text); font-size: 14px; font-weight: 700; cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;}
.player-tabs__btn:hover {transform: translateY(-1px); background: var(--panel-hover);}
.player-tabs__btn.is-active {background: var(--accent); border-color: rgba(245, 196, 81, 0.4); color: var(--accent-contrast);} .player-stage {position: relative;}
.player-panel {display: none; opacity: 0;} .player-panel.is-active {display: block; opacity: 1; animation: fadeInPlayer 0.25s ease;}
.player-panel[hidden] {display: none !important;} @keyframes fadeInPlayer { from {opacity: 0;} to {opacity: 1;} }
.player-embed {position: relative; background: #0a0d12; border-radius: 16px; overflow: hidden; min-height: 240px;}
.player-embed iframe, .player-embed video, .player-embed embed, .player-embed object {display: block; width: 100%; aspect-ratio: 16 / 9; min-height: 240px; border: 0;}
.player-help {display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 280px; padding: 24px; text-align: center;
	color: var(--text-soft); background: radial-gradient(circle at top, rgba(245, 196, 81, 0.09), transparent 42%), var(--bg-input);
	border: 1px dashed rgba(255, 255, 255, 0.14); border-radius: 16px;} .player-help__title {margin: 0 0 10px; font-size: 20px; font-weight: 800; color: var(--text);}
.player-help__text {margin: 0; max-width: 700px; font-size: 15px; line-height: 1.7; color: var(--text-soft);}

/* SHARE BUTTONS ======================================== */
.pmovie__share-box {display: flex; flex-wrap: wrap; gap: 10px;} .pmovie__share-btn {display: inline-flex; align-items: center; justify-content: center; min-height: 40px;     padding: 0 15px; border-radius: 999px; font-size: 14px; font-weight: 800; line-height: 1; text-decoration: none; color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.12); transition: transform 0.2s ease, opacity 0.2s ease, background 0.2s ease, border-color 0.2s ease;}
.pmovie__share-btn:hover {transform: translateY(-1px); opacity: 0.9;}
.pmovie__share-btn--facebook {background: rgba(24, 119, 242, 0.14); border-color: rgba(24, 119, 242, 0.45); color: #dcecff;}
.pmovie__share-btn--messenger {background: rgba(0, 132, 255, 0.14); border-color: rgba(0, 132, 255, 0.45); color: #dcecff;}
.pmovie__share-btn--viber {background: rgba(115, 96, 242, 0.16); border-color: rgba(115, 96, 242, 0.5); color: #edeaff;}
.pmovie__share-btn--telegram {background: rgba(34, 158, 217, 0.15); border-color: rgba(34, 158, 217, 0.5); color: #e3f6ff;}
.pmovie__share-btn--x {background: rgba(255, 255, 255, 0.09); border-color: rgba(255, 255, 255, 0.26); color: #f1f5f9;}
.pmovie__share-btn--copy {background: rgba(34, 197, 94, 0.14); border-color: rgba(34, 197, 94, 0.45); color: #dcfce7;}
.pmovie__share-btn--copy:hover {background: rgba(34, 197, 94, 0.22); border-color: rgba(34, 197, 94, 0.6); color: #ffffff;}
.pmovie__share-btn--copy.is-copied {background: rgba(16, 185, 129, 0.22); border-color: rgba(16, 185, 129, 0.6); color: #ffffff;}

/* PLAYER PLACEHOLDER / SKELETON ======================================== */
.player-placeholder {display: none;} .player-placeholder.is-active {display: block;}
.player-skeleton {position: relative; display: flex; align-items: center; justify-content: center; min-height: 0; aspect-ratio: 16 / 9; overflow: hidden;
	border-radius: 16px; background: linear-gradient(135deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)), #0a0d12; border: 1px solid var(--border-strong);}
.player-skeleton::before {content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.08), transparent);
	transform: translateX(-100%); animation: playerSkeletonShimmer 1.6s infinite;}
.player-skeleton__glow {position: absolute; width: 320px; height: 320px; border-radius: 50%; background: rgba(245, 196, 81, 0.09); filter: blur(40px);}
.player-skeleton__play {position: relative; z-index: 2; width: clamp(54px, 12%, 110px); aspect-ratio: 1 / 1; height: auto; border-radius: 50%; display: grid;
	place-items: center; background: radial-gradient(circle at top, rgba(245, 196, 81, 0.08), transparent 70%), #141922; box-shadow: 0 18px 40px rgba(0, 0, 0, 0.36);
	backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); border: 1px solid rgba(245, 196, 81, 0.12);}
.player-skeleton__play::before {content: ""; display: block; width: 80%; height: 80%;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='512' height='512' viewBox='0 0 512 512'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0%25' stop-color='%23f6d676'/%3E%3Cstop offset='45%25' stop-color='%23cea649'/%3E%3Cstop offset='100%25' stop-color='%238f6b22'/%3E%3C/linearGradient%3E%3Cfilter id='glow' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeDropShadow dx='0' dy='0' stdDeviation='1.5' flood-color='%23cea649' flood-opacity='0.25'/%3E%3C/filter%3E%3C/defs%3E%3Cg filter='url(%23glow)'%3E%3Crect x='122' y='176' width='268' height='184' rx='42' fill='url(%23g)'/%3E%3Cpolygon points='225,222 225,314 302,268' fill='%230f1117'/%3E%3Crect x='152' y='207' width='31' height='31' rx='7' fill='%230f1117'/%3E%3Crect x='152' y='253' width='31' height='31' rx='7' fill='%230f1117'/%3E%3Crect x='152' y='299' width='31' height='31' rx='7' fill='%230f1117'/%3E%3Crect x='329' y='207' width='31' height='31' rx='7' fill='%230f1117'/%3E%3Crect x='329' y='253' width='31' height='31' rx='7' fill='%230f1117'/%3E%3Crect x='329' y='299' width='31' height='31' rx='7' fill='%230f1117'/%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; background-size: contain;}
.player-skeleton__content {position: absolute; left: 24px; right: 24px; bottom: 26px; z-index: 2; display: grid; gap: 10px; max-width: 520px;}
.player-skeleton__line {height: 12px; border-radius: 999px; background: rgba(255, 255, 255, 0.12);}
.player-skeleton__line--title {width: 65%; height: 16px; background: rgba(255, 255, 255, 0.18);} .player-skeleton__line--short {width: 42%;}
.player-skeleton__text {position: absolute; top: 22px; left: 24px; z-index: 2; display: inline-flex; align-items: center; min-height: 34px; padding: 0 13px;
	border-radius: 999px; background: rgba(245, 196, 81, 0.14); border: 1px solid rgba(245, 196, 81, 0.3); color: #f5d77b; font-size: 13px; font-weight: 800;
	letter-spacing: 0.02em;} @keyframes playerSkeletonShimmer { 100% {transform: translateX(100%);} }

/* RELATED GRID ======================================== */
.pmovie__related-grid .movie-card {width: 100%; height: 100%;} .pmovie__related-grid .movie-card__poster-wrap {aspect-ratio: 2 / 3;}
.pmovie__related-grid .movie-card__poster {width: 100%; height: 100%; object-fit: cover;}

/* ACTOR BIOGRAPHY PAGE ======================================== */
.actor-bio__source {margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--border); color: var(--text-muted); font-size: 14px; line-height: 1.6;}
.actor-bio__source a {color: var(--accent); font-weight: 700; text-decoration: none;} .actor-bio__source a:hover {text-decoration: underline;}

/* FULLSTORY RESPONSIVE ======================================== */
@media (max-width: 1399px) { .pmovie__top {gap: 22px;} }
@media (max-width: 1280px) and (min-width: 376px) { .pmovie__meta {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; margin-bottom: 18px;}
	.pmovie__meta-item--actors, .pmovie__meta-item--watch {grid-column: 1 / -1;} }
@media (max-width: 1199px) { .pmovie__top {grid-template-columns: 260px minmax(0, 1fr); gap: 20px;} .pmovie__section-title {font-size: 24px;}
	.pmovie__story-text {font-size: 15px; line-height: 1.7;} }
@media (max-width: 978px) { .pmovie__top {grid-template-columns: 1fr; gap: 18px;}
	.pmovie__poster-col {width: 100%; max-width: 340px; margin-left: auto !important; margin-right: auto !important; justify-self: center !important;}
	.pmovie__poster-box {position: relative; top: auto; width: 100%;} .pmovie__header {margin-bottom: 16px;} .pmovie__ratings {gap: 12px;} }
@media (max-width: 767px) { .pmovie__title {font-size: 30px;} .pmovie__subtitle {font-size: 14px;}
	.pmovie__story, .pmovie__player, .pmovie__share, .pmovie__related {padding: 16px; border-radius: 16px;} .pmovie__section-title {font-size: 22px;}
	.player-tabs__nav {gap: 8px;} .player-tabs__btn {min-height: 38px; padding: 0 12px; font-size: 13px; border-radius: 10px;}
	.player-help {min-height: 220px; padding: 18px;} .player-help__title {font-size: 18px;} .player-help__text, .pmovie__story-text {font-size: 15px; line-height: 1.7;} }
@media (max-width: 766px) { .pmovie__meta-item {padding: 10px 12px 10px 35px !important; min-height: 46px;} }
@media (max-width: 640px) { .pmovie__watch-info .pmovie__meta-value {font-size: 12.5px; line-height: 1.4;} }
@media (max-width: 479px) { .pmovie__title {font-size: 26px;} .pmovie__section-head {margin-bottom: 12px;} .pmovie__section-title {font-size: 20px;}
	.pmovie__badges {gap: 8px;} .pmovie__badge {min-height: 30px; padding: 5px 10px; font-size: 12px;} .pmovie__ratings {flex-wrap: nowrap;}
	.pmovie__rating-box {width: 100%; min-width: 0;} .player-tabs__nav {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));}
	.player-tabs__btn {width: 100%;} .player-help {min-height: 180px;} }
@media (max-width: 375px) { .pmovie__header-line {align-items: flex-start;} .pmovie__meta {grid-template-columns: 1fr;}
	.pmovie__story, .pmovie__player, .pmovie__share, .pmovie__related {padding: 14px;} }
@media (max-width: 359px) { .pmovie__title {font-size: 24px;} }

/* REDUCED MOTION ======================================== */
@media (prefers-reduced-motion: reduce) { .pmovie__btn, .player-tabs__btn, .pmovie__share-btn, .player-skeleton::before {transition: none !important;
	animation: none !important;} }