1<!DOCTYPE html><html lang="uk"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><meta name="theme-color" content="#d12027" /><meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /><link media="all" href="https://ukrteatr.odessa.ua/wp-content/cache/autoptimize/css/autoptimize_ec67737f4a886199076e888249f81aea.css" rel="stylesheet"><title>ÐÑÑÑа - ÐдеÑÑкий академÑÑний ÑкÑаÑнÑÑкий мÑзиÑно-дÑамаÑиÑний ÑеаÑÑ Ñм. Ð. ÐаÑилÑка</title><link rel="canonical" href="https://ukrteatr.odessa.ua/afisha-2" /><meta property="article:modified_time" content="2025-09-29T05:25:22+00:00" />
1<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://ukrteatr.odessa.ua/afisha-2","url":"https://ukrteatr.odessa.ua/afisha-2","name":"ÐÑÑÑа - ÐдеÑÑкий академÑÑний ÑкÑаÑнÑÑкий мÑзиÑно-дÑамаÑиÑний ÑеаÑÑ Ñм. Ð. ÐаÑилÑка","isPartOf":{"@id":"https://ukrteatr.odessa.ua/#website"},"datePublished":"2021-05-30T20:55:05+00:00","dateModified":"2025-09-29T05:25:22+00:00","breadcrumb":{"@id":"https://ukrteatr.odessa.ua/afisha-2#breadcrumb"},"inLanguage":"uk","potentialAction":[{"@type":"ReadAction","target":["https://ukrteatr.odessa.ua/afisha-2"]}]},{"@type":"BreadcrumbList","@id":"https://ukrteatr.odessa.ua/afisha-2#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Ðоловна СÑоÑÑнка","item":"https://ukrteatr.odessa.ua/"},{"@type":"ListItem","position":2,"name":"ÐÑÑÑа"}]},{"@type":"WebSite","@id":"https://ukrteatr.odessa.ua/#website","url":"https://ukrteatr.odessa.ua/","name":"ÐдеÑÑкий академÑÑний ÑкÑаÑнÑÑкий мÑзиÑно-дÑамаÑиÑний ÑеаÑÑ Ñм. Ð. ÐаÑилÑка","description":"ÐдеÑÑкий академÑÑний ÑкÑаÑнÑÑкий мÑзиÑно-дÑамаÑиÑний ÑеаÑÑ Ñм. Ð. ÐаÑилÑка","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://ukrteatr.odessa.ua/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"uk"}]}</script>
1 <link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://ukrteatr.odessa.ua/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fukrteatr.odessa.ua%2Fafisha-2" /><link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://ukrteatr.odessa.ua/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fukrteatr.odessa.ua%2Fafisha-2&format=xml" />
1<script id="jquery-core-js" src="https://ukrteatr.odessa.ua/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
1
1<script id="jquery-migrate-js" src="https://ukrteatr.odessa.ua/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
1 <link rel="https://api.w.org/" href="https://ukrteatr.odessa.ua/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://ukrteatr.odessa.ua/wp-json/wp/v2/pages/1005175" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://ukrteatr.odessa.ua/xmlrpc.php?rsd" /><meta name="generator" content="WordPress 7.1.2" /><link rel='shortlink' href='https://ukrteatr.odessa.ua/?p=1005175' /><meta name="redi-version" content="1.2.7" /><link rel="icon" href="https://ukrteatr.odessa.ua/wp-content/uploads/2021/04/favicon.png" sizes="32x32" /><link rel="icon" href="https://ukrteatr.odessa.ua/wp-content/uploads/2021/04/favicon.png" sizes="192x192" /><link rel="apple-touch-icon" href="https://ukrteatr.odessa.ua/wp-content/uploads/2021/04/favicon.png" /><meta name="msapplication-TileImage" content="https://ukrteatr.odessa.ua/wp-content/uploads/2021/04/favicon.png" /><style id="wp-custom-css">/* ========================================================= 2 1. ÐÐÐÐÐÐРТРÐÐÐЮ 3 ========================================================= */ 4 5#wpadminbar { 6 z-index: 9999999 !important; 7 position: fixed !important; 8 display: block !important; 9} 10 11header, 12.header, 13#header { 14 z-index: 99999 !important; 15} 16 17 18/* ========================================================= 19 2. ÐÐÐÐÐÐÐРСÐÐÐÐÐÐ â ÐÐÐШÐÐ h3 20 ========================================================= */ 21 22/* ХоваÑмо вÑÑ Ð¿Ð»Ð°Ñки за замовÑÑваннÑм */ 23.image_wrap h3 { 24 display: none !important; 25 margin: 0 !important; 26 right: auto !important; 27 bottom: auto !important; 28 width: auto !important; 29 height: auto !important; 30 min-height: 0 !important; 31 max-width: none !important; 32 line-height: 1 !important; 33 box-sizing: border-box !important; 34} 35 36/* ÐоказÑÑмо ÑÑлÑки на поÑÑÑÐ±Ð½Ð¾Ð¼Ñ ÑÐ»Ð°Ð¹Ð´Ñ Ñ Ð¹Ð¾Ð³Ð¾ slick-ÐºÐ»Ð¾Ð½Ð°Ñ */ 37.main_slider__slide[data-slick-index="5"] .image_wrap h3, 38.main_slider__slide[data-slick-index="-2"] .image_wrap h3, 39.main_slider__slide[data-slick-index="5"] .image_wrap h3 { 40 display: inline-flex !important; 41 align-items: center !important; 42 justify-content: center !important; 43 44 position: absolute !important; 45 top: 30px !important; 46 left: 40px !important; 47 right: auto !important; 48 bottom: auto !important; 49 50 width: auto !important; 51 min-width: 0 !important; 52 max-width: max-content !important; 53 height: auto !important; 54 min-height: 0 !important; 55 56 margin: 0 !important; 57 padding: 8px 24px !important; 58 white-space: nowrap !important; 59 line-height: 1 !important; 60 box-sizing: border-box !important; 61 62 z-index: 20 !important; 63 64 background: rgba(255, 255, 255, 0.25) !important; 65 backdrop-filter: blur(20px) saturate(180%) !important; 66 -webkit-backdrop-filter: blur(20px) saturate(180%) !important; 67 68 border: 1px solid rgba(255, 255, 255, 0.6) !important; 69 border-radius: 6px !important; 70 71 color: #ffffff !important; 72 font-size: 20px !important; 73 font-weight: 600 !important; 74 text-transform: uppercase !important; 75 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08) !important; 76} 77 78/* ÐобÑлÑна веÑÑÑÑ Ð´Ð»Ñ Ð¿Ð»Ð°Ñки в Ð³Ð¾Ð»Ð¾Ð²Ð½Ð¾Ð¼Ñ ÑлайдеÑÑ */ 79@media (max-width: 768px) { 80 .main_slider__slide[data-slick-index="5"] .image_wrap h3, 81 .main_slider__slide[data-slick-index="0"] .image_wrap h3 { 82 top: 13px !important; 83 left: 13px !important; 84 85 padding: 5px 13px !important; 86 font-size: 12px !important; 87 line-height: 1 !important; 88 letter-spacing: 0.9px !important; 89 90 width: auto !important; 91 min-width: 0 !important; 92 max-width: max-content !important; 93 height: auto !important; 94 min-height: 0 !important; 95 96 white-space: nowrap !important; 97 98 background: rgba(241, 140, 33, 0.94) !important; 99 color: #ffffff !important; 100 border: 1px solid rgba(255, 255, 255, 0.78) !important; 101 border-radius: 4px !important; 102 box-shadow: 0 3px 10px rgba(0, 0, 0, 0.24) !important; 103 } 104} 105 106 107/* ========================================================= 108 3. ÐÐÐШÐÐ "ÐÐ ÐÐ'ÐÐ Ð" ÐÐЯ ÐФÐШ / Ð ÐÐÐРТУÐРУ 109 ========================================================= */ 110 111a[href*="nekhai-nikhto"] { 112 position: relative !important; 113} 114 115a[href*="nekhai-nikhto"]::after { 116 content: "ÐÐ ÐÐ'ÐÐ Ð" !important; 117 position: absolute !important; 118 top: 15px !important; 119 left: 15px !important; 120 z-index: 10 !important; 121 122 display: inline-block !important; 123 width: auto !important; 124 min-width: 0 !important; 125 max-width: max-content !important; 126 height: auto !important; 127 min-height: 0 !important; 128 129 margin: 0 !important; 130 padding: 6px 16px !important; 131 white-space: nowrap !important; 132 line-height: 1 !important; 133 box-sizing: border-box !important; 134 pointer-events: none !important; 135 136 background: rgba(241, 140, 33, 0.95) !important; 137 backdrop-filter: blur(10px) !important; 138 -webkit-backdrop-filter: blur(10px) !important; 139 140 border: 1px solid rgba(255, 255, 255, 0.8) !important; 141 border-radius: 4px !important; 142 143 color: #ffffff !important; 144 font-size: 12px !important; 145 font-weight: 800 !important; 146 text-transform: uppercase !important; 147 letter-spacing: 1.5px !important; 148 149 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important; 150} 151 152/* ÐобÑлÑна веÑÑÑÑ Ð´Ð»Ñ Ð°ÑÑÑ / ÑепеÑÑÑаÑÑ */ 153@media (max-width: 768px) { 154 a[href*="nekhai-nikhto"]::after { 155 top: 10px !important; 156 left: 10px !important; 157 padding: 4px 12px !important; 158 font-size: 11px !important; 159 line-height: 1 !important; 160 white-space: nowrap !important; 161 } 162} 163 164 165/* ========================================================= 166 4. ÐÐРСТÐÐ ÐÐÐÐЮЧÐÐÐЯ 167 ========================================================= */ 168
169/* ÐабоÑонÑÑмо ::after Ñ Ð³Ð¾Ð»Ð¾Ð²Ð½Ð¾Ð¼Ñ ÑлайдеÑÑ */ 170.main_slider a[href*="nekhai-nikhto"]::after, 171.main_slider__slide a[href*="nekhai-nikhto"]::after, 172.slider a[href*="nekhai-nikhto"]::after { 173 content: none !important; 174 display: none !important; 175} 176 177/* ÐабоÑонÑÑмо Ñ ÑапÑÑ Ñа адмÑнÑÑ */ 178header a::after, 179.header a::after, 180#wpadminbar a::after { 181 content: none !important; 182 display: none !important; 183} 184 185/* ÐабоÑонÑÑмо на ÑÑоÑÑÐ½ÐºÐ°Ñ , де не ÑÑеба */ 186.single-personal a[href*="nekhai-nikhto"]::after, 187[class*="actor"] a[href*="nekhai-nikhto"]::after, 188.repertoire-list a[href*="nekhai-nikhto"]::after { 189 content: none !important; 190 display: none !important; 191} 192 193/* ---- ÐонÑÐµÐ¹Ð½ÐµÑ */ 194.ticket-partners { 195 display: inline-flex; 196 align-items: center; 197} 198 199/* Concert.ua */ 200.concert_img { 201 height: 52px !important; 202 width: auto !important; 203} 204 205/* ÐаÑÐ°Ð±Ð°Ñ - додаÑмо вÑдÑÑÑп ÑеÑез margin Ñ Ð·Ð°Ð»Ð¸ÑаÑмо зÑÑв */ 206.karabas_img { 207 height: 17px !important; 208 width: auto !important; 209 transform: translateY(16px) !important; /* виÑоÑа, на ÑкÑй ми зÑпинилиÑÑ */ 210 margin-left: 20px !important; 211} /* ÐÐÐÐÐÐÐ: ÑÑÑ ÑÐµÐ¿ÐµÑ Ñ Ð·Ð°ÐºÑиваÑÑа дÑжка */ 212 213/* ÐобÑлÑна веÑÑÑÑ */ 214@media (max-width: 768px) { 215 /* ХоваÑмо веÑÑ Ð±Ð»Ð¾Ðº з обома логоÑипами */ 216 .ticket-partners, 217 .karabas, 218 .karabas_img { 219 display: none !important; 220 } 221} 222 223/* ========================================================= 224 ÐÐÐШÐÐ "ÐÐ ÐÐ'ÐÐ Ð" ÐÐЯ "ÐÐÐ ÐÐÐÐ" 225 ========================================================= */ 226 227a[href*="ÑкоÑо-пÑем_ÑÑа.jpg"] { 228 position: relative !important; 229} 230 231a[href*="ÑкоÑо-пÑем_ÑÑа.jpg"]::after { 232 content: "ÐÐ ÐÐ'ÐÐ Ð" !important; 233 position: absolute !important; 234 top: 15px !important; 235 left: 15px !important; 236 z-index: 10 !important; 237 238 display: inline-block !important; 239 width: auto !important; 240 min-width: 0 !important; 241 max-width: max-content !important; 242 height: auto !important; 243 min-height: 0 !important; 244 245 margin: 0 !important; 246 padding: 6px 16px !important; 247 white-space: nowrap !important; 248 line-height: 1 !important; 249 box-sizing: border-box !important; 250 pointer-events: none !important; 251 252 background: rgba(227, 30, 36, 0.95) !important; 253 backdrop-filter: blur(10px) !important; 254 -webkit-backdrop-filter: blur(10px) !important; 255 256 border: 1px solid rgba(255, 255, 255, 0.85) !important; 257 border-radius: 4px !important; 258 259 color: #ffffff !important; 260 font-size: 12px !important; 261 font-weight: 800 !important; 262 text-transform: uppercase !important; 263 letter-spacing: 1.5px !important; 264 265 box-shadow: 0 4px 12px rgba(227, 30, 36, 0.35) !important; 266} 267 268/* ÐобÑлÑна веÑÑÑÑ */ 269@media (max-width: 768px) { 270 a[href*="ÑкоÑо-пÑем_ÑÑа.jpg"]::after { 271 top: 10px !important; 272 left: 10px !important; 273 padding: 4px 12px !important; 274 font-size: 11px !important; 275 line-height: 1 !important; 276 white-space: nowrap !important; 277 } 278} 279 280 281/* ========================================================= 282 ÐÐÐÐЮЧÐÐÐЯ ÐÐЯ "ÐÐÐ ÐÐÐÐ" 283 ========================================================= */ 284 285/* ÐабоÑонÑÑмо ::after Ñ Ð³Ð¾Ð»Ð¾Ð²Ð½Ð¾Ð¼Ñ ÑлайдеÑÑ */ 286.main_slider a[href*="horhony"]::after, 287.main_slider__slide a[href*="horhony"]::after, 288.slider a[href*="horhony"]::after { 289 content: none !important; 290 display: none !important; 291} 292 293/* ÐабоÑонÑÑмо Ñ ÑапÑÑ Ñа адмÑнÑÑ */ 294header a[href*="horhony"]::after, 295.header a[href*="horhony"]::after, 296#wpadminbar a[href*="horhony"]::after { 297 content: none !important; 298 display: none !important; 299} 300 301/* ÐабоÑонÑÑмо на ÑÑоÑÑÐ½ÐºÐ°Ñ , де не ÑÑеба */ 302.single-personal a[href*="horhony"]::after, 303[class*="actor"] a[href*="horhony"]::after, 304.repertoire-list a[href*="horhony"]::after { 305 content: none !important; 306 display: none !important; 307} 308 309/* --- Desktop Styles --- */ 310
311/* Reset base padding and positioning */ 312body.single-show .show__inner { 313 padding-top: 0 !important; 314 position: relative !important; 315} 316 317/* Create layout space for the notification block */ 318body.single-show .show__inner:first-of-type { 319 margin-top: 100px !important; 320} 321 322/* Notification block styling */ 323body.single-show .show__inner:first-of-type::before { 324 content: "ÐÑлÑÐ³Ð¾Ð²Ñ ÐºÐ²Ð¸Ñки: ÑÑÑденÑи, пенÑÑонеÑи, ТÐÐ â вÑд 200 гÑн (кÑлÑкÑÑÑÑ Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð°). ÐÑ Ñд виклÑÑно за наÑвноÑÑÑ Ð¿Ð¾ÑвÑдÑеннÑ, Ñо пÑдÑвеÑджÑÑ Ð¿Ñаво на пÑлÑгÑ."; 325 326 position: absolute; 327 top: -70px; 328 left: 0; 329 width: 100%; 330 331 /* Visual style */ 332 background-color: #f9f9f9 !important; 333 border-left: 4px solid #e31e24 !important; 334 border-radius: 0 4px 4px 0; 335 336 /* Typography */ 337 font-family: inherit !important; 338 font-size: 15px !important; 339 font-weight: 500 !important; 340 color: #333333 !important; 341 font-style: normal !important; 342 line-height: 1.4 !important; 343 344 /* Box model */ 345 padding: 12px 15px !important; 346 box-sizing: border-box; 347 348 /* Layout */ 349 display: flex; 350 align-items: center; 351 white-space: normal !important; 352 text-align: left; 353 z-index: 10; 354} 355 356/* Hide duplicate notifications on subsequent rows */ 357body.single-show .show__inner:not(:first-of-type)::before { 358 display: none !important; 359} 360 361/* --- Mobile Styles (iOS & Android) --- */ 362 363@media (max-width: 820px) { 364 /* iOS Fix: Using padding-top forces the container to expand vertically. 365 Margin is sometimes collapsed by Safari, but padding is robust. 366 */ 367 body.single-show .show__inner:first-of-type { 368 margin-top: 20px !important; 369 padding-top: 100px !important; /* Creates internal space for the text */ 370 } 371 372 body.single-show .show__inner:first-of-type::before { 373 /* Reset absolute positioning relative to the new padding area */ 374 top: 0 !important; 375 margin-top: 0 !important; 376 377 /* Force hardware acceleration for iOS rendering */ 378 transform: translateZ(0); 379 380 /* Mobile typography adjustment */ 381 font-size: 13px !important; 382 line-height: 1.4 !important; 383 padding: 12px !important; 384 border-left: 3px solid #e31e24 !important; 385 } 386} 387 388/* ---- ÑвÑÑла Ñапка ---- */ 389header { 390 backdrop-filter: blur(22px) saturate(180%); 391 -webkit-backdrop-filter: blur(22px) saturate(180%); 392 background-color: rgba(255, 255, 255, 0.72); 393 border-bottom: 1px solid rgba(255, 255, 255, 0.35); 394 box-shadow: none; /* поÑаÑково без ÑÑÐ½Ñ */ 395 transition: 396 background-color 0.4s ease, 397 backdrop-filter 0.4s ease, 398 box-shadow 0.4s ease, 399 opacity 0.4s ease; 400} 401 402/* Ñой Ñамий ÑÑÐ¸Ð»Ñ Ð´Ð»Ñ ÑÑÑÑ Ð²Ð½ÑÑÑÑÑнÑÑ ÑÑанÑв */ 403header.scrolled, 404header.loaded, 405header.fixed, 406body.scrolled header { 407 backdrop-filter: blur(22px) saturate(180%) !important; 408 -webkit-backdrop-filter: blur(22px) saturate(180%) !important; 409 background-color: rgba(255, 255, 255, 0.72) !important; 410 border-bottom: 1px solid rgba(255, 255, 255, 0.35); 411 box-shadow: none !important; 412} 413 414/* конÑÑаÑÑний, але мâÑкий ÑекÑÑ */ 415header a, 416header nav a { 417 color: #111 !important; 418 text-shadow: 0 1px 1px rgba(255,255,255,0.4); 419} 420 421/* ---- еÑÐµÐºÑ Ð¿Ñи пÑокÑÑÑÑÑ ---- */ 422body.scrolled header { 423 background-color: rgba(255, 255, 255, 0.8) !important; 424 box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06); /* мâÑка ÑÑÐ½Ñ */ 425} 426 427/* плавна ÑеакÑÑÑ Ð½Ð° ÑкÑол */ 428body:not(.scrolled) header { 429 box-shadow: none; 430} 431 432/* поки акÑивний вÑдео-пÑÐµÐ»Ð¾Ð°Ð´ÐµÑ */ 433.video__loader video[autoplay] ~ header, 434.video__loader.active ~ header, 435body.loading header { 436 opacity: 0; 437 pointer-events: none; 438 transition: opacity .5s ease; 439} 440 441/* коли пÑÐµÐ»Ð¾Ð°Ð´ÐµÑ Ð·Ð½Ð¸ÐºÐ°Ñ */ 442body.loaded header { 443 opacity: 1; 444 pointer-events: auto; 445} 446 447/* ÐобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð°Ð´Ð°Ð¿Ñивними в Ð½Ð¾Ð²Ð¸Ð½Ð°Ñ */ 448.post__content img { 449 max-width: 100%; 450 height: auto; 451 display: block; /* ÐÑибÑаÑи Ð¼Ð¾Ð¶Ð»Ð¸Ð²Ñ Ð²ÑдÑÑÑпи Ð·Ð½Ð¸Ð·Ñ */ 452 } 453 454 455/* --- ÐÐÐÐÐ ÐТ (1:1) ТÐÐЬÐÐ Ð Ð ÐÐÐÐÐÐ ÐÐÐÐÐ --- */ 456
457/* 1. ÐалаÑÑÑÐ²Ð°Ð½Ð½Ñ Ð´Ð»Ñ Ð´ÐµÑкÑопÑв (екÑани вÑд 768px) */ 458@media (min-width: 768px) { 459 /* Робимо блок з каÑÑÐ¸Ð½ÐºÐ¾Ñ Ð¿ÑопоÑÑÑйним */ 460 .news .news__single .image { 461 flex: 0 0 30%; 462 width: 30%; 463 margin-right: 30px; 464 } 465 466 /* Сама каÑÑинка: 100% ÑиÑини + пÑимÑÑовий квадÑÐ°Ñ */ 467 .news .news__single .image img { 468 width: 100%; 469 aspect-ratio: 1 / 1; 470 height: auto; 471 object-fit: cover; 472 } 473} 474 475/* 2. ÐдапÑаÑÑÑ Ð´Ð»Ñ Ð¼Ð¾Ð±ÑлÑÐ½Ð¸Ñ Ð¿ÑиÑÑÑоÑв (екÑани до 767px) */ 476@media (max-width: 767px) { 477 /* ÐеÑеводимо каÑÑÐºÑ Ð² Ñежим "ÑÑовпÑик" */ 478 .news .news__single.flex { 479 flex-direction: column; 480 } 481 482 /* Ðлок зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ð½Ð° вÑÑ ÑиÑÐ¸Ð½Ñ Ð¼Ð¾Ð±ÑлÑного екÑана */ 483 .news .news__single .image { 484 width: 100%; 485 flex: 0 0 auto; 486 margin-right: 0; 487 margin-bottom: 20px; 488 } 489 490 /* Сама каÑÑинка: 100% ÑиÑини + пÑимÑÑовий квадÑÐ°Ñ */ 491 .news .news__single .image img { 492 width: 100%; 493 aspect-ratio: 1 / 1; 494 height: auto; 495 object-fit: cover; 496 } 497} 498 499/* 1. Ð ÐÐÐÐÐ ÐÐСЦРÐÐЯ ÐÐÐÐ¥ ÐÐÐÐÐРТРÐÐÐÐТРЯ ÐÐÐÐУ (ÐÐСÐТÐÐ) */ 500body.single-show .show__inner:first-of-type { 501 margin-top: 130px !important; 502} 503 504/* 2. ЧÐÐ ÐÐÐÐÐ ÐÐÐÐ (ÐÑднÑмаÑмо найвиÑе) */ 505body.single-show .show__inner:first-of-type::before { 506 top: -160px !important; 507} 508 509/* 3. ÐÐÐÐ ÐÐÐ ÐÐÐС (СÑÑий Ñон, капÑ, повÑÑÑÑ, лого ÑпÑава) */ 510body.single-show .show__inner:first-of-type::after { 511 content: "ЯкÑо квиÑки ÑозпÑоданÑ, пеÑевÑÑÑе ÑÑ Ð½Ð°ÑвнÑÑÑÑ Ð½Ð° ÑайÑÑ KARABAS."; 512 position: absolute; 513 top: -90px; /* ÐÐÐÐТРЯ: вÑдÑÑÑп вÑд ÑеÑвоного Ð±Ð»Ð¾ÐºÑ */ 514 left: 0; 515 width: 100%; 516 517 /* СÑÑий Ñон, жовÑа ÑмÑжка */ 518 background-color: #f9f9f9 !important; 519 border-left: 4px solid #ffc107 !important; 520 border-radius: 0 4px 4px 0; 521 522 /* ÐогоÑип ÑпÑава */ 523 background-image: url('/wp-content/uploads/2025/10/logo-karabas.svg') !important; 524 background-repeat: no-repeat !important; 525 background-position: right 15px center !important; 526 background-size: 80px auto !important; 527 528 /* ТекÑÑ Ñ Ð²Ð½ÑÑÑÑÑÐ½Ñ Ð²ÑдÑÑÑпи */ 529 font-family: inherit !important; 530 font-size: 15px !important; 531 font-weight: 500 !important; 532 color: #333333 !important; 533 padding: 12px 110px 12px 15px !important; /* ÐÑдÑÑÑп ÑпÑава, Ñоб ÑекÑÑ Ð½Ðµ налÑз на лого */ 534 box-sizing: border-box; 535 z-index: 10; 536 537 display: flex; 538 align-items: center; 539} 540 541/* ХоваÑмо дÑÐ±Ð»Ñ Ð½Ð° ÑнÑÐ¸Ñ ÑÑÐ´ÐºÐ°Ñ */ 542body.single-show .show__inner:not(:first-of-type)::after { 543 display: none !important; 544} 545 546/* ========================================================= 547 ÐÐÐÐÐЬÐÐ ÐÐРСÐЯ (Ще менÑе повÑÑÑÑ) 548 ========================================================= */ 549@media (max-width: 820px) { 550 body.single-show .show__inner:first-of-type { 551 margin-top: 40px !important; 552 padding-top: 165px !important; /* Ще ÑÑÐ¾Ñ Ð¸ пÑдÑÑгнÑли загалÑÐ½Ñ Ð²Ð¸ÑоÑÑ */ 553 } 554 555 body.single-show .show__inner:first-of-type::before { 556 top: 0 !important; 557 margin-top: 0 !important; transform: translateZ(0); 558 559 font-size: 13px !important; 560 padding: 12px !important; 561 border-left: 3px solid #e31e24 !important; 562 } 563 564 body.single-show .show__inner:first-of-type::after { 565 top: 100px !important; /* ЩРÐÐÐШРÐÐÐСТÐÐЬ (бÑло 110) */ 566 margin-top: 0 !important; transform: translateZ(0); 567 568 font-size: 13px !important; 569 border-left: 3px solid #ffc107 !important; 570 background-size: 60px auto !important; 571 background-position: right 10px center !important; 572 padding: 12px 85px 12px 15px !important; 573 } 574} 575 576body.postid-1013628 .single__show__shows .show__inner:first-of-type::before, 577body.postid-1013628 .single__show__shows .show__inner:first-of-type::after { 578 display: none !important; 579 content: none !important; 580}</style>
vendor: 64 bytes, line 580
580 <script async src="https://www.googletagmanager.com/gtag/js?id=
580G-2ZMCLFZBS8
vendor: 12 bytes, line 580
580"></script>
580<script>
vendor: 134 bytes, lines 580-584
580window.dataLayer = window.dataLayer || []; 581 function gtag(){dataLayer.push(arguments);} 582 gtag('js', new Date()); 583 584 gtag('config', '
584G-2ZMCLFZBS8
vendor: 3 bytes, line 584
584');
584</script>
584
584<script>
vendor: 398 bytes, lines 584-592
584!function(f,b,e,v,n,t,s) 585{if(f.fbq)return;n=f.fbq=function(){n.callMethod? 586n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 587if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 588n.queue=[];t=b.createElement(e);t.async=!0; 589t.src=v;s=b.getElementsByTagName(e)[0]; 590s.parentNode.insertBefore(t,s)}(window,document,'script', 591'https://connect.facebook.net/en_US/fbevents.js'); 592 fbq('init', '
5921365156877221951
vendor: 30 bytes, lines 592-593
592'); 593fbq('track', 'PageView');
593</script>
593 <noscript> <img height="1" width="1" 594src="https://www.facebook.com/tr?id=1365156877221951&ev=PageView 595&noscript=1"/> </noscript><!-- Vasylko SEO Social v1.3.0 --> 596<meta property="og:locale" content="uk"> 597<meta property="og:type" content="article"> 598<meta property="og:title" content="ÐÑÑÑа"> 599<meta property="og:url" content="https://ukrteatr.odessa.ua/afisha-2"> 600<meta property="og:site_name" content="ÐдеÑÑкий академÑÑний ÑкÑаÑнÑÑкий мÑзиÑно-дÑамаÑиÑний ÑеаÑÑ Ñм. Ð. ÐаÑилÑка"> 601<meta name="twitter:card" content="summary"> 602<meta name="twitter:title" content="ÐÑÑÑа"> 603<!-- /Vasylko SEO Social --> 604</head><body data-rsssl=1 class="wp-singular page-template page-template-page-afisha page-template-page-afisha-php page page-id-1005175 wp-theme-odesa-theatre-theme loading non-logged-in"><header><div class="content flex"> <a class="logo" href="https://ukrteatr.odessa.ua"><img class="img_logo" src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/04/logo_208x54px.svg"/></a><div class="divider"></div><nav class="menu-menu-container"><ul id="menu-menu" class="menu"><li id="menu-item-1005178" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-1005175 current_page_item menu-item-1005178"><a href="https://ukrteatr.odessa.ua/afisha-2" aria-current="page">ÐÑÑÑа</a></li><li id="menu-item-1004997" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1004997"><a href="https://ukrteatr.odessa.ua/repertuar">РепеÑÑÑаÑ</a></li><li id="menu-item-1009275" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1009275"><a href="https://ukrteatr.odessa.ua/kolektyv">ÐолекÑив</a></li><li id="menu-item-1005034" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1005034"><a href="https://ukrteatr.odessa.ua/news">Ðовини</a></li></ul></nav> <a class="concert" href="https://smart.concert.ua/uk/ukrteatr/c" rel="nofollow" target="_blank"> <img class="concert_img" src="/wp-content/uploads/2025/10/concertua-brand-logo-01_RED.svg" alt="Concert.ua"/> </a> <a class="karabas" href="https://odesa.karabas.com/hall/ukrajnskij-teatr" rel="nofollow" target="_blank"> <img class="karabas_img" src="/wp-content/uploads/2025/10/logo-karabas.svg" alt="Karabas"/> </a><div class="mobile_icon"> <span></span> <span></span> <span></span></div></div></header><div class="main_container"><div class="video__loader"><video muted="" attribute="" playsinline="" poster="" autoplay=""> <source src="/wp-content/uploads/2021/04/Logo_animation_mobile_800x400.mp4" type="video/mp4"></video></div><section class="near"><div class="content"><div class="near__shows grid col-3"> <a href="https://ukrteatr.odessa.ua/afisha/odruzhennia"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2018/08/476506286_1031432312181281_247246961523816256_n.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-violet date">02</span><span class="_cl-violet month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-violet">ÐдÑÑженнÑ</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="violet"></span><p>ЦÑлком неймовÑÑна подÑÑ</p></div><p class="show__text__director">РежиÑеÑ: Ðван УÑивÑÑкий</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/lisova-svoboda-buty-soboiu"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2026/09/lisova-svoboda-buty-soboiu-afisha.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-blue date">04</span><span class="_cl-blue month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-blue">ÐÑÑова: Ñвобода бÑÑи ÑобоÑ</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="blue"></span><p>ÐеÑÑепÑивна мÑÑÑеÑÑÑ</p></div><p class="show__text__director">РежиÑеÑ: ЯÑоÑлав ÐабиÑ</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/kaidashi"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/05/kaidashi.png"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-yellow date">09</span><span class="_cl-yellow month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-yellow">ÐайдаÑÑ</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="yellow"></span>
604<p>СÑмейна Ñ
ÑонÑка на 2 ÑаÑÑини</p></div><p class="show__text__director">РежиÑеÑ: ÐоÑÑÑнÑин <br /> ÐивоваÑов</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/v-nediliu-rano-zillia-kopala"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2023/08/IMG_1386.png"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-blue date">16</span><span class="_cl-blue month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-blue">РнедÑÐ»Ñ Ñано зÑÐ»Ð»Ñ ÐºÐ¾Ð¿Ð°Ð»Ð°</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="blue"></span><p>ÐÑÑоÑÑÑ ÑпÑавжнÑого коÑ
аннÑ</p></div><p class="show__text__director">РежиÑеÑ: ÐлекÑÐ°Ð½Ð´Ñ Ð¡Ð°Ð¼ÑÑенко</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/vsi-moi-syny"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2026/09/vsi-moi-syny-afisha-scaled.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-red date">18</span><span class="_cl-red month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-red">ÐÑÑ Ð¼Ð¾Ñ Ñини</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="red"></span><p>ÐÑама на 2 дÑÑ</p></div><p class="show__text__director">РежиÑеÑ: ÐлекÑÐ°Ð½Ð´Ñ Ð¡ÑепанÑов</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/tini-zabutykh-predkiv"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/05/tini-poster.png"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-violet date">21</span><span class="_cl-violet month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-violet">ТÑÐ½Ñ Ð·Ð°Ð±ÑÑиÑ
пÑедкÑв</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="violet"></span><p>ÐиÑÑава без анÑÑакÑÑ</p></div><p class="show__text__director">РежиÑеÑ: Ðван УÑивÑÑкий</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/stervy-ne-plachut"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/stervi-ne-plachut-poster.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-red date">22</span><span class="_cl-red month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-red">СÑеÑви не плаÑÑÑÑ!</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="red"></span><p>ТÑагÑкомедÑÑ Ð½Ð° 1 дÑÑ</p></div><p class="show__text__director">РежиÑеÑ: Роман ФедоÑÑÑв</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/1900-i"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2023/11/1080-1080.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-blue date">23</span><span class="_cl-blue month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-blue">1900-й. Ðегенда пÑо пÑанÑÑÑа</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="blue"></span><p>ÐÑÑоÑÑÑ Ð½Ð° 88 клавÑÑ, ÑÐºÑ ÑÑеба поÑÑÑи</p></div><p class="show__text__director">РежиÑеÑ: ÐлекÑÐ°Ð½Ð´Ñ Ð¡Ð°Ð¼ÑÑенко</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/vsi-moi-syny"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2026/09/vsi-moi-syny-afisha-scaled.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-red date">24</span><span class="_cl-red month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-red">ÐÑÑ Ð¼Ð¾Ñ Ñини</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="red"></span>
604<p>ÐÑама на 2 дÑÑ</p></div><p class="show__text__director">РежиÑеÑ: ÐлекÑÐ°Ð½Ð´Ñ Ð¡ÑепанÑов</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/hutsulskyi-vestern"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2023/01/IMG_1529.jpeg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-violet date">25</span><span class="_cl-violet month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-violet">ÐаÑпаÑÑÑкий веÑÑеÑн</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="violet"></span><p>ÐеймовÑÑна ÑÑÑоÑÑÑ Ð¿Ñо коÑ
аннÑ, зÑÐ°Ð´Ñ Ñа ÑмеÑÑÑ Ð½Ð° 2 дÑÑ</p></div><p class="show__text__director">РежиÑеÑ: ÐакÑим Ðоленко</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/ia-pomshchusia-svitu-liubov-iu"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2023/06/IMG_1361.jpeg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-violet date">29</span><span class="_cl-violet month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-violet">Я помÑÑÑÑ ÑвÑÑÑ Ð»ÑбовʼÑâ¦</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="violet"></span><p>ÐÑзиÑно-поеÑиÑний пеÑÑоÑманÑ</p></div><p class="show__text__director">РежиÑеÑка: ÐалеÑÑÑ Ð Ð¾Ð¼Ð°Ð½ÐºÐ¾</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/kamin"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2024/04/аÑÑÑа-не-заÑвеÑджена-scaled.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-blue date">30</span><span class="_cl-blue month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-blue">ÐамÑнÑ</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="blue"></span><p>«ХÑонÑка» однÑÑÑ Ñодини</p></div><p class="show__text__director">
604РежиÑеÑ: ÐвгенÑй РезнÑÑенко</p></div></div></div> </a> <a href="https://ukrteatr.odessa.ua/afisha/prirecheni-tancjuvati"><div class="show second-wave" data-src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/04/Horses-Final-scaled.jpg"></div><div class="show__inner flex"><div class="show__date flexColumn"> <span class="_cl-orange date">31</span><span class="_cl-orange month">ÐовÑнÑ</span></div><div class="show__text flexColumn"><h2 class="_cl-orange">ÐÑиÑеÑÐµÐ½Ñ ÑанÑÑваÑи</h2><div class="right__part flex"><div class="flex"> <span class="triangle" data-color="orange"></span><p>ÐаÑаÑон ÑÑивалÑÑÑÑ Ð² жиÑÑÑ</p></div><p class="show__text__director">РежиÑеÑ: Ðавло ÐвлÑÑкÑн</p></div></div></div> </a></div></div></section></div><footer><div class="content flex"><div class="flexColumn justifyCenter borderRight"><a class="logo" href="https://ukrteatr.odessa.ua"><img class="footer__img_logo" src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/05/footer_logo.png"/></a></div><div class="flexColumn justifyCenter"><p>ÐаÑа<br /> <a href="tel:0487238977">048-723-89-77</a></p><p>ÐдмÑнÑÑÑÑаÑÑÑ<br /> <a href="tel:0487235566">048-723-55-66</a></p></div><div class="flexColumn justifyCenter borderRight"><p>65026 м. ÐдеÑа,<br /> вÑл. ÐаÑÑеÑа, 15</p><p><a href="mailto:[email protected]">[email protected]</a></p></div><div class="flexColumn justifyCenter borderRight"><nav class="menu-nyzhnie-meniu-container"><ul id="menu-nyzhnie-meniu" class="menu"><li id="menu-item-1005177" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-1005175 current_page_item menu-item-1005177"><a href="https://ukrteatr.odessa.ua/afisha-2" aria-current="page">ÐÑÑÑа</a></li><li id="menu-item-1005068" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1005068"><a href="https://ukrteatr.odessa.ua/repertuar">РепеÑÑÑаÑ</a></li><li id="menu-item-1005067" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1005067"><a href="https://ukrteatr.odessa.ua/news">Ðовини</a></li><li id="menu-item-1005066" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1005066"><a href="https://ukrteatr.odessa.ua/tenders">ТендеÑи</a></li></ul></nav></div><div class="divider"></div><div class="flex socials justifyCenter"> <a href="https://www.youtube.com/channel/UC_XxrXdBEU-nNWOlkq7UUfQ/featured" target="_blank" rel="nofollow"><img src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/05/youtube-brands.svg"/></a> <a href="https://www.facebook.com/ODESSAUKRTHEATER" target="_blank" rel="nofollow"><img src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/05/facebook-square-brands.svg"/></a> <a href="https://www.instagram.com/ukrtheater/" target="_blank" rel="nofollow"><img src="https://ukrteatr.odessa.ua/wp-content/uploads/2021/05/instagram-brands.svg"/></a> <a href="https://t.me/ukrteatr" target="_blank" rel="nofollow"><img src="https://ukrteatr.odessa.ua/wp-content/uploads/2022/07/telegram-brands.svg"/></a></div></div></footer>
604<script type="speculationrules">{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/odesa-theatre-theme/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}</script>
604
604<script id="wp-statistics-tracker-js-extra">var WP_Statistics_Tracker_Object = {"requestUrl":"https://ukrteatr.odessa.ua/wp-json/wp-statistics/v2","ajaxUrl":"https://ukrteatr.odessa.ua/wp-admin/admin-ajax.php","hitParams":{"wp_statistics_hit":1,"source_type":"page","source_id":1005175,"search_query":"","signature":"c81913052b22d31c1aed40464c60bf33","endpoint":"hit"},"option":{"dntEnabled":false,"bypassAdBlockers":false,"consentIntegration":{"name":null,"status":[]},"isPreview":false,"userOnline":false,"isWpConsentApiActive":false},"isLegacyEventLoaded":"","customEventAjaxUrl":"https://ukrteatr.odessa.ua/wp-admin/admin-ajax.php?action=wp_statistics_custom_event&nonce=5eb19ae409","onlineParams":{"wp_statistics_hit":1,"source_type":"page","source_id":1005175,"search_query":"","signature":"c81913052b22d31c1aed40464c60bf33","action":"wp_statistics_online_check"},"jsCheckTime":"60000"}; 605//# sourceURL=wp-statistics-tracker-js-extra</script>
605
605<script id="wp-statistics-tracker-js" src="https://ukrteatr.odessa.ua/wp-content/plugins/wp-statistics/assets/js/tracker.js?ver=14.16.13"></script>
605
605<script id="vasylko-premiere-badges-js-extra">var VPB_DATA = {"items":[{"id":1013724,"title":"\u0412\u0441\u0456 \u043c\u043e\u0457 \u0441\u0438\u043d\u0438"},{"id":1013628,"title":"\u041b\u0456\u0441\u043e\u0432\u0430: \u0441\u0432\u043e\u0431\u043e\u0434\u0430 \u0431\u0443\u0442\u0438 \u0441\u043e\u0431\u043e\u044e"},{"id":1012964,"title":"\u0421\u0442\u0435\u0440\u0432\u0438 \u043d\u0435 \u043f\u043b\u0430\u0447\u0443\u0442\u044c!"}],"label":"\u041f\u0420\u0415\u041c\u2019\u0404\u0420\u0410","single":{"enabled":false,"id":0}}; 606//# sourceURL=vasylko-premiere-badges-js-extra</script>
606
606<script id="vasylko-premiere-badges-js" src="https://ukrteatr.odessa.ua/wp-content/plugins/vasylko-premiere-badges/assets/premiere.js?ver=1.5.2"></script>
606
606<script id="slick-js" src="https://ukrteatr.odessa.ua/wp-content/themes/odesa-theatre-theme/js/slick/slick.min.js?ver=7.1.2"></script>
606
606<script id="fancybox-js" src="https://ukrteatr.odessa.ua/wp-content/themes/odesa-theatre-theme/js/fancybox/fancybox.js?ver=7.1.2"></script>
606
606<script id="lazy-js" src="https://ukrteatr.odessa.ua/wp-content/themes/odesa-theatre-theme/js/lazyload/lazyload.min.js?ver=7.1.2"></script>
606
606<script id="masterslider-js" src="https://ukrteatr.odessa.ua/wp-content/themes/odesa-theatre-theme/js/masterslider/masterslider.min.js?ver=7.1.2"></script>
606
606<script id="main-js" src="https://ukrteatr.odessa.ua/wp-content/themes/odesa-theatre-theme/js/main.js?ver=7.1.2"></script>
606
606<script id="wp-emoji-settings" type="application/json">{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://ukrteatr.odessa.ua/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}}</script>
606
606<script type="module">/*! This file is auto-generated */ 607var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 608//# sourceURL=https://ukrteatr.odessa.ua/wp-includes/js/wp-emoji-loader.min.js</script>
608
608<script type="text/javascript">jQuery(document).ready(function ($) { 609 var selectors = [ 610 '.near_shows .grid .col-3', 611 '.show.second-wave', 612 '.content .grid .col-3', 613 '.repertoire .grid .col-3', 614 '.afisha .grid .col-3' 615 ].join(','); 616 617 var observer = new IntersectionObserver(function (entries) { 618 entries.forEach(function (entry) { 619 if (entry.isIntersecting) { 620 entry.target.classList.add('is-visible'); 621 observer.unobserve(entry.target); 622 } 623 }); 624 }, { 625 threshold: 0.12, 626 rootMargin: '0px 0px -45px 0px' 627 }); 628 629 function initReveal() { 630 $(selectors).each(function () { 631 var item = $(this); 632 633 if ( 634 item.closest('header, footer, .main_slider, .slick-slider, #wpadminbar').length || 635 item.hasClass('reveal-on-scroll') 636 ) { 637 return; 638 } 639 640 item.addClass('reveal-on-scroll'); 641 observer.observe(this); 642 }); 643 } 644 645 initReveal(); 646 647 setTimeout(initReveal, 600); 648 setTimeout(initReveal, 1500); 649});</script>
649 650
650<script type="text/javascript">jQuery(document).ready(function ($) { 651 var slider = $('.main_slider'); 652 653 if (!slider.length) return; 654 655 function enableMainSliderAutoplay() { 656 if (slider.hasClass('slick-initialized')) { 657 slider.slick('slickSetOption', { 658 autoplay: true, 659 autoplaySpeed: 4000, 660 speed: 700, 661 pauseOnHover: false, 662 pauseOnFocus: false, 663 pauseOnDotsHover: false, 664 arrows: true, 665 infinite: true 666 }, true); 667 668 slider.slick('slickPlay'); 669 } 670 } 671 672 enableMainSliderAutoplay(); 673 674 setTimeout(enableMainSliderAutoplay, 1000); 675 setTimeout(enableMainSliderAutoplay, 2500); 676 677 $(window).on('scroll focus mousemove touchend', function () { 678 if (slider.hasClass('slick-initialized')) { 679 slider.slick('slickPlay'); 680 } 681 }); 682});</script>
682 683
683<script type="text/javascript">document.addEventListener('DOMContentLoaded', function () { 684 if (!document.body.classList.contains('postid-1010622')) return; 685 686 document.querySelectorAll( 687 '#vm-bessarab-audio, #vm-bessarab-audio-wide, #vasylko-clean-audio, #vasylko-orchestra-player' 688 ).forEach(function (el) { 689 el.remove(); 690 }); 691 692 const insertAfter = 693 document.querySelector('body.postid-1010622 section.content.flex.single_show_wrap.active') || 694 document.querySelector('body.postid-1010622 section.content.flex') || 695 document.querySelector('body.postid-1010622 .single_show_wrap.active') || 696 document.querySelector('body.postid-1010622 .single_show_wrap'); 697 698 if (!insertAfter) { 699 console.warn('Vasylko orchestra player: insert target not found'); 700 return; 701 } 702 703 const COVER_URL = 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/SuspilneKultura.png'; 704 705 const TRACKS = [ 706 { title: 'Childhood', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/01_Childhood.mp3', duration: '5:49' }, 707 { title: 'Elusive Wind', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/02_Elusive_Wind.mp3', duration: '6:19' }, 708 { title: 'Moving Away Silhouette On The Shore', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/03_Moving_Away_Silhouette_On_The_Shore.mp3', duration: '7:53' }, 709 { title: 'Intermezzo', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/04_Intermezzo.mp3', duration: '6:03' }, 710 { title: 'The Game', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/05_The_Game.mp3', duration: '2:36' }, 711 { title: 'Apprehension', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/06_Apprehension.mp3', duration: '6:45' }, 712 { title: 'Dance for Chick', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/07_Dance_for_Chick.mp3', duration: '7:01' }, 713 { title: 'So Short', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/08_So_Shirt.mp3', duration: '4:42' }, 714 { title: 'Birth of a Dream', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/09_Birth_of_a_Dream.mp3', duration: '5:46' }, 715 { title: 'Touch of Time', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/10_Touch_Of_Time.mp3', duration: '5:51' }, 716 { title: 'City of the Sun', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/11_City_of_the_Sun.mp3', duration: '8:18' }, 717 { title: 'Lumberjack Blues', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/12_Lumberjack_Blues.mp3', duration: '5:21' }, 718 { title: 'The Shades of Silence', src: 'https://ukrteatr.odessa.ua/wp-content/uploads/2026/05/13_The_Shades_Of_Silence.mp3', duration: '5:30' } 719 ]; 720 721 const audio = new Audio(); 722 audio.preload = 'metadata'; 723 audio.volume = 0.82; 724 725 let currentIndex = -1; 726 let isSeeking = false; 727 728 function iconPlay() { 729 return '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M8 5.3c0-.8.9-1.3 1.6-.9l8.7 5.1c.7.4.7 1.5 0 1.9l-8.7 5.1c-.7.4-1.6-.1-1.6-.9V5.3z"></path></svg>'; 730 } 731 732 function iconPause() { 733 return '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M7 5h3.4v14H7V5zm6.6 0H17v14h-3.4V5z"></path></svg>'; 734 } 735 736 function iconPrev() { 737 return '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M6 5h2v14H6V5zm3.8 7L18 6.8v10.4L9.8 12z"></path></svg>'; 738 } 739 740 function iconNext() { 741 return '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M16 5h2v14h-2V5zM6 17.2V6.8l8.2 5.2L6 17.2z"></path></svg>'; 742 } 743 744 function iconVolume() { 745 return '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M4 10h4.1L13 5.7c.7-.6 1.7-.1 1.7.8v11c0 .9-1 1.4-1.7.8L8.1 14H4v-4zm13.5-2.8a1 1 0 0 1 1.4.1A7.9 7.9 0 0 1 21 12a7.9 7.9 0 0 1-2.1 4.7 1 1 0 0 1-1.5-1.3A5.9 5.9 0 0 0 19 12a5.9 5.9 0 0 0-1.6-3.4 1 1 0 0 1 .1-1.4z"></path></svg>'; 746 } 747 748 function iconDownload() { 749 return '<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M11 4h2v8.2l2.8-2.8 1.4 1.4-5.2 5.2-5.2-5.2 1.4-1.4 2.8 2.8V4zm-5 13h12v2H6v-2z"></path></svg>'; 750 } 751 752 function escapeAttr(value) { 753 return String(value).replace(/"/g, '"'); 754 } 755 756 function formatTime(seconds) { 757 if (!isFinite(seconds) || seconds < 0) return '0:00'; 758 const m = Math.floor(seconds / 60); 759 const s = Math.floor(seconds % 60).toString().padStart(2, '0'); 760 return m + ':' + s; 761 } 762 763 function durationToSeconds(value) { 764 if (!value || !value.includes(':')) return 0; 765 const parts = value.split(':').map(Number); 766 return parts[0] * 60 + parts[1]; 767 } 768 769 function totalDurationText() { 770 const total = TRACKS.reduce(function (sum, track) { 771 return sum + durationToSeconds(track.duration); 772 }, 0); 773 return Math.round(total / 60) + ' Ñ Ð²'; 774 } 775 776 function fileName(track) { 777 return String(track.title || 'track') 778 .trim() 779 .replace(/[\\/:*?"<>|]/g, '') 780 .replace(/\s+/g, '_') + '.mp3'; 781 } 782 783 function setRangeFill(range, playedColor, restColor) { 784 const min = Number(range.min || 0); 785 const max = Number(range.max || 100);
786 const val = Number(range.value || 0); 787 const p = max > min ? ((val - min) / (max - min)) * 100 : 0; 788 789 range.style.setProperty('--fill', p + '%'); 790 791 if (playedColor) { 792 range.style.setProperty('--played', playedColor); 793 range.style.setProperty('--thumb', playedColor); 794 } 795 796 if (restColor) { 797 range.style.setProperty('--rest', restColor); 798 } 799 } 800 801 const section = document.createElement('section'); 802 section.id = 'vasylko-orchestra-player'; 803 804 section.innerHTML = [ 805 '<div class="vop-head">', 806 '<div class="vop-kicker">ÐÑдÑозапиÑ</div>', 807 '<h2 class="vop-title">ÐдеÑÑкий джазовий конÑеÑÑ</h2>', 808 '<p class="vop-desc">ÐвÑоÑÑÑÐºÑ ÐºÐ¾Ð¼Ð¿Ð¾Ð·Ð¸ÑÑÑ Ðадима ÐеÑÑаÑаба Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÑеаÑÑалÑного Ð±ÐµÐ½Ð´Ñ ÑеаÑÑÑ ÑÐ¼ÐµÐ½Ñ Ð. ÐаÑилÑка, запиÑÐ°Ð½Ñ Ð´Ð»Ñ ÐµÑÑÑÑ Ð Ð°Ð´Ñо ÐÑлÑÑÑÑа. ÐÐ°Ð¿Ð¸Ñ Ð¾ÑганÑзÑвала команда СÑÑпÑлÑне ÐдеÑа Ñ Ð Ð°Ð´Ñо ÐÑлÑÑÑÑа.</p>', 809 '</div>', 810 811 '<div class="vop-widget">', 812 '<div class="vop-left">', 813 '<div class="vop-left-inner">', 814 '<div class="vop-cover"><img src="' + COVER_URL + '" alt="ÐдеÑÑкий джазовий конÑеÑÑ"></div>', 815 '<h3 class="vop-album">ÐдеÑÑкий джазовий конÑеÑÑ</h3>', 816 817 '<div class="vop-actions">', 818 '<button class="vop-main-btn" type="button">', 819 '<span class="vop-main-icon">' + iconPlay() + '</span>', 820 '<span class="vop-main-text">ÐÑдÑвоÑиÑи</span>', 821 '</button>', 822 '</div>', 823 824 '<div class="vop-controls">', 825 '<input class="vop-range vop-seek" type="range" min="0" max="100" value="0" step="0.1">', 826 '<div class="vop-time">', 827 '<span class="vop-current-time">0:00</span>', 828 '<span class="vop-remaining-time">-0:00</span>', 829 '</div>', 830 831 '<div class="vop-control-row">', 832 '<button class="vop-round vop-prev" type="button" aria-label="ÐопеÑеднÑй ÑÑек">' + iconPrev() + '</button>', 833 '<button class="vop-round vop-next" type="button" aria-label="ÐаÑÑÑпний ÑÑек">' + iconNext() + '</button>', 834 835 '<div class="vop-volume-wrap">', 836 '<div class="vop-volume">', 837 '<button class="vop-volume-toggle" type="button" aria-label="ÐÑÑнÑÑÑÑ">' + iconVolume() + '</button>', 838 '<input class="vop-range vop-volume-range" type="range" min="0" max="1" step="0.01" value="0.82">', 839 '</div>', 840 '<button class="vop-download-bottom is-hidden" type="button" aria-label="ÐаванÑажиÑи ÑÑек">' + iconDownload() + '</button>', 841 '</div>', 842 '</div>', 843 '</div>', 844 '</div>', 845 '</div>', 846 847 '<div class="vop-right">', 848 '<div class="vop-list"></div>', 849 '<div class="vop-footer"><span class="vop-note">' + TRACKS.length + ' ÑÑекÑв, пÑиблизно ' + totalDurationText() + '</span></div>', 850 '</div>', 851 '</div>' 852 ].join(''); 853 854 insertAfter.insertAdjacentElement('afterend', section); 855 856 const mainIcon = section.querySelector('.vop-main-icon'); 857 const mainText = section.querySelector('.vop-main-text'); 858 const mainBtn = section.querySelector('.vop-main-btn'); 859 const seek = section.querySelector('.vop-seek'); 860 const currentTimeEl = section.querySelector('.vop-current-time'); 861 const remainingTimeEl = section.querySelector('.vop-remaining-time'); 862 const prevBtn = section.querySelector('.vop-prev'); 863 const nextBtn = section.querySelector('.vop-next'); 864 const volumeRange = section.querySelector('.vop-volume-range'); 865 const downloadBtn = section.querySelector('.vop-download-bottom'); 866 const list = section.querySelector('.vop-list'); 867 868 function renderList() { 869 list.innerHTML = TRACKS.map(function (track, index) { 870 const isCurrent = index === currentIndex; 871 const isPlaying = isCurrent && !audio.paused; 872 873 return [ 874 '<div class="vop-track' + (isCurrent ? ' is-current' : '') + '" data-index="' + index + '">', 875 '<div class="vop-num">' + String(index + 1).padStart(2, '0') + '</div>', 876 '<div class="vop-track-title" title="' + escapeAttr(track.title) + '">' + track.title + '</div>', 877 '<div class="vop-duration">' + track.duration + '</div>', 878 '<button class="vop-track-btn" type="button" aria-label="ÐÑдÑвоÑиÑи ÑÑек">', 879 isPlaying ? iconPause() : iconPlay(), 880 '</button>', 881 '</div>' 882 ].join(''); 883 }).join(''); 884 } 885 886 function updateDownload() { 887 if (currentIndex < 0 || !TRACKS[currentIndex]) { 888 downloadBtn.classList.add('is-hidden'); 889 downloadBtn.removeAttribute('data-url'); 890 downloadBtn.removeAttribute('data-name'); 891 return; 892 } 893 894 downloadBtn.classList.remove('is-hidden'); 895 downloadBtn.setAttribute('data-url', TRACKS[currentIndex].src); 896 downloadBtn.setAttribute('data-name', fileName(TRACKS[currentIndex])); 897 } 898 899 function updateButtons() { 900 const playing = currentIndex >= 0 && !audio.paused; 901 902 mainIcon.innerHTML = playing ? iconPause() : iconPlay(); 903 904 if (currentIndex < 0) { 905 mainText.textContent = 'ÐÑдÑвоÑиÑи'; 906 section.classList.remove('is-loaded', 'has-current'); 907 } else { 908 mainText.textContent = playing ? 'ÐаÑза' : 'ÐÑодовжиÑи'; 909 section.classList.add('is-loaded', 'has-current'); 910 } 911 912 updateDownload(); 913 } 914 915 function updateTime() { 916 if (currentIndex < 0) { 917 currentTimeEl.textContent = '0:00'; 918 remainingTimeEl.textContent = '-0:00'; 919 seek.value = 0; 920 seek.max = 100; 921 setRangeFill(seek, '#9ca0a8', '#d7dbe1'); 922 return; 923 } 924 925 const fallbackDuration = durationToSeconds(TRACKS[currentIndex].duration); 926 const duration = isFinite(audio.duration) && audio.duration > 0 ? audio.duration : fallbackDuration; 927 const current = audio.currentTime || 0; 928 const remaining = Math.max(0, duration - current); 929 930 currentTimeEl.textContent = formatTime(current); 931 remainingTimeEl.textContent = '-' + formatTime(remaining); 932 933 if (!isSeeking && duration > 0) { 934 seek.max = duration; 935 seek.value = current; 936 } 937 938 setRangeFill(seek, '#9ca0a8', '#d7dbe1'); 939 } 940 941 function updateAll() { 942 updateButtons(); 943 updateTime(); 944 renderList(); 945 } 946 947 function loadTrack(index, autoplay) { 948 if (index < 0 || index >= TRACKS.length) return; 949 950 currentIndex = index; 951 audio.src = TRACKS[index].src; 952 audio.load(); 953 954 if (autoplay) { 955 audio.play().catch(function (err) { 956 console.warn('Audio play blocked:', err); 957 }); 958 } 959 960 updateAll(); 961 } 962 963 function toggleMain() { 964 if (currentIndex < 0) { 965 loadTrack(0, true); 966 return; 967 } 968 969 if (audio.paused) { 970 audio.play().catch(function (err) { 971 console.warn(err); 972 }); 973 } else { 974 audio.pause(); 975 } 976 977 updateAll(); 978 } 979 980 function toggleTrack(index) { 981 if (index === currentIndex) { 982 if (audio.paused) { 983 audio.play().catch(function (err) { 984 console.warn(err); 985 }); 986 } else { 987 audio.pause(); 988 } 989 updateAll(); 990 return; 991 } 992 993 loadTrack(index, true); 994 } 995 996 function downloadCurrent() { 997 if (currentIndex < 0 || !TRACKS[currentIndex]) return; 998 999 const a = document.createElement('a'); 1000 a.href = TRACKS[currentIndex].src; 1001 a.download = fileName(TRACKS[currentIndex]); 1002 document.body.appendChild(a); 1003 a.click(); 1004 a.remove(); 1005 } 1006 1007 mainBtn.addEventListener('click', toggleMain); 1008 1009 prevBtn.addEventListener('click', function () { 1010 if (currentIndex <= 0) { 1011 loadTrack(0, true); 1012 } else { 1013 loadTrack(currentIndex - 1, true); 1014 } 1015 }); 1016 1017 nextBtn.addEventListener('click', function () { 1018 if (currentIndex < 0) { 1019 loadTrack(0, true); 1020 } else if (currentIndex < TRACKS.length - 1) { 1021 loadTrack(currentIndex + 1, true); 1022 } 1023 }); 1024 1025 list.addEventListener('click', function (event) {
1026 const row = event.target.closest('.vop-track'); 1027 if (!row) return; 1028 1029 const index = Number(row.dataset.index); 1030 if (!Number.isNaN(index)) toggleTrack(index); 1031 }); 1032 1033 downloadBtn.addEventListener('click', downloadCurrent); 1034 1035 volumeRange.addEventListener('input', function () { 1036 audio.volume = Number(this.value); 1037 setRangeFill(this, '#b0b4bc', '#d7dbe1'); 1038 }); 1039 1040 seek.addEventListener('input', function () { 1041 isSeeking = true; 1042 const value = Number(this.value); 1043 const max = Number(this.max || 0); 1044 1045 currentTimeEl.textContent = formatTime(value); 1046 remainingTimeEl.textContent = '-' + formatTime(Math.max(0, max - value)); 1047 1048 setRangeFill(this, '#9ca0a8', '#d7dbe1'); 1049 }); 1050 1051 seek.addEventListener('change', function () { 1052 if (currentIndex >= 0) { 1053 audio.currentTime = Number(this.value); 1054 } 1055 1056 isSeeking = false; 1057 updateTime(); 1058 }); 1059 1060 audio.addEventListener('loadedmetadata', updateTime); 1061 audio.addEventListener('timeupdate', updateTime); 1062 audio.addEventListener('play', updateAll); 1063 audio.addEventListener('pause', updateAll); 1064 1065 audio.addEventListener('ended', function () { 1066 if (currentIndex < TRACKS.length - 1) { 1067 loadTrack(currentIndex + 1, true); 1068 } else { 1069 audio.pause(); 1070 audio.currentTime = 0; 1071 updateAll(); 1072 } 1073 }); 1074 1075 setRangeFill(seek, '#9ca0a8', '#d7dbe1'); 1076 setRangeFill(volumeRange, '#b0b4bc', '#d7dbe1'); 1077 renderList(); 1078 updateAll(); 1079});</script>
1079 1080
1080<script type="text/javascript">document.addEventListener('DOMContentLoaded', function () { 1081 if (!document.body.classList.contains('postid-1010622')) return; 1082 1083 const originalGallery = document.querySelector('body.postid-1010622 .single__show'); 1084 if (!originalGallery) return; 1085 1086 const links = Array.from( 1087 originalGallery.querySelectorAll('a[data-fancybox="gallery"][href]') 1088 ) 1089 .map(a => a.getAttribute('href')) 1090 .filter(Boolean) 1091 .filter((href, index, arr) => arr.indexOf(href) === index); 1092 1093 if (!links.length) return; 1094 if (document.querySelector('.orchestra-gallery-carousel')) return; 1095 1096 originalGallery.style.display = 'none'; 1097 1098 const carousel = document.createElement('div'); 1099 carousel.className = 'orchestra-gallery-carousel'; 1100 1101 const stage = document.createElement('div'); 1102 stage.className = 'orchestra-gallery-stage'; 1103 1104 links.forEach((href, index) => { 1105 const slide = document.createElement('div'); 1106 slide.className = 'orchestra-gallery-slide'; 1107 slide.style.setProperty('--bg-image', `url("${href}")`); 1108 1109 const img = document.createElement('img'); 1110 img.src = href; 1111 img.alt = `ФоÑо ${index + 1}`; 1112 img.loading = index === 0 ? 'eager' : 'lazy'; 1113 img.decoding = 'async'; 1114 1115 slide.appendChild(img); 1116 stage.appendChild(slide); 1117 }); 1118 1119 const controls = document.createElement('div'); 1120 controls.className = 'orchestra-gallery-controls'; 1121 controls.innerHTML = ` 1122 <button type="button" class="orchestra-gallery-btn orchestra-gallery-prev" aria-label="ÐопеÑÐµÐ´Ð½Ñ ÑоÑо">â</button> 1123 <div class="orchestra-gallery-counter">1 / ${links.length}</div> 1124 <button type="button" class="orchestra-gallery-btn orchestra-gallery-next" aria-label="ÐаÑÑÑпне ÑоÑо">â</button> 1125 `; 1126 1127 carousel.appendChild(stage); 1128 carousel.appendChild(controls); 1129 1130 originalGallery.parentNode.insertBefore(carousel, originalGallery); 1131 1132 const slides = Array.from(carousel.querySelectorAll('.orchestra-gallery-slide')); 1133 const counter = carousel.querySelector('.orchestra-gallery-counter'); 1134 const prevBtn = carousel.querySelector('.orchestra-gallery-prev'); 1135 const nextBtn = carousel.querySelector('.orchestra-gallery-next'); 1136 1137 let current = 0; 1138 1139 function showSlide(index) { 1140 if (!slides.length) return; 1141 1142 if (index < 0) index = slides.length - 1; 1143 if (index >= slides.length) index = 0; 1144 1145 slides.forEach((slide, i) => { 1146 slide.classList.toggle('is-active', i === index); 1147 }); 1148 1149 current = index; 1150 counter.textContent = `${current + 1} / ${slides.length}`; 1151 } 1152 1153 prevBtn.addEventListener('click', function () { 1154 showSlide(current - 1); 1155 }); 1156 1157 nextBtn.addEventListener('click', function () { 1158 showSlide(current + 1); 1159 }); 1160 1161 document.addEventListener('keydown', function (e) { 1162 if (!document.body.classList.contains('postid-1010622')) return; 1163 1164 if (e.key === 'ArrowLeft') { 1165 showSlide(current - 1); 1166 } 1167 1168 if (e.key === 'ArrowRight') { 1169 showSlide(current + 1); 1170 } 1171 }); 1172 1173 showSlide(0); 1174});</script>
1174 1175
1175<script type="text/javascript">(function () { 1176 function insertBessarabAlbum() { 1177 if (!window.location.pathname.includes('/collective/bessarab-vadym')) return; 1178 if (document.querySelector('.bessarab-album')) return; 1179 1180 var showsBlock = document.querySelector('.actor__shows'); 1181 if (!showsBlock) return; 1182 1183 var albumBlock = document.createElement('div'); 1184 albumBlock.className = 'bessarab-album'; 1185 1186 albumBlock.innerHTML = ` 1187 <div class="bessarab-album-crop"> 1188 <iframe 1189 allow="autoplay *; encrypted-media *; fullscreen *; clipboard-write" 1190 frameborder="0" 1191 sandbox="allow-forms allow-popups allow-same-origin allow-scripts allow-top-navigation-by-user-activation" 1192 src="https://embed.music.apple.com/ua/album/night-and-day/1732265675?l=uk"> 1193 </iframe> 1194 </div> 1195 `; 1196 1197 showsBlock.parentNode.insertBefore(albumBlock, showsBlock); 1198 } 1199 1200 document.addEventListener('DOMContentLoaded', insertBessarabAlbum); 1201 window.addEventListener('load', insertBessarabAlbum); 1202})();</script>
1202 </body></html> 1203<!-- Dynamic page generated in 0.383 seconds. --> 1204<!-- Cached page generated by WP-Super-Cache on 2026-10-02 10:28:30 --> 1205 1206<!-- Compression = gzip -->
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.