/* Тема W4B: светлая, логотип по центру, красный акцент, крупные тумбы на всю ширину с названием поверх.
   Подключается поверх frame.css, когда в настройках site_theme = w4b. Просмотрщик фото остаётся тёмным. */
.theme-w4b{color-scheme:light;--bg:#fafafa;--surface:#fff;--surface-2:#f3f3f3;--line:#e4e4e4;--text:#141414;--muted:#6f6f6f;--accent:#e2212f;--accent-2:#c3121f;--pad:clamp(12px,2vw,40px);--sans:'Montserrat',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;--cond:'Oswald','Bebas Neue','Arial Narrow',Impact,sans-serif}
.theme-w4b{font-family:var(--sans);background:var(--bg);color:var(--text)}
.theme-w4b ::selection{background:var(--accent);color:#fff}
.theme-w4b a:focus-visible,.theme-w4b button:focus-visible,.theme-w4b input:focus-visible,.theme-w4b summary:focus-visible{outline-color:var(--accent)}

/* ---------- шапка: надпись | логотип по центру | меню + поиск ---------- */
.theme-w4b .topbar{background:#fff;border-bottom:1px solid var(--line)}
.theme-w4b .topbar .shell{max-width:none;padding-inline:clamp(16px,2.4vw,46px)}
.theme-w4b .top-inner{min-height:106px;gap:24px}
.theme-w4b .tagline{flex:1 1 0;min-width:0;padding-right:66px;color:#8a8a8a;font-size:15px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.theme-w4b .brand{flex:none;align-items:center;gap:8px;font-family:var(--sans);font-weight:800;font-size:30px;letter-spacing:-.04em;color:#111;text-transform:uppercase}
.theme-w4b .brand span{display:inline-block;padding:5px 8px 4px;border-radius:2px;background:var(--accent);color:#fff;font-size:15px;font-weight:700;letter-spacing:.02em;line-height:1}
.theme-w4b .brand i{display:none}
.theme-w4b .brand:hover span{background:var(--accent-2);color:#fff}
.theme-w4b .nav{flex:1 1 0;justify-content:flex-end;gap:34px;color:#111;font-size:17px;font-weight:700;letter-spacing:.01em;text-transform:uppercase}
.theme-w4b .nav a:hover,.theme-w4b .nav summary:hover,.theme-w4b .nav a[aria-current]{color:var(--accent)}
.theme-w4b .channel-menu{background:#fff;border-color:var(--line);box-shadow:0 14px 34px rgba(0,0,0,.12);text-transform:none;font-weight:500}
.theme-w4b .channel-menu a{color:#333}
.theme-w4b .channel-menu a:hover{background:#f4f4f4;color:#000}
.theme-w4b .channel-menu a:first-child{color:var(--accent);border-bottom-color:var(--line)}
/* поиск — иконкой, форма выпадает под ней */
.theme-w4b .desktop-search{display:none}
.theme-w4b .mobile-search{display:block;position:relative;flex:none}
.theme-w4b .mobile-search summary{list-style:none;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;color:#111}
.theme-w4b .mobile-search summary::-webkit-details-marker{display:none}
.theme-w4b .mobile-search summary svg{width:24px;height:24px;stroke-width:2.4}
.theme-w4b .mobile-search summary:hover,.theme-w4b .mobile-search[open] summary{color:var(--accent);background:#f4f4f4}
.theme-w4b .mobile-search form{position:absolute;z-index:14;right:0;top:calc(100% + 12px);width:min(380px,calc(100vw - 32px));height:48px;display:flex;overflow:hidden;border:1px solid #d9d9d9;border-radius:4px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.theme-w4b .mobile-search form:focus-within{border-color:var(--accent)}
.theme-w4b .mobile-search input{flex:1;min-width:0;border:0;background:transparent;color:#111;padding:0 14px;font:inherit;font-size:16px}
.theme-w4b .mobile-search input:focus{outline:none}
.theme-w4b .mobile-search button{border:0;background:var(--accent);color:#fff;padding:0 18px;font:inherit;font-size:14px;font-weight:700;text-transform:uppercase;cursor:pointer}
.theme-w4b .mobile-search button:hover{background:var(--accent-2)}

/* ---------- страница: на всю ширину, сетка тумб от края до края ---------- */
.theme-w4b main.shell{max-width:none;padding-inline:var(--pad);padding-bottom:40px}
.theme-w4b .footer .shell{max-width:none;padding-inline:var(--pad)}
.theme-w4b h1{font-weight:700;letter-spacing:-.02em}
.theme-w4b .eyebrow{color:var(--accent);letter-spacing:.14em}
.theme-w4b .muted,.theme-w4b .intro-copy,.theme-w4b .gallery-summary,.theme-w4b .gallery-count,.theme-w4b .sort-count{color:var(--muted)}

/* заголовок списков по центру, сортировка — как «Latest · Top rated» */
.theme-w4b .intro{flex-direction:column;align-items:center;justify-content:center;gap:14px;margin:34px 0 26px;text-align:center}
.theme-w4b .intro .eyebrow{display:none}
.theme-w4b .intro h1{font-size:clamp(20px,1.5vw,26px);font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.theme-w4b .intro-copy{margin-inline:auto;max-width:760px;font-size:14px}
.theme-w4b .sortbar{align-items:center;flex-direction:row;gap:18px}
.theme-w4b .sort-links{border:0;background:transparent;padding:0;gap:4px}
.theme-w4b .sort-links a{padding:4px 9px;border-radius:0;color:#333;font-size:17px;font-weight:500}
.theme-w4b .sort-links a:hover{background:transparent;color:var(--accent)}
.theme-w4b .sort-links a[aria-current]{background:transparent;box-shadow:none;color:var(--accent)}
.theme-w4b .sort-count{font-size:13px}
.theme-w4b .browse-strip{justify-content:center;margin:0 0 22px}
.theme-w4b .browse-strip span{color:#999}
.theme-w4b .browse-strip a,.theme-w4b .tag-cloud a,.theme-w4b .tags a{border-color:#dcdcdc;background:#fff;color:#333}
.theme-w4b .browse-strip a:hover,.theme-w4b .browse-strip a[aria-current],.theme-w4b .tag-cloud a:hover,.theme-w4b .tags a:hover{border-color:var(--accent);color:var(--accent)}
.theme-w4b .tag-cloud span{color:var(--accent)}
.theme-w4b .letters a{min-width:36px}

/* крупные тумбы: 4 в ряд, на всю ширину, почти без зазоров */
.theme-w4b .grid,.theme-w4b .related-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;margin-inline:calc(-1 * var(--pad))}
@media(min-width:2400px){.theme-w4b .grid,.theme-w4b .related-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1000px){.theme-w4b .grid,.theme-w4b .related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.theme-w4b .grid,.theme-w4b .related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.theme-w4b .card a{position:relative;display:block;overflow:hidden}
.theme-w4b .frame{border-radius:0;background:#e6e6e6}
@media(hover:hover){.theme-w4b .card a:hover img{transform:scale(1.03);opacity:1}}
.theme-w4b .card-over{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;padding:90px 14px clamp(14px,1.8vw,30px);text-align:center;background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.18) 40%,rgba(0,0,0,.6));pointer-events:none}
.theme-w4b .card-over .caption{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;color:#fff;white-space:normal;font-family:var(--cond);font-weight:500;font-size:clamp(20px,2.35vw,48px);line-height:1.02;letter-spacing:.005em;text-transform:uppercase;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.theme-w4b .card a:hover .caption{color:#fff}
.theme-w4b .card-sub{display:block;max-width:100%;overflow:hidden;margin-top:10px;color:rgba(255,255,255,.9);font-size:clamp(11px,.85vw,15px);font-weight:300;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis}
.theme-w4b .ad-space{border-radius:0;border-color:var(--line);background:#fff;color:#777}
.theme-w4b .ad-space strong{color:#222}

/* ---------- страница галереи ---------- */
.theme-w4b .breadcrumb{justify-content:center;margin:22px 0 8px;color:#999}
.theme-w4b .breadcrumb a:hover{color:var(--accent)}
.theme-w4b .breadcrumb span{color:#bbb}
.theme-w4b .gallery-head{flex-direction:column;align-items:center;text-align:center;gap:6px;margin-bottom:22px}
.theme-w4b .gallery-head .eyebrow{display:none}
.theme-w4b .gallery-head h1{font-family:var(--cond);font-weight:500;font-size:clamp(30px,3vw,54px);line-height:1.05;letter-spacing:.005em;text-transform:uppercase}
.theme-w4b .gallery-tabs-wrap{background:rgba(250,250,250,.94);border-color:var(--line)}
.theme-w4b .gallery-tabs{justify-content:center}
.theme-w4b .gallery-tabs a{color:#444;font-size:14px;font-weight:500}
.theme-w4b .gallery-tabs a:hover,.theme-w4b .gallery-tabs a.active{background:transparent;color:var(--accent);box-shadow:none}
.theme-w4b .photo a,.theme-w4b .thumb{border-radius:0;background:#e6e6e6}
.theme-w4b .slideshow-trigger{border-color:transparent;border-radius:2px;background:var(--accent);color:#fff}
.theme-w4b .slideshow-trigger:hover{background:var(--accent-2)}
.theme-w4b .details-wrap,.theme-w4b .comments,.theme-w4b .related{border-top-color:var(--line)}
.theme-w4b .panel{border-radius:0;border-color:var(--line);background:#fff}
.theme-w4b .panel h2,.theme-w4b .related-head h2,.theme-w4b .comments-head h2{font-weight:700;text-transform:uppercase;letter-spacing:.01em}
.theme-w4b .related-head a{color:var(--accent);font-weight:600}
.theme-w4b .description{color:#444}
.theme-w4b .facts div{border-top-color:var(--line)}
.theme-w4b .facts dt{color:#8a8a8a}
.theme-w4b .facts dd{color:#1a1a1a}
.theme-w4b .facts dd a{color:var(--accent);text-decoration-color:rgba(226,33,47,.35)}
.theme-w4b .facts dd a:hover{color:var(--accent-2);text-decoration-color:currentColor}
.theme-w4b .tags-title{color:#8a8a8a}
.theme-w4b .rating-count,.theme-w4b .rating-form legend,.theme-w4b .sponsor-copy,.theme-w4b .action-status{color:#777}
.theme-w4b .star-choice label{color:#cfcfcf}
.theme-w4b .rating-stars,.theme-w4b .star-choice label:hover,.theme-w4b .star-choice label:hover~label,.theme-w4b .star-choice input:checked~label{color:var(--accent)}
.theme-w4b .sponsor-label{color:var(--accent)}
/* кнопки — красные */
.theme-w4b .rate-button,.theme-w4b .sponsor-link,.theme-w4b .wide-ad .ad-cta,.theme-w4b .comment-form button,.theme-w4b .contact-send{border:0;border-radius:2px;background:var(--accent);color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.theme-w4b .rate-button:hover,.theme-w4b .sponsor-link:hover,.theme-w4b .sponsor-banner .ad-cta:hover,.theme-w4b .comment-form button:hover,.theme-w4b .contact-send:hover{background:var(--accent-2);color:#fff;filter:none}
.theme-w4b .action-button,.theme-w4b .comments-more{border-color:#d6d6d6;border-radius:2px;background:#fff;color:#222}
.theme-w4b .action-button:hover,.theme-w4b .action-button[aria-pressed="true"],.theme-w4b .comments-more:hover{border-color:var(--accent);background:#fff;color:var(--accent)}
.theme-w4b .pager-link{border-radius:0;border-color:var(--line);background:#fff}
.theme-w4b .pager-link small{color:var(--accent)}
.theme-w4b .pager-link strong{color:#222}
.theme-w4b .pager-link:hover{border-color:var(--accent);background:#fff}
.theme-w4b .wide-ad{border-radius:0;border-color:var(--line);background:#fff}
.theme-w4b .wide-ad small{color:#999}
.theme-w4b .wide-ad span{color:#666}
.theme-w4b .comment-compose,.theme-w4b .comment{border-radius:0;border-color:var(--line);background:#fff}
.theme-w4b .comment-compose summary,.theme-w4b .comment-meta strong{color:#222}
.theme-w4b .comment p{color:#444}
.theme-w4b .comment-tools button,.theme-w4b .comment-meta,.theme-w4b .comments-head span{color:#888}
.theme-w4b .comment-tools button:hover{color:var(--accent)}
.theme-w4b .comment-form input,.theme-w4b .comment-form textarea,.theme-w4b .contact-form input,.theme-w4b .contact-form select,.theme-w4b .contact-form textarea,.theme-w4b .report-dialog textarea{border-color:#d6d6d6;background:#fff;color:#111}
.theme-w4b .report-dialog{border-color:var(--line);background:#fff;color:#111}
.theme-w4b .report-dialog p{color:#555}
.theme-w4b .report-actions button{border-color:#d6d6d6;background:#f4f4f4;color:#111}
.theme-w4b .contact-form{border-radius:0;border-color:var(--line);background:#fff}
.theme-w4b .contact-form label{color:#333}
.theme-w4b .contact-ok{border-color:#9bd3a6;background:#effaf1;color:#1d5c2a}
.theme-w4b .contact-err,.theme-w4b .flash-error{border-color:#f0b4b4;background:#fdf0f0;color:#8a1c1c}
.theme-w4b .flash{border-color:#9bd3a6;background:#effaf1;color:#1d5c2a}
.theme-w4b .prose a{color:var(--accent)}
.theme-w4b .prose p,.theme-w4b .prose li{color:#333}
.theme-w4b .about p{color:#555}
.theme-w4b .partners ul{color:#555}
.theme-w4b .directory-links a{border-radius:0;border-color:var(--line);background:#fff}
.theme-w4b .directory-links strong{color:#111}
.theme-w4b .directory-links span{color:#888}
.theme-w4b .directory-links a:hover{border-color:var(--accent);background:#fff}

/* пагинация */
.theme-w4b .pagination a,.theme-w4b .pagination span{border-radius:0;border-color:#dcdcdc;background:#fff;color:#333}
.theme-w4b .pagination span:not([aria-current]){background:transparent}
.theme-w4b .pagination a:hover{border-color:var(--accent);background:#fff;color:var(--accent)}
.theme-w4b .pagination [aria-current]{border-color:var(--accent)!important;background:var(--accent)!important;color:#fff!important;font-weight:700}

/* подвал */
.theme-w4b .footer{border-top:1px solid var(--line);background:#fff;color:#777}
.theme-w4b .footer nav a{color:#222;font-weight:600}
.theme-w4b .footer a:hover{color:var(--accent)}
.theme-w4b .back-top{border-color:#d6d6d6;background:#fff;color:#111;box-shadow:0 6px 20px rgba(0,0,0,.12)}

/* ---------- мобильные ---------- */
@media(max-width:1100px){.theme-w4b .tagline{display:none}.theme-w4b .nav{gap:22px;font-size:15px}}
@media(max-width:760px){
.theme-w4b{--pad:8px}
.theme-w4b .top-inner{min-height:0}
.theme-w4b .brand{font-size:24px}
.theme-w4b .brand span{font-size:12px;padding:4px 6px 3px}
.theme-w4b .nav{flex:none;justify-content:flex-start;gap:0;font-size:16px;border-top-color:var(--line)}
.theme-w4b .nav>a,.theme-w4b .nav-dropdown summary{border-bottom-color:#eee}
.theme-w4b .channel-menu{background:#fafafa;box-shadow:none}
.theme-w4b .menu-toggle{border:0;border-radius:50%;color:#111}
.theme-w4b .menu-open .menu-toggle{background:#f1f1f1;color:var(--accent)}
.theme-w4b .mobile-search{position:static}
.theme-w4b .mobile-search summary{width:42px;height:42px}
.theme-w4b .mobile-search form{top:calc(100% + 6px);left:12px;right:12px;width:auto}
.theme-w4b .intro{margin:22px 0 18px}
.theme-w4b .browse-strip{justify-content:flex-start}
.theme-w4b .sortbar{flex-direction:column;gap:6px}
.theme-w4b .sort-links a{font-size:15px;padding:4px 7px}
.theme-w4b .related{margin-inline:0}
.theme-w4b .related-head{padding-inline:8px}
.theme-w4b .card-over{padding:50px 8px 12px}
.theme-w4b .card-over .caption{font-size:clamp(17px,5vw,24px)}
.theme-w4b .card-sub{margin-top:6px;font-size:10px}
.theme-w4b .gallery-head h1{font-size:28px}
.theme-w4b .details-wrap{background:#fff;border-color:var(--line)}
.theme-w4b .side-stack,.theme-w4b .side-stack .panel+.panel,.theme-w4b .facts{border-color:var(--line)}
.theme-w4b .facts div{border-bottom-color:#eee}
}

/* ---------- модели: имя поверх фото, как у галерей ---------- */
.theme-w4b .card a>.caption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:80px 12px clamp(14px,1.6vw,28px);text-align:center;white-space:normal;overflow:hidden;background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.18) 40%,rgba(0,0,0,.6));color:#fff;font-family:var(--cond);font-weight:500;font-size:clamp(20px,2.1vw,42px);line-height:1.04;text-transform:uppercase;text-shadow:0 2px 14px rgba(0,0,0,.35);pointer-events:none}
.theme-w4b .card a>.caption .muted{display:block;margin-top:8px;color:rgba(255,255,255,.88);font-family:var(--sans);font-size:clamp(11px,.8vw,14px);font-weight:400;letter-spacing:.05em;text-shadow:none}
.theme-w4b .card a>.caption .dot{display:none}
.theme-w4b .card a>.caption .unit{display:inline}
@media(max-width:760px){.theme-w4b .card a>.caption{padding:50px 8px 12px;font-size:clamp(17px,5vw,24px)}.theme-w4b .card a>.caption .muted{margin-top:5px;font-size:10px}}
@media(max-width:760px){.theme-w4b .letters{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:4px}.theme-w4b .letters a{min-width:32px;min-height:30px}}
