/* Odbor přátel – styly nad rámec theme.json. Barvy jen přes --wp--preset--color--*, aby šly měnit v Editoru webu. */
:root {
	--op-red: var(--wp--preset--color--red);
	--op-red-text: var(--wp--preset--color--red-text);
	--op-gold: var(--wp--preset--color--gold);
	--op-ink: var(--wp--preset--color--ink);
	--op-line: var(--wp--preset--color--line);
	--op-muted: var(--wp--preset--color--muted);
}

a { text-decoration: none; }
:focus-visible { outline: 2px solid var(--op-red); outline-offset: 2px; }
input, textarea, select { font: inherit; border: 1px solid var(--wp--preset--color--field-border); border-radius: 0; background: #fff; }
.wp-block-image img, .wp-block-post-featured-image img { border-radius: 0; }

/* Štítek kategorie */
.op-label, .op-label a { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; color: var(--op-red-text); }

/* Horní lišta */
.op-topbar { border-bottom: 1px solid var(--op-line); font-size: 13px; color: var(--op-muted); padding: 10px var(--wp--style--root--padding-left, 0); }
.op-topbar p { margin: 0; }
.op-topbar__left { gap: 16px; align-items: center; }
.op-topbar__right { display: flex; align-items: center; gap: 20px; }
.op-topbar__right > a { color: inherit; font-weight: 600; }
.op-id { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--op-ink); padding: 4px 10px 4px 4px; color: var(--op-ink) !important; }
.op-id__tag { background: var(--op-red); color: #fff; font: 700 10px/1 ui-monospace, monospace; padding: 3px 5px; }

/* Přepínač webů */
.op-switcher { position: relative; }
.op-switcher__button { display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--op-line); padding: 5px 10px; font: 600 13px var(--wp--preset--font-family--sans); color: var(--op-ink); cursor: pointer; }
.op-switcher__grid { display: grid; grid-template-columns: repeat(3, 4px); gap: 2px; }
.op-switcher__grid i { width: 4px; height: 4px; background: var(--op-red); }
.op-switcher__grid i:nth-child(5) { background: var(--op-gold); }
.op-switcher__menu { position: absolute; right: 0; top: calc(100% + 6px); width: 330px; max-width: calc(100vw - 32px); z-index: 50; background: #fff; border: 1px solid var(--op-gold); box-shadow: 0 12px 32px rgba(26, 23, 20, .16); }
.op-switcher__menu[hidden] { display: none; }
.op-switcher__head { margin: 0; padding: 12px 16px 8px; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--gold-text); }
.op-switcher__item { display: flex; align-items: center; gap: 12px; padding: 10px 16px; color: var(--op-ink); min-height: 44px; }
.op-switcher__item:hover { background: var(--wp--preset--color--paper); text-decoration: none; }
.op-switcher__icon { flex: none; width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid var(--op-gold); font: 600 16px var(--wp--preset--font-family--serif); }
.op-switcher__item.is-current .op-switcher__icon { background: var(--op-red); border-color: var(--op-red); color: #fff; }
.op-switcher__text { display: grid; flex: 1; }
.op-switcher__text strong { font-size: 15px; font-weight: 600; }
.op-switcher__text small { font-size: 12px; color: var(--op-muted); }
.op-switcher__here { font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--op-red-text); }

/* Logotyp a menu */
.op-brand { padding-top: 14px; align-items: center; gap: 14px; }
.op-brand > .op-mainnav { flex: 1 0 100%; }
.op-id-m { display: none; }
.wp-block-navigation .op-mobile-only { display: none !important; }
.wp-block-navigation__responsive-container.is-menu-open .op-mobile-only { display: flex !important; }
.op-brand .wp-block-site-title { margin: 0; }
.op-mainnav { margin-top: 0; padding: 12px 0; border-top: 2px solid var(--op-gold); border-bottom: 1px solid var(--op-gold); }
.op-mainnav .wp-block-navigation-item__content { color: var(--op-ink); }
.op-mainnav .current-menu-item > a, .op-mainnav .wp-block-navigation-item__content:hover { color: var(--op-red-text); }
.op-matchstrip { padding: 12px 0; border-bottom: 1px solid var(--op-line); gap: 20px; }
.op-matchstrip:empty, .op-matchstrip:not(:has(*)) { padding: 0; border: 0; }

/* Patička */
.op-footer a { color: #fff; }
.op-footer .wp-block-site-title { text-transform: uppercase; letter-spacing: .08em; margin: 0; }
.op-footer-rule { border: 0; border-top: 1px solid rgba(255, 255, 255, .45); background: none; color: #fff; }
.op-footer-bottom p { margin: 0; }

/* Mobil */
@media (max-width: 1100px) { :root { --wp--style--root--padding-left: 32px; --wp--style--root--padding-right: 32px; } }
@media (max-width: 768px) {
	body { --wp--style--root--padding-left: 16px; --wp--style--root--padding-right: 16px; }
	.op-topbar { background: var(--op-ink); color: #fff; font-size: 12px; }
	.op-topbar__date, .op-topbar__right > a:not(.op-id), .op-topbar .op-switcher { display: none; }
	.op-brand .wp-block-site-title { font-size: 15px !important; }
	.op-brand .wp-block-site-logo img { width: 40px; height: 40px; }
	.op-id { padding: 0; border: 0; }
	.op-id__tag { padding: 10px 12px; font-size: 12px; }
	.op-id__label { display: none; }
}

/* Úvodní stránka */
.op-eyebrow { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--gold-text); margin: 0; }
.op-section-title { font-size: 22px; padding-bottom: 8px; border-bottom: 2px solid var(--op-ink); margin: 0 0 16px; }

.op-hero { gap: 0; min-height: 440px; flex-wrap: nowrap; }
.op-hero > .wp-block-column { flex: 1 1 0 !important; min-width: 0; }
.op-hero__text { display: flex; flex-direction: column; justify-content: flex-end; gap: 16px; }
.op-hero__text a { color: #fff; }
.op-hero__text .wp-block-post-title { margin: 0; text-wrap: balance; }
.op-hero__text .wp-block-post-excerpt { margin: 0; }
.op-hero__meta { gap: 8px; }
.op-hero__more a { font-weight: 600; font-size: 14px; border-bottom: 1px solid #fff; padding-bottom: 2px; }
.op-hero__image { align-self: stretch; height: auto; }
.op-hero__image img { width: 100%; height: 100%; object-fit: cover; }

.op-grid { gap: 48px; flex-wrap: nowrap; }
.op-grid__main { flex: 1 1 0; min-width: 0; }
.op-sidebar { flex: 0 0 340px !important; display: flex; flex-direction: column; gap: 28px; }
.op-cards .wp-block-post-template { gap: 28px; }
.op-card { display: flex; flex-direction: column; gap: 10px; }
.op-card .wp-block-post-title, .op-row .wp-block-post-title { margin: 0; }
.op-card .wp-block-post-title a, .op-row .wp-block-post-title a { color: var(--op-ink); }
.op-card .wp-block-post-title a:hover, .op-row .wp-block-post-title a:hover { text-decoration: underline; }
.op-card .wp-block-post-excerpt { margin: 0; }
.op-card img, .op-row img { width: 100%; object-fit: cover; }
.op-rows { margin-top: 28px; border-top: 2px solid var(--op-ink); }
.op-row { display: grid; grid-template-columns: 110px minmax(0, 1fr) 140px; gap: 20px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--op-line); }
.op-rows .wp-block-post-template { gap: 0; }

.op-strip { gap: 0; margin-block: 0 !important; border-top: 2px solid var(--op-gold); border-bottom: 1px solid var(--op-gold); }
.op-strip__col { padding: 28px; display: flex; flex-direction: column; gap: 10px; border-right: 1px solid var(--op-line); }
.op-strip__col:first-child { padding-left: 0; }
.op-strip__col:last-child { padding-right: 0; border-right: 0; }
.op-strip__col > * { margin: 0; }
.op-strip__cta { padding-left: 28px; align-items: flex-start; }

.op-shop .button, .op-shop ul.products li.product .button, .op-shop .added_to_cart { display: none !important; }

@media (max-width: 1100px) {
	.op-grid { flex-wrap: wrap !important; }
	.op-grid > .wp-block-column, .op-sidebar { flex: 1 1 100% !important; min-width: 0; }
}
@media (max-width: 768px) {
	.op-hero { flex-direction: column-reverse; flex-wrap: nowrap !important; min-height: 0; margin-top: 16px !important; }
	.op-hero > .wp-block-column { min-width: 0; max-width: 100%; flex-basis: auto !important; }
	.op-hero__image { min-height: 0 !important; aspect-ratio: 16/10; }
	.op-hero__image { aspect-ratio: 16/10; height: auto; }
	.op-hero__text { padding: 24px 16px !important; }
	.op-hero__text .wp-block-post-title { font-size: 28px !important; }
	.op-cards .wp-block-post-template { grid-template-columns: minmax(0, 1fr) !important; }
	.op-row { grid-template-columns: minmax(0, 1fr) 104px; }
	.op-row .wp-block-post-terms { grid-column: 1; }
	.op-row .wp-block-post-featured-image { grid-column: 2; grid-row: 1 / span 2; aspect-ratio: 1 !important; }
	.op-strip { flex-direction: column; }
	.op-strip__col, .op-strip__col:first-child, .op-strip__col:last-child { padding: 20px 0; border-right: 0; border-bottom: 1px solid var(--op-line); }
}

/* Výpis článků */
.op-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.op-chip { padding: 7px 14px; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; background: #fff; border: 1px solid var(--op-line); color: var(--op-ink); }
.op-chip:hover { border-color: var(--op-ink); text-decoration: none; color: var(--op-ink); }
.op-chip.is-active { background: var(--op-ink); border-color: var(--op-ink); color: #fff; }

.op-archive-list .wp-block-post-template { gap: 0; }
.op-item { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 24px; padding: 20px 0; border-bottom: 1px solid var(--op-line); }
.op-item .wp-block-post-featured-image img { width: 100%; object-fit: cover; }
.op-item__body > * { margin-block: 0; }
.op-item__body { display: flex; flex-direction: column; gap: 8px; }
.op-item__meta { gap: 12px; align-items: center; }
.op-item__meta > * { margin: 0; }
.op-item__title { font-size: 23px; line-height: 1.15; }
.op-item__title a { color: var(--op-ink); }
.op-item__title a:hover { text-decoration: underline; }
.op-archive-list .wp-block-post-template > li:first-child .op-item { grid-template-columns: 1.2fr 1fr; gap: 28px; padding-top: 0; border-bottom: 2px solid var(--op-ink); }
.op-archive-list .wp-block-post-template > li:first-child .op-item__title { font-size: 34px; line-height: 1.08; }
.op-archive-list .wp-block-post-template > li:first-child .op-item__body { justify-content: center; }
.op-pagination { margin-top: 28px; align-items: center; }
.op-pagination .page-numbers { display: inline-grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--op-line); background: #fff; color: var(--op-ink); font-weight: 600; margin-right: 6px; }
.op-pagination .page-numbers.current { background: var(--op-red); border-color: var(--op-red); color: #fff; }
.op-search .wp-block-search__inside-wrapper { gap: 0; }
.op-search .wp-block-search__input { padding: 10px 12px; }
.op-search .wp-block-search__button { background: var(--op-ink); color: #fff; border: 0; margin: 0; }

/* Detail článku */
.op-breadcrumbs { text-align: center; font-size: 13px; color: var(--op-muted); }
.op-breadcrumbs a { color: var(--op-muted); }
.op-single__head { display: flex; flex-direction: column; align-items: center; gap: 14px; }
.op-single__head > * { margin: 0; width: 100%; }
.op-single__meta { gap: 6px 16px; font-size: 14px; }
.op-single__meta > * { margin: 0; }
.op-single__meta > * + *::before { content: "·"; margin-right: 16px; }
.op-single__cols { flex-wrap: nowrap; gap: 48px; }
.op-single__article { flex: 0 0 680px !important; min-width: 0; font-size: 18px; line-height: 1.7; }
.op-single__side { flex: 1 1 0 !important; min-width: 0; }
.op-single__share { flex: 0 0 120px !important; }
.op-article > p:first-of-type { font: 500 21px/1.55 var(--wp--preset--font-family--serif); }
.op-article blockquote, .op-article .wp-block-quote { margin: 40px 0; padding: 28px 0; border: 0; border-top: 2px solid var(--op-gold); border-bottom: 1px solid var(--op-gold); text-align: center; }
.op-article .wp-block-quote p { font: italic 500 28px/1.3 var(--wp--preset--font-family--serif); margin: 0; }
.op-article .wp-block-quote cite { display: block; margin-top: 12px; font: 600 12px var(--wp--preset--font-family--sans); font-style: normal; text-transform: uppercase; letter-spacing: .12em; color: var(--wp--preset--color--gold-text); }
.op-share { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 10px; align-items: flex-start; font-size: 14px; }
.op-share a, .op-share button { font: 600 14px var(--wp--preset--font-family--sans); color: var(--op-red-text); background: none; border: 0; padding: 4px 0; cursor: pointer; text-align: left; }
.op-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 32px; }
.op-tags a { border: 1px solid var(--op-line); padding: 4px 12px; font-size: 13px; color: var(--op-ink); background: #fff; }
.op-cta { position: sticky; top: 24px; }
.op-cta .wp-block-heading { margin: 0; }
.op-btn-light .wp-block-button__link { color: var(--op-red-text); background: #fff; }
.op-related { margin-top: 56px; }
.op-related__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.op-related__item { display: flex; flex-direction: column; gap: 10px; color: var(--op-ink); }
.op-related__item:hover strong { text-decoration: underline; }
.op-related__item img { aspect-ratio: 3/2; width: 100%; object-fit: cover; }
.op-related__item strong { font: 600 20px/1.2 var(--wp--preset--font-family--serif); }

@media (max-width: 1100px) {
	.op-single__cols { flex-wrap: wrap !important; }
	.op-single__share, .op-single__side, .op-single__article { flex: 1 1 100% !important; }
	.op-single__share { order: 2; }
	.op-share { position: static; flex-direction: row; gap: 20px; align-items: center; }
	.op-cta { position: static; }
	.op-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
	.op-chips { flex-wrap: nowrap; overflow-x: auto; margin-inline: -16px; padding-inline: 16px; scrollbar-width: none; }
	.op-chip { white-space: nowrap; min-height: 44px; display: inline-flex; align-items: center; }
	.op-item { grid-template-columns: minmax(0, 1fr) 104px; gap: 16px; }
	.op-item .wp-block-post-featured-image { order: 2; aspect-ratio: 1 !important; }
	.op-item .wp-block-post-featured-image img { height: 100%; }
	.op-item__title { font-size: 17px; }
	.op-item .wp-block-post-excerpt, .op-archive-list .wp-block-post-template > li:first-child .op-item .wp-block-post-excerpt { display: none; }
	.op-archive-list .wp-block-post-template > li:first-child .op-item { grid-template-columns: 1fr; }
	.op-archive-list .wp-block-post-template > li:first-child .op-item .wp-block-post-featured-image { order: 0; aspect-ratio: 16/10 !important; }
	.op-archive-list .wp-block-post-template > li:first-child .op-item__title { font-size: 24px; }
	.op-single__head .wp-block-post-title { font-size: 30px !important; }
	.op-article > p:first-of-type { font-size: 19px; }
	.op-single__article { font-size: 17px; line-height: 1.65; }
	.op-article .wp-block-quote p { font-size: 22px; }
	.op-related__grid { grid-template-columns: 1fr; }
}

/* Načíst další články (jen mobil) */
.op-loadmore { display: none; }
@media (max-width: 768px) {
	.op-has-loadmore .op-pagination { display: none; }
	.op-loadmore { display: block; width: 100%; min-height: 44px; margin-top: 24px; background: #fff; color: var(--op-ink); border: 1px solid var(--op-ink); font: 600 14px var(--wp--preset--font-family--sans); cursor: pointer; }
	.op-loadmore:disabled { opacity: .6; }
	.op-loadmore:hover { background: var(--op-ink); color: #fff; }
}

/* Postranní boxy */
.op-side-title { font-size: 22px; padding-bottom: 8px; border-bottom: 2px solid var(--op-ink); margin: 0 0 12px; }
.op-mostread { list-style: none; margin: 0; padding: 0; counter-reset: mr; }
.op-mostread li { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 8px; padding: 12px 0; border-bottom: 1px solid var(--op-line); counter-increment: mr; }
.op-mostread li::before { content: counter(mr); font: 600 22px/1 var(--wp--preset--font-family--serif); color: var(--wp--preset--color--gold-text); }
.op-mostread a { color: var(--op-ink); font: 600 16px/1.3 var(--wp--preset--font-family--serif); }
.op-mostread a:hover { text-decoration: underline; }
.op-listy { display: flex; flex-direction: column; gap: 10px; }
.op-listy img { width: 100%; max-width: 200px; height: auto; border: 1px solid var(--op-line); }
.op-listy__link { font-weight: 600; font-size: 14px; }

/* Podstránky */
.op-page > .wp-block-post-title { margin: 0; }
.op-podcover { aspect-ratio: 1; border: 2px solid var(--op-gold); text-align: center; gap: 12px; padding: 24px; }
.op-podlinks { gap: 8px; }
.op-video { position: relative; aspect-ratio: 16/9; background: var(--op-ink); }
.op-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.op-darkbox a { color: var(--op-gold); }
.op-darkbox > * { margin-block: 0; }
.op-committee { gap: 20px; }
.op-person { font: 600 18px/1.3 var(--wp--preset--font-family--serif); margin-top: 10px; }
.op-person span { font: 600 11px var(--wp--preset--font-family--sans); text-transform: uppercase; letter-spacing: .12em; color: var(--wp--preset--color--gold-text); }
.op-placeholder { background: repeating-linear-gradient(45deg, var(--wp--preset--color--line-soft), var(--wp--preset--color--line-soft) 8px, #fff 8px, #fff 16px); border: 1px solid var(--op-line); }
.op-placeholder.is-portrait { aspect-ratio: 4/5; }
.op-placeholder.is-fill { height: 100%; min-height: 300px; }
.op-hero__image .wp-block-image { aspect-ratio: auto; height: 100%; min-height: 300px; }
@media (max-width: 768px) {
	.op-committee { flex-wrap: wrap !important; }
	.op-committee > .wp-block-column { flex-basis: calc(50% - 10px) !important; }
	.op-podhead .wp-block-column { flex-basis: 100% !important; }
	.op-podhead { flex-wrap: wrap !important; }
}

/* Logo */
.op-logo { display: inline-flex; flex: none; }
.op-logo img { display: block; width: 52px; height: 52px; object-fit: contain; }
.op-footer .op-logo img { width: 40px; height: 40px; filter: none; }
.op-podcover .op-logo img { width: 90px; height: 90px; }
@media (max-width: 768px) { .op-brand .op-logo img { width: 40px; height: 40px; } }

@media (max-width: 768px) {
	.op-topbar .op-secstatus, .op-topbar__left { color: #fff; }
	.op-topbar__right { display: none; }
	.op-brand { flex-wrap: nowrap; justify-content: flex-start; padding: 10px 0; gap: 10px; border-bottom: 2px solid var(--op-gold); }
	.op-brand .wp-block-site-title { flex: 1; }
	.op-brand > .op-mainnav { flex: none; margin: 0; padding: 0; border: 0; }
	.op-id-m { display: inline-grid; place-items: center; height: 36px; padding: 0 12px; background: var(--op-red); color: #fff; font: 700 12px ui-monospace, monospace; }
	.wp-block-navigation__responsive-container-open { width: 44px; height: 44px; justify-content: center; }
	.op-evrow__btn { align-self: start; min-height: 44px; display: grid; place-items: center; }
}
.op-hero__image { display: flex; }
.op-hero__image > .op-placeholder { flex: 1; }

/* Rozbalené mobilní menu (WP jádro nastavuje layout silně, proto !important) */
.wp-block-navigation__responsive-container.is-menu-open { background: #fff !important; color: var(--op-ink); padding: 0 !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding: 0 !important; width: 100%; align-items: stretch !important; justify-content: flex-start !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { top: 8px; right: 8px; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { width: 100%; display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: stretch !important; justify-content: flex-start !important; gap: 0 !important; padding: 60px 0 16px !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100%; display: flex !important; flex-direction: row !important; flex-wrap: wrap; align-items: stretch !important; border-bottom: 1px solid var(--op-line); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { flex: 1; min-height: 52px; display: flex; align-items: center; justify-content: space-between; padding: 0 16px; font: 600 15px var(--wp--preset--font-family--sans); text-transform: uppercase; letter-spacing: .08em; color: var(--op-ink); }
.wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content { color: var(--op-red-text); }
.wp-block-navigation__responsive-container.is-menu-open .op-m-btn { width: 50%; border: 0; padding: 14px 16px; }
.wp-block-navigation__responsive-container.is-menu-open .op-m-contact { padding-right: 5px; }
.wp-block-navigation__responsive-container.is-menu-open .op-m-login { padding-left: 5px; }
.wp-block-navigation__responsive-container.is-menu-open .op-m-btn .wp-block-navigation-item__content { min-height: 44px; justify-content: center; padding: 0; text-transform: none; letter-spacing: 0; font-size: 14px; }
.wp-block-navigation__responsive-container.is-menu-open .op-m-contact .wp-block-navigation-item__content { border: 1px solid var(--op-ink); }
.wp-block-navigation__responsive-container.is-menu-open .op-m-login .wp-block-navigation-item__content { background: var(--op-red); color: #fff; }
.wp-block-navigation__responsive-container.is-menu-open .op-app { border: 0; flex-wrap: nowrap; position: relative; padding-left: 64px; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-first { padding-top: 38px; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-first::before { content: "Weby Odboru přátel"; position: absolute; top: 14px; left: 16px; font: 600 11px var(--wp--preset--font-family--sans); text-transform: uppercase; letter-spacing: .12em; color: var(--wp--preset--color--gold-text); }
.wp-block-navigation__responsive-container.is-menu-open .op-app .wp-block-navigation-item__content { min-height: 56px; padding: 0; flex-direction: column; align-items: flex-start; justify-content: center; gap: 1px; text-transform: none; letter-spacing: 0; font-size: 15px; }
.wp-block-navigation__responsive-container.is-menu-open .op-app .wp-block-navigation-item__description { font: 400 12px var(--wp--preset--font-family--sans); color: var(--op-muted); text-transform: none; letter-spacing: 0; }
.wp-block-navigation__responsive-container.is-menu-open .op-app::after { position: absolute; left: 16px; bottom: 10px; width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid var(--op-gold); font: 600 16px var(--wp--preset--font-family--serif); background: #fff; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-w::after { content: "W"; background: var(--op-red); border-color: var(--op-red); color: #fff; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-p::after { content: "P"; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-k::after { content: "K"; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-id::after { content: "ID"; }

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { box-sizing: border-box; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { padding: 0 16px !important; box-sizing: border-box; }
.wp-block-navigation__responsive-container.is-menu-open .op-m-btn .wp-block-navigation-item__content, .wp-block-navigation__responsive-container.is-menu-open .op-app .wp-block-navigation-item__content { padding: 0 !important; }
.wp-block-navigation__responsive-container.is-menu-open .op-m-btn { width: 50% !important; }
.wp-block-navigation__responsive-container.is-menu-open .op-app .wp-block-navigation-item__content::after { font: 400 12px var(--wp--preset--font-family--sans); color: var(--op-muted); text-transform: none; letter-spacing: 0; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-w .wp-block-navigation-item__content::after { content: "Zprávy, akce, eshop"; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-p .wp-block-navigation-item__content::after { content: "Přihláška, kontakty, odbočky"; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-k .wp-block-navigation-item__content::after { content: "Vstupenky a výjezdy"; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-id .wp-block-navigation-item__content::after { content: "Přihlášení a profil"; }
.wp-block-navigation__responsive-container.is-menu-open .op-app-w .wp-block-navigation-item__content::before { content: "JSTE ZDE"; position: absolute; right: 16px; top: 66px; margin-top: -6px; font: 500 10px ui-monospace, monospace; color: var(--wp--preset--color--gold-text); letter-spacing: .04em; }
.op-archive-list .wp-block-post-template > li { margin-block: 0 !important; }
.op-rows .wp-block-post-template > li { margin-block: 0 !important; }
@media (max-width: 768px) { .op-item { padding: 14px 0; } }
/* Výpis: článek bez fotky se roztáhne na celou šířku */
.op-item:not(:has(.wp-block-post-featured-image)),
.op-archive-list .wp-block-post-template > li:first-child .op-item:not(:has(.wp-block-post-featured-image)) { grid-template-columns: minmax(0, 1fr); }

/* Pojistka: obrázek nikdy nepřetáhne rozměr rámečku, ani když chybí soubor */
.wp-block-post-featured-image { overflow: hidden; max-width: 100%; }
.wp-block-post-featured-image img { height: auto !important; max-width: 100%; object-fit: cover; }
.op-card .wp-block-post-featured-image, .op-item .wp-block-post-featured-image { aspect-ratio: 3/2; }
.op-row .wp-block-post-featured-image { aspect-ratio: 16/10; }
.op-hero__image { position: relative; min-height: 300px; }
.op-hero__image .wp-block-post-featured-image { position: absolute; inset: 0; aspect-ratio: auto; height: 100%; }
.op-hero__image .wp-block-post-featured-image img { width: 100%; height: 100% !important; object-fit: cover; }
.op-single .wp-block-post-featured-image { aspect-ratio: 21/9; }
.op-related__item img { height: auto; }


/* Zlaté boxy okolo hlavních částí (články a boxy v pravém sloupci). Vypnutí: smazat tento blok. */
.op-card, .op-item, .op-rows,
.op-sidebar > .op-events, .op-sidebar > .op-table, .op-sidebar > .op-mostread-box, .op-sidebar > .op-listy,
.op-sidebar > .op-history, .op-sidebar > .op-sechours, .op-sidebar > .op-darkbox,
.op-sidebar > .wp-block-search, .op-sidebar > .op-cal {
	box-sizing: border-box;
	border: 1px solid var(--op-gold);
	background: #fff;
	padding: 20px;
}
.op-sidebar > .op-sechours, .op-sidebar > .op-darkbox { background: var(--op-ink); }
.op-card { padding: 16px; }
.op-rows { margin-top: 28px; border-top: 1px solid var(--op-gold); padding: 4px 20px; }
.op-row:last-child { border-bottom: 0; }
.op-archive-list .wp-block-post-template { gap: 24px; }
.op-archive-list .wp-block-post-template > li:first-child .op-item { border-bottom: 1px solid var(--op-gold); }
.op-item { margin: 0; }
.op-sidebar > .op-listy img { margin: 0; }
@media (max-width: 768px) {
	.op-card, .op-item, .op-sidebar > * { padding: 14px; }
	.op-rows { padding: 2px 14px; }
}
.op-cards .wp-block-post-template { align-items: stretch; }
.op-cards .wp-block-post-template > li { display: flex; }
.op-cards .op-card { flex: 1; }
.op-archive-list .wp-block-post-template > li { margin-block: 0 20px !important; }

/* Pás Podcast / Výhody / Členství: tři stejné sloupce, stejné zarovnání (vlevo, odshora) */
.op-strip { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.op-strip > .op-strip__col, .op-strip > .op-strip__cta { padding: 28px; align-items: flex-start; justify-content: flex-start; text-align: left; }
.op-strip > .op-strip__col:first-child { padding-left: 0; }
.op-strip > .op-strip__col:last-child { padding-right: 0; }
.op-strip .wp-block-heading { font-size: 28px; line-height: 1.1; }
@media (max-width: 768px) { .op-strip { grid-template-columns: minmax(0, 1fr); } .op-strip > .op-strip__col, .op-strip > .op-strip__cta { padding: 20px 0; } }

/* Zlatý rámeček okolo „Z eshopu“ */
.op-shop { box-sizing: border-box; border: 1px solid var(--op-gold); background: #fff; padding: 24px !important; margin-top: 48px; }
.op-shop .op-section-title { margin-top: 0; }
@media (max-width: 768px) { .op-shop { padding: 14px !important; } }

/* Hlavička a lišta zápasu: stejná šířka a vycentrování jako zbytek stránky i na širokých obrazovkách */
.op-brand, .op-matchstrip {
	box-sizing: border-box;
	width: 100%;
	max-width: calc(1184px + 2 * var(--wp--style--root--padding-left, 0px));
	margin-inline: auto;
	padding-inline: var(--wp--style--root--padding-left, 0px);
}

/* Korunka ze znaku klubu uprostřed horní hrany velkých boxů (pravý sloupec a „Z eshopu“). Vypnutí: smazat tento blok. */
.op-sidebar > .op-history, .op-sidebar > .op-events, .op-sidebar > .op-table, .op-sidebar > .op-mostread-box,
.op-sidebar > .op-listy, .op-sidebar > .op-sechours, .op-sidebar > .op-darkbox, .op-sidebar > .op-cal, .op-shop {
	position: relative;
}
.op-sidebar > .op-history::before, .op-sidebar > .op-events::before, .op-sidebar > .op-table::before, .op-sidebar > .op-mostread-box::before,
.op-sidebar > .op-listy::before, .op-sidebar > .op-sechours::before, .op-sidebar > .op-darkbox::before, .op-sidebar > .op-cal::before, .op-shop::before {
	content: "";
	position: absolute;
	top: -8px;
	left: 50%;
	transform: translateX(-50%);
	box-sizing: content-box;
	width: 30px;
	height: 14px;
	padding: 0 9px;
	background: url("../images/crown.png") center / 30px 14px no-repeat, var(--wp--preset--color--paper);
	pointer-events: none;
}

/* Korunka i u hlavního článku: hero na úvodní stránce a první (velký) článek ve výpisu */
.op-hero, .op-archive-list .wp-block-post-template > li:first-child .op-item { position: relative; }
.op-hero::before, .op-archive-list .wp-block-post-template > li:first-child .op-item::before {
	content: "";
	position: absolute;
	top: -8px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	box-sizing: content-box;
	width: 30px;
	height: 14px;
	padding: 0 9px;
	background: url("../images/crown.png") center / 30px 14px no-repeat, var(--wp--preset--color--paper);
	pointer-events: none;
}

/* Hero: korunka sedí na tenké zlaté lince nad panelem a červené plochy se nedotýká */
.op-hero { margin-top: 56px !important; }
.op-hero::before { top: -35px; }
.op-hero::after { content: ""; position: absolute; left: 0; right: 0; top: -28px; height: 1px; background: var(--op-gold); z-index: 2; pointer-events: none; }
@media (max-width: 768px) { .op-hero { margin-top: 44px !important; } }

/* Seznam článků na úvodní stránce: mezi články zlatá linka (70 % šířky) s korunkou uprostřed a mezerou kolem ní */
.op-rows .op-row { border-bottom: 0; padding: 18px 0; }
.op-rows .wp-block-post-template > li + li::before {
	content: "";
	display: block;
	width: 70%;
	height: 14px;
	margin: 4px auto;
	background:
		url("../images/crown.png") center / 30px 14px no-repeat,
		linear-gradient(var(--op-gold), var(--op-gold)) left center / calc(50% - 26px) 1px no-repeat,
		linear-gradient(var(--op-gold), var(--op-gold)) right center / calc(50% - 26px) 1px no-repeat;
}
@media (max-width: 768px) { .op-rows .wp-block-post-template > li + li::before { width: 80%; } }

/* Box „Moje zprávy“ (členský přehled): stejný zlatý rámeček a korunka jako ostatní boxy v pravém sloupci */
.op-sidebar > .op-inbox { box-sizing: border-box; border: 1px solid var(--op-gold); background: #fff; padding: 20px; position: relative; }
.op-sidebar > .op-inbox::before {
	content: ""; position: absolute; top: -8px; left: 50%; transform: translateX(-50%); box-sizing: content-box;
	width: 30px; height: 14px; padding: 0 9px; pointer-events: none;
	background: url("../images/crown.png") center / 30px 14px no-repeat, var(--wp--preset--color--paper);
}
@media (max-width: 768px) { .op-sidebar > .op-inbox { padding: 14px; } }

/* Sekretariát v pravém sloupci: stejný světlý box jako ostatní (tmavá varianta zůstává v pluginu pro jiné použití) */
.op-sidebar > .op-sechours { background: #fff; color: var(--op-ink); gap: 0; }
.op-sidebar > .op-sechours h2 { color: var(--op-ink); font: 600 22px var(--wp--preset--font-family--serif); padding-bottom: 8px; border-bottom: 2px solid var(--op-ink); margin: 0 0 4px; }
.op-sidebar > .op-sechours .op-sechours__row { border-top: 1px solid var(--op-line); padding: 10px 0; }
.op-sidebar > .op-sechours .op-sechours__row:first-of-type { border-top: 0; }
.op-sidebar > .op-sechours .op-sechours__row b { color: var(--wp--preset--color--gold-text); font-weight: 600; }
/* Zbylé tmavé boxy: podklad korunky v barvě boxu, ať nevzniká světlý obdélník */
.op-sidebar > .op-darkbox::before { background: url("../images/crown.png") center / 30px 14px no-repeat, var(--op-ink); }

/* Náhledy článků na titulní straně: modrý přechod a logo z generátoru obrázků (kancelář), v měřítku šířky obrázku */
.wp-block-post-featured-image { position: relative; }
.op-photo-overlay { position: absolute; inset: 0; container-type: inline-size; pointer-events: none; color: #fff; background: linear-gradient(rgba(32, 67, 144, .8) 0, rgba(32, 67, 144, .2) 32%, rgba(32, 67, 144, .2) 55%, rgba(32, 67, 144, .88) 100%); }
.op-photo-overlay__head { position: absolute; top: 5.6cqw; left: 5.6cqw; right: 5.6cqw; display: flex; align-items: center; gap: 2.5cqw; }
.op-photo-overlay .op-photo-overlay__head .op-photo-overlay__logo { display: block; width: auto !important; height: 7cqw !important; max-width: none !important; flex: none; object-fit: contain; }
.op-photo-overlay__rule { display: block; flex: none; width: max(4px, .9cqw); height: 7cqw; background: #d9b75b; }
.op-photo-overlay__text { font: 500 2.8cqw/1.1 var(--wp--preset--font-family--sans), Arial, sans-serif; text-transform: uppercase; letter-spacing: .02em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
