/* =====================================================
   asia.com.ge — DPlayer edition (2026-10-11)
   DPlayer stays as it is; only the site's font, the 16:9 box, and (when ads are on) the ad layer.
   The accent colour is DPlayer's own `theme` option (#B78CFF) in js/nx-dp.js.
   ===================================================== */
.nxdp-host { background: #000; }
.nxdp-host .dplayer { width: 100%; height: 100%; border-radius: inherit; }
.nxdp-host .dplayer, .nxdp-host .dplayer * { font-family: "NxSite", "Noto Sans Georgian", "Inter", system-ui, sans-serif !important; }
.nxdp-host .dplayer-video-wrap { height: 100%; }
.nxdp-yt { position: absolute; top: 0; right: 0; bottom: 0; left: 0; inset: 0; width: 100%; height: 100%; border: 0; }

/* ads (only when switched on in Premium Asia): their own video above DPlayer */
.nxdp-ui.nxp { position: absolute; top: 0; right: 0; bottom: 0; left: 0; inset: 0; z-index: 30; width: auto; height: auto; aspect-ratio: auto; background: none; border-radius: 0; overflow: hidden; pointer-events: none; }
.nxdp-ui.nxp.is-ad { pointer-events: auto; }
.nxdp-ui .nxv-adv { position: absolute; top: 0; right: 0; bottom: 0; left: 0; inset: 0; width: 100%; height: 100%; background: #000; object-fit: contain; display: none; }
.nxdp-ui.is-ad .nxv-adv { display: block; }
.nxdp-ui .nxv-adbar { position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: rgba(255, 255, 255, .2); }
.nxdp-ui .nxv-adbar i { position: absolute; left: 0; top: 0; bottom: 0; width: 0; background: #FBBF24; }
.nxdp-ui .nxp-ad-skip { bottom: 40px; }
.dplayer.nxdp-inad .dplayer-controller, .dplayer.nxdp-inad .dplayer-controller-mask { visibility: hidden; }
.dplayer .nxp-bns { z-index: 20; }
.nxdp-host .dplayer-quality-item, .nxdp-host .dplayer-quality-icon { white-space: nowrap; } .nxdp-host .dplayer-quality-list { width: auto; min-width: 100%; }
/* the name after the time */
.nxdp-host .dplayer-icons-left { display: flex; align-items: center; }
.nxdp-title { display: inline-block; margin-left: 4px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; vertical-align: middle; font-size: 13px; line-height: 38px; color: rgba(255, 255, 255, .88); text-shadow: 0 1px 3px rgba(0, 0, 0, .5); }
.nxdp-title::before { content: "•"; margin: 0 8px 0 2px; color: #B78CFF; }
.nxdp-title.is-top { position: absolute; z-index: 15; top: 12px; left: 14px; right: 14px; margin: 0; max-width: none; font-size: 14px; font-weight: 700; line-height: 1.35; pointer-events: none; transition: opacity .3s; }
.nxdp-title.is-top::before { display: none; }
.dplayer.dplayer-hide-controller .nxdp-title.is-top { opacity: 0; }
.nxdp-host .dplayer::before { content: ""; position: absolute; z-index: 14; left: 0; right: 0; top: 0; height: 64px; background: linear-gradient(180deg, rgba(0, 0, 0, .55), transparent); pointer-events: none; opacity: 0; transition: opacity .3s; }
.nxdp-host .dplayer:has(.nxdp-title.is-top):not(.dplayer-hide-controller)::before { opacity: 1; }
/* right-click menu: the site's credit, last line */
.dplayer-menu .nxdp-credit { border-top: 1px solid rgba(255, 255, 255, .12); }
.dplayer-menu .nxdp-credit a { display: flex !important; align-items: center; gap: 5px; color: #E3D2FF !important; }
.dplayer-menu .nxdp-credit b { font-weight: 800; letter-spacing: .08em; color: #fff; }
.dplayer-menu .nxdp-credit sup { display: inline-grid; place-items: center; width: 11px; height: 11px; margin: -9px 0 0 -2px; border: 1px solid currentColor; border-radius: 50%; font-size: 7px; font-weight: 800; line-height: 1; color: #B78CFF; }
.nxdp-host .dplayer-menu { width: auto !important; min-width: 190px; } .nxdp-host .dplayer-menu .dplayer-menu-item a { padding-right: 16px; }

/* storyboard: the film's frame above the progress bar (js: D.storyboard in nx-dp.js) */
.nxdp-host .nxdp-sb { position: absolute; z-index: 40; left: 0; bottom: calc(100% + 16px); width: 230px; padding: 4px; border-radius: 14px; background: rgba(13, 9, 26, .94); border: 1px solid rgba(183, 140, 255, .5); box-shadow: 0 14px 34px rgba(0, 0, 0, .6), 0 0 26px rgba(183, 140, 255, .28); opacity: 0; transform: translateY(8px) scale(.95); transform-origin: var(--nub, 50%) 100%; transition: opacity .16s ease, transform .18s ease; pointer-events: none; }
.dplayer.nxdp-sb-on .nxdp-sb { opacity: 1; transform: none; }
.nxdp-host .nxdp-sb::after { content: ""; position: absolute; left: var(--nub, 50%); bottom: -7px; width: 12px; height: 12px; margin-left: -6px; background: rgba(13, 9, 26, .94); border-right: 1px solid rgba(183, 140, 255, .5); border-bottom: 1px solid rgba(183, 140, 255, .5); transform: rotate(45deg); }
.nxdp-host .nxdp-sb-f { position: relative; overflow: hidden; border-radius: 10px; aspect-ratio: 16 / 9; background: #07050F radial-gradient(circle at 50% 50%, rgba(183, 140, 255, .18), transparent 70%); }
.nxdp-host .nxdp-sb canvas { display: block; width: 100%; height: 100%; opacity: 0; transition: opacity .18s, filter .18s; }
.nxdp-host .nxdp-sb.has-f canvas { opacity: 1; }
.nxdp-host .nxdp-sb.has-f.is-load canvas { opacity: .5; filter: blur(2px); }
.nxdp-host .nxdp-sb-spin { position: absolute; left: 50%; top: 50%; width: 24px; height: 24px; margin: -12px 0 0 -12px; border-radius: 50%; border: 2.5px solid rgba(255, 255, 255, .16); border-top-color: #B78CFF; border-right-color: #F472B6; opacity: 0; transition: opacity .15s; animation: nxdpsb .7s linear infinite; }
.nxdp-host .nxdp-sb.is-load .nxdp-sb-spin { opacity: 1; }
@keyframes nxdpsb { to { transform: rotate(360deg); } }
.nxdp-host .nxdp-sb-t { display: block; padding: 6px 0 3px; text-align: center; font-size: 13px; font-weight: 800; letter-spacing: .02em; color: #fff; font-variant-numeric: tabular-nums; text-shadow: 0 1px 2px rgba(0, 0, 0, .6); }
.nxdp-host .nxdp-sb-v { position: absolute; width: 2px; height: 2px; left: 0; top: 0; opacity: 0; pointer-events: none; }
.dplayer.nxdp-sb-on .dplayer-bar-time { display: none !important; }
@media (max-width: 640px) { .nxdp-host .nxdp-sb { width: 168px; bottom: calc(100% + 14px); } .nxdp-host .nxdp-sb-t { font-size: 12px; padding-top: 4px; } }
/* "full window" (DPlayer's web fullscreen): the old #playerjs1 rules (ID + !important: fixed height, width,
   position) outranked DPlayer's own .dplayer-fulled, so on phones the player stayed in place and its bar fell
   below the screen. Same box, stronger selector. */
html body #playerjs1.dplayer.dplayer-fulled { position: fixed !important; z-index: 100000 !important; top: 0 !important; right: 0 !important; bottom: 0 !important; left: 0 !important; inset: 0 !important; left: 0 !important; top: 0 !important; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; margin: 0 !important; border-radius: 0 !important; transform: none !important; aspect-ratio: auto !important; }
/* …and its parents (.center-shida-1 / .center-1 have z-index:1) kept it under the site header (z 900):
   while "full window" is on, the player's parents stop boxing it in */
body.dplayer-web-fullscreen-fix .center-shida-1, body.dplayer-web-fullscreen-fix .center-1,
body.dplayer-web-fullscreen-fix :has(> #playerjs1.dplayer-fulled), body.dplayer-web-fullscreen-fix :has(#playerjs1.dplayer-fulled) { z-index: auto !important; transform: none !important; filter: none !important; contain: none !important; isolation: auto !important; }

/* a file that is gone at the host: plain words and a way out (js/nx-dp.js sourceFailed) */
.nxdp-host .nxdp-fail { position: absolute; z-index: 30; top: 0; right: 0; bottom: 0; left: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 16px; text-align: center; color: #fff; background: rgba(8, 6, 18, .86); }
.nxdp-host .nxdp-fail b { font-size: 17px; line-height: 1.35; }
.nxdp-host .nxdp-fail span { margin-top: 6px; font-size: 13px; color: rgba(255, 255, 255, .72); }
.nxdp-host .nxdp-fail div { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 16px; }
.nxdp-host .nxdp-fail button { margin: 4px 5px; padding: 10px 18px; border: 1px solid rgba(255, 255, 255, .22); border-radius: 999px; font: inherit; font-size: 14px; font-weight: 700; color: #fff; background: rgba(255, 255, 255, .08); cursor: pointer; }
.nxdp-host .nxdp-fail .nxdp-fail-go { border-color: transparent; background: #8B5CF6; }
.nxdp-host .nxdp-fail button:focus { outline: 3px solid #fff; outline-offset: 2px; }
