/* --- Menu Main --- */
.mmenu-cell { width: 100%; height: 32px; background: linear-gradient(to right, #000, #444); display: flex; cursor: default; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5); position: relative; z-index: 301; }
.mmenu-item { flex: 1; text-align: center; position: relative; line-height: 32px; height: 32px; transition: background-color 0.3s ease; text-transform: uppercase; user-select: none; }
.mmenu-item::after { content: ""; position: absolute; top: 0; right: 0; width: 2px; height: 100%; background: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0)); display: block; }
.mmenu-item:last-child::after { display: none; }
.mmenu-item:hover { background-color: rgba(255, 255, 255, 0.1); }
.mmenu-item > a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; line-height: 32px; }
.mmenu-item i,
.mmenu-submenu-item i { display: inline-block; vertical-align: middle; line-height: 1; padding: 2px 0; margin-left: -5px; margin-right: 7px; }
.mmenu-item.touch-open .mmenu-submenu { visibility: visible; opacity: 1; transform: translateY(0); }
.mmenu-submenu { min-width: 150px; top: 100%; left: 0; padding: 0; background: linear-gradient(135deg, #1a1a1a, #444); white-space: nowrap; text-transform: uppercase; position: absolute; z-index: 302; visibility: hidden; opacity: 0; transform: translateY(-10px); transition: visibility 0.3s ease, opacity 0.3s ease, transform 0.3s ease; }
.mmenu-item:hover .mmenu-submenu { visibility: visible; opacity: 1; transform: translateY(0); }
.mmenu-submenu-item { display: block; height: 32px; padding-left: 15px; padding-right: 15px; position: relative; transition: background-color 0.3s ease, transform 0.3s ease; line-height: 32px; text-decoration: none; }
.mmenu-submenu-item:hover { background-color: rgba(0, 0, 0, 0.1); transform: translateX(9px); }
.mmenu-submenu-item .indicator { width: 9px; height: 32px; top: 0; left: -9px; background: linear-gradient(to bottom, #1e90ff, #000080); transform: scale(0); transition: transform 0.3s ease; position: absolute; }
.mmenu-submenu-item:hover .indicator { transform: scale(1); background: linear-gradient(to bottom, #ff0000, #8b0000); }
.mmenu-cell a:link,
.mmenu-cell a:visited,
.mmenu-cell a:hover,
.mmenu-cell a:active { text-decoration: none; }



/* --- Menu Content --- */
.cellmenu { text-align: center; font-size: 12.5pt; font-family: 'GeometricSlabserif712'; font-weight: 700; margin-top: 16px; margin-bottom: 16px; justify-content: space-around; display: flex; }
.cellmenu2 { text-align: center; //height: 70px; font-size: 12.5pt; font-family: 'GeometricSlabserif712'; font-weight: 700; margin-top: 16px; text-align: center; justify-content: space-around; align-items: center; display: flex; }
.cellmenu3 { text-align: center; height: 70px; font-size: 12.5pt; font-family: 'GeometricSlabserif712'; font-weight: 700; margin-top: 16px; text-align: center; justify-content: space-around; align-items: center; display: flex; }

/* --- Menu Content Circuit Configurations --- */
.circuit-cell { }
.circuit-name { font-size: 10.0pt; height: 30px; color: #e20000; margin-bottom: 9px; justify-content: center; align-items: center; display: flex; }
.circuit-map { width: 75px; height: 50px; display: inline-block; }
.circuit-config { font-size: 10.0pt; color: #1e90ff; margin-top: 9px; }

/* --- Menu Content Event Photo --- */
.event-cell { cursor: pointer; }
.event-cell.event-cell-empty { cursor: default; }
.event-cell.active .event-name { color: #dcdcdc; }
.event-cell:not(.event-cell-empty):hover .event-name { color: #ea0000; }
.event-name { height: 30px; color: grey; margin-bottom: 9px; justify-content: center; align-items: center; display: flex; }
.event-name-empty { opacity: 0.35; }
.event-logo { width: 75px; height: 50px; display: inline-block; }
.event-logo-inactive { filter: grayscale(80%); opacity: 0.6; }
.event-logo-empty { filter: grayscale(80%); opacity: 0.5; cursor: default; pointer-events: none; }

/* --- Menu Content Event Results --- */
.rmenu-cell { display: contents; }
.rmenu-item { text-align: center; cursor: pointer; }
.rmenu-item.ready:hover .rmenu-event { color: #ea0000; }
.rmenu-item.active .rmenu-event { color: #dcdcdc; }
.rmenu-item.empty { cursor: default; }
.rmenu-item.empty .rmenu-event { color: #555; }
.rmenu-event { color: grey; margin-bottom: 9px; }
.rmenu-event.empty { opacity: 0.35; }
.rmenu-logo { width: 75px; height: 50px; display: inline-block; }
.rmenu-logo.empty { filter: grayscale(80%); opacity: 0.5; pointer-events: none; }
.rmenu-standings .rmenu-session { flex: 1; text-align: center; padding: 6px 4px; font-weight: 700; font-size: 11.5pt; }
.rmenu-standings { display: flex; align-items: center; }
.rmenu-session.empty { opacity: 0.35; cursor: default; }
.rmenu-session { color: #dcdcdc; cursor: pointer; }
.rmenu-session:hover { color: #ea0000; }
.rmenu-session.inactive { opacity: 0.4; text-decoration: underline; }
.rmenu-session.inactive:hover { opacity: 1; color: #ea0000; text-decoration: none; }













/* --- News --- */
.news-divider { width: 2px; background: #dcdcdc; align-self: stretch; }
.news-date { color: #1e90ff; }
.news-source { color: #1e90ff; }
.news-views { color:; }
.news-label { color: #1e90ff; }

/* --- News Quotes --- */
.news-quote { overflow: hidden; margin: 4px 0 4px 32px; padding: 8px 14px; border-left: 4px solid #1e90ff; background: rgba(30, 144, 255, 0.07); color: #c8d8f0; font-style: italic; }

/* --- News Photo --- */
.news-thumb { position: relative; display: inline-block; margin-bottom: 14px; filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.9)); }
.news-thumb img { width: 426px; height: 240px; object-fit: cover; display: block; }
.news-thumb::before { content: "BTCC-eSports.com"; position: absolute; top: 9px; right: 9px; z-index: 1; font-size: 22px; font-weight: 600; color: rgba(220, 220, 220, 0.65); pointer-events: none; }
.news-thumb::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); pointer-events: none; }
.news-thumb-float { float: left; margin: 16px 16px 12px 0; }
.news-clear { clear: both; }



/* --- News Carousel --- */
.ncarousel { position: relative; width: 517px; height: 291px; overflow: hidden; user-select: none; background: url('/style/design/bg/cell_01.png') repeat-x, url('/style/design/bg/cell_02.png') repeat 0px 4px; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); }
.ncarousel-track { position: relative; width: 100%; height: 100%; }

/* --- News Carousel Слайд --- */
.ncarousel-slide { display: block; position: absolute; inset: 0; text-decoration: none; opacity: 0; transition: opacity 0.6s ease; pointer-events: none; }
.ncarousel-slide.active { opacity: 1; pointer-events: auto; }
.ncarousel-bg { width: 100%; height: 100%; object-fit: cover; display: block; }

/* --- News Carousel Оверлей --- */
.ncarousel-overlay { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.45) 40%, transparent 70%); display: flex; flex-direction: column; justify-content: flex-start; padding: 3px 16px; box-sizing: border-box; pointer-events: none; }

/* --- News Carousel Верхний блок: лого + инфо --- */
.ncarousel-top { display: flex; flex-direction: row; align-items: flex-start; gap: 16px; }
.ncarousel-logo { width: 60px; height: 60px; object-fit: contain; flex-shrink: 0; align-self: center; }
.ncarousel-info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }

/* --- News Carousel Заголовок --- */
.ncarousel-title { font-size: 15pt; font-weight: 600; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ncarousel-slash { color: #1e90ff; }

/* --- News Carousel Мета --- */
.ncarousel-meta { display: flex; align-items: center; gap: 10px; }
.ncarousel-source { font-size: 9pt; color: #1e90ff; }
.ncarousel-date { font-size: 9pt; color: #1e90ff; }

/* --- News Carousel Стрелки --- */
.ncarousel-arrow { position: absolute; top: 50%; transform: translateY(-50%); background: none; border: none; cursor: pointer; color: rgba(220,220,220,0.5); font-size: 28px; padding: 0; transition: color 0.2s ease; z-index: 10; }
.ncarousel-arrow:hover { color: #dcdcdc; }
.ncarousel-arrow-left  { left: 16px; }
.ncarousel-arrow-right { right: 16px; }

/* --- News Carousel Индикаторы --- */
.ncarousel-dots { position: absolute; bottom: 9px; left: 0; right: 0; display: flex; justify-content: center; align-items: center; gap: 16px; }
.ncarousel-dot { width: 18px; height: 18px; border: none; background: linear-gradient(-45deg, #000080, #1e90ff); cursor: pointer; padding: 0; transition: background 0.3s ease, width 0.3s ease, height 0.3s ease; }
.ncarousel-dot.active { width: 22px; height: 22px; background: linear-gradient(-45deg, #8b0000, #ff0000); }

/* --- News Carousel Пусто --- */
.ncarousel-empty { width: 517px; height: 291px; display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,0.3); }



/* --- News Column --- */
.rss-widget { width: 517px; height: 280px; overflow-y: auto; scrollbar-width: thin; background: url('/style/design/bg/cell_01.png') repeat-x, url('/style/design/bg/cell_02.png') repeat 0 4px; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); }
.rss-item { display: flex; align-items: flex-start; gap: 9px; padding: 9px 4px 9px 9px; }
.rss-body { flex: 1; }

/* --- News Column Lines --- */
.rss-list { margin: 0; padding: 0; list-style: none; }
.rss-item:nth-child(odd)  { background: rgba(0, 0, 0, 0.31); }
.rss-item:nth-child(even) { background: transparent; }

/* --- News Column Logo --- */
.rss-logo { width: 40px; height: 40px; object-fit: contain; object-position: top center; flex-shrink: 0; align-self: flex-start; margin-top: 3px; }

/* --- News Column Date --- */
.rss-meta { font-size: 9pt; color: #1e90ff; display: flex; }
.rss-today { color: #ea0000; font-weight: 700; }
.rss-yesterday { color: #e6c800; font-weight: 700; }
.rss-title {  }
.rss-slash { color: #1e90ff; }
.rss-status { padding: 9px; }



/* articles.css */
.articles-list { display: flex; flex-direction: column; gap: 10px; }
.articles-item { padding: 8px 0; border-bottom: 1px solid var(--border-color, #ddd); }
.articles-title { margin-bottom: 3px; }
.articles-meta { font-size: 0.85em; opacity: 0.7; }





/* --- News Search --- */
.search-form { display: flex; align-items: center; gap: 16px; max-width: 100%; margin-top: 20px; margin-bottom: 20px; }

/* Базовое пустое поле */
.search-form input[type="text"] { flex: 1; height: 40px; padding: 0 9px; background: rgba(0, 0, 0, 0.35) !important; border: none; outline: none; color: #dcdcdc !important; caret-color: #1e90ff; transition: background-color 0.15s ease-in-out; }
.search-form input[type="text"]::placeholder { color: rgba(220,220,220,0.5); }

/* Поле темнеет: при наведении, фокусе и когда оно не пустое */
.search-form input[type="text"]:hover, 
.search-form input[type="text"]:focus, 
.search-form input[type="text"]:active,
.search-form input[type="text"]:not(:placeholder-shown) { background: rgba(0, 0, 0, 0.55) !important; color: #dcdcdc !important; }

/* Полная блокировка сброса цвета текста и фона автозаполнения */
.search-form input[type="text"]:-webkit-autofill,
.search-form input[type="text"]:-webkit-autofill:hover, 
.search-form input[type="text"]:-webkit-autofill:focus,
.search-form input[type="text"]:-webkit-autofill:active { transition: background-color 5000000s ease-in-out 0s, color 5000000s ease-in-out 0s; -webkit-text-fill-color: #dcdcdc !important; background: rgba(0, 0, 0, 0.55) !important; box-shadow: none !important; color: #dcdcdc !important; }

/* Кнопка поиска */
.search-form button { height: 40px; color: #dcdcdc; background: #033e8c; padding: 0 25px 0 65px; border: none; cursor: pointer; position: relative; font-weight: 600; text-transform: uppercase; }
.search-form button::before { width: 40px; height: 100%; color: #dcdcdc; background: #b20000; left: 0; top: 0; position: absolute; display: flex; align-items: center; justify-content: center; content: "\f002"; font-family: "Font Awesome 6 Free"; }
.search-form button:hover { background:; }
.search-form button:active { background:; }








/* --- Timetable --- */
.ttable-cell { display: flex; align-items: flex-start; gap: 16px; }
.ttable-cell .ttable-table { flex: 1; min-width: 0; }

.ttable-table { width: 100%; border-collapse: collapse; }
.ttable-table thead th { text-align: center; }
.ttable-table thead th.ttable-col-activity { text-align: left; }
.ttable-table td { vertical-align: middle; white-space: nowrap; }

/* Колонки */
.ttable-col-countdown { text-align: center; }
.ttable-col-time { text-align: center; }
.ttable-col-activity { text-align: left; }
.ttable-col-laps { text-align: center; }

/* Строки */
.ttable-row-past { opacity: 0.35; }
.ttable-row-day td { }
.ttable-row-sep td { }

/* Таймер */
.ttable-timer { }
.ttable-timer-loading { opacity: 0.4; }
.ttable-timer-done { opacity: 0.3; }

/* Часовой пояс */
.ttable-tz-badge { display: block; }

/* TBA */
.ttable-tba-row { opacity: 0.5; }
.ttable-tba { opacity: 0.4; }
.ttable-tba-notice { flex: 1; display: flex; align-items: center; justify-content: center; }
.ttable-loading { padding: 16px; text-align: center; color:; }

/* Ошибка */
.ttable-error { text-align: center; }

/* Подвал */
.ttable-footer { text-align: right; }

/* Мобильные */
@media (max-width: 600px) {
 .ttable-col-laps { display: none; }
}







































/* --- Photo Gallery 12 --- */
.pgallery-12-grid { display: grid; grid-template-columns: repeat(4, 245px); grid-template-rows: repeat(3, 245px); gap: 1px; }
.pgallery-12-grid a { display: block; text-decoration: none; width: 100%; height: 100%; position: relative; overflow: hidden; }
.pgallery-12-grid a::after { content: ''; position: absolute; inset: 0; box-shadow: inset 0 0 20px rgba(0,0,0,0.85); transition: box-shadow 0.25s ease; pointer-events: none; }
.pgallery-12-grid a:hover::after { box-shadow: inset 0 0 0px rgba(0,0,0,0); }
.pgallery-12-grid img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.25s ease, filter 0.25s ease; filter: blur(0.3px); }
.pgallery-12-grid img:hover { transform: scale(1.08) rotate(1.5deg); filter: blur(0px); }

/* --- Photo Gallery 9 --- */
.pgallery-9-cell { float: right; width: 425px; height: 425px; margin: 7px 0 10px 16px; position: relative; z-index: 999; }
.pgallery-9-grid { display: grid; grid-template-columns: repeat(3, 141px); grid-template-rows: repeat(3, 141px); gap: 1px; }
.pgallery-9-grid a { display: contents; }
.pgallery-9-grid img { width: 141px; height: 141px; object-fit: cover; display: block; cursor: pointer; transition: transform 0.3s ease; }
.pgallery-9-grid img:hover { transform: scale(1.5); }

/* --- Photo Gallery Best Moments --- */
.pgallery-bm-cell { display: grid; grid-template-columns: 171px 172px 171px; grid-template-rows: 171px 171px 171px; gap: 1px; width: 516px; height: 515px; justify-content: center; overflow: visible; background: url('/style/design/bg/cell_01.png') repeat-x, url('/style/design/bg/cell_02.png') repeat 0px 4px; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); }
.pgallery-bm-item { width: 100%; height: 100%; background-size: cover; background-position: center; cursor: pointer; position: relative; overflow: hidden; filter: blur(0.5px); box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5); transition: transform 0.3s ease, filter 0.3s ease, box-shadow 0.3s ease; will-change: transform; }
.pgallery-bm-item:hover { transform: scale(1.15) rotate(5deg); filter: blur(0px); box-shadow: none; z-index: 10; overflow: visible; }
.pgallery-bm-item:nth-child(1) { grid-column: 1; grid-row: 1 / span 2; height: 343px; }
.pgallery-bm-item:nth-child(2) { grid-column: 2; grid-row: 1; }
.pgallery-bm-item:nth-child(3) { grid-column: 3; grid-row: 1; }
.pgallery-bm-item:nth-child(4) { grid-column: 2; grid-row: 2; }
.pgallery-bm-item:nth-child(5) { grid-column: 3; grid-row: 2 / span 2; height: 343px; }
.pgallery-bm-item:nth-child(6) { grid-column: 1; grid-row: 3; }
.pgallery-bm-item:nth-child(7) { grid-column: 2; grid-row: 3; }








/* --- Photo Gallery Event Flickr Page Number --- */
.pgallery-pages { gap: 9px; transition: all 0.15s; }
.pgallery-page { }
.pgallery-page-active { pointer-events: none; text-decoration: none !important; }
.pgallery-page:hover { }

/* --- Photo Gallery Google Drive Page Number --- */
.pgallery-gdrive-pages a { padding: 0 4px; transition: all 0.15s; }
.pgallery-gdrive-pages a:hover { }
.pgallery-gdrive-pages a.pgallery-page-active { }


.pgallery-new-badge { position: absolute; top: 4px; right: 4px; background: #c00; color: #fff; font-size: 10px; font-weight: bold; padding: 2px 6px; border-radius: 3px; pointer-events: none; line-height: 1.4; z-index: 2; }
.pgnew-item a { display: block; position: relative; text-decoration: none; }
.pgnew-label { position: absolute; bottom: 0; left: 0; right: 0; background: rgba(0,0,0,0.55); color: #fff; font-size: 11px; padding: 4px 6px; line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }


/* Other Cell Cover*/
000a.flickr-embed { width: 470px; height: 300px; pointer-events: none; }
.000flickr-embed img { //display: none; }
.cellcountdownsession { width: 100%; display: flex; }

/* Countdown Session */
#timer1,
#timer2,
#timer3,
#timer4,
#timer5 { margin-right: 9px; color: #777777; display: inline; }
.timegrey { margin-right: 9px; color: #777777; display: inline; }
.box { flex: 1; box-sizing: border-box; display: flex; justify-content: center; align-items: center; }
.box2 { padding: 9px 0; font-family: 'GeometricSlabserif712'; font-weight: 700; font-size: 13pt; white-space: nowrap; filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.9)); }
.local-time { margin-left: 9px; margin-right: 9px; display: inline; }















/* --- Countdown Event --- */
.cdevent-cell { width: 517px; background: url('/style/design/bg/cell_01.png') repeat-x, url('/style/design/bg/cell_02.png') repeat 0px 4px; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); user-select: none; display: block; padding-bottom: 15px; }
.cdevent-header { width: 100%; display: flex; align-items: center; padding-top: 10px; }
.cdevent-logo { min-width: 123px; display: flex; justify-content: center; align-items: center; }
.cdevent-name { flex: 1; padding-top: 5px; padding-bottom: 6px; padding-left:; font-family: 'GeometricSlabserif712'; font-weight: 700; font-size: 13.5pt; text-align: left; }
.cdevent-time { width: 100%; height: auto; margin-top: 10px; }
.time_circles { text-align: center; display: flex; justify-content: center; align-items: center; position: relative; }
.time_circles > div { font-size: 23pt; font-family: 'DecimaNovaPro'; font-weight: 700; text-align: center; display: flex; justify-content: center; align-items: center; position: absolute; }
.time_circles > div > h4 { font-size: 8pt; font-family: 'DecimaNovaPro'; font-weight: 400; color: #777777; transform: translateY(29px); position: absolute; }

/* --- Carousel Calendar --- */
.carousel { width: 100%; height: 90px; user-select: none; overflow: hidden; display: flex; justify-content: center; align-items: center; position: relative; background: url('/style/design/bg/cell_01.png') repeat-x, url('/style/design/bg/cell_02.png') repeat 0px 4px; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); }
.carousel ul { width: 1006px; height: 90px; visibility: hidden; list-style: none; }

/* --- Carousel Calendar Event Cell --- */
.carousel li { width: 212px; height: 90px; margin-left: 5px; display: flex; justify-content: center; align-items: center; transform-origin: center center; cursor: pointer; }
.calendarlogobg { width: 92px; height: 80px; padding: 5px 0; display: flex; flex-direction: column; text-align: center; position: relative; font-family: 'DecimaNovaPro'; font-weight: 700; background: linear-gradient(-25deg, rgb(0, 30, 90) 25%, rgb(0, 70, 160) 100%); }

/* --- Carousel Calendar Sign --- */
.carousel li.roundabout-in-focus { cursor: default; }
.carousel-prev,
.carousel-next { font-size: 28px; cursor: pointer; z-index: 300; position: absolute; color: rgba(220, 220, 220, 0.35); top: 50%; transform: translateY(-50%); -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; transition: color 0.3s; }
.carousel-prev:hover,
.carousel-next:hover { color: rgba(220, 220, 220, 0.85); }
.carousel-prev { left: 36.3%; }
.carousel-next { right: 36.3%; }



/* --- Circuit Map --- */
.map-cell { width: 982px; height: 552px; border: 0; }

/* --- Circuit Relief --- */
.relief-cell { width: 100%; height: 100%; border: 0; overflow: hidden; }
.relief-iframe { width: 984px; height: 552px; margin: -1px -1px -26px -1px; overflow: hidden; }



/* --- Weather Current --- */
.wcurrent-cell { width: 150px; text-align: center; background-color: black; display: flex; flex-direction: column; align-items: center; }
.wcurrent-icon { width: 90px !important; height: 90px !important; margin: 0 auto; display: block; }
.wcurrent-temp { font-size: 14.5pt; font-family: 'GeometricSlabserif712', sans-serif; font-weight: 700; filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.9)); }
.wcurrent-desc { font-size: 12pt; color: #1e90ff; margin: 0 0 10px 0; text-transform: capitalize; }

/* --- Weather Forecast --- */
.wforecast-cell { width: auto; background-color:; }
.wforecast-row { display: flex; flex-direction: column; gap:10px; background-color:; }
.wforecast-slot { display: flex; flex-direction: row; align-items: center; gap: 12px; padding: 6px 10px; box-sizing: border-box; flex-shrink: 0; background-color:; }

.wforecast-icon-temp { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; width: 50px; }
.wforecast-icon { width: 40px !important; height: 40px !important; display: block; }
.wforecast-temp { font-size: 11pt; font-weight: bold; text-align: center; }
.wforecast-desc { font-size: 9pt; color: #1e90ff; width: 70px; flex-shrink: 0; text-align: center; }

/* --- Дата, время, метка --- */
.wforecast-datetime { display: flex; flex-direction: column; align-items: center; width: 75px; flex-shrink: 0; }
.wforecast-date { font-size: 9pt; color: #888; white-space: nowrap; }
.wforecast-time { font-size: 14pt; font-weight: bold; line-height: 1.1; }
.wforecast-now-label { font-size: 8pt; color: #888; text-transform: uppercase; letter-spacing: 0.05em; }

/* --- Детали --- */
.wforecast-details { display: flex; flex-direction: column; gap: 2px; flex-shrink: 0; }
.wforecast-detail { font-size: 9pt; color: #ccc; white-space: nowrap; }
.wforecast-loading,
.wforecast-error { font-size: 12pt; color: #888; padding: 20px; text-align: center; }























/* --- Table Results --- */
.tresults-topbar { display: none; }
.tresults-cell { width: 100%; }
.tresults-table { width: 100%; border-collapse: collapse; }
.tresults-table thead tr.tresults-header th { text-align: center; font-size: 9pt; color: #888; font-weight: normal; padding: 4px 6px; border-bottom: 1px solid #333; white-space: nowrap; }
.tresults-table td { padding: 5px 6px; vertical-align: middle; white-space: nowrap; font-size: 10pt; }
.tresults-table tbody tr:nth-child(odd) { background: rgba(0, 0, 0, 0.31); }
.tresults-table tbody tr:nth-child(even) { background: transparent; }
.tresults-table tbody tr:hover { background-color: #1a1a1a; }
.tresults-separator td { text-align: center; font-size: 9pt; color: #666; padding: 6px; border-top: 1px solid #333; border-bottom: 1px solid #333; letter-spacing: 1px; text-transform: uppercase; }
/* Позиция */
.tresults-pos { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 22px; font-size: 9pt; font-weight: bold; background: #2a2a2a; }
.tresults-pos sup { font-size: 7pt; margin-left: 1px; }
.tresults-pos-1 { background: #c8a200; color: #000; }
.tresults-pos-2 { background: #888; color: #000; }
.tresults-pos-3 { background: #7a4a1e; color: #fff; }
/* Класс */
.tresults-class { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; font-size: 8pt; font-weight: bold; }
.tresults-class-m { background: #b00; color: #fff; }
.tresults-class-i { background: #1a5fb4; color: #fff; }
/* Номер */
.tresults-num { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; height: 22px; font-size: 9pt; font-weight: bold; color: #f0c000; background: #1e1e1e; }
/* Флаг */
.tresults-flag-cell { text-align: center; }
.tresults-flag { width: 24px; height: auto; vertical-align: middle; }
.tresults-nat { font-size: 8pt; color: #888; }
/* Пилот */
.tresults-driver { text-align: left; }
.tresults-driver-first-name { color: #aaa; }
/* Команда */
.tresults-team-sub { color: #888; }
.tresults-team { text-align: left; font-size: 9pt; color: #ccc; }
.tresults-team-name { text-align: left; font-size: 9pt; }
.tresults-team-logo-cell { text-align: center; }
.tresults-team-logo { height: 22px; width: auto; vertical-align: middle; }
/* Авто */
.tresults-car { text-align: left; font-size: 9pt; color: #ccc; }
.tresults-car-logo-cell { text-align: center; }
.tresults-car-logo { height: 20px; width: auto; vertical-align: middle; }
/* Очки / отставание */
.tresults-points { text-align: center; font-weight: bold; }
.tresults-gap { font-size: 9pt; color: #888; }
.tresults-gap-dash { color: #555; }
/* Победы */
.tresults-wincell { text-align: center; }
.tresults-win { font-size: 9pt; font-weight: bold; color: #f0c000; }
.tresults-win-dash { color: #555; }
/* Пилоты в таблице команд */
.tresults-drivers { font-size: 9pt; color: #aaa; }

/* Время сессии */
.tresults-dnf { color: #888; font-family: monospace; }
.tresults-time { text-align: right; font-family: monospace; font-size: 10pt; white-space: nowrap; }
.tresults-bl-m    { color: #f0c000; font-family: monospace; }
.tresults-bl-i    { color: #f97316; font-family: monospace; }
.tresults-bl      { color: #1e90ff; font-family: monospace; }
.tresults-bl-none { color: #555;    font-family: monospace; }
/* Штраф */
.tresults-penalty { color: #ef4444; font-size: 9pt; font-family: monospace; }
/* Подзаголовок секции */
.tresults-subtitle { font-size: 11px; text-transform: uppercase; letter-spacing: 1px; color: #888; margin-bottom: 6px; }
/* Overflow-обёртка таблицы сессий */
.tresults-wrap { overflow-x: auto; }
/* Состояния виджета */
.tresults-state { padding: 30px 16px; text-align: center; opacity: .6; }
.tresults-state h3 { font-size: 13px; font-weight: 400; letter-spacing: .5px; margin-bottom: 4px; color: #888; }
.tresults-state p { font-size: 12px; }
/* Спиннер */
.tresults-spinner { display: inline-block; width: 24px; height: 24px; border: 2px solid rgba(128,128,128,.3); border-top-color: #1e90ff; border-radius: 50%; animation: tresults-spin .8s linear infinite; margin-bottom: 10px; }
@keyframes tresults-spin { to { transform: rotate(360deg); } }

/* Служебные */
.tresults-empty { text-align: center; color: #555; padding: 20px; }
.tresults-error { text-align: center; color: #888; padding: 20px; }


.tresults-sync-bar { display: none; }
.tresults-sync-dot { width: 6px; height: 6px; border-radius: 50%; background: #888; flex-shrink: 0; }
.tresults-sync-dot.ok   { background: #22c55e; }
.tresults-sync-dot.warn { background: #f59e0b; }
.tresults-sync-dot.err  { background: #ef4444; }



/* Время сессии */
.tresults-time { text-align: right; font-family: monospace; font-size: 10pt; white-space: nowrap; }
/* Штраф */
.tresults-penalty { color: #ef4444; font-size: 9pt; font-family: monospace; }
/* Подзаголовок секции (стартовый лист, название сессии) */
.tresults-subtitle { font-size: 11px; text-transform: uppercase; letter-spacing: 1px; color: #888; margin-bottom: 6px; }
/* Overflow-обёртка таблицы сессий */
.tresults-wrap { overflow-x: auto; }
/* Состояния виджета (загрузка, ошибка, ожидание) */
.tresults-state { padding: 30px 16px; text-align: center; opacity: .6; }
.tresults-state h3 { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; margin-bottom: 4px; }
.tresults-state p { font-size: 12px; }
/* Спиннер загрузки */
.tresults-spinner { display: inline-block; width: 24px; height: 24px; border: 2px solid rgba(128,128,128,.3); border-top-color: #1e90ff; border-radius: 50%; animation: tresults-spin .8s linear infinite; margin-bottom: 10px; }
@keyframes tresults-spin { to { transform: rotate(360deg); } }
/* Sync-бар (статус синхронизации) */
.sync-bar { font-size: 11px; color: #888; margin-bottom: 8px; display: flex; align-items: center; gap: 6px; }
.sync-dot { width: 6px; height: 6px; border-radius: 50%; background: #888; flex-shrink: 0; }
.sync-dot.ok   { background: #22c55e; }
.sync-dot.warn { background: #f59e0b; }
.sync-dot.err  { background: #ef4444; }


























/* --- Facebook --- */
.fb-cell { width: 472px; height: 601px; margin: -130px -1px -1px -1px; border: none; }

/* --- Flickr --- */
.fr-cell { width: 100%; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(327px, 1fr)); list-style-type: none; }
.fr-cell li { height: 195px; position: relative; overflow: hidden; }
.fr-cell img { max-height: 120%; min-width: 90%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

/* --- Photo Gallery Event Flickr --- */
.pgallery-event-cell { width: 100%; height: 100%; margin: 0; padding: 0; }
.pgallery-event-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; }
.pgallery-event-link { display: block; text-decoration: none; width: 100%; aspect-ratio: 3 / 2; overflow: hidden; }
.pgallery-event-thumb { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s ease; }
.pgallery-event-thumb:hover { transform: scale(1.05); }
.pgallery-event-empty { padding: 10px 0; }

/* --- Photo Gallery Event Flickr Update --- */
.gallery-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-bottom: 10px; font-size:; color:; }
.gallery-meta strong { color:; }
.gallery-meta-sep { color:; }
.celltop .pgallery-pages { display: inline-flex; margin: 0; vertical-align: middle; }
.cellbottom .pgallery-pages { display: inline-flex; margin: 0; vertical-align: middle; }

/* --- Photo Gallery Google Drive --- */
.pgallery-gdrive-cell { width: 100%; height: 100%; margin: 0; padding: 0; }
.pgallery-gdrive-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; }
.pgallery-gdrive-item { display: block; width: 100%; aspect-ratio: 3 / 2; overflow: hidden; cursor: pointer; position: relative; }
.pgallery-gdrive-thumb { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s ease; }
.pgallery-gdrive-thumb:hover { transform: scale(1.05); }
.pgallery-gdrive-empty { color: rgba(150, 170, 200, 0.4); font-size: 13px; padding: 10px 0; }
.pgdrive-img-wrap { display: flex; align-items: center; justify-content: center; width: 90vw; max-height: 90vh; }
.pgdrive-img { max-width: 100%; max-height: 90vh; object-fit: contain; display: block; }

/* --- Instagram --- */
.ig-cell { width: 105%; height: 737px; margin-left: -5px; margin-bottom: -4px; box-sizing: border-box; }

/* --- Telegram --- */
.tg-cell { height: 500px; width: 517px; box-sizing: border-box; padding: 9px 3px 0 9px; overflow-y: auto; scrollbar-width: thin; scrollbar-gutter: stable; background: url('/style/design/bg/cell_01.png') repeat-x, url('/style/design/bg/cell_02.png') repeat 0 4px; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); }
/* --- Ячейка --- */
.tg-post { position: relative; padding-bottom: 11px; margin-bottom: 9px; }
/* --- Разделитель --- */
.tg-post::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: linear-gradient(to right, rgba(0,78,206,0) 0%, #004ece 15.7%, #003399 84.3%, rgba(0,78,206,0) 100%); }
/* --- Дата и текст --- */
.tg-date { font-size: 9pt; color: #1e90ff; }
.tg-date-today { color: #ea0000 !important; font-weight: 700 !important; font-family: 'DecimaNovaPro' !important; }
.tg-date-yesterday { color: #e0c000 !important; font-weight: 700 !important; font-family: 'DecimaNovaPro' !important; }
.tg-date-rest { color: #1e90ff !important; font-weight: 700 !important; font-family: 'DecimaNovaPro' !important; }
.tg-text, .tg-caption { }
.tg-text a, .tg-caption a { }
.tg-text a:hover, .tg-caption a:hover { }
.tg-post-link { }
/* --- Фото --- */
.tg-photo-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1px; padding: 9px 0 0; }
.tg-photo-grid-1 { grid-template-columns: 1fr; }
.tg-photo-grid-2 { grid-template-columns: 1fr 1fr; }
.tg-photo-grid-3 { grid-template-columns: 1fr 1fr 1fr; }
.tg-photo-grid-4 { grid-template-columns: 1fr 1fr 1fr; }
.tg-photo-grid-5 { grid-template-columns: 1fr 1fr 1fr; }
.tg-photo-grid-7 { grid-template-columns: 1fr 1fr 1fr; }
.tg-photo-grid-8 { grid-template-columns: 1fr 1fr 1fr; }
.tg-photo-grid-10 { grid-template-columns: 1fr 1fr 1fr; }
.tg-photo-grid a { display: block; overflow: hidden; height: 160px; position: relative; }
.tg-photo-grid a::after { content: ''; position: absolute; inset: 0; box-shadow: inset 0 0 20px rgba(0,0,0,0.85); transition: box-shadow 0.25s ease; pointer-events: none; }
.tg-photo-grid a:hover::after { box-shadow: inset 0 0 0px rgba(0,0,0,0); }
.tg-photo-grid-1 a { height: 278px; }
.tg-photo-grid-2 a { height: 220px; }
.tg-photo-grid-3 a { height: 160px; }
.tg-photo-grid-4 a { height: 160px; }
.tg-photo-grid-5 a { height: 110px; }
.tg-photo-grid-6 a { height: 110px; }
.tg-photo-grid-7 a { height: 110px; }
.tg-photo-grid-8 a { height: 110px; }
.tg-photo-grid-9 a { height: 110px; }
.tg-photo-grid-10 a { height: 110px; }
.tg-photo-grid a.span2 { height: calc(220px + 1px); grid-row: span 2; }
.tg-photo-grid a.span3 { grid-row: span 3; }
.tg-photo-grid a.fullwidth { height: 160px; grid-column: span 3; }
.tg-photo-grid img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.25s ease, filter 0.25s ease; filter: blur(0.3px); }
.tg-photo-grid img:hover { transform: scale(1.08) rotate(1.5deg); filter: blur(0px); }
/* --- Видео --- */
.tg-video-wrap { display: block; overflow: hidden; }
.tg-video-wrap video { width: 100%; height: 160px; object-fit: cover; display: block; }
/* --- Вложения --- */
.tg-attachments { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; padding: 9px 0 0; }
.tg-attachments:has(> :only-child) { grid-template-columns: 1fr; }
.tg-attachments:has(> :only-child) .tg-video-wrap video { height: 278px; }
/* --- Ссылка на видео --- */
.tg-video-error { display: flex; justify-content: flex-end; gap: 5px; }
.tg-video-error a { }
.tg-video-error a:hover { }

/* --- VKontakte --- */
.vknews-cell { height: 500px; width: 517px; box-sizing: border-box; padding: 9px 3px 0 9px; overflow-y: auto; scrollbar-width: thin; background: url('/style/design/bg/cell_01.png') repeat-x, url('/style/design/bg/cell_02.png') repeat 0 4px; box-shadow: inset 1px 1px 25px 10px rgba(0, 0, 0, 0.6); }
/* --- Ячейка --- */
.vknews-post { }
/* --- Разделитель --- */
.vknews-divider { margin: 9px 0; border: none; height: 2px; background: linear-gradient(to right, rgba(0, 78, 206, 0) 0%, #004ece 15.7%, #003399 84.3%, rgba(0, 78, 206, 0) 100%); }
/* --- Дата и текст --- */
.vknews-date { font-size: 9pt; color: #1e90ff; }
.vknews-date-today { color: #ea0000; font-weight: 700; font-family: 'DecimaNovaPro'; }
.vknews-date-yesterday { color: #e0c000; font-weight: 700; font-family: 'DecimaNovaPro'; }
.vknews-date-rest { color: #1e90ff; font-weight: 700; font-family: 'DecimaNovaPro'; }
/* --- Фото --- */
.vknews-photo-grid { display: grid; gap: 1px; padding: 9px 0 0; }
.vknews-photo-grid a { display: block; overflow: hidden; position: relative; }
.vknews-photo-grid a::after { content: ''; position: absolute; inset: 0; box-shadow: inset 0 0 20px rgba(0,0,0,0.85); transition: box-shadow 0.25s ease; pointer-events: none; }
.vknews-photo-grid a:hover::after { box-shadow: inset 0 0 0px rgba(0,0,0,0); }
.vknews-photo-grid img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 0.25s ease, filter 0.25s ease; filter: blur(0.3px); }
.vknews-photo-grid img:hover { transform: scale(1.08) rotate(1.5deg); filter: blur(0px); }
.vknews-photo-grid-1 { grid-template-columns: 1fr; }
.vknews-photo-grid-1 a { height: 220px; }
.vknews-photo-grid-2 { grid-template-columns: 1fr 1fr; }
.vknews-photo-grid-2 a { height: 165px; }
.vknews-photo-grid-3 { grid-template-columns: 1fr 1fr; grid-template-rows: 110px 110px; }
.vknews-photo-grid-3 .vknews-photo-1 { grid-row: 1 / 3; }
.vknews-photo-grid-3 a { height: 100%; min-height: 110px; }
.vknews-photo-grid-4 { grid-template-columns: 1fr 1fr; }
.vknews-photo-grid-4 a { height: 110px; }
.vknews-photo-grid-5 { grid-template-columns: 1fr 1fr; grid-template-rows: 110px 110px 110px; }
.vknews-photo-grid-5 .vknews-photo-1 { grid-column: 1 / 3; }
.vknews-photo-grid-5 a { height: 100%; }
.vknews-photo-grid-6 { grid-template-columns: 1fr 1fr 1fr; }
.vknews-photo-grid-6 a { height: 110px; }
.vknews-photo-grid-7 { grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 110px 110px 110px; }
.vknews-photo-grid-7 .vknews-photo-1 { grid-column: 1 / 4; }
.vknews-photo-grid-7 a { height: 100%; }
.vknews-photo-grid-8 { grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 110px 110px 110px 110px; }
.vknews-photo-grid-8 .vknews-photo-3 { grid-row: 1 / 3; grid-column: 3; }
.vknews-photo-grid-8 .vknews-photo-8 { grid-row: 3 / 5; grid-column: 3; }
.vknews-photo-grid-8 a { height: 100%; min-height: 110px; }
.vknews-photo-grid-9 { grid-template-columns: 1fr 1fr 1fr; }
.vknews-photo-grid-9 a { height: 110px; }
.vknews-photo-grid-10 { grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 110px 110px 110px 110px; }
.vknews-photo-grid-10 .vknews-photo-1 { grid-row: 1 / 3; grid-column: 1; }
.vknews-photo-grid-10 .vknews-photo-8 { grid-row: 3 / 5; grid-column: 3; }
.vknews-photo-grid-10 a { height: 100%; min-height: 110px; }
/* --- Видео --- */
.vknews-video-cell { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; padding: 9px 0 0; }
.vknews-video-item { position: relative; overflow: hidden; }
.vknews-video-item img { width: 100%; height: 160px; object-fit: cover; display: block; transition: opacity 0.2s; }
.vknews-video-item img:hover { opacity: 0.75; }
.vknews-video-item iframe { width: 100%; height: 139px; display: block; }
.vknews-video-cell:has(> .vknews-video-item:only-child) { grid-template-columns: 1fr; }
.vknews-video-cell:has(> .vknews-video-item:only-child) iframe { height: 278px; }
.vknews-video-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 32px; height: 32px; background: rgba(0,0,0,0.6); border-radius: 50%; display: flex; align-items: center; justify-content: center; pointer-events: none; }
.vknews-video-play::after { content: ''; border-style: solid; border-width: 7px 0 7px 14px; border-color: transparent transparent transparent #fff; margin-left: 3px; }
/* --- Читать далее --- */
.vknews-more { }
.vknews-more:hover { }
/* --- Техническое сообщение --- */
.vknews-empty { padding: 9px; }