/*
Theme Name: Audiokazeta
Theme URI: https://audiokazeta.cz/
Author: Audiokazeta.cz
Author URI: https://audiokazeta.cz/
Description: Block theme (FSE) pro komunitní web Audiokazeta.cz — lo-fi zine estetika s retro kazetovým duchem.
Version: 2.31.2
Requires at least: 6.4
Tested up to: 7.0
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: audiokazeta
Tags: block-templates, full-site-editing, custom-colors, custom-logo, custom-menu, responsive
*/

/* ============================================================
   FONT CSS VARIABLES — override WP global-styles cache
   ============================================================ */

:root {
	--ak-display: 'Space Grotesk', system-ui, -apple-system, Segoe UI, sans-serif;
	--ak-sans: 'Inter', system-ui, -apple-system, Segoe UI, sans-serif;
	--ak-mono: 'IBM Plex Mono', ui-monospace, SFMono-Regular, monospace;
	--wp--preset--font-family--mono: var(--ak-mono);
	--wp--preset--font-family--oswald: var(--ak-display);
	--wp--preset--font-family--body:   var(--ak-sans);
}

/* ============================================================
   ZÁKLADNÍ RESET A GLOBÁL
   ============================================================ */

*, *::before, *::after {
	box-sizing: border-box;
}

body {
	font-family: var(--ak-sans);
	background: var(--wp--preset--color--background);
	color: var(--wp--preset--color--text);
}

.wp-site-blocks {
	overflow-x: hidden;
}

/* Special Elite — loaded via functions.php */
h1, h2, h3, h4, h5, h6,
.ak-heading {
	font-family: var(--ak-sans);
	text-transform: uppercase;
	letter-spacing: -0.01em;
}

/* ============================================================
   HEADER — zine masthead
   ============================================================ */

.ak-site-header {
	border-bottom: 3px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--background);
	padding: 0;
}

.ak-masthead {
	display: flex;
	align-items: stretch;
	gap: 0;
	border-bottom: 2px solid var(--wp--preset--color--border);
}

/* Název webu je záměrně <p> (wp:site-title level 0), ne <h1> — h1 patří obsahu
   stránky, jinak má každá stránka dva h1 (název webu + skutečný nadpis), což mate
   čtečky obrazovky i vyhledávače. Velikost proto řídí tenhle blok, ne element. */
.ak-masthead .ak-site-title {
	font-family: var(--ak-sans);
	font-size: clamp(28px, 5vw, 52px);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: -0.03em;
	line-height: 1;
	color: var(--wp--preset--color--text);
	text-decoration: none;
	margin: 0;
	padding: 16px 24px;
	display: block;
	border-right: 2px solid var(--wp--preset--color--border);
}

.ak-masthead .ak-site-title span {
	color: var(--wp--preset--color--accent);
}

.ak-masthead .ak-tagline {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
	text-transform: uppercase;
	letter-spacing: 0.1em;
	padding: 16px 20px;
	align-self: center;
	line-height: 1.4;
}

/* Navigace */
.ak-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 0;
}

.ak-nav li {
	border-right: 1px solid var(--wp--preset--color--border);
}

.ak-nav a {
	display: block;
	padding: 12px 20px;
	font-family: var(--ak-sans);
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	text-decoration: none;
	color: var(--wp--preset--color--text);
	transition: background 120ms ease, color 120ms ease;
}

.ak-nav a:hover,
.ak-nav a[aria-current="page"] {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--white);
}

/* ── Nav submenu dropdown ── */
.ak-nav .wp-block-navigation-item.has-child {
	position: relative;
}

.ak-nav .wp-block-navigation-item.has-child > .wp-block-navigation-item__content::after {
	content: ' ▾';
	font-size: 10px;
	opacity: 0.6;
}

.ak-nav .wp-block-navigation__submenu-container {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 180px;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	border-top: 2px solid var(--wp--preset--color--accent);
	z-index: 999;
	flex-direction: column;
	padding: 4px 0;
}

.ak-nav .wp-block-navigation-item.has-child:hover > .wp-block-navigation__submenu-container,
.ak-nav .wp-block-navigation-item.has-child:focus-within > .wp-block-navigation__submenu-container {
	display: flex;
}

.ak-nav .wp-block-navigation__submenu-container li {
	border-right: none;
	border-bottom: 1px solid var(--wp--preset--color--muted);
}

.ak-nav .wp-block-navigation__submenu-container li:last-child {
	border-bottom: none;
}

.ak-nav .wp-block-navigation__submenu-container a {
	font-size: 12px;
	padding: 8px 16px;
	white-space: nowrap;
}

/* ============================================================
   KARTA KAZETY — brutalistní box
   ============================================================ */

.ak-kazeta-card {
	display: flex;
	flex-direction: column;
	gap: 0;
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 22px;
	overflow: hidden;
	background: var(--wp--preset--color--background);
	transition: transform 120ms ease, box-shadow 120ms ease;
	position: relative;
}

.ak-kazeta-card:hover {
	transform: translate(-3px, -3px);
	box-shadow: 5px 5px 0 var(--wp--preset--color--border);
}

.ak-kazeta-card a {
	text-decoration: none;
	color: inherit;
}

/* Obrázek */
.ak-kazeta-card .ak-cover {
	aspect-ratio: 1 / 1;
	background: var(--wp--preset--color--muted);
	border-bottom: 2px solid var(--wp--preset--color--border);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ak-kazeta-card .ak-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ak-kazeta-card .ak-cover-placeholder {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Tělo karty */
.ak-kazeta-card .ak-card-body {
	padding: 12px 14px 14px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
}

.ak-kazeta-card .ak-interpret {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	color: var(--wp--preset--color--accent);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-weight: 500;
}

.ak-kazeta-card .ak-album {
	font-family: var(--ak-sans);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.15;
	color: var(--wp--preset--color--text);
	text-transform: uppercase;
	letter-spacing: 0.01em;
}

.ak-kazeta-card .ak-meta {
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
	margin-top: auto;
	padding-top: 8px;
	border-top: 1px solid var(--wp--preset--color--muted);
}

.ak-kazeta-card .ak-meta span {
	padding: 2px 6px;
	background: var(--wp--preset--color--muted);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 7px;
	font-size: 10px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

/* ============================================================
   GRID
   ============================================================ */

.ak-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
	gap: 16px;
}

.ak-grid .ak-kazeta-card {
	border: 2px solid var(--wp--preset--color--border);
}

.ak-grid .ak-kazeta-card:hover {
	transform: none;
	box-shadow: none;
	z-index: 2;
	outline: 3px solid var(--wp--preset--color--accent);
	outline-offset: -3px;
}

/* ============================================================
   FILTRY — zine panel
   ============================================================ */

.ak-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin-bottom: 0;
	border: 2px solid var(--wp--preset--color--border);
	border-bottom: none;
	border-radius: 18px 18px 0 0;
	background: var(--wp--preset--color--surface);
	overflow: hidden;
}

.ak-filters > * {
	border-right: 1px solid var(--wp--preset--color--border);
	border-bottom: 1px solid var(--wp--preset--color--muted);
}

.ak-filters input[type="search"] {
	flex: 1 1 220px;
	min-width: 180px;
	padding: 10px 14px;
	border: none;
	border-right: 2px solid var(--wp--preset--color--border);
	border-radius: 0;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 13px;
	background: var(--wp--preset--color--background);
	color: var(--wp--preset--color--text);
	outline: none;
}

.ak-filters input[type="search"]::placeholder {
	color: var(--wp--preset--color--secondary);
	letter-spacing: 0.04em;
}

.ak-filters input[type="search"]:focus {
	background: #fff8f0;
	border-color: var(--wp--preset--color--accent);
}

.ak-filters select {
	padding: 10px 14px;
	border: none;
	border-right: 1px solid var(--wp--preset--color--border);
	border-radius: 0;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 12px;
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--text);
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	padding-right: 28px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%230d0d0d'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 10px center;
	outline: none;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ak-filters select:focus {
	background-color: #fff8f0;
	border-color: var(--wp--preset--color--accent);
}

/* Filtr label — volitelný nadpis nad filtry */
.ak-filters-label {
	font-family: var(--ak-sans);
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--wp--preset--color--background);
	background: var(--wp--preset--color--text);
	padding: 10px 16px;
	display: flex;
	align-items: center;
	white-space: nowrap;
	border-right: 2px solid var(--wp--preset--color--border);
}

/* ============================================================
   DETAIL KAZETY
   ============================================================ */

.ak-detail {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	margin: 32px 0;
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 16px;
	overflow: hidden;
}

@media (min-width: 768px) {
	.ak-detail {
		grid-template-columns: 300px 1fr;
	}
}

.ak-detail .ak-detail-cover {
	border-right: 2px solid var(--wp--preset--color--border);
}

/* Starý fallback — přepsáno galerií níže */
.ak-detail .ak-detail-cover > img {
	width: 100%;
	display: block;
}

/* Galerie obrázků na detail stránce kazety */
.ak-detail-gallery {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ak-detail-gallery__main {
	position: relative;
	width: 100%;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	border-radius: 14px;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
}

.ak-detail-gallery__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: opacity 0.2s ease;
}

.ak-detail-gallery__img.is-loading {
	opacity: 0.4;
}

.ak-detail-gallery__empty {
	width: 100%;
	aspect-ratio: 3 / 2;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	letter-spacing: 0.12em;
	color: var(--wp--preset--color--muted);
}

.ak-detail-gallery__strip {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.ak-detail-gallery__thumb {
	width: 72px;
	height: 48px;
	border-radius: 6px;
	overflow: hidden;
	border: 2px solid var(--wp--preset--color--border);
	padding: 0;
	background: none;
	cursor: pointer;
	transition: border-color 0.15s ease;
}

.ak-detail-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ak-detail-gallery__thumb.is-active,
.ak-detail-gallery__thumb:hover {
	border-color: var(--wp--preset--color--accent);
}

.ak-detail-content,
.ak-detail-body {
	padding: 24px 28px;
}

.ak-detail h1 {
	font-family: var(--ak-sans);
	font-size: clamp(28px, 4vw, 44px);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: -0.02em;
	line-height: 1.05;
	margin: 0 0 6px;
	color: var(--wp--preset--color--text);
}

/* Hlavička detailu — interpret+název vlevo, tlačítka vpravo */
.ak-detail-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin: -24px -28px 18px;
	padding: 20px 28px 18px;
	background: var(--wp--preset--color--surface);
	border-bottom: 2px solid var(--wp--preset--color--border);
}

.ak-detail-header__titles {
	flex: 1;
	min-width: 0;
}

.ak-detail .ak-detail-interpret {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 16px;
	color: var(--wp--preset--color--accent);
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: 6px;
}
.ak-detail-interpret__link {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color .15s ease, opacity .15s ease;
}
.ak-detail-interpret__link:hover {
	border-bottom-color: currentColor;
	opacity: .85;
}

/* Přístupnost — viditelný focus pro klávesnici (globální) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid var(--wp--preset--color--accent);
	outline-offset: 2px;
	border-radius: 2px;
}
.ak-kcard__link:focus-visible,
.ak-kcard__coverlink:focus-visible,
.ak-card__link:focus-visible,
.ak-recenze-nav__link:focus-visible {
	outline-offset: -3px;
}

/* Navigace mezi recenzemi (předchozí / další) */
.ak-recenze-nav{display:flex;gap:14px;max-width:720px;margin:0 auto;padding:0 24px}
.ak-recenze-nav__link{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:10px;text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.ak-recenze-nav__link:hover{border-color:var(--wp--preset--color--accent);transform:translateY(-2px);box-shadow:0 10px 24px -16px rgba(0,0,0,.4)}
.ak-recenze-nav__link--next{text-align:right}
.ak-recenze-nav__link--empty{visibility:hidden;border:none;background:none;box-shadow:none}
.ak-recenze-nav__dir{font-family:var(--ak-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--wp--preset--color--accent)}
.ak-recenze-nav__title{font-family:var(--ak-display);font-size:15px;line-height:1.25;color:var(--wp--preset--color--text);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
@media(max-width:600px){.ak-recenze-nav{flex-direction:column}.ak-recenze-nav__link--empty{display:none}}

/* Katalog — lišta s počtem výsledků + reset filtrů + prázdný stav */
.ak-catalog__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1200px;margin:0 auto;padding:2px 24px 12px}
.ak-catalog__count{font-family:var(--ak-mono);font-size:13px;letter-spacing:.02em;color:var(--wp--preset--color--secondary);margin:0}
.ak-catalog__reset{font-family:var(--ak-sans);font-size:13px;font-weight:600;color:var(--wp--preset--color--accent);background:none;border:1px solid var(--wp--preset--color--border);border-radius:999px;padding:5px 14px;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.ak-catalog__reset:hover{border-color:var(--wp--preset--color--accent);background:color-mix(in srgb,var(--wp--preset--color--accent) 10%,transparent)}
.ak-catalog__reset[hidden]{display:none}
.ak-empty{grid-column:1 / -1;text-align:center;padding:48px 24px;color:var(--wp--preset--color--secondary)}
.ak-empty__title{font-family:var(--ak-display);font-size:18px;margin:0 0 14px;color:var(--wp--preset--color--text)}

/* Tematické kolekce */
.ak-kolekce-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;max-width:1200px;margin:0 auto;padding:0 24px}
.ak-kolekce-card{display:flex;flex-direction:column;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.ak-kolekce-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px -16px rgba(0,0,0,.4);border-color:var(--wp--preset--color--accent)}
.ak-kolekce-card__cover{display:block;aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--wp--preset--color--muted)}
.ak-kolekce-card__cover--empty{background:repeating-linear-gradient(135deg,var(--wp--preset--color--border) 0 10px,transparent 10px 20px),var(--wp--preset--color--background)}
.ak-kolekce-card__body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:3px}
.ak-kolekce-card__name{font-family:var(--ak-display);font-size:16px;font-weight:600;color:var(--wp--preset--color--text)}
.ak-kolekce-card__count{font-family:var(--ak-mono);font-size:12px;color:var(--wp--preset--color--secondary)}

/* ── Jemný polish ── */
html{scroll-behavior:smooth}
::selection{background:color-mix(in srgb,var(--wp--preset--color--accent) 28%,transparent)}
.ak-home-hero__cover--empty{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,var(--wp--preset--color--border) 0 12px,rgba(0,0,0,0) 12px 24px),var(--wp--preset--color--surface)}
.ak-home-hero__cover-ph{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--wp--preset--color--secondary);opacity:.72}
.ak-home-hero__cover-ph .ak-cassette-icon{width:88px;height:auto}
.ak-home-hero__cover-phlbl{font-family:var(--ak-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}

/* Objevování — náhodná kazeta + objev dne */
.ak-genre-chip--random{border-color:var(--wp--preset--color--accent);color:var(--wp--preset--color--accent);font-weight:600}
.ak-genre-chip--random:hover{background:color-mix(in srgb,var(--wp--preset--color--accent) 12%,transparent)}
.ak-objev{display:flex;gap:14px;align-items:center;max-width:520px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:12px;padding:12px;text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease}
.ak-objev:hover{border-color:var(--wp--preset--color--accent);transform:translateY(-2px)}
.ak-objev__cover{width:72px;height:72px;flex-shrink:0;border-radius:8px;background-size:cover;background-position:center;background-color:var(--wp--preset--color--muted)}
.ak-objev__cover--empty{background:repeating-linear-gradient(135deg,var(--wp--preset--color--border) 0 8px,rgba(0,0,0,0) 8px 16px),var(--wp--preset--color--background)}
.ak-objev__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.ak-objev__eyebrow{font-family:var(--ak-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--accent)}
.ak-objev__title{font-family:var(--ak-display);font-size:16px;font-weight:600;color:var(--wp--preset--color--text)}
.ak-objev__artist{font-family:var(--ak-mono);font-size:12px;color:var(--wp--preset--color--secondary)}

/* Filtr archivu kapel (kraj) */
.ak-kapela-filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;max-width:1200px;margin:0 auto 18px;padding:10px 16px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:10px;font-family:var(--ak-mono);font-size:13px;color:var(--wp--preset--color--secondary)}
.ak-kapela-filterbar span{color:var(--wp--preset--color--text);font-weight:600}
.ak-kapela-filterbar a{color:var(--wp--preset--color--accent);text-decoration:none}
.ak-kapela-filterbar a:hover{text-decoration:underline}

/* ── Konvolut i pro .ak-kazeta-card (term archiv žánru/země, „Podobné", „Další od kapely", sbírka) ── */
.ak-kazeta-card{position:relative!important;display:block!important;overflow:hidden!important;border:1px solid var(--wp--preset--color--border)!important;border-radius:5px!important;background:var(--wp--preset--color--surface)!important;box-shadow:0 4px 12px -8px rgba(22,22,26,.28)!important;transition:transform .15s ease,box-shadow .15s ease}
.ak-kazeta-card::before{display:none!important}
.ak-kazeta-card:hover{transform:translateY(-3px)!important;box-shadow:0 12px 26px -16px rgba(0,0,0,.45)!important}
.ak-grid .ak-kazeta-card:hover{outline:none!important}
.ak-kazeta-card > p,.ak-kazeta-card > br{display:none!important}
.ak-kazeta-card__link{position:relative;display:block;text-decoration:none;color:inherit}
.ak-kazeta-card__cover{aspect-ratio:2/3;border-radius:5px;overflow:hidden;background:var(--wp--preset--color--muted);border:none;display:block}
.ak-kazeta-card__cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.ak-kazeta-card__cover--empty{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,var(--wp--preset--color--border) 0 10px,rgba(0,0,0,0) 10px 20px),var(--wp--preset--color--background)}
.ak-kazeta-card__cover--empty span{font-family:var(--ak-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--wp--preset--color--secondary)}
.ak-kazeta-card__link::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),inset 0 0 0 2px rgba(0,0,0,.12)}
.ak-kazeta-card__link::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px;background:linear-gradient(118deg,rgba(255,255,255,.22) 0,rgba(255,255,255,.05) 9%,rgba(255,255,255,0) 24%,rgba(255,255,255,0) 70%,rgba(255,255,255,.10) 100%)}
.ak-kazeta-card__body{position:absolute!important;left:0;right:0;bottom:0;z-index:3;padding:26px 12px 11px!important;display:flex;flex-direction:column;gap:2px;background:linear-gradient(to top,rgba(0,0,0,.92) 0,rgba(0,0,0,.78) 42%,rgba(0,0,0,.35) 72%,rgba(0,0,0,0) 100%);border:none}
.ak-kazeta-card__interpret{font-family:var(--ak-mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#e8763d}
.ak-kazeta-card__title{font-family:var(--ak-display)!important;font-size:14px!important;font-weight:600!important;line-height:1.2!important;color:#fff!important;text-transform:none!important}
.ak-kazeta-card__rok{font-family:var(--ak-mono);font-size:12px;color:rgba(255,255,255,.75)}

/* Oprava: archivy/single CPT, kde se main vykreslí jako flow (DB override šablony) — vycentrovat na 1200px */
body.post-type-archive .ak-main.is-layout-flow,
body.archive .ak-main.is-layout-flow,
body.single .ak-main.is-layout-flow {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

/* Komentáře — zmenšit přebujelé nadpisy */
.ak-comments .wp-block-comments-title,
.ak-comments .comments-title{font-family:var(--ak-display);font-size:22px;font-weight:700;line-height:1.25;margin:0 0 20px;letter-spacing:-0.01em}
.ak-comments .comment-reply-title{font-family:var(--ak-display);font-size:20px;font-weight:700;line-height:1.25;margin:0 0 14px}
.ak-comments .comment-reply-title small{font-size:13px;font-weight:400}

.ak-detail-popis {
	margin: 16px 0 20px;
	font-size: 15px;
	line-height: 1.6;
	color: var(--wp--preset--color--text);
	opacity: 0.85;
}

.ak-detail-popis p {
	margin: 0 0 12px;
}

.ak-detail-popis p:last-child {
	margin-bottom: 0;
}

/*
 * Tabulka parametrů. Selektor byl zanořený pod `.ak-detail`, což je obal detailu
 * KAZETY — u přístroje (`.ak-pr-detail`) a pásky proto `<dl class="ak-detail-meta">`
 * nechytilo vůbec nic a vypsalo se jako holý seznam dt/dd pod sebou.
 * Třída se jinde nepoužívá, takže stačí odzanořit.
 */
.ak-detail-meta {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 0;
	font-size: 13px;
	margin: 0 0 24px;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	overflow: hidden;
}

.ak-detail-meta dt,
.ak-detail-meta dd {
	padding: 7px 12px;
	margin: 0;
	border-bottom: 1px solid var(--wp--preset--color--muted);
}

.ak-detail-meta dt:last-of-type,
.ak-detail-meta dd:last-of-type {
	border-bottom: none;
}

.ak-detail-meta dt {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
	background: var(--wp--preset--color--muted);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	border-right: 1px solid var(--wp--preset--color--border);
	white-space: nowrap;
	display: flex;
	align-items: center;
}

.ak-detail-meta dd {
	color: var(--wp--preset--color--text);
	background: var(--wp--preset--color--surface);
}

/* ============================================================
   TRACKLIST
   ============================================================ */

.ak-tracklist-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
	margin: 24px 0;
}
@media (min-width: 640px) {
	.ak-tracklist-grid { grid-template-columns: 1fr 1fr; }
}
.ak-tracklist-fe {
	margin: 0;
}

.ak-tracklist-fe h3 {
	font-family: var(--ak-sans);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent);
	background: var(--wp--preset--color--muted);
	padding: 7px 14px;
	margin: 0;
	display: inline-block;
	border-radius: 10px 10px 0 0;
}

.ak-tracklist-fe ol {
	list-style: none;
	padding: 0;
	margin: 0;
	border: 1px solid var(--wp--preset--color--border);
	border-top: none;
	border-radius: 0 10px 10px 10px;
	overflow: hidden;
}

.ak-tracklist-fe li {
	display: grid;
	grid-template-columns: 36px 1fr auto;
	gap: 10px;
	padding: 8px 12px;
	border-bottom: 1px solid var(--wp--preset--color--muted);
	font-size: 14px;
	align-items: center;
}

.ak-tracklist-fe li br { display: none; }

.ak-tracklist-fe li:last-child {
	border-bottom: none;
}

.ak-tracklist-fe li:nth-child(even) {
	background: var(--wp--preset--color--surface);
}

.ak-tracklist-fe .ak-pozice {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	color: var(--wp--preset--color--accent);
	font-size: 11px;
	font-weight: 600;
}

.ak-tracklist-fe .ak-delka {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	color: var(--wp--preset--color--secondary);
	font-size: 11px;
}

/* ============================================================
   TLAČÍTKO NAČÍST DALŠÍ
   ============================================================ */

.ak-loadmore {
	display: block;
	margin: 0 auto;
	padding: 12px 28px;
	background: var(--wp--preset--color--text);
	color: var(--wp--preset--color--background);
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 14px;
	font-family: var(--ak-sans);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 120ms ease, color 120ms ease, transform 120ms ease, box-shadow 120ms ease;
	margin-top: 24px;
}

.ak-loadmore:hover {
	background: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--background);
	transform: translate(-2px, -2px);
	box-shadow: 4px 4px 0 var(--wp--preset--color--border);
}

.ak-loadmore:disabled {
	opacity: 0.4;
	cursor: wait;
	transform: none;
	box-shadow: none;
}

/* ============================================================
   PRÁZDNÝ STAV
   ============================================================ */

.ak-empty {
	text-align: center;
	padding: 60px 16px;
	color: var(--wp--preset--color--secondary);
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 13px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border: 2px dashed var(--wp--preset--color--muted);
}

/* ============================================================
   SECTION NADPIS — kazetový label styl
   ============================================================ */

.ak-section-heading {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 0;
}

.ak-section-heading::before {
	content: '';
	display: block;
	width: 6px;
	height: 100%;
	min-height: 28px;
	background: var(--wp--preset--color--accent);
}

/* ============================================================
   FOOTER
   ============================================================ */

.ak-footer {
	border-top: 3px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--text);
	color: var(--wp--preset--color--background);
	padding: 24px;
}

.ak-footer a {
	color: var(--wp--preset--color--background);
}

.ak-footer a:hover {
	color: var(--wp--preset--color--accent-2);
}

.ak-footer-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
}

.ak-footer-brand {
	font-family: var(--ak-sans);
	font-size: 22px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: -0.02em;
}

.ak-footer-brand span {
	color: var(--wp--preset--color--accent);
}

.ak-footer-meta {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	color: #888;
	letter-spacing: 0.06em;
}

/* ============================================================
   UTILITY
   ============================================================ */

.ak-badge {
	display: inline-block;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 10px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 3px 7px;
	border: 1px solid currentColor;
	border-radius: 7px;
	line-height: 1;
}

.ak-badge--red   { color: var(--wp--preset--color--accent); }
.ak-badge--black { color: var(--wp--preset--color--text); }

/* Stránkování */
.ak-pagination {
	display: flex;
	justify-content: center;
	gap: 0;
	margin: 32px 0;
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 14px;
	overflow: hidden;
	width: fit-content;
	margin-inline: auto;
}

.ak-pagination a,
.ak-pagination span {
	display: block;
	padding: 10px 16px;
	font-family: var(--ak-sans);
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	text-decoration: none;
	color: var(--wp--preset--color--text);
	border-right: 1px solid var(--wp--preset--color--border);
}

.ak-pagination a:last-child,
.ak-pagination span:last-child {
	border-right: none;
}

.ak-pagination a:hover {
	background: var(--wp--preset--color--text);
	color: var(--wp--preset--color--background);
}

.ak-pagination .current {
	background: var(--wp--preset--color--text);
	color: var(--wp--preset--color--background);
}

/* ============================================================
   BLOG — karty a single post
   ============================================================ */

.ak-page-banner {
	background: var(--wp--preset--color--background);
}

.ak-blog-cats {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 16px 24px;
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.ak-blog-cat-chip {
	display: inline-block;
	padding: 5px 14px;
	font-family: 'Special Elite', serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 20px;
	color: var(--wp--preset--color--secondary);
	background: transparent;
	transition: background 0.12s, color 0.12s, border-color 0.12s;
}

.ak-blog-cat-chip:hover,
.ak-blog-cat-chip.is-active {
	background: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
	color: #000;
}

.ak-blog-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 16px;
}

/* post-template renderuje <li> — karta uvnitř se musí natáhnout na výšku
   řádku, jinak má každá „bublina" jinou výšku podle délky perexu.
   WP layout „flow" navíc přidává margin-block-start všem li kromě prvního,
   což je v gridu posouvá dolů → nulujeme. */
.ak-blog-grid > li {
	display: flex;
	margin-block-start: 0 !important;
}

.ak-blog-card {
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 22px;
	overflow: hidden;
	background: var(--wp--preset--color--background);
	display: flex;
	flex-direction: column;
	width: 100%;
}

.ak-blog-card__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}

.ak-blog-card__excerpt {
	margin-top: auto;
}

.ak-blog-card:hover {
	z-index: 2;
	outline: 3px solid var(--wp--preset--color--accent);
	outline-offset: -3px;
}

.ak-blog-card__img img,
.ak-blog-card__img .wp-post-image {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	display: block;
	border-bottom: 2px solid var(--wp--preset--color--border);
}

.ak-blog-card__body {
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
}

.ak-blog-card__date {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 10px;
	color: var(--wp--preset--color--accent);
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ak-blog-card__title,
.ak-blog-card__title a {
	font-family: var(--ak-sans);
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.01em;
	line-height: 1.15;
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.ak-blog-card__title a:hover {
	color: var(--wp--preset--color--accent);
}

.ak-blog-card__excerpt {
	font-size: 14px;
	color: var(--wp--preset--color--secondary);
	line-height: 1.55;
	margin-top: auto;
}

.ak-blog-card__excerpt a {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 12px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--text);
	text-decoration: none;
	border-bottom: 2px solid var(--wp--preset--color--text);
}

/* Single post */
.ak-post-header {
	background: var(--wp--preset--color--background);
}

.ak-post-cat a {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--wp--preset--color--background);
	background: var(--wp--preset--color--accent);
	padding: 3px 8px;
	text-decoration: none;
}

.ak-post-meta {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 12px;
	color: var(--wp--preset--color--secondary);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.ak-post-featured-img img {
	width: 100%;
	display: block;
}

.ak-post-content {
	font-size: 17px;
	line-height: 1.75;
}

.ak-post-content h2,
.ak-post-content h3 {
	font-family: var(--ak-sans);
	text-transform: uppercase;
}

.ak-post-content blockquote {
	border-left: 4px solid var(--wp--preset--color--accent);
	margin-left: 0;
	padding: 12px 20px;
	background: var(--wp--preset--color--surface);
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 15px;
}

.ak-post-tags a {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--text);
	border: 1px solid var(--wp--preset--color--border);
	padding: 3px 8px;
	text-decoration: none;
}

.ak-post-tags a:hover {
	background: var(--wp--preset--color--text);
	color: var(--wp--preset--color--background);
}

.ak-back-link a {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
}

.ak-back-link a:hover {
	color: var(--wp--preset--color--accent);
}

.ak-post-footer {
	background: var(--wp--preset--color--surface);
}

/* Komentáře */
.ak-comments {
	border-top: 2px solid var(--wp--preset--color--border);
	padding-top: 32px;
}

/* ============================================================
   HODNOCENÍ — KAZETY (náhrada hvězdiček)
   ============================================================ */

.ak-stars {
	display: inline-flex;
	gap: 4px;
	align-items: center;
	line-height: 1;
}

.ak-star {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 13px;
	height: 9px;
	color: var(--wp--preset--color--border);
	opacity: 0.5;
	flex-shrink: 0;
}

.ak-star .ak-cassette-icon {
	width: 100%;
	height: 100%;
}

.ak-star--filled {
	color: var(--wp--preset--color--accent);
	opacity: 1;
}

.ak-stars--large .ak-star {
	width: 19px;
	height: 13px;
}

.ak-stars__label {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 13px;
	font-weight: 600;
	color: var(--wp--preset--color--text);
	margin-left: 6px;
}

/* ============================================================
   RECENZE — archiv karet
   ============================================================ */

.ak-review-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr));
	gap: 16px;
}

.ak-review-card {
	display: flex;
	flex-direction: column;
	border: 2px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--background);
}

.ak-review-card:hover {
	z-index: 2;
	outline: 3px solid var(--wp--preset--color--accent);
	outline-offset: -3px;
}

.ak-review-card__cover {
	border-bottom: 2px solid var(--wp--preset--color--border);
}

.ak-review-card__cover img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	display: block;
}

.ak-review-card__body {
	padding: 14px 16px 16px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ak-review-card__kazeta {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--wp--preset--color--muted);
}

.ak-review-card__kazeta-interpret {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px; /* z 10 px — jméno interpreta je informace, ne dekorace */
	color: var(--wp--preset--color--secondary);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.ak-review-card__kazeta-title {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 12px;
	font-weight: 600;
	color: var(--wp--preset--color--accent);
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ak-review-card__kazeta-title:hover {
	text-decoration: underline;
}

.ak-review-card__title {
	font-family: var(--ak-sans);
	font-size: 20px;
	font-weight: 600;
	text-transform: uppercase;
	line-height: 1.15;
	margin: 2px 0;
}

.ak-review-card__title a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.ak-review-card__title a:hover {
	color: var(--wp--preset--color--accent);
}

.ak-review-card__perex {
	font-size: 14px;
	color: var(--wp--preset--color--secondary);
	line-height: 1.5;
}

.ak-review-card__meta {
	display: flex;
	gap: 10px;
	margin-top: auto;
	padding-top: 8px;
	border-top: 1px solid var(--wp--preset--color--muted);
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 10px;
	color: var(--wp--preset--color--secondary);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

/* ============================================================
   RECENZE — detail hlavička
   ============================================================ */

.ak-recenze-header {
	border-bottom: 2px solid var(--wp--preset--color--border);
	padding: 28px 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.ak-recenze-kazeta-link {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px 16px;
	border: 2px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--surface);
}

.ak-recenze-kazeta-thumb img {
	width: 60px;
	height: 60px;
	object-fit: cover;
	display: block;
	border: 1px solid var(--wp--preset--color--border);
}

.ak-recenze-kazeta-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.ak-recenze-kazeta-label {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--wp--preset--color--secondary);
}

.ak-recenze-kazeta-name {
	font-family: var(--ak-sans);
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.ak-recenze-kazeta-name:hover {
	color: var(--wp--preset--color--accent);
}

.ak-recenze-title-block {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.ak-recenze-title {
	font-family: var(--ak-sans);
	font-size: clamp(28px, 4vw, 44px);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: -0.02em;
	line-height: 1.05;
	margin: 0;
}

.ak-recenze-meta {
	display: flex;
	gap: 14px;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 12px;
	color: var(--wp--preset--color--secondary);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.ak-recenze-perex {
	font-size: 17px;
	line-height: 1.6;
	color: var(--wp--preset--color--secondary);
	font-style: italic;
	padding-top: 8px;
	border-top: 1px solid var(--wp--preset--color--muted);
}

/* ══════════════════════════════════════════════════════════════════════════════
   M2 — Magazine homepage
   ══════════════════════════════════════════════════════════════════════════════ */

/* Obecné sekce */
.ak-section {
	margin: 0;
	padding: 40px 0 0;
	border-top: 2px solid var(--wp--preset--color--border);
}

.ak-section:first-child {
	border-top: none;
	padding-top: 0;
}

.ak-section--dark {
	background: var(--wp--preset--color--border);
	color: var(--wp--preset--color--background);
	padding: 32px 24px;
	margin: 40px -24px 0;
}

.ak-section-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 20px;
}

.ak-section-title {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: clamp(19px, 2.2vw, 23px);
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	margin: 0;
}

.ak-section--dark .ak-section-title {
	color: var(--wp--preset--color--background);
}

.ak-section-more {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
	white-space: nowrap;
}

.ak-section-more:hover {
	color: var(--wp--preset--color--accent);
}

/* ── Hero ── */
.ak-hero {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 22px;
	overflow: hidden;
	margin-bottom: 0;
}

@media (max-width: 720px) {
	.ak-hero {
		grid-template-columns: 1fr;
	}
}

.ak-hero__image {
	border-right: 2px solid var(--wp--preset--color--border);
	overflow: hidden;
	min-height: 320px;
}

.ak-hero__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ak-hero__body {
	padding: 32px 28px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 12px;
}

.ak-hero__cat {
	font-family: var(--ak-sans);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: var(--wp--preset--color--background);
	background: var(--wp--preset--color--border);
	padding: 2px 8px;
	border-radius: 7px;
	display: inline-block;
	text-decoration: none;
}

.ak-hero__cat:hover {
	background: var(--wp--preset--color--accent);
}

.ak-hero__title {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: clamp(22px, 3vw, 32px);
	text-transform: uppercase;
	line-height: 1.1;
	letter-spacing: -0.01em;
	margin: 0;
}

.ak-hero__title a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.ak-hero__title a:hover {
	color: var(--wp--preset--color--accent);
}

.ak-hero__excerpt {
	font-size: 15px;
	line-height: 1.6;
	color: var(--wp--preset--color--secondary);
	margin: 0;
}

.ak-hero__meta {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
	display: flex;
	gap: 12px;
}

.ak-hero__link {
	font-family: var(--ak-sans);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent);
	text-decoration: none;
	border-bottom: 2px solid var(--wp--preset--color--accent);
	padding-bottom: 2px;
	align-self: flex-start;
}

.ak-hero__link:hover {
	color: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
}

/* ── Novinky strip ── */
.ak-novinky-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

@media (max-width: 720px) {
	.ak-novinky-grid {
		grid-template-columns: 1fr;
	}
}

.ak-novinky-card {
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 22px;
	overflow: hidden;
}

.ak-novinky-card__img {
	overflow: hidden;
	border-bottom: 2px solid var(--wp--preset--color--border);
	aspect-ratio: 16/9;
}

.ak-novinky-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ak-novinky-card__body {
	padding: 14px 16px 16px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.ak-novinky-card__cat {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 10px;
	letter-spacing: 0.1em;
	color: var(--wp--preset--color--accent);
	font-weight: 500;
}

.ak-novinky-card__title {
	font-family: var(--ak-sans);
	font-weight: 600;
	font-size: 17px;
	text-transform: uppercase;
	letter-spacing: -0.01em;
	line-height: 1.2;
	margin: 0;
}

.ak-novinky-card__title a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.ak-novinky-card__title a:hover {
	color: var(--wp--preset--color--accent);
}

.ak-novinky-card__date {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
}

/* ── Spotlight: vydavatelství ── */
.ak-spotlight {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 0;
	border: 2px solid var(--wp--preset--color--background);
}

@media (max-width: 600px) {
	.ak-spotlight {
		grid-template-columns: 1fr;
	}
}

.ak-spotlight__logo {
	border-right: 2px solid var(--wp--preset--color--background);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: rgba(255,255,255,0.05);
}

.ak-spotlight__logo img {
	width: 100%;
	height: auto;
	display: block;
}

.ak-spotlight__logo--placeholder {
	background: rgba(255,255,255,0.1);
}

.ak-spotlight__logo--placeholder span {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: 40px;
	color: var(--wp--preset--color--background);
	opacity: 0.5;
}

.ak-spotlight__body {
	padding: 24px 28px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.ak-spotlight__meta {
	display: flex;
	gap: 16px;
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	color: rgba(245,240,232,0.6);
	letter-spacing: 0.05em;
}

.ak-spotlight__name {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: 28px;
	text-transform: uppercase;
	letter-spacing: -0.02em;
	margin: 0;
	line-height: 1;
}

.ak-spotlight__name a {
	color: var(--wp--preset--color--background);
	text-decoration: none;
}

.ak-spotlight__name a:hover {
	color: var(--wp--preset--color--accent-2);
}

.ak-spotlight__desc {
	font-size: 14px;
	line-height: 1.6;
	color: rgba(245,240,232,0.8);
}

.ak-spotlight__link {
	font-family: var(--ak-sans);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent-2);
	text-decoration: none;
	align-self: flex-start;
	border-bottom: 1px solid var(--wp--preset--color--accent-2);
	padding-bottom: 1px;
}

/* ── 4-column grid variant ── */
/*
 * „Podobné nahrávky" pod detailem měly napevno 4 sloupce, takže karta vyšla
 * na 288 px — víc než kazeta týdne i než katalog (230 px). Stejná pružná mřížka
 * jako jinde; `--4` je teď spíš historický název než pevný počet.
 */
.ak-grid--4 {
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
}



/* ══════════════════════════════════════════════════════════════════════════════
   M2 — Label archive
   ══════════════════════════════════════════════════════════════════════════════ */

/* Sekce (vydavatelství / výrobci / duplikační firmy) */
.ak-label-section {
	margin-bottom: 48px;
}

.ak-label-section__heading {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--wp--preset--color--secondary);
	padding: 6px 0;
	border-bottom: 2px solid var(--wp--preset--color--border);
	margin: 0 0 0;
}

/* Typ badge */
.ak-label-type-badge {
	/* `inline-block` samo nestačí: rodič .ak-label-card__body je flex sloupec, takže
	   se štítek stane flex položkou. Ta se „blockifikuje" (inline-block → block) a
	   při výchozím align-items:normal (= stretch) se roztáhne přes celou kartu —
	   bublina pak vypadala jako pruh s textem přilepeným vlevo.
	   align-self:flex-start ji vrátí na šířku obsahu; mimo flex kontext je inertní. */
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	width: fit-content;
	font-family: 'IBM Plex Mono', monospace;
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 3px 9px;
	border-radius: 28px;
	border: 1px solid currentColor;
	margin-bottom: 4px;
	line-height: 1.4;
}

.ak-label-type-badge--vydavatelstvi {
	color: var(--wp--preset--color--accent);
}

.ak-label-type-badge--vyrobce {
	color: #5a7a5a;
}

.ak-label-type-badge--duplikacni_firma {
	color: #7a5a8a;
}

.ak-label-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 16px;
	margin-top: 8px;
}

.ak-label-card {
	border: 2px solid var(--wp--preset--color--border);
	border-radius: 22px;
	overflow: hidden;
}

.ak-label-card__link {
	display: flex;
	gap: 0;
	text-decoration: none;
	color: inherit;
}

.ak-label-card__link:hover .ak-label-card__name {
	color: var(--wp--preset--color--accent);
}

.ak-label-card__logo {
	width: 80px;
	min-width: 80px;
	border-right: 2px solid var(--wp--preset--color--border);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: var(--wp--preset--color--muted, #e8e3d8);
}

.ak-label-card__logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ak-label-card__logo--placeholder {
	background: var(--wp--preset--color--muted);
}

.ak-label-card__logo--placeholder span {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: 22px;
	color: var(--wp--preset--color--secondary);
	letter-spacing: -0.02em;
}

.ak-label-card__body {
	padding: 14px 16px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.ak-label-card__name {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: 18px;
	text-transform: uppercase;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--text) !important;
	color: var(--wp--preset--color--border);
	margin: 0;
	transition: color 0.1s;
}

.ak-label-card__meta {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
	display: flex;
	gap: 10px;
}

.ak-label-card__excerpt {
	font-size: 13px;
	line-height: 1.5;
	color: var(--wp--preset--color--secondary);
	margin: 4px 0 0;
}

/* ══════════════════════════════════════════════════════════════════════════════
   M2 — Label single (profil vydavatelství)
   ══════════════════════════════════════════════════════════════════════════════ */

.ak-label-header {
	display: grid;
	grid-template-columns: 180px 1fr;
	border: 2px solid var(--wp--preset--color--border);
	margin-bottom: 0;
}

@media (max-width: 600px) {
	.ak-label-header {
		grid-template-columns: 1fr;
	}
}

.ak-label-header__logo {
	border-right: 2px solid var(--wp--preset--color--border);
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--wp--preset--color--muted, #e8e3d8);
	padding: 24px;
	overflow: hidden;
}

.ak-label-header__logo img {
	width: 100%;
	height: auto;
	display: block;
}

.ak-label-header__logo-placeholder {
	width: 100%;
	aspect-ratio: 1;
	background: var(--wp--preset--color--border);
	display: flex;
	align-items: center;
	justify-content: center;
}

.ak-label-header__logo-placeholder span {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: 48px;
	color: var(--wp--preset--color--background);
	letter-spacing: -0.03em;
}

.ak-label-header__info {
	padding: 28px 32px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ak-label-header__name {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: clamp(24px, 3vw, 36px);
	text-transform: uppercase;
	letter-spacing: -0.02em;
	margin: 0;
	line-height: 1;
}

.ak-label-header__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.ak-label-meta-item {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 12px;
	color: var(--wp--preset--color--secondary);
}

.ak-label-meta-item strong {
	color: var(--wp--preset--color--border);
}

.ak-label-header__links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 4px;
}

.ak-label-link {
	font-family: var(--ak-sans);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--border);
	text-decoration: none;
	border: 2px solid var(--wp--preset--color--border);
	padding: 3px 10px;
	display: inline-block;
}

.ak-label-link:hover {
	background: var(--wp--preset--color--border);
	color: var(--wp--preset--color--background);
}

.ak-label-link--ig {
	cursor: default;
	border-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--secondary);
	background: none;
}

.ak-label-description {
	border: 2px solid var(--wp--preset--color--border);
	border-top: none;
	padding: 28px 32px;
	font-size: 16px;
	line-height: 1.75;
	max-width: 700px;
}

.ak-label-kazety {
	margin-top: 40px;
	border-top: 2px solid var(--wp--preset--color--border);
	padding-top: 24px;
}

.ak-label-kazety__heading {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: 13px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	margin: 0 0 20px;
}

/* ══════════════════════════════════════════════════════════════════════════════
   M3 — Mobilní responsivita
   ══════════════════════════════════════════════════════════════════════════════ */

/* Nav — horizontal scroll na malých obrazovkách */
@media (max-width: 768px) {
	.ak-site-header {
		padding: 0 16px;
	}

	.ak-masthead {
		flex-direction: column;
		gap: 4px;
		padding: 12px 0 8px;
	}

	.ak-nav {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		white-space: nowrap;
		scrollbar-width: none;
	}

	.ak-nav::-webkit-scrollbar {
		display: none;
	}

	.ak-nav .wp-block-navigation-item__content {
		white-space: nowrap;
	}
}

/* Hero — stack na mobilu */
@media (max-width: 720px) {
	.ak-hero {
		grid-template-columns: 1fr;
	}

	.ak-hero__image {
		border-right: none;
		border-bottom: 2px solid var(--wp--preset--color--border);
		min-height: 200px;
		max-height: 260px;
	}

	.ak-hero__body {
		padding: 20px 16px;
	}

	.ak-hero__title {
		font-size: 24px;
	}
}

/* Novinky strip — 1 sloupec na mobilu */
@media (max-width: 600px) {
	.ak-novinky-grid {
		grid-template-columns: 1fr;
	}

	.ak-novinky-card__body {
		padding: 10px 12px 12px;
	}
}

/* Spotlight — stack na mobilu */
@media (max-width: 600px) {
	.ak-spotlight {
		grid-template-columns: 1fr;
	}

	.ak-spotlight__logo {
		border-right: none;
		border-bottom: 2px solid var(--wp--preset--color--background);
		min-height: 140px;
	}

	.ak-spotlight__body {
		padding: 16px 20px;
	}
}

/* Label grid — 1 sloupec na mobilu */
@media (max-width: 480px) {
	.ak-label-grid {
		grid-template-columns: 1fr;
	}
}

/* Label header — stack na mobilu */
@media (max-width: 600px) {
	.ak-label-header {
		grid-template-columns: 1fr;
	}

	.ak-label-header__logo {
		border-right: none;
		border-bottom: 2px solid var(--wp--preset--color--border);
		min-height: 120px;
	}

	.ak-label-header__info {
		padding: 16px 20px;
	}
}

/* Katalog grid — 2 sloupce na mobilu */
@media (max-width: 600px) {
	.ak-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ak-grid--4 {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Review grid — 1 sloupec na mobilu */
@media (max-width: 600px) {
	.ak-review-grid {
		grid-template-columns: 1fr;
	}
}

/* Sekce padding */
@media (max-width: 768px) {
	.ak-section {
		padding: 28px 0 0;
	}

	.ak-section--dark {
		margin: 28px -16px 0;
		padding: 24px 16px;
	}

	.ak-section-header {
		margin-bottom: 14px;
	}
}

/* Stránka banner — kompaktnější na mobilu */
@media (max-width: 600px) {
	.ak-page-banner {
		padding: 16px;
	}

	.ak-page-banner__title {
		font-size: 22px;
	}
}

/* Detail kazety — stack na mobilu */
@media (max-width: 720px) {
	.ak-detail {
		grid-template-columns: 1fr;
	}
}

/* Detail kazety — hlavička (titulek + akce) pod sebe na mobilu */
@media (max-width: 600px) {
	.ak-detail-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}
	.ak-detail-actions {
		justify-content: flex-start;
		width: 100%;
	}
	.ak-detail-actions .ak-demand {
		flex-basis: auto;
		justify-content: flex-start;
	}
}

/* ak-main padding na mobilu */
@media (max-width: 768px) {
	.ak-main {
		padding-left: 16px;
		padding-right: 16px;
	}
}


/* ── Related kazety ────────────────────────────────────────────────────────── */
/* ── Recenze na detailu kazety ──────────────────────────────────────────────── */
.ak-detail-recenze {
	margin-top: 40px;
	padding-top: 32px;
	border-top: 2px solid var(--wp--preset--color--border);
}

.ak-detail-recenze__heading {
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin-bottom: 20px;
	color: var(--wp--preset--color--accent);
}

/* Formulář „Napsat recenzi" — ohraničená karta, ať pole nevisí ve vzduchu */
.ak-recenze-form{
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 12px;
	padding: 24px 24px 28px;
	box-shadow: 0 1px 2px rgba(0,0,0,.05);
}
.ak-recenze-form .ak-detail-recenze__heading{margin-top:0}
.ak-recenze-form .ak-submit__grid{grid-template-columns:1fr}
.ak-recenze-form > p:empty{display:none}
.ak-recenze-form br{display:none}
.ak-recenze-form p:empty{display:none}

.ak-recenze-item {
	padding: 20px;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 10px;
	background: var(--wp--preset--color--surface);
	margin-bottom: 16px;
}

.ak-recenze-item:last-child {
	margin-bottom: 0;
}

.ak-recenze-item__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
	flex-wrap: wrap;
}

.ak-recenze-item__meta {
	display: flex;
	gap: 10px;
	align-items: center;
	font-size: 12px;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	color: var(--wp--preset--color--muted);
}

.ak-recenze-item__author {
	font-weight: 600;
	color: var(--wp--preset--color--text);
}

.ak-recenze-item__title {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 8px;
}

.ak-recenze-item__title a {
	color: var(--wp--preset--color--text);
	text-decoration: none;
}

.ak-recenze-item__title a:hover {
	color: var(--wp--preset--color--accent);
}

.ak-recenze-item__perex {
	font-size: 14px;
	line-height: 1.6;
	color: var(--wp--preset--color--text);
	opacity: 0.8;
	margin-bottom: 12px;
}

.ak-recenze-item__link {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--accent);
	text-decoration: none;
}

.ak-recenze-item__link:hover {
	text-decoration: underline;
}

/* ── M53: Social Feed ───────────────────────────────────────────────────────── */
.ak-social-feed {
	margin: 48px 0;
	position: relative;
}

.ak-social-feed__heading {
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.ak-social-feed__platforms {
	display: flex;
	gap: 6px;
	align-items: center;
}

.ak-social-platform {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	color: #fff;
}

.ak-social-platform--ig { background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); }
.ak-social-platform--fb { background: #1877f2; }

/* Track — horizontální scroll */
.ak-social-feed__track {
	display: flex;
	gap: 14px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding-bottom: 8px;
	cursor: grab;
	user-select: none;
}

.ak-social-feed__track::-webkit-scrollbar { display: none; }
.ak-social-feed__track.is-dragging { cursor: grabbing; }

/* Karta */
.ak-social-card {
	flex: 0 0 220px;
	width: 220px;
	border-radius: 12px;
	overflow: hidden;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	scroll-snap-align: start;
	text-decoration: none;
	color: var(--wp--preset--color--text);
	transition: transform 0.15s ease, border-color 0.15s ease;
	display: flex;
	flex-direction: column;
}

.ak-social-card:hover {
	transform: translateY(-2px);
	border-color: var(--wp--preset--color--accent);
}

.ak-social-card--instagram:hover { border-color: #e1306c; }
.ak-social-card--facebook:hover  { border-color: #1877f2; }

/* Obrázek */
.ak-social-card__img-wrap {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: var(--wp--preset--color--base);
	flex-shrink: 0;
}

.ak-social-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.3s ease;
}

.ak-social-card:hover .ak-social-card__img {
	transform: scale(1.04);
}

.ak-social-card__img-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0.15;
	font-size: 48px;
}

.ak-social-card__overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

.ak-social-card__video-badge {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(0,0,0,0.6);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
}

/* Body */
.ak-social-card__body {
	padding: 12px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
}

.ak-social-card__platform-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 10px;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 2px 6px;
	border-radius: 4px;
	width: fit-content;
}

.ak-social-card__platform-badge--instagram {
	background: rgba(225, 48, 108, 0.12);
	color: #e1306c;
}

.ak-social-card__platform-badge--facebook {
	background: rgba(24, 119, 242, 0.12);
	color: #1877f2;
}

.ak-social-card__caption {
	font-size: 12px;
	line-height: 1.5;
	color: var(--wp--preset--color--text);
	opacity: 0.85;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin: 0;
}

.ak-social-card__caption--placeholder {
	opacity: 0.4;
	font-style: italic;
}

.ak-social-card__date {
	font-size: 11px;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	color: var(--wp--preset--color--muted);
	margin-top: auto;
}

/* Placeholder karta */
.ak-social-card--placeholder {
	opacity: 0.5;
	pointer-events: none;
}

/* Nav tlačítka */
.ak-social-feed__nav {
	display: flex;
	gap: 8px;
	margin-top: 16px;
	justify-content: flex-end;
}

.ak-social-feed__btn {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 1px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--text);
	font-size: 18px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s, border-color 0.15s;
	line-height: 1;
}

.ak-social-feed__btn:hover {
	background: var(--wp--preset--color--accent);
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
}

.ak-social-feed__btn:disabled {
	opacity: 0.3;
	pointer-events: none;
}

/* Light mode */
.ak-social-card {
	background: #fafaf8;
	border-color: #e5e5e1;
}

.ak-social-card__platform-badge--instagram { color: #c9134e; background: rgba(201,19,78,0.1); }
.ak-social-card__platform-badge--facebook  { color: #0a52c4; background: rgba(10,82,196,0.1); }

/* ── Related kazety ─────────────────────────────────────────────────────── */
.ak-related {
	margin-top: 48px;
	padding-top: 32px;
	border-top: 2px solid var(--wp--preset--color--border);
}

.ak-related__heading {
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.ak-related__more {
	margin: 16px 0 0;
	font-family: var(--ak-sans);
	font-size: 13.5px;
}
.ak-related__more a {
	color: var(--wp--preset--color--accent);
	text-decoration: none;
	font-weight: 600;
}
.ak-related__more a:hover { text-decoration: underline; }

/* ── Bulk import admin UI ──────────────────────────────────────────────────── */
.ak-bulk-import {
	max-width: 1200px;
}

.ak-bi-layout {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 24px;
	margin-top: 16px;
	align-items: start;
}

@media (max-width: 900px) {
	.ak-bi-layout { grid-template-columns: 1fr; }
}

.ak-bi-bar-wrap {
	height: 8px;
	background: #e0e0e0;
	border-radius: 7px;
	overflow: hidden;
	margin-bottom: 6px;
}

.ak-bi-bar {
	height: 100%;
	background: #2271b1;
	transition: width 0.3s ease;
	border-radius: 7px;
}

#ak-bi-counter {
	font-size: 13px;
	color: #555;
}

#ak-bi-table th,
#ak-bi-table td {
	vertical-align: middle;
	font-size: 13px;
}

/* ── Uživatelská sbírka — Mám / Chci tlačítka ─────────────────────────────── */
.ak-collection-bar {
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex-shrink: 0;
	margin-top: 4px;
}

.ak-coll-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 5px 12px;
	border: 1px solid var(--wp--preset--color--border, #3a3630);
	background: transparent;
	color: var(--wp--preset--color--text, #e8e0d0);
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	cursor: pointer;
	border-radius: 4px;
	white-space: nowrap;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
}

.ak-coll-btn:hover {
	background: var(--wp--preset--color--foreground, #111);
	color: var(--wp--preset--color--background, #fff);
}

.ak-coll-btn.active[data-action="own"] {
	background: #1a6b28;
	border-color: #1a6b28;
	color: #fff;
}

.ak-coll-btn.active[data-action="want"] {
	background: #b83222;
	border-color: #b83222;
	color: #fff;
}

/* ── Stránka Moje sbírka ───────────────────────────────────────────────────── */
.ak-sbirka {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px 60px;
}

.ak-sbirka__section {
	margin-bottom: 48px;
}

.ak-sbirka__heading {
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	border-bottom: 3px solid var(--wp--preset--color--foreground, #111);
	padding-bottom: 8px;
	margin-bottom: 20px;
}

.ak-sbirka__count {
	font-size: 14px;
	font-weight: 400;
	opacity: 0.6;
	margin-left: 8px;
	text-transform: none;
	letter-spacing: 0;
}

.ak-sbirka__empty {
	font-style: italic;
	opacity: 0.6;
	padding: 12px 0;
}

.ak-sbirka__login {
	padding: 24px;
	border: 2px solid var(--wp--preset--color--foreground, #111);
	text-align: center; /* M7 */
}

/* ── Vyhledávací stránka ───────────────────────────────────────────────────── */
.ak-search-page {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 20px 60px;
}

.ak-search-bar {
	margin-bottom: 24px;
}

.ak-search-input {
	width: 100%;
	padding: 12px 16px;
	font-size: 18px;
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	border: 3px solid var(--wp--preset--color--foreground, #111);
	background: var(--wp--preset--color--background, #fff);
	color: var(--wp--preset--color--foreground, #111);
	outline: none;
	box-sizing: border-box;
}

.ak-search-input:focus {
	border-color: var(--wp--preset--color--primary, #e74c3c);
}

.ak-search-status {
	font-size: 13px;
	opacity: 0.6;
	margin: 0 0 16px;
	min-height: 20px;
}

/* ══════════════════════════════════════════════════════════════════════════════
   M11 — Uživatelské profily
   ══════════════════════════════════════════════════════════════════════════════ */
.ak-profil {
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 20px 60px;
}

.ak-profil__header {
	display: flex;
	align-items: center;
	gap: 24px;
	margin-bottom: 40px;
	padding-bottom: 24px;
	border-bottom: 3px solid var(--wp--preset--color--foreground, #111);
}

.ak-profil__avatar img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	border: 3px solid var(--wp--preset--color--foreground, #111);
	display: block;
}

.ak-profil__name {
	font-size: clamp(1.5rem, 4vw, 2.2rem);
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-weight: 700;
	text-transform: uppercase;
	margin: 0 0 6px;
}

.ak-profil__meta {
	font-size: 13px;
	opacity: 0.6;
	margin: 0;
}

.ak-profil__counts {
	display: flex;
	gap: 20px;
	margin-top: 8px;
}

.ak-profil__count-box {
	background: var(--wp--preset--color--foreground, #111);
	color: var(--wp--preset--color--background, #fff);
	padding: 6px 14px;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}

.ak-profil__count-box span {
	font-size: 18px;
	display: block;
}

.ak-profil__section-title {
	font-size: 1.2rem;
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	text-transform: uppercase;
	letter-spacing: .05em;
	margin: 32px 0 16px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--wp--preset--color--foreground, #111);
}

/* ══════════════════════════════════════════════════════════════════════════════
   M12 — Statistiky katalogu
   ══════════════════════════════════════════════════════════════════════════════ */
.ak-stats {
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 20px 60px;
}

.ak-stats__totals {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 16px;
	margin-bottom: 48px;
}

.ak-stats__total-box {
	background: var(--wp--preset--color--foreground, #111);
	color: var(--wp--preset--color--background, #fff);
	padding: 20px 16px;
	text-align: center;
}

.ak-stats__total-num {
	font-size: clamp(2rem, 5vw, 3rem);
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-weight: 700;
	display: block;
	line-height: 1;
}

.ak-stats__total-label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .08em;
	opacity: .7;
	margin-top: 4px;
	display: block;
}

.ak-stats__charts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
	gap: 32px;
	margin-bottom: 48px;
}

.ak-stats__chart-box {
	border: 2px solid var(--wp--preset--color--foreground, #111);
	padding: 20px;
}

.ak-stats__chart-title {
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: .95rem;
	text-transform: uppercase;
	letter-spacing: .06em;
	margin: 0 0 16px;
}

.ak-stats__recent-title {
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: 1.1rem;
	text-transform: uppercase;
	letter-spacing: .05em;
	margin: 0 0 12px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--wp--preset--color--foreground, #111);
}

.ak-stats__recent-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ak-stats__recent-list li {
	padding: 8px 0;
	border-bottom: 1px solid rgba(0,0,0,.1);
	font-size: 14px;
}

.ak-stats__recent-list a {
	color: inherit;
	text-decoration: none;
	font-weight: 600;
}

.ak-stats__recent-list a:hover {
	color: var(--wp--preset--color--primary, #e74c3c);
}

/* ══════════════════════════════════════════════════════════════════════════════
   M14 — Infinite scroll spinner
   ══════════════════════════════════════════════════════════════════════════════ */
.ak-infinite-spinner {
	text-align: center;
	padding: 24px;
	font-size: 13px;
	opacity: .5;
	font-style: italic;
	width: 100%;
}

/* ══════════════════════════════════════════════════════════════════════════════
   M17 — Komentáře na recenzích
   ══════════════════════════════════════════════════════════════════════════════ */
.single-recenze .wp-block-post-comments-form,
.single-recenze .comment-respond {
	border-top: 3px solid var(--wp--preset--color--foreground, #111);
	margin-top: 40px;
	padding-top: 32px;
}

.single-recenze .comment-list {
	list-style: none;
	padding: 0;
	margin: 0 0 32px;
}

.single-recenze .comment-list .comment {
	border-bottom: 1px solid rgba(0,0,0,.1);
	padding: 20px 0;
}

.single-recenze .comment-list .comment-author {
	font-weight: 700;
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	text-transform: uppercase;
}

.single-recenze .comment-list .comment-meta {
	font-size: 12px;
	opacity: .5;
	margin-bottom: 8px;
}

/* ══════════════════════════════════════════════════════════════════════════════
   M18 — Newsletter opt-in
   ══════════════════════════════════════════════════════════════════════════════ */
.ak-newsletter {
	background: var(--wp--preset--color--foreground, #111);
	color: var(--wp--preset--color--background, #fff);
	padding: 40px 32px;
	margin: 40px 0;
	max-width: 600px;
}

.ak-newsletter__title {
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: 1.5rem;
	text-transform: uppercase;
	letter-spacing: .06em;
	margin: 0 0 8px;
}

.ak-newsletter__desc {
	font-size: 14px;
	opacity: .7;
	margin: 0 0 20px;
}

.ak-newsletter__form {
	display: flex;
	gap: 0;
}

.ak-newsletter__input {
	flex: 1;
	padding: 12px 16px;
	font-size: 15px;
	border: 2px solid var(--wp--preset--color--background, #fff);
	background: transparent;
	color: var(--wp--preset--color--background, #fff);
	outline: none;
	min-width: 0;
}

.ak-newsletter__input::placeholder {
	opacity: .5;
}

.ak-newsletter__btn {
	padding: 12px 20px;
	font-family: var(--wp--preset--font-family--oswald, 'Special Elite', serif);
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	background: var(--wp--preset--color--primary, #e74c3c);
	color: #fff;
	border: 2px solid var(--wp--preset--color--primary, #e74c3c);
	cursor: pointer;
	white-space: nowrap;
}

.ak-newsletter__btn:hover {
	background: #c0392b;
	border-color: #c0392b;
}

.ak-newsletter__msg {
	margin-top: 12px;
	font-size: 13px;
	min-height: 20px;
}

@media (max-width: 480px) {
	.ak-newsletter__form {
		flex-direction: column;
	}
}

/* ══════════════════════════════════════════════════════════════════════════════
   M19 — Srovnávač kazet
   ══════════════════════════════════════════════════════════════════════════════ */

/* Compare checkbox na kartě */
.ak-cmp-wrap {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 8px;
	padding-top: 8px;
	border-top: 1px solid rgba(0,0,0,.08);
}

.ak-cmp-cb {
	cursor: pointer;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	accent-color: var(--wp--preset--color--primary, #e74c3c);
}

.ak-cmp-label {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .06em;
	cursor: pointer;
	opacity: .6;
}

/* Floating bar */
.ak-cmp-bar {
	position: fixed;
	bottom: -80px;
	left: 0;
	right: 0;
	background: var(--wp--preset--color--foreground, #111);
	color: var(--wp--preset--color--background, #fff);
	padding: 12px 20px;
	z-index: 9000;
	transition: bottom .3s ease;
}
.ak-cmp-bar.ak-cmp-bar--visible {
	bottom: 0;
}

/* ============================================================
   KAZETOVÁ GRAFIKA — dekorativní prvky
   ============================================================ */

/* Malé kolečko v rohu karty kazety */
.ak-kazeta-card::before {
	content: '';
	position: absolute;
	top: -24px;
	right: -24px;
	width: 80px;
	height: 80px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='22' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Ccircle cx='24' cy='24' r='7' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='24' y1='2' x2='24' y2='17' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='24' y1='31' x2='24' y2='46' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='2' y1='24' x2='17' y2='24' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='31' y1='24' x2='46' y2='24' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='5.6' y1='5.6' x2='14.3' y2='14.3' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='33.7' y1='33.7' x2='42.4' y2='42.4' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='42.4' y1='5.6' x2='33.7' y2='14.3' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='14.3' y1='33.7' x2='5.6' y2='42.4' stroke='%230d0d0d' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	pointer-events: none;
	opacity: 0.07;
	z-index: 0;
}

/* Velká kazeta jako dekorace v hero sekci */
.ak-hero__body {
	position: relative;
	overflow: hidden;
}
.ak-hero__body::after {
	content: '';
	position: absolute;
	bottom: -18px;
	right: -18px;
	width: 220px;
	height: 132px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 120'%3E%3Crect x='4' y='4' width='192' height='112' rx='8' fill='none' stroke='%230d0d0d' stroke-width='2.5'/%3E%3Crect x='30' y='10' width='140' height='35' rx='3' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Ccircle cx='55' cy='72' r='25' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Ccircle cx='55' cy='72' r='6' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='55' y1='47' x2='55' y2='53' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='55' y1='91' x2='55' y2='97' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='30' y1='72' x2='36' y2='72' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='74' y1='72' x2='80' y2='72' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Ccircle cx='145' cy='72' r='25' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Ccircle cx='145' cy='72' r='6' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='145' y1='47' x2='145' y2='53' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='145' y1='91' x2='145' y2='97' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='120' y1='72' x2='126' y2='72' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cline x1='164' y1='72' x2='170' y2='72' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Cpath d='M 42 97 L 42 112 C 55 104 75 100 100 100 C 125 100 145 104 158 112 L 158 97' fill='none' stroke='%230d0d0d' stroke-width='1.5'/%3E%3Ccircle cx='15' cy='15' r='4' fill='none' stroke='%230d0d0d' stroke-width='1.2'/%3E%3Cline x1='12.2' y1='15' x2='17.8' y2='15' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Cline x1='15' y1='12.2' x2='15' y2='17.8' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Ccircle cx='185' cy='15' r='4' fill='none' stroke='%230d0d0d' stroke-width='1.2'/%3E%3Cline x1='182.2' y1='15' x2='187.8' y2='15' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Cline x1='185' y1='12.2' x2='185' y2='17.8' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Ccircle cx='15' cy='105' r='4' fill='none' stroke='%230d0d0d' stroke-width='1.2'/%3E%3Cline x1='12.2' y1='105' x2='17.8' y2='105' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Cline x1='15' y1='102.2' x2='15' y2='107.8' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Ccircle cx='185' cy='105' r='4' fill='none' stroke='%230d0d0d' stroke-width='1.2'/%3E%3Cline x1='182.2' y1='105' x2='187.8' y2='105' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Cline x1='185' y1='102.2' x2='185' y2='107.8' stroke='%230d0d0d' stroke-width='0.8'/%3E%3Ccircle cx='88' cy='107' r='3' fill='none' stroke='%230d0d0d' stroke-width='1.2'/%3E%3Ccircle cx='112' cy='107' r='3' fill='none' stroke='%230d0d0d' stroke-width='1.2'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	pointer-events: none;
	opacity: 0.07;
	z-index: 0;
}

/* Oddělovač sekcí — vymotaná páska */
.ak-tape-divider {
	display: block;
	width: 100%;
	height: 40px;
	margin: 8px 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 40' preserveAspectRatio='xMidYMid meet'%3E%3Cpath d='M0 20 C20 4,40 36,60 20 C80 4,90 36,110 20 C130 4,140 36,160 20 C180 4,190 36,210 20 C230 4,240 36,260 20 C280 4,290 36,310 20 C330 4,340 36,360 20 C380 4,390 36,400 20' fill='none' stroke='%230d0d0d' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: 400px 40px;
	background-position: center;
	opacity: 0.12;
}

/* SVG grafika — na tmavém pozadí bez invertování */
.ak-kazeta-card::before,
.ak-hero__body::after {
	opacity: 0.06;
}
.ak-tape-divider {
	opacity: 0.1;
}

/* ============================================================
   BAREVNÉ SCHÉMA
   ============================================================ */

/* CSS proměnné pro světlý mód — musí být na :root aby přebily WP inline styles */
html,
html :root {
	--wp--preset--color--background: #fafaf8 !important;
	--wp--preset--color--surface:    #ffffff !important;
	--wp--preset--color--muted:      #f2f2f0 !important;
	--wp--preset--color--border:     #e5e5e1 !important;
	--wp--preset--color--text:       #16161a !important;
	--wp--preset--color--secondary:  #6b6b70 !important;
	--wp--preset--color--accent:     #d9480f !important;
	--wp--preset--color--accent-2:   #a63305 !important;
	--wp--preset--color--white:      #fafaf8 !important;
	--wp--preset--color--black:      #16161a !important;
}

:root {
	--wp--preset--color--background: #fafaf8;
	--wp--preset--color--surface:    #ffffff;
	--wp--preset--color--muted:      #f2f2f0;
	--wp--preset--color--border:     #e5e5e1;
	--wp--preset--color--text:       #16161a;
	--wp--preset--color--secondary:  #6b6b70;
	--wp--preset--color--accent:     #d9480f;
	--wp--preset--color--accent-2:   #a63305;
	--wp--preset--color--white:      #fafaf8;
	--wp--preset--color--black:      #16161a;
}

/* Základní pozadí a text */
body,
.wp-site-blocks,
main,
.wp-block-group {
	background-color: #fafaf8 !important;
	color: #16161a !important;
}

/* Hlavička a navigace */
.ak-site-header,
.ak-masthead {
	background-color: #ffffff !important;
	border-bottom-color: #e5e5e1 !important;
}

.ak-nav a,
.ak-logo {
	color: #16161a !important;
}

.ak-nav a:hover {
	color: #d9480f !important;
}

/* Patička */
.ak-footer,
footer {
	background-color: #f2f2f0 !important;
	color: #16161a !important;
}

/* Drobečková navigace
   Pruh je záměrně bez pozadí a bez spodní linky. Dřív měl bílou plochu
   a border přes celou šířku okna — obsah webu je ale svázaný na 1200 px,
   takže bílý pás vyčuhoval na obě strany a vypadal jako rozbité rozvržení.
   Text drobečků je uvnitř constrained groupy, takže sedí na osu se zbytkem. */
.ak-breadcrumb-wrap {
	background: transparent !important;
	border-bottom: 0 !important;
}

.ak-breadcrumb__item,
.ak-breadcrumb__sep,
.ak-breadcrumb__current {
	color: #6b6b70 !important;
}

.ak-breadcrumb__item a {
	color: #16161a !important;
}

/* Karty kazet */
.ak-kazeta-card__front,
.ak-kazeta-card__back {
	background-color: #ffffff;
	border-color: #e5e5e1;
}

.ak-kazeta-card__back-interpret,
.ak-kazeta-card__back-album {
	color: #16161a;
}

.ak-kazeta-card__back-side {
	color: #d9480f;
	border-bottom-color: #e5e5e1;
}

.ak-kazeta-card__back-chip {
	border-color: #e5e5e1;
	color: #6b6b70;
}

.ak-kazeta-card__back-link {
	background: #d9480f;
	color: #fff;
}

.ak-kazeta-card__front-label {
	background: linear-gradient(to top, rgba(244,240,232,0.9) 0%, transparent 100%);
}

.ak-kazeta-card__front-interpret {
	color: #d9480f;
}

.ak-kazeta-card__front-title {
	color: #16161a;
}

/* Blog, recenze, novinky karty */
.ak-blog-card,
.ak-review-card,
.ak-novinky-card,
.ak-label-card,
.ak-sidebar-widget {
	background-color: #ffffff !important;
	border-color: #e5e5e1 !important;
}

.ak-blog-card__title,
.ak-review-card__title,
.ak-novinky-card__title,
.ak-blog-card__excerpt,
.ak-review-card__excerpt {
	color: #16161a !important;
}

/* Filtry a vstupy */
input,
select,
textarea {
	background-color: #fafaf8 !important;
	color: #16161a !important;
	border-color: #e5e5e1 !important;
}

.ak-catalog-filters,
.ak-filter-bar {
	background-color: #ffffff !important;}

/* ============================================================
   KAPELY — archiv
   ============================================================ */

.ak-kapela-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 10px;
	margin-top: 8px;
	align-items: start;
}

.ak-kapela-card {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 10px;
	background: var(--wp--preset--color--surface);
	transition: border-color 0.18s, transform 0.18s;
}
.ak-kapela-card:hover {
	border-color: var(--wp--preset--color--accent);
	transform: translateY(-2px);
}

/* Kompaktní horizontální řádek: malá fotka vlevo + název vpravo */
.ak-kapela-card__link {
	text-decoration: none;
	color: inherit;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px;
}

.ak-kapela-card__photo {
	width: 52px;
	height: 52px;
	flex-shrink: 0;
	overflow: hidden;
	border-radius: 8px;
	background: var(--wp--preset--color--muted);
}
.ak-kapela-card__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.ak-kapela-card__photo--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--secondary);
}
.ak-kapela-card__photo--placeholder svg {
	width: 24px;
	height: 24px;
}

.ak-kapela-card__body {
	flex: 1;
	min-width: 0;
	padding: 0;
}

.ak-kapela-card__name {
	font-family: Oswald, 'Arial Narrow', Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin: 0;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ak-kapela-card__meta {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 10.5px;
	color: var(--wp--preset--color--secondary);
	margin: 2px 0 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ak-kapela-card__count {
	display: inline-block;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--secondary);
	margin-top: 2px;
}

/* Neutralizace wpautop artefaktů v kartách kapel (prázdné/balastní <p>, <br>, marginy) */
.ak-kapela-card > p { display: none; }            /* junk <p> na úrovni <article> */
.ak-kapela-card__link > p { display: none; }      /* prázdný <p> hned po <a> */
.ak-kapela-card__body br { display: none; }
.ak-kapela-card__body p { margin: 0; }
.ak-kapela-card__body p:empty { display: none; }
/* skryj wpautop <p> bez smyslu (ponech meta a obal s počtem kazet) */
.ak-kapela-card__body > p:not(.ak-kapela-card__meta):not(:has(.ak-kapela-card__count)) { display: none; }

/* ============================================================
   KAPELY — detail profilu
   ============================================================ */

.ak-kapela-profile {
	max-width: 100%;
}

.ak-kapela-profile__hero {
	display: grid;
	grid-template-columns: 180px 1fr;
	border: 2px solid var(--wp--preset--color--border);
	margin-bottom: 32px;
	align-items: stretch;
}

@media (max-width: 600px) {
	.ak-kapela-profile__hero {
		grid-template-columns: 1fr;
	}
}

.ak-kapela-profile__photo {
	border-right: 2px solid var(--wp--preset--color--border);
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--wp--preset--color--muted, #e8e3d8);
	padding: 24px;
	overflow: hidden;
}
.ak-kapela-profile__photo img {
	width: 100%;
	height: auto;
	display: block;
}

@media (max-width: 600px) {
	.ak-kapela-profile__photo {
		border-right: none;
		border-bottom: 2px solid var(--wp--preset--color--border);
	}
}

.ak-kapela-profile__photo-placeholder {
	width: 100%;
	aspect-ratio: 1;
	background: var(--wp--preset--color--border);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ak-kapela-profile__photo-placeholder span {
	font-family: var(--ak-sans);
	font-weight: 700;
	font-size: 48px;
	color: var(--wp--preset--color--background);
	letter-spacing: -0.03em;
}

.ak-kapela-profile__info {
	padding: 28px 32px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ak-kapela-profile__eyebrow {
	display: inline-block;
	align-self: flex-start;
	font-family: 'IBM Plex Mono', monospace;
	font-size: 9px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 2px 7px;
	border-radius: 28px;
	border: 1px solid currentColor;
	line-height: 1.6;
	color: var(--wp--preset--color--accent);
}

.ak-kapela-profile__name {
	font-family: var(--ak-sans);
	font-size: clamp(24px, 3vw, 36px);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: -0.02em;
	line-height: 1;
	margin: 0;
}

.ak-kapela-profile__dl {
	display: grid;
	grid-template-columns: 110px 1fr;
	gap: 0;
	margin: 0;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 10px;
	overflow: hidden;
	background: var(--wp--preset--color--surface);
}
.ak-kapela-profile__dl dt {
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--secondary);
	padding: 9px 14px;
	border-bottom: 1px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--muted);
	display: flex;
	align-items: center;
}
.ak-kapela-profile__dl dd {
	font-size: 14px;
	margin: 0;
	padding: 9px 16px;
	border-bottom: 1px solid var(--wp--preset--color--border);
	display: flex;
	align-items: center;
}
.ak-kapela-profile__dl dt:last-of-type,
.ak-kapela-profile__dl dd:last-of-type {
	border-bottom: none;
}

.ak-kapela-profile__links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
}

.ak-kapela-link {
	display: inline-block;
	font-family: 'IBM Plex Mono', ui-monospace, monospace;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 4px 10px;
	border: 1.5px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--text);
	transition: border-color 0.15s, background 0.15s;
}
.ak-kapela-link:hover {
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--accent);
}

.ak-kapela-profile__bio {
	margin-bottom: 40px;
	font-size: 15px;
	line-height: 1.7;
	max-width: 720px;
}

.ak-kapela-kazety__heading {
	font-family: Oswald, 'Arial Narrow', Arial, sans-serif;
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--wp--preset--color--background);
	background: var(--wp--preset--color--text);
	display: inline-block;
	padding: 4px 14px;
	margin: 0 0 24px;
}

/* Diskografie kapely měla vlastní minimum 180 px, takže se do řady vešlo šest
   kazet po 190 px — hustší než kdekoli jinde. Stejné minimum jako zbytek webu
   (210 px), aby vycházelo pět sloupců na šířce 1200 px. */
.ak-kapela-kazety__grid {
	grid-template-columns: repeat(auto-fill, minmax(min(210px, 100%), 1fr));
}

@media (max-width: 600px) {
	.ak-kapela-grid {
		grid-template-columns: 1fr;
		gap: 8px;
	}
}

/* ── Breadcrumb ─────────────────────────────────────────────────────────── */
.ak-breadcrumb {
	font-size: 13px;
	padding: 0;
}
.ak-breadcrumb__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	align-items: center;
}
.ak-breadcrumb__item {
	display: flex;
	align-items: center;
	color: var(--wp--preset--color--secondary, #6b6560);
}
.ak-breadcrumb__item + .ak-breadcrumb__item::before {
	content: '›';
	margin: 0 6px;
	color: var(--wp--preset--color--secondary, #6b6560);
}
.ak-breadcrumb__item a {
	color: var(--wp--preset--color--secondary, #6b6560);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color 0.15s, color 0.15s;
}
.ak-breadcrumb__item a:hover {
	color: var(--wp--preset--color--text, #16161a);
	border-bottom-color: var(--wp--preset--color--text, #16161a);
}
.ak-breadcrumb__item--current {
	color: var(--wp--preset--color--text, #16161a);
	font-weight: 500;
}
.ak-breadcrumb-wrap {
	background: transparent;
	border-bottom: 0;
}

/*
 * Mezera pod drobečky: co nejmenší a stejná na všech stránkách.
 * Jádro WP dává každému dítěti `.wp-site-blocks` margin-block-start ve výši
 * block gapu (24 px). Tady ho stlačíme na 4 px.
 * Pozor na past: `.ak-breadcrumb-wrap + main` nefunguje — šablonová část bez
 * `tagName` se obaluje do `<div class="wp-block-template-part">`, takže pruh
 * není přímý sourozenec `main`. Proto se cílí na ten obal přes :has().
 */
.wp-block-template-part:has( > .ak-breadcrumb-wrap ) + main {
	margin-block-start: 4px;
}

/* ── Prázdný stav sekce (inc/prazdna-sekce.php) ──────────────────────────── */
.ak-prazdna-sekce {
	margin: 8px 0 24px;
	padding: 22px 24px;
	border: 1px dashed var(--wp--preset--color--border, #e5e5e1);
	border-radius: 14px;
	background: var(--wp--preset--color--surface, #fff);
}
.ak-prazdna-sekce__title {
	margin: 0 0 6px;
	font-family: var(--ak-display);
	font-size: 20px;
	letter-spacing: -0.01em;
}
.ak-prazdna-sekce__text {
	margin: 0 0 14px;
	max-width: 62ch;
	color: var(--wp--preset--color--secondary, #6b6560);
}
.ak-prazdna-sekce__cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin: 0;
}
.ak-prazdna-sekce__alt {
	font-size: 14px;
}

/* ── Fakta na detailu události a servisu ─────────────────────────────────── */
.ak-fakta {
	margin: 18px 0 26px;
	padding: 14px 16px;
	border: 1px solid var(--wp--preset--color--border, #e5e5e1);
	border-radius: 12px;
	background: var(--wp--preset--color--surface, #fff);
}
.ak-fakta__row {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	padding: 6px 0;
	border-bottom: 1px dashed var(--wp--preset--color--border, #e5e5e1);
}
.ak-fakta__row:last-child {
	border-bottom: 0;
}
.ak-fakta__key {
	flex: 0 0 130px;
	margin: 0;
	font-family: var(--ak-mono);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--secondary, #6b6560);
	line-height: 1.9;
}
.ak-fakta__val {
	flex: 1 1 200px;
	margin: 0;
	font-size: 15px;
}
.ak-fakta__note {
	font-family: var(--ak-mono);
	font-size: 12px;
	color: var(--wp--preset--color--secondary, #6b6560);
}
.ak-page-title {
	font-family: var(--ak-display);
	font-size: clamp(26px, 4vw, 38px);
	letter-spacing: -0.02em;
	margin: 10px 0 0;
}

/* ── Výsledky nativního hledání (templates/search.html) ─────────────────── */
.ak-search-form {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 18px;
}
.ak-search-form .ak-search-input {
	flex: 1 1 320px;
	min-width: 0;
}
.ak-search-hint {
	font-size: 14px;
	color: var(--wp--preset--color--secondary, #6b6560);
	max-width: 60ch;
}
/* Počet nálezů v nadpisu sekce — nemá křičet stejně jako nadpis. */
.ak-section-title__count {
	font-family: var(--ak-mono);
	font-size: 12px;
	font-weight: 400;
	color: var(--wp--preset--color--secondary, #6b6560);
	vertical-align: 2px;
}

/*
 * Prázdné odstavce po wpautop nesmí zabírat místo.
 * `<p></p>` sám nic nevykreslí (výška 0), ale nese svislé okraje 20 px.
 * Reálný dopad: na /technika/ takový odstavec skončil přímo v `.ak-hubnav`
 * (na stránkách Scény je zanořený hlouběji v `.ak-hubnav__sub`), jeho spodní
 * okraj propadl na okraj `.ak-site-header` — a protože ta má `border-bottom`,
 * margin se nepropadl skrz, ale přidal se do výšky hlavičky. Technika tak měla
 * hlavičku 257 px a Scéna 237 px, čili jinak velkou mezeru nad drobečky.
 * Odstranit odstavce u zdroje nejde (viz inc/wpautop-guard.php — přerenderování
 * bloku počet prázdných `<p>` naopak zvýšilo), takže se schovají tady.
 */
p:empty {
	display: none;
}

/* ============================================================
   MODERN 2026 — globální modernizace (fonty/tvary/spacing)
   Připojeno na konec → přebíjí starší pravidla. Teplá světlá paleta zůstává.
   ============================================================ */

/* Typografie: nadpisy = Space Grotesk, bez verzálek, čitelněji */
h1, h2, h3, h4, h5, h6, .ak-heading,
.ak-masthead .ak-site-title,
.ak-section-title, .ak-page-banner h1 {
	font-family: var(--ak-display) !important;
	text-transform: none !important;
	letter-spacing: -0.015em !important;
	font-weight: 600;
}
body { font-family: var(--ak-sans); line-height: 1.65; }

/* Navigace: pryč ostré předěly, hover plocha + zaoblení, bez verzálek */
.ak-site-header { border-bottom: 1px solid var(--wp--preset--color--border); }
.ak-masthead { border-bottom: 1px solid var(--wp--preset--color--border); }
.ak-masthead .ak-site-title { border-right: 1px solid var(--wp--preset--color--border); text-transform: none !important; }
.ak-nav { padding: 6px 8px; gap: 2px; }
.ak-nav li { border-right: 0 !important; }
.ak-nav a {
	font-family: var(--ak-sans) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-weight: 500;
	border-radius: 9px;
	padding: 10px 14px;
	color: var(--wp--preset--color--secondary);
	transition: background .16s ease, color .16s ease;
}
.ak-nav a:hover { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--text); }

/* Tlačítka: pilulky, bez verzálek, jemný zdvih */
.wp-element-button, .wp-block-button__link, button:not(.ak-nav button),
.ak-btn, .ak-button, input[type="submit"] {
	font-family: var(--ak-sans) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-weight: 600;
	border-radius: 999px !important;
	display: inline-block;
	text-align: center;
	transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}
.wp-element-button:hover, .ak-btn:hover, input[type="submit"]:hover { transform: translateY(-1px); }

/* Formulářové prvky: zaoblení */
input[type="text"], input[type="search"], input[type="email"], input[type="number"],
select, textarea, .ak-search input {
	border-radius: 10px !important;
	font-family: var(--ak-sans);
}
textarea { border-radius: 12px !important; }

/* Karty: zaoblení, jemný stín, hover zdvih */
.ak-review-card, .ak-novinky-card, .ak-label-card, .ak-kazeta-card,
.ak-blog-card, .ak-shop-card, .ak-event-card, .ak-nabidka-card, .ak-kapela-card {
	border-radius: 14px !important;
	overflow: hidden;
	box-shadow: 0 6px 16px -10px rgba(22,22,26,.18);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ak-review-card:hover, .ak-novinky-card:hover, .ak-label-card:hover, .ak-kazeta-card:hover,
.ak-blog-card:hover, .ak-shop-card:hover, .ak-event-card:hover, .ak-nabidka-card:hover, .ak-kapela-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 38px -20px rgba(22,22,26,.30);
}
.ak-kazeta-card img, .ak-review-card__cover img, .ak-blog-card__img img,
.ak-novinky-card__img img, .ak-label-card__logo img { transition: transform .3s ease; }
.ak-kazeta-card:hover img { transform: scale(1.04); }

/* Card tituly = display font, bez verzálek */
.ak-review-card__title, .ak-novinky-card__title, .ak-label-card__name,
.ak-blog-card__title, .ak-kazeta-card__title {
	font-family: var(--ak-display) !important;
	text-transform: none !important;
	letter-spacing: -0.01em !important;
}

/* Žánrové / kategorie chipy: moderní pilulky, bez verzálek */
.ak-blog-cat-chip, .ak-filter-chip, .ak-chip {
	font-family: var(--ak-sans) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	border-radius: 999px !important;
}

/* Drobečky + tagy: čistý sans */
.ak-breadcrumb, .ak-breadcrumb * { font-family: var(--ak-sans); text-transform: none; letter-spacing: 0; }

/* ── Homepage: hero Kazeta týdne + statistiky + žánrové pilulky ── */
/* Kazeta týdne byla 300 px široká proti 230 px v katalogu a na první obrazovce
   trčela. 240 px ji nechá být největší kazetou na stránce, ale v jedné rodině
   s ostatními. */
.ak-home-hero{
	display:grid; grid-template-columns:240px 1fr; gap:36px; align-items:center;
	padding:36px 24px 32px; max-width:1200px; margin:0 auto;
}
.ak-home-hero__cover{
	border-radius:10px; overflow:hidden; aspect-ratio:2/3; width:100%; max-width:240px;
	background:var(--wp--preset--color--surface);
	box-shadow:0 18px 36px -20px rgba(22,22,26,.35);
}
.ak-home-hero__cover img{width:100%;height:100%;object-fit:cover;display:block}
/* Bez fotky nese hero generovaný J-card — musí vyplnit celý rámeček. */
.ak-home-hero__cover--jcard{position:relative;background:none}
.ak-home-hero__cover--jcard .ak-jcard{position:absolute;inset:0}
.ak-home-hero__eyebrow{
	display:inline-flex; align-items:center; gap:8px; font-family:var(--ak-mono);
	font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--wp--preset--color--accent); margin-bottom:14px;
}
.ak-home-hero__eyebrow::before{content:"";width:26px;height:1px;background:var(--wp--preset--color--accent)}
.ak-home-hero__title{font-family:var(--ak-display);font-size:clamp(28px,3.8vw,46px);line-height:1.05;letter-spacing:-.02em;margin:0 0 8px}
.ak-home-hero__title a{color:var(--wp--preset--color--text);text-decoration:none}
.ak-home-hero__artist{font-size:18px;font-weight:600;color:var(--wp--preset--color--accent);margin-bottom:16px}
.ak-home-hero__tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.ak-tag{font-family:var(--ak-mono);font-size:12.5px;padding:6px 12px;border-radius:999px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);color:var(--wp--preset--color--text)}
.ak-tag--accent{background:color-mix(in srgb,var(--wp--preset--color--accent) 16%,transparent);border-color:color-mix(in srgb,var(--wp--preset--color--accent) 38%,transparent);color:var(--wp--preset--color--accent)}
.ak-home-hero__desc{color:var(--wp--preset--color--secondary);font-size:16px;max-width:48ch;margin:0 0 22px;line-height:1.6}
.ak-btn--primary{background:var(--wp--preset--color--accent)!important;border-color:var(--wp--preset--color--accent)!important;color:#fff!important;padding:9px 18px;font-size:14px}
/* wpautop kolem <a> obalu vkládá prázdné <p> — v grid layoutu by zabralo buňku */
.ak-home-hero > p{display:none}
a.ak-home-hero__cover{display:block;cursor:pointer;text-decoration:none;color:inherit;transition:transform .2s ease, box-shadow .2s ease}
a.ak-home-hero__cover:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(22,22,26,.12)}

.ak-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1200px;margin:0 auto;padding:4px 24px 40px}
.ak-stat{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:2px}
.ak-stat__n{font-family:var(--ak-display);font-weight:700;font-size:26px;letter-spacing:-.01em;color:var(--wp--preset--color--text)}
.ak-stat__l{font-size:13px;color:var(--wp--preset--color--secondary)}

.ak-genre-chips{display:flex;flex-wrap:wrap;gap:10px;max-width:1200px;margin:0 auto;padding:0 24px 40px}
.ak-genre-chip{font-family:var(--ak-sans);font-size:14px;font-weight:500;padding:9px 16px;border-radius:999px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);color:var(--wp--preset--color--secondary);text-decoration:none;transition:.15s}
.ak-genre-chip:hover{color:var(--wp--preset--color--text);border-color:var(--wp--preset--color--accent)}
.ak-genre-chip--all{background:var(--wp--preset--color--text);color:var(--wp--preset--color--background);border-color:var(--wp--preset--color--text)}

@media(max-width:860px){
	.ak-home-hero{grid-template-columns:1fr;gap:24px;padding:28px 18px}
	.ak-home-hero__cover{max-width:230px}
	.ak-stats{grid-template-columns:repeat(2,1fr)}
}

/* ── Stránka /statistiky/ — wrapper je svislý stack (přebíjí homepage grid .ak-stats) ── */
.ak-stats:has(> .ak-stats-totals){display:block;max-width:1100px;margin:0 auto;padding:4px 24px 48px}
.ak-stats-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 28px}
.ak-stats-total{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.ak-stats-total__num{font-family:var(--ak-display);font-weight:700;font-size:30px;line-height:1;color:var(--wp--preset--color--text)}
.ak-stats-total__label{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--wp--preset--color--secondary)}
.ak-stats-charts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:0 0 28px}
.ak-stats-chart-wrap{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:18px 20px;min-width:0}
.ak-stats-chart-title{font-family:var(--ak-display);font-size:16px;font-weight:600;margin:0 0 12px;color:var(--wp--preset--color--text)}
.ak-stats-chart-wrap canvas{max-width:100%!important;height:auto!important}
.ak-stats-recent{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:18px 22px;margin:0 0 18px}
.ak-stats-recent-title{font-family:var(--ak-display);font-size:16px;font-weight:600;margin:0 0 10px;color:var(--wp--preset--color--text)}
.ak-stats-recent-list{list-style:none;margin:0;padding:0}
.ak-stats-recent-list li{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--wp--preset--color--border)}
.ak-stats-recent-list li:last-child{border-bottom:none}
.ak-stats-recent-list a{text-decoration:none;color:var(--wp--preset--color--text)}
.ak-stats-recent-list a:hover{color:var(--wp--preset--color--accent)}
.ak-stats-recent__date{font-size:12px;color:var(--wp--preset--color--secondary);white-space:nowrap}
.ak-stats-updated{font-size:12px;color:var(--wp--preset--color--secondary);text-align:right;margin:0}
.ak-stats br{display:none}
.ak-stats p:empty{display:none}
@media(max-width:760px){
	.ak-stats-totals{grid-template-columns:repeat(2,1fr)}
	.ak-stats-charts{grid-template-columns:1fr}
}

/* ── Homepage: čisté karty „Nejnovější kazety" (náhrada flip karet) ── */
/* Stejná mřížka jako v katalogu (`.ak-grid`): pružné sloupce od 210 px,
   ne napevno čtyři. Na homepage vycházely karty 279 px, v katalogu 230 px,
   takže tytéž kazety byly na úvodní stránce viditelně větší. */
.ak-kgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:22px;max-width:1200px;margin:0 auto;padding:0 24px}
.ak-kcard{display:flex;flex-direction:column;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;overflow:hidden;text-decoration:none;box-shadow:0 6px 16px -10px rgba(22,22,26,.18);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ak-kcard:hover{transform:translateY(-4px);box-shadow:0 16px 38px -20px rgba(22,22,26,.30);border-color:var(--wp--preset--color--accent)}
.ak-kcard__cover{aspect-ratio:1/1;overflow:hidden;background:var(--wp--preset--color--muted);display:flex;align-items:center;justify-content:center}
.ak-kcard__cover img,.ak-kcard__img{width:100%!important;height:100%!important;object-fit:cover;display:block;transition:transform .35s ease}
.ak-kcard:hover .ak-kcard__img,.ak-kcard:hover .ak-kcard__cover img,.ak-kazeta-card:hover .ak-kazeta-card__cover img{transform:scale(1.04)}
.ak-kcard__placeholder{font-family:var(--ak-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--secondary)}

/* ── Generovaný J-card obal: papírová textura, psací stroj, mikrointerakce (placeholder pro kazety bez fotky) ── */
@keyframes ak-reel-spin{to{transform:rotate(360deg)}}
.ak-jcard{width:100%;height:100%;display:flex;flex-direction:column;color:#2c2820;overflow:hidden;text-align:left;position:relative;
	background:
		repeating-linear-gradient(0deg, transparent 0 2px, rgba(0,0,0,.012) 2px 4px),
		repeating-linear-gradient(90deg, transparent 0 3px, rgba(0,0,0,.008) 3px 6px),
		linear-gradient(157deg,#f4efe3 0%,#e7ddc9 100%)}
.ak-jcard::before{content:"";position:absolute;inset:0;pointer-events:none;
	background:radial-gradient(ellipse at 20% 10%, rgba(255,255,255,.35) 0%, transparent 45%),
	radial-gradient(ellipse at 85% 95%, rgba(0,0,0,.05) 0%, transparent 40%)}
.ak-jcard__bar{height:8px;flex:none;background:var(--jc,#b5743a)}
.ak-jcard__txt{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:12px 13px 4px;min-height:0;position:relative}
.ak-jcard__txt::after{content:"AUDIOKAZETA · ARCHIV";position:absolute;right:10px;bottom:-2px;font-family:var(--ak-mono);font-size:6px;letter-spacing:.22em;color:rgba(0,0,0,.22);text-transform:uppercase}
.ak-jcard__band{font-family:'Courier Prime','Courier New',monospace;font-weight:700;font-size:clamp(13px,2vw,16px);line-height:1.08;text-transform:uppercase;letter-spacing:.02em;color:#26221b;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ak-jcard__album{font-family:'Courier Prime','Courier New',monospace;font-size:11px;line-height:1.2;color:#7a7263;font-style:normal;opacity:.85;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ak-jcard__tag{align-self:flex-start;margin:0 13px;font-family:var(--ak-mono);font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:var(--jc,#b5743a);border:1px solid var(--jc,#b5743a);border-radius:20px;padding:1px 6px;line-height:1.5}
.ak-jcard__shell{flex:none;height:30px;margin:7px 11px 11px;border:1.5px solid rgba(0,0,0,.14);border-radius:4px;display:flex;align-items:center;justify-content:center;gap:16px;background:rgba(255,255,255,.30)}
.ak-jcard__reel{width:12px;height:12px;border-radius:50%;border:2px solid rgba(0,0,0,.26);position:relative}
.ak-jcard__reel::after{content:"";position:absolute;inset:3px;border-radius:50%;background:rgba(0,0,0,.26)}
.ak-jcard__reel::before{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px dotted rgba(0,0,0,.18);opacity:0;transition:opacity .2s}
a:hover .ak-jcard__reel,.ak-kazeta-card:hover .ak-jcard__reel,.ak-kcard:hover .ak-jcard__reel{animation:ak-reel-spin 1.6s linear infinite}
a:hover .ak-jcard__reel::before,.ak-kazeta-card:hover .ak-jcard__reel::before{opacity:1}
.ak-kcard__cover .ak-jcard,.ak-kazeta-card__cover .ak-jcard,.ak-card__img--jcard .ak-jcard{position:absolute;inset:0}
.ak-kazeta-card__cover--jcard,.ak-kcard__cover--jcard,.ak-card__img--jcard{position:relative;background:none!important}

/* ── Mapa scény (kraje) ── */
.ak-kraje-map{display:flex;flex-direction:column;gap:32px;max-width:1100px;margin:0 auto}
.ak-kraje-section__title{font-family:var(--ak-sans);font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wp--preset--color--secondary);margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--wp--preset--color--border)}
.ak-kraje-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.ak-kraj-tile{display:flex;flex-direction:column;gap:9px;padding:14px 16px;border:1px solid var(--wp--preset--color--border);border-radius:10px;background:var(--wp--preset--color--surface);text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease}
.ak-kraj-tile:hover{border-color:var(--wp--preset--color--accent);transform:translateY(-2px)}
.ak-kraj-tile__name{font-family:var(--ak-sans);font-weight:700;font-size:15px;color:var(--wp--preset--color--text)}
.ak-kraj-tile__bar{height:6px;border-radius:6px;background:color-mix(in srgb,var(--wp--preset--color--border) 55%,transparent);overflow:hidden}
.ak-kraj-tile__fill{display:block;height:100%;background:var(--wp--preset--color--accent);border-radius:6px}
.ak-kraj-tile__counts{font-family:var(--ak-mono);font-size:11.5px;color:var(--wp--preset--color--secondary)}
.ak-kraj-tile__counts strong{color:var(--wp--preset--color--text)}
.ak-kapela-kazety__count{color:var(--wp--preset--color--secondary);font-weight:400}
.ak-rating{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.ak-rating__stars{display:inline-flex;gap:1px}
.ak-rating__meta{font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--secondary)}
.ak-kcard__rating,.ak-kazeta-card__rating,.ak-card__rating{margin-top:2px}
.ak-detail__rating{margin:0 0 4px}
.ak-kraje-hint{font-family:var(--ak-mono);font-size:12px;color:var(--wp--preset--color--secondary);margin:0 0 16px}
.ak-kraje-svgwrap{display:flex;flex-wrap:wrap;gap:24px 36px;align-items:flex-start;margin-bottom:8px}
.ak-kraje-fig{margin:0;flex:1 1 360px;max-width:580px}
.ak-kraje-fig--sk{flex:1 1 320px;max-width:520px}
.ak-kraje-fig figcaption{font-family:var(--ak-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--wp--preset--color--secondary);margin-bottom:6px}
.ak-kraje-svg{width:100%;height:auto;display:block}
.ak-kraje-svg__land{fill:color-mix(in srgb,var(--wp--preset--color--border) 32%,transparent);stroke:var(--wp--preset--color--border);stroke-width:2;stroke-linejoin:round}
.ak-kraje-svg__dot{cursor:pointer}
.ak-kraje-svg__bub{fill:#b5743a;fill-opacity:.82;stroke:#fff;stroke-width:1.5;transition:fill-opacity .15s ease,r .15s ease}
.ak-kraje-svg__dot:hover .ak-kraje-svg__bub{fill-opacity:1}
.ak-kraje-svg__code{font-family:var(--ak-sans);font-weight:700;font-size:11px;fill:#fff;pointer-events:none}
.ak-kcard__body{padding:13px 14px 15px;display:flex;flex-direction:column;gap:4px}
.ak-kcard__artist{font-family:var(--ak-mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--wp--preset--color--accent)}
.ak-kcard__title{font-family:var(--ak-display);font-size:16px;line-height:1.25;color:var(--wp--preset--color--text)}
.ak-kcard__meta{font-family:var(--ak-mono);font-size:11.5px;color:var(--wp--preset--color--secondary)}

/* ak-kcard jako <article> (blokový prvek kvůli wpautop), odkaz vyplní kartu */
.ak-kcard{display:block}
.ak-kcard__link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}

/* ── Vydavatel týdne — celošířkový pás (náhrada sidebar widgetu) ── */
.ak-vydavatel-band{max-width:1200px;margin:0 auto;padding:0 24px}
.ak-vydavatel-band__link{display:flex;align-items:center;gap:20px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:18px 22px;text-decoration:none;box-shadow:0 6px 16px -10px rgba(22,22,26,.18);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ak-vydavatel-band__link:hover{transform:translateY(-3px);box-shadow:0 16px 38px -20px rgba(22,22,26,.30);border-color:var(--wp--preset--color--accent)}
.ak-vydavatel-band__logo{width:68px;height:68px;border-radius:12px;overflow:hidden;flex:0 0 auto;background:var(--wp--preset--color--muted);display:flex;align-items:center;justify-content:center}
.ak-vydavatel-band__logo img{width:100%;height:100%;object-fit:cover}
.ak-vydavatel-band__logo--ph{font-family:var(--ak-display);font-weight:700;font-size:22px;color:var(--wp--preset--color--accent)}
.ak-vydavatel-band__body{display:flex;flex-direction:column;gap:3px;flex:1 1 auto;min-width:0}
.ak-vydavatel-band__name{font-family:var(--ak-display);font-size:20px;color:var(--wp--preset--color--text)}
.ak-vydavatel-band__meta{font-family:var(--ak-mono);font-size:12.5px;color:var(--wp--preset--color--secondary)}
.ak-vydavatel-band__cta{font-family:var(--ak-sans);font-weight:600;font-size:14px;color:var(--wp--preset--color--accent);flex:0 0 auto}
.ak-social-section{max-width:1200px;margin:0 auto;padding:0 24px}
@media(max-width:600px){.ak-vydavatel-band__link{flex-wrap:wrap}}

/* ── Katalog: doplňky čisté karty (coverlink, tagy, srovnání, detail) ── */
.ak-kcard__coverlink{display:block;text-decoration:none}
.ak-kcard__title--link{text-decoration:none;color:var(--wp--preset--color--text);transition:color .15s ease}
.ak-kcard__title--link:hover{color:var(--wp--preset--color--accent)}
.ak-kcard__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.ak-kcard__tag{font-family:var(--ak-mono);font-size:11px;padding:3px 9px;border-radius:999px;background:var(--wp--preset--color--muted);border:1px solid var(--wp--preset--color--border);color:var(--wp--preset--color--secondary);text-decoration:none;transition:.15s ease}
.ak-kcard__tag:hover{color:var(--wp--preset--color--text);border-color:var(--wp--preset--color--accent)}
.ak-kcard__footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:11px;border-top:1px solid var(--wp--preset--color--border)}
.ak-kcard__cmp{display:inline-flex;align-items:center;gap:6px;font-family:var(--ak-sans);font-size:12px;color:var(--wp--preset--color--secondary);cursor:pointer}
.ak-kcard__cmp input{margin:0;cursor:pointer}
.ak-kcard__detail{font-family:var(--ak-sans);font-weight:600;font-size:13px;color:var(--wp--preset--color--accent);text-decoration:none;white-space:nowrap}
.ak-kcard__detail:hover{text-decoration:underline}
.ak-grid .ak-kcard__body{flex:1 1 auto}

/* ── Katalog: karty jako kazety v plastových krabičkách (jewel case) vedle sebe ── */
.ak-catalog .ak-grid{gap:12px}
.ak-catalog .ak-kcard{border-radius:5px;box-shadow:0 4px 12px -8px rgba(22,22,26,.28)}
.ak-catalog .ak-kcard__coverlink{position:relative;display:block}
.ak-catalog .ak-kcard__cover{aspect-ratio:2/3;border-radius:5px 5px 0 0}
/* hrana krabičky (čirý plast) */
.ak-catalog .ak-kcard__coverlink::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px 5px 0 0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),inset 0 0 0 2px rgba(0,0,0,.12)}
/* lesk plastu — diagonální odlesk */
.ak-catalog .ak-kcard__coverlink::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px 5px 0 0;background:linear-gradient(118deg,rgba(255,255,255,.22) 0,rgba(255,255,255,.05) 9%,rgba(255,255,255,0) 24%,rgba(255,255,255,0) 70%,rgba(255,255,255,.10) 100%)}
/* popisek uvnitř přes obrázek — karta = jen kazeta */
.ak-catalog .ak-kcard{position:relative;overflow:hidden}
.ak-catalog .ak-kcard__cover{border-radius:5px}
.ak-catalog .ak-kcard__coverlink::before,
.ak-catalog .ak-kcard__coverlink::after{border-radius:5px}
.ak-catalog .ak-kcard__body{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:26px 12px 11px;gap:2px;background:linear-gradient(to top,rgba(0,0,0,.92) 0,rgba(0,0,0,.78) 42%,rgba(0,0,0,.35) 72%,rgba(0,0,0,0) 100%);pointer-events:none}
.ak-catalog .ak-kcard__artist{color:#e8763d}
.ak-catalog .ak-kcard__title{font-size:14px;color:#fff;pointer-events:auto}
.ak-catalog .ak-kcard__title--link{color:#fff}
.ak-catalog .ak-kcard__title--link:hover{color:#e8763d}
.ak-catalog .ak-kcard__meta{color:rgba(255,255,255,.75)}
.ak-catalog .ak-kcard__tags,
.ak-catalog .ak-kcard__footer{display:none}

/* ── Úvodní strana „Nejnovější kazety" — stejný konvolut: jen kazeta + popisek přes obrázek ── */
.ak-kgrid{gap:12px}
.ak-kgrid .ak-kcard{position:relative;overflow:hidden;border-radius:5px;box-shadow:0 4px 12px -8px rgba(22,22,26,.28)}
.ak-kgrid .ak-kcard__link{position:relative;display:block}
.ak-kgrid .ak-kcard__link > p:empty,.ak-kgrid .ak-kcard > p{display:none}
.ak-kgrid .ak-kcard__cover{aspect-ratio:2/3;border-radius:5px}
.ak-kgrid .ak-kcard__link::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),inset 0 0 0 2px rgba(0,0,0,.12)}
.ak-kgrid .ak-kcard__link::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px;background:linear-gradient(118deg,rgba(255,255,255,.22) 0,rgba(255,255,255,.05) 9%,rgba(255,255,255,0) 24%,rgba(255,255,255,0) 70%,rgba(255,255,255,.10) 100%)}
.ak-kgrid .ak-kcard__body{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:26px 12px 11px;display:flex;flex-direction:column;gap:2px;background:linear-gradient(to top,rgba(0,0,0,.92) 0,rgba(0,0,0,.78) 42%,rgba(0,0,0,.35) 72%,rgba(0,0,0,0) 100%)}
.ak-kgrid .ak-kcard__body br{display:none}
.ak-kgrid .ak-kcard__artist{color:#e8763d}
.ak-kgrid .ak-kcard__title{font-size:14px;color:#fff}
.ak-kgrid .ak-kcard__meta{color:rgba(255,255,255,.75)}

/* ── Odznak: Servis / opravář (sekce na /vydavatele/) ── */
.ak-label-type-badge--servis{background:color-mix(in srgb,var(--wp--preset--color--accent) 16%,transparent);color:var(--wp--preset--color--accent);border:1px solid color-mix(in srgb,var(--wp--preset--color--accent) 35%,transparent)}

/* ── Moderní footer ── */
.ak-footer{border-top:1px solid var(--wp--preset--color--border);margin-top:48px;background:var(--wp--preset--color--surface);padding:0}
.ak-footer-cols{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:32px;max-width:1200px;margin:0 auto;padding:42px 24px 30px}
.ak-footer-brand{font-family:var(--ak-display);font-weight:700;font-size:21px;letter-spacing:-.01em;margin:0 0 10px;color:var(--wp--preset--color--text)}
.ak-footer-brand span{color:var(--wp--preset--color--accent)}
.ak-footer-tag{color:var(--wp--preset--color--secondary);font-size:14px;line-height:1.6;max-width:44ch;margin:0}
.ak-footer-nav{display:flex;flex-direction:column;gap:9px}
.ak-footer-nav__h{font-family:var(--ak-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--secondary);margin-bottom:3px}
.ak-footer-nav a{color:var(--wp--preset--color--text);text-decoration:none;font-size:14.5px;transition:color .15s ease}
.ak-footer-nav a:hover{color:var(--wp--preset--color--accent)}
.ak-footer-bottom{border-top:1px solid var(--wp--preset--color--border)}
.ak-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
	max-width:1200px;margin:0 auto;padding:16px 24px}
.ak-footer-bottom span{font-family:var(--ak-mono);font-size:12.5px;color:var(--wp--preset--color--secondary)}
.ak-footer-rss a{color:var(--wp--preset--color--secondary);text-decoration:none}
.ak-footer-rss a:hover{color:var(--wp--preset--color--accent)}
@media(max-width:760px){.ak-footer-cols{grid-template-columns:1fr 1fr;gap:24px}.ak-footer-brandcol{grid-column:1 / -1}}

/* ── Burza: filtry jako moderní pilulky (byly nestylované nativní buttony) ── */
.ak-burza__filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0}
.ak-burza__tab,.ak-burza__add-btn{font-family:var(--ak-sans)!important;font-size:14px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;padding:9px 16px!important;border-radius:999px!important;border:1px solid var(--wp--preset--color--border)!important;background:var(--wp--preset--color--surface)!important;color:var(--wp--preset--color--text)!important;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease;box-shadow:none!important}
.ak-burza__tab:hover,.ak-burza__add-btn:hover{border-color:var(--wp--preset--color--accent)!important}
.ak-burza__tab--active{background:var(--wp--preset--color--text)!important;color:var(--wp--preset--color--background)!important;border-color:var(--wp--preset--color--text)!important}
/* Burza — filtr kategorie (Kazety / Technika), odlišený od typových záložek */
.ak-burza__filters--kat{margin-top:-8px}
.ak-burza__kattab{font-family:var(--ak-sans);font-size:13px;font-weight:500;padding:7px 14px;border-radius:999px;border:1px dashed var(--wp--preset--color--border);background:transparent;color:var(--wp--preset--color--secondary);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}
.ak-burza__kattab:hover{border-color:var(--wp--preset--color--accent);color:var(--wp--preset--color--text)}
.ak-burza__kattab--active{background:var(--wp--preset--color--accent);border-style:solid;border-color:var(--wp--preset--color--accent);color:#fff;font-weight:600}
/* Barevné štítky kategorie na kartě */
.ak-burza-card__kat--hudba{background:color-mix(in srgb,var(--wp--preset--color--accent) 16%,transparent)!important;color:var(--wp--preset--color--accent)!important}
.ak-burza-card__kat--tech{background:color-mix(in srgb,#2055a0 16%,transparent)!important;color:#2055a0!important}
.ak-burza__add-btn{background:var(--wp--preset--color--accent)!important;border-color:var(--wp--preset--color--accent)!important;color:#fff!important;font-weight:600!important;margin-left:6px}

/* Štítek typu (vydavatel/servis) — jemnější výplň místo holého obrysu */
.ak-label-type-badge{border-radius:999px;border:1px solid color-mix(in srgb,currentColor 32%,transparent);background:color-mix(in srgb,currentColor 12%,transparent)}

/* ── Burza: vysvětlivky stavu (stupnice) + odznak stavu ── */
.ak-burza__legend{margin:6px 0 20px;border:1px solid var(--wp--preset--color--border);border-radius:12px;background:var(--wp--preset--color--surface)}
.ak-burza__legend summary{cursor:pointer;padding:12px 16px;font-family:var(--ak-sans);font-weight:600;font-size:14px;color:var(--wp--preset--color--text);list-style:none}
.ak-burza__legend summary::-webkit-details-marker{display:none}
.ak-burza__legend summary::before{content:'\25B8';margin-right:8px;color:var(--wp--preset--color--accent)}
.ak-burza__legend[open] summary::before{content:'\25BE'}
.ak-burza__legend-list{margin:0;padding:2px 16px 16px;display:grid;gap:4px}
.ak-burza__legend-list dt{font-family:var(--ak-display);font-size:15px;color:var(--wp--preset--color--text);display:flex;align-items:center;gap:9px;margin-top:10px}
.ak-burza__legend-list dd{margin:0;color:var(--wp--preset--color--secondary);font-size:13.5px;line-height:1.55}
.ak-stav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:2px 9px;border-radius:999px;font-family:var(--ak-mono);font-size:11px;font-weight:600;background:color-mix(in srgb,var(--wp--preset--color--accent) 16%,transparent);color:var(--wp--preset--color--accent);border:1px solid color-mix(in srgb,var(--wp--preset--color--accent) 35%,transparent)}
.ak-burza-card__stav{font-family:var(--ak-mono);font-size:11px;padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--wp--preset--color--accent) 14%,transparent);color:var(--wp--preset--color--accent);cursor:help}

/* ── Žebříčky: komunitní (uživatelské) + nadpisy ── */
.ak-zebricky-h{font-family:var(--ak-display);font-size:24px;letter-spacing:-.01em;margin:10px 0 18px;color:var(--wp--preset--color--text)}
.ak-uchart{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:44px}
.ak-uchart__col{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:16px 18px}
.ak-uchart__title{font-family:var(--ak-display);font-size:16px;margin:0 0 12px;color:var(--wp--preset--color--text);display:flex;flex-direction:column;gap:2px}
.ak-uchart__title span{font-family:var(--ak-mono);font-size:11px;font-weight:400;letter-spacing:.04em;text-transform:uppercase;color:var(--wp--preset--color--secondary)}
.ak-uchart__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ak-uchart__item{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--wp--preset--color--border)}
.ak-uchart__item:last-child{border-bottom:none}
.ak-uchart__rank{font-family:var(--ak-mono);font-size:12px;font-weight:600;color:var(--wp--preset--color--secondary);min-width:18px;text-align:center}
.ak-uchart__item:nth-child(-n+3) .ak-uchart__rank{color:var(--wp--preset--color--accent)}
.ak-uchart__avatar{width:32px;height:32px;border-radius:50%;flex:0 0 auto;background:var(--wp--preset--color--muted)}
.ak-uchart__name{flex:1 1 auto;font-size:14px;color:var(--wp--preset--color--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ak-uchart__cnt{font-family:var(--ak-mono);font-size:11.5px;color:var(--wp--preset--color--secondary);white-space:nowrap}

/* ── Žebříčky kazet (charts) — karty místo holého seznamu ── */
.ak-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:40px}
.ak-charts__section{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:16px 18px}
.ak-charts__title{font-family:var(--ak-display);font-size:16px;margin:0 0 12px;color:var(--wp--preset--color--text)}
.ak-charts__list{list-style:none!important;margin:0;padding:0;display:flex;flex-direction:column;counter-reset:none}
.ak-charts__item{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--wp--preset--color--border)}
.ak-charts__item:last-child{border-bottom:none}
.ak-charts__item::marker{content:none}
.ak-charts__rank{font-family:var(--ak-mono);font-size:12px;font-weight:600;color:var(--wp--preset--color--secondary);min-width:18px;text-align:center}
.ak-charts__section .ak-charts__item:nth-child(-n+3) .ak-charts__rank{color:var(--wp--preset--color--accent)}
.ak-charts__thumb{width:36px;height:36px;border-radius:6px;object-fit:cover;flex:0 0 auto;background:var(--wp--preset--color--muted)}
.ak-charts__info{flex:1 1 auto;min-width:0}
.ak-charts__name{font-size:13.5px;color:var(--wp--preset--color--text);text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ak-charts__name:hover{color:var(--wp--preset--color--accent)}
.ak-charts__cnt{font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--secondary);white-space:nowrap}

/* ── Formulář: přidání kazety komunitou ── */
.ak-submit{max-width:760px}
.ak-submit--login{padding:18px 20px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:12px}
.ak-submit__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ak-submit__field{display:flex;flex-direction:column;gap:6px}
.ak-submit__field--full{grid-column:1 / -1}
.ak-submit__field span{font-family:var(--ak-sans);font-size:13.5px;font-weight:500;color:var(--wp--preset--color--text)}
.ak-submit__field small{font-weight:400;color:var(--wp--preset--color--secondary)}
.ak-submit__field input,.ak-submit__field select,.ak-submit__field textarea{font-family:var(--ak-sans);font-size:14px;padding:10px 12px;border:1px solid var(--wp--preset--color--border);border-radius:10px;background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text);width:100%}
.ak-submit__field input:focus,.ak-submit__field select:focus,.ak-submit__field textarea:focus{outline:none;border-color:var(--wp--preset--color--accent)}
.ak-submit__actions{display:flex;align-items:center;gap:14px;margin-top:18px}
.ak-submit__msg{font-size:14px}
.ak-submit__msg--ok{color:var(--wp--preset--color--accent)}
.ak-submit__msg--err{color:#c0392b}
.ak-submit__note{margin-top:14px;font-size:13px;color:var(--wp--preset--color--secondary)}
@media(max-width:600px){.ak-submit__grid{grid-template-columns:1fr}}

/* ── Profil: příspěvky + odkaz jména v žebříčcích ── */
.ak-uchart__name{text-decoration:none;transition:color .15s ease}
.ak-uchart__name:hover{color:var(--wp--preset--color--accent)}
.ak-profil__contrib{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 8px}
.ak-profil__contrib span{font-family:var(--ak-mono);font-size:12.5px;color:var(--wp--preset--color--secondary);background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:999px;padding:6px 13px}
.ak-profil__contrib strong{color:var(--wp--preset--color--accent);margin-left:4px}

/* ── Technika: archiv intro + detail přístroje (majitelé) ── */
.ak-archive-intro{color:var(--wp--preset--color--secondary);font-size:16px;max-width:60ch;margin:0 0 24px}
.ak-pr-detail__top{display:grid;grid-template-columns:minmax(0,1fr) 1.2fr;gap:32px;align-items:start;margin:8px 0 16px}
.ak-pr-detail__cover{border-radius:14px;overflow:hidden;background:var(--wp--preset--color--muted);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.ak-pr-detail__cover img{width:100%;height:100%;object-fit:cover}
.ak-pr-detail__cover .ak-kcard__placeholder{font-size:48px}
.ak-pr-detail__owners{display:flex;gap:12px;margin-top:18px}
.ak-pr-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--ak-sans);font-weight:600;font-size:14px;padding:10px 18px;border-radius:999px;border:1px solid var(--wp--preset--color--border);background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text);cursor:pointer;transition:.15s ease}
.ak-pr-btn:hover{border-color:var(--wp--preset--color--accent)}
.ak-pr-btn.is-active{background:var(--wp--preset--color--accent);border-color:var(--wp--preset--color--accent);color:#fff}
.ak-pr-btn__n{font-family:var(--ak-mono);font-size:12px;background:color-mix(in srgb,var(--wp--preset--color--text) 8%,transparent);border-radius:999px;padding:1px 7px}
.ak-pr-btn.is-active .ak-pr-btn__n{background:rgba(0,0,0,.15)}
@media(max-width:700px){.ak-pr-detail__top{grid-template-columns:1fr}}

/* ── Dvouhubová navigace (Scéna ⟷ Technika) ── */
.ak-hubnav{max-width:1200px;margin:0 auto;padding:0 24px}
.ak-hubnav__switch{display:flex;align-items:flex-end;gap:8px;padding:10px 0 0}
.ak-hub{display:flex;flex-direction:column;gap:1px;text-decoration:none;padding:8px 16px;border-radius:10px 10px 0 0;border:1px solid transparent;border-bottom:none}
.ak-hub__k{font-family:var(--ak-display);font-weight:600;font-size:16px;color:var(--wp--preset--color--text);transition:color .15s ease}
/* Informační mikropopisky v UI zvětšeny z 10 px na 11 px. Drobný mono text
   uvnitř kazetové kresby (.ak-jcard__tag) i štítek „reklama“ zůstávají malé
   schválně — tam je nenápadnost záměr, ne nedopatření. */
.ak-hub__d{font-family:var(--ak-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--wp--preset--color--secondary)}
.ak-hub.is-active{background:var(--wp--preset--color--surface);border-color:var(--wp--preset--color--border)}
.ak-hub.is-active .ak-hub__k{color:var(--wp--preset--color--accent)}
.ak-hub:hover .ak-hub__k{color:var(--wp--preset--color--accent)}
.ak-hubnav__shared{margin-left:auto;display:flex;gap:16px;align-items:center;align-self:center}
.ak-hubnav__shared a{font-family:var(--ak-sans);font-size:13.5px;color:var(--wp--preset--color--secondary);text-decoration:none}
.ak-hubnav__shared a:hover{color:var(--wp--preset--color--text)}
.ak-hubnav__sub{display:flex;flex-wrap:wrap;gap:2px;border-top:1px solid var(--wp--preset--color--border);padding:6px 0}
.ak-subnav-link{font-family:var(--ak-sans);font-size:14.5px;font-weight:500;color:var(--wp--preset--color--secondary);text-decoration:none;padding:9px 13px;border-radius:9px;transition:background .15s ease,color .15s ease}
.ak-subnav-link:hover{background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text)}
.ak-subnav-link.is-active{color:var(--wp--preset--color--text)}
/* Podtržení aktivní položky si místo drží u VŠECH odkazů (jen průhledné).
   Dřív ho měla jen `.is-active`, takže řádek podnavigace byl na stránkách
   s aktivní položkou o 7 px vyšší (2 px linka + 5 px odsazení) než na
   rozcestnících /scena/ a /technika/ — celá hlavička pak měla jinou výšku. */
.ak-subnav-link::after{content:"";display:block;height:2px;border-radius:2px;background:transparent;margin-top:5px}
.ak-subnav-link.is-active::after{background:var(--wp--preset--color--accent)}

/* „Víc“ — zbytek navigace pod rozbalovátkem. <details> kvůli tomu, že funguje
   z klávesnice i bez JS; šipku kreslíme sami, výchozí trojúhelník pryč. */
.ak-subnav-more{position:relative}
.ak-subnav-more > summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.ak-subnav-more > summary::-webkit-details-marker{display:none}
.ak-subnav-more > summary::before{content:"";width:0;height:0;order:2;
	border-left:4px solid transparent;border-right:4px solid transparent;
	border-top:5px solid currentColor;opacity:.6;transition:transform .15s ease}
.ak-subnav-more[open] > summary::before{transform:rotate(180deg)}
.ak-subnav-more__menu{position:absolute;top:calc(100% + 4px);left:0;z-index:60;min-width:200px;
	display:flex;flex-direction:column;padding:6px;
	background:var(--wp--preset--color--background);border:1px solid var(--wp--preset--color--border);
	border-radius:12px;box-shadow:0 16px 34px -18px rgba(22,22,26,.35)}
.ak-subnav-more__link{font-family:var(--ak-sans);font-size:14px;color:var(--wp--preset--color--secondary);
	text-decoration:none;padding:8px 11px;border-radius:8px}
.ak-subnav-more__link:hover{background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text)}
.ak-subnav-more__link.is-active{color:var(--wp--preset--color--accent);font-weight:600}
/* Na mobilu se rozbalí v toku, ať menu nevyjede mimo obrazovku. */
@media (max-width:640px){
	.ak-subnav-more{width:100%}
	.ak-subnav-more__menu{position:static;box-shadow:none;border:none;padding:2px 0 6px}
}
/* „Přidat kazetu“ sedí v horní řadě mezi akcemi (Blog, profil, odhlášení) jako
   nenápadné tlačítko. V řadě rozcestníků se lámalo na druhý řádek a zvedalo
   navigaci na 86 px — a jako jediná akce mezi odkazy na procházení tam ani
   logicky nepatřila. */
.ak-hubnav__cta{display:inline-flex;align-items:center;color:var(--wp--preset--color--accent) !important;
	font-weight:600;border:1px solid color-mix(in srgb,var(--wp--preset--color--accent) 40%,transparent);
	border-radius:999px;padding:4px 12px;line-height:1.4;
	transition:background .15s ease,border-color .15s ease}
.ak-hubnav__cta:hover{background:color-mix(in srgb,var(--wp--preset--color--accent) 10%,transparent);
	border-color:var(--wp--preset--color--accent)}

/* Rozcestník (hub) */
.ak-hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:8px 0 24px}
.ak-hub-card{display:flex;flex-direction:column;gap:6px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:20px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;box-shadow:0 6px 16px -10px rgba(22,22,26,.18)}
.ak-hub-card:hover{transform:translateY(-4px);box-shadow:0 16px 38px -20px rgba(22,22,26,.3);border-color:var(--wp--preset--color--accent)}
.ak-hub-card__ico{font-size:28px;line-height:1}
.ak-hub-card__t{font-family:var(--ak-display);font-size:18px;color:var(--wp--preset--color--text)}
.ak-hub-card__d{font-size:14px;color:var(--wp--preset--color--secondary);line-height:1.5}
/* Skip-link (a11y) */
.ak-skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--wp--preset--color--accent);color:#fff;padding:10px 16px;font-family:var(--ak-sans);font-weight:600;border-radius:0 0 8px 0;text-decoration:none}
.ak-skip-link:focus{left:0}

/* Hamburger — jen na mobilu */
.ak-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:0 9px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:10px;cursor:pointer}
.ak-hamburger span{display:block;height:2px;width:100%;background:var(--wp--preset--color--text);border-radius:2px;transition:.2s ease}

@media(max-width:860px){
	.ak-hamburger{display:flex}
	.ak-hubnav{display:none}
	.ak-hubnav.is-open{display:block}
	.ak-hubnav__switch{flex-wrap:wrap;align-items:stretch}
	.ak-hubnav__shared{margin-left:0;flex-wrap:wrap;width:100%;padding-top:8px}
	.ak-hubnav__search{margin-left:0;width:100%}
	.ak-hubnav__search-input{flex:1}
}
@media(max-width:640px){.ak-hub__d{display:none}}

/* ── Kazety jako médium: karty typů pásky ── */
.ak-medium-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.ak-medium-card{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;padding:18px}
.ak-medium-card__abbr{font-family:var(--ak-display);font-weight:700;font-size:26px;color:var(--wp--preset--color--accent)}
.ak-medium-card__type{display:block;font-family:var(--ak-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--wp--preset--color--secondary);margin:2px 0 9px}
.ak-medium-card__desc{font-size:14px;color:var(--wp--preset--color--text);line-height:1.55;margin:0}
/* badge kategorie nabídky v burze */
.ak-burza-card__kat{font-family:var(--ak-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--wp--preset--color--text) 8%,transparent);color:var(--wp--preset--color--secondary);margin-left:6px}

/* ── Burza: karty nabídek ── */
#ak-burza-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:20px}
.ak-burza-card{position:relative;display:flex;flex-direction:column;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:14px;overflow:hidden;box-shadow:0 6px 16px -10px rgba(22,22,26,.18);transition:transform .18s ease,box-shadow .18s ease}
.ak-burza-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px -20px rgba(22,22,26,.3)}
.ak-burza-card__typ{align-self:flex-start;font-family:var(--ak-mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;padding:4px 12px;border-radius:0 0 10px 0}
.ak-burza-card__img{padding:12px 14px 0}
.ak-burza-card__thumb{width:72px;height:72px;object-fit:cover;border-radius:8px;display:block}
.ak-burza-card__body{padding:11px 14px 15px;display:flex;flex-direction:column;gap:5px}
.ak-burza-card__title{font-family:var(--ak-display);font-size:16px;color:var(--wp--preset--color--text);text-decoration:none;line-height:1.25}
.ak-burza-card__title:hover{color:var(--wp--preset--color--accent)}
.ak-burza-card__link a{font-size:13px;color:var(--wp--preset--color--accent);text-decoration:none}
.ak-burza-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-family:var(--ak-mono);font-size:12px;color:var(--wp--preset--color--secondary);margin-top:3px}
.ak-burza-card__cena{font-weight:600;color:var(--wp--preset--color--text)}

/* ── Detail kazety: audioukázka + lajk ── */
.ak-detail-audio{margin:16px 0}
.ak-audio-embed{margin:8px 0;border-radius:12px;overflow:hidden}
.ak-audio-link{font-family:var(--ak-sans);color:var(--wp--preset--color--accent);text-decoration:none}
/* Karta kapely: tlačítko přidat kazetu */
.ak-kapela-profile__addcta{margin:4px 0 0}
.ak-kapela-profile__addcta a{font-size:13px!important;padding:8px 16px!important;white-space:nowrap;line-height:1.2!important}
.ak-kapela-profile__addcta a br{display:none}

/* ── Recenzovaná kazeta jako vizuál audiokazety (s názvem jako popiskem) ── */
.ak-revcass{display:block;max-width:430px;text-decoration:none;margin:0 0 8px}
.ak-revcass__eyebrow{display:block;font-family:var(--ak-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--secondary);margin-bottom:8px}
.ak-revcass br{display:none}
.ak-revcass p:empty{display:none}
.ak-revcass__shell{display:block;background:radial-gradient(circle at 15px 15px,#9c9385 0 2.5px,rgba(0,0,0,0) 3.5px),radial-gradient(circle at calc(100% - 15px) 15px,#9c9385 0 2.5px,rgba(0,0,0,0) 3.5px),radial-gradient(circle at 15px calc(100% - 14px),#9c9385 0 2.5px,rgba(0,0,0,0) 3.5px),radial-gradient(circle at calc(100% - 15px) calc(100% - 14px),#9c9385 0 2.5px,rgba(0,0,0,0) 3.5px),radial-gradient(circle at 50% calc(100% - 14px),#9c9385 0 2.5px,rgba(0,0,0,0) 3.5px),linear-gradient(158deg,#e8e3d8,#cbc3b4);border:1px solid #aaa193;border-radius:12px;padding:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 10px 26px -16px rgba(0,0,0,.4);transition:transform .18s ease,box-shadow .18s ease}
.ak-revcass:hover .ak-revcass__shell{transform:translateY(-3px);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 18px 40px -18px rgba(0,0,0,.45)}
.ak-revcass__label{display:block;background:#fbfaf6;border:1px solid rgba(0,0,0,.12);border-radius:3px;padding:12px 16px 14px;margin-bottom:22px;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.ak-revcass__head{display:block;margin-bottom:14px}
.ak-revcass__artist{display:block;font-family:var(--ak-mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--wp--preset--color--secondary)}
.ak-revcass__title{display:block;font-family:var(--ak-display);font-weight:600;font-size:15px;line-height:1.2;color:var(--wp--preset--color--text)}
.ak-revcass__sub{display:block;margin-top:3px;font-family:var(--ak-mono);font-size:10px;color:var(--wp--preset--color--secondary)}
.ak-revcass__window{display:flex;align-items:stretch;justify-content:center;gap:10px;width:100%;height:62px;background:linear-gradient(180deg,#efe9dd,#ded7c8);border:1px solid rgba(0,0,0,.14);border-radius:5px;padding:8px 12px;box-shadow:inset 0 2px 5px rgba(0,0,0,.14)}
.ak-revcass__ribs{flex:1;min-width:28px;border-radius:2px;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.24) 0 1px,rgba(0,0,0,0) 1px 6px),repeating-linear-gradient(90deg,rgba(0,0,0,.24) 0 1px,rgba(0,0,0,0) 1px 6px)}
.ak-revcass__reel{width:42px;height:42px;flex-shrink:0;align-self:center;border-radius:50%;border:3px solid #7d7468;background:radial-gradient(circle,#2c261f 0 7px,rgba(0,0,0,0) 8px),repeating-conic-gradient(#8d8474 0 12deg,#b4ab9b 12deg 24deg)}
.ak-revcass__tape{flex-shrink:0;align-self:center;width:72px;height:15px;background:linear-gradient(180deg,#6b5236,#4a3826);border-top:2px solid #2f2417;border-bottom:2px solid #2f2417}
.ak-revcass__base{display:block;height:24px;margin:0 4px;background:radial-gradient(circle at 32% 50%,#bdb4a4 0 5px,rgba(0,0,0,0) 6px),radial-gradient(circle at 68% 50%,#bdb4a4 0 5px,rgba(0,0,0,0) 6px),linear-gradient(180deg,#ddd6c7,#c6beb0);border:1px solid rgba(0,0,0,.1);border-top:none;border-radius:0 0 6px 6px;box-shadow:inset 0 2px 4px rgba(0,0,0,.08)}

/* Přístupnost: viditelný focus pro klávesnici */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,.ak-coll-btn:focus-visible,.ak-pr-btn:focus-visible,.ak-like-btn:focus-visible,.ak-genre-chip:focus-visible,.ak-tag-chip:focus-visible,.ak-subnav-link:focus-visible{outline:3px solid var(--wp--preset--color--accent);outline-offset:2px;border-radius:4px}

/* Poptávka kazety (má/chce) + dostupnost v burze */
.ak-demand{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:10px 0 4px;font-family:var(--ak-mono);font-size:12.5px;color:var(--wp--preset--color--secondary)}
.ak-detail-actions .ak-demand{flex:0 0 100%;justify-content:flex-end;gap:6px 14px;margin:8px 0 0}
.ak-demand__burza{font-weight:600;color:var(--wp--preset--color--accent);text-decoration:none}
.ak-demand__burza:hover{text-decoration:underline}
/* Karty kazet na detailu kapely (.ak-card) — stejný konvolut jako katalog: kazeta v krabičce + popisek přes obrázek */
.ak-kapela-kazety__grid{gap:12px}
.ak-card{position:relative;display:block;overflow:hidden;border-radius:5px;box-shadow:0 4px 12px -8px rgba(22,22,26,.28)}
.ak-card > p,.ak-card > br,.ak-card > p:empty{display:none}
.ak-card__link{position:relative;display:block;text-decoration:none;color:inherit}
.ak-card__link:hover{transform:translateY(-3px);box-shadow:0 12px 26px -16px rgba(0,0,0,.45)}
.ak-card__img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:5px}
.ak-card__img--placeholder{aspect-ratio:2/3;background:repeating-linear-gradient(135deg,var(--wp--preset--color--border) 0 10px,transparent 10px 20px),var(--wp--preset--color--background)}
/* hrana krabičky + lesk plastu */
.ak-card__link::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),inset 0 0 0 2px rgba(0,0,0,.12)}
.ak-card__link::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:5px;background:linear-gradient(118deg,rgba(255,255,255,.22) 0,rgba(255,255,255,.05) 9%,rgba(255,255,255,0) 24%,rgba(255,255,255,0) 70%,rgba(255,255,255,.10) 100%)}
/* popisek přes obrázek */
.ak-card__body{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:26px 12px 11px;display:flex;flex-direction:column;gap:2px;background:linear-gradient(to top,rgba(0,0,0,.92) 0,rgba(0,0,0,.78) 42%,rgba(0,0,0,.35) 72%,rgba(0,0,0,0) 100%)}
.ak-card__title{font-family:var(--ak-display);font-size:14px;font-weight:600;line-height:1.25;color:#fff;margin:0}
.ak-card__meta{font-family:var(--ak-mono);font-size:12px;color:rgba(255,255,255,.75);margin:0}

/* Badge „v burze" na kartě kazety */
.ak-kazeta-card__cover{position:relative}
.ak-card-burza-badge{position:absolute;top:8px;left:8px;font-family:var(--ak-mono);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:var(--wp--preset--color--accent);color:#fff;padding:3px 8px;border-radius:999px}

/* Komunitní nahrání obalu */
.ak-coverup{margin-top:12px;padding:14px;border:1px dashed var(--wp--preset--color--border);border-radius:12px;background:var(--wp--preset--color--surface)}
.ak-coverup__title{display:block;font-family:var(--ak-display);font-size:15px}
.ak-coverup__hint{font-size:12.5px;color:var(--wp--preset--color--secondary);margin:4px 0 10px}
.ak-coverup__file{display:block;width:100%;font-size:12.5px;margin-bottom:10px}
.ak-coverup__msg{display:block;margin-top:8px;font-size:12.5px}
.ak-coverup__msg--ok{color:#1a6b28}
.ak-coverup__msg--err{color:#c0392b}

/* Kredit zdroje obalu (Discogs) */
.ak-cover-credit{margin:8px 0 0;font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--secondary)}
.ak-cover-credit a{color:var(--wp--preset--color--secondary);text-decoration:underline}
.ak-cover-credit a:hover{color:var(--wp--preset--color--accent)}

/* Rok vydání u titulku detailu */
.ak-detail-year{display:inline-block;margin-top:8px;font-family:var(--ak-mono);font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--wp--preset--color--accent);background:color-mix(in srgb,var(--wp--preset--color--accent) 12%,transparent);padding:3px 12px;border-radius:999px}

/* ── Sjednocená akční lišta detailu (Mám / Chci / Líbí se mi) ── */
.ak-detail-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;margin-top:4px}
.ak-detail-actions .ak-collection-bar{flex-direction:row;margin-top:0;gap:8px}
.ak-act-ico{font-size:12px;line-height:1}
/* like tlačítko v liště — kompaktní, sladěné s ostatními */
.ak-detail-actions .ak-like-btn{padding:5px 12px;font-size:11px;font-weight:600;letter-spacing:.05em;border-radius:4px;gap:6px}
.ak-detail-actions .ak-like-btn__count{font-family:var(--ak-mono);font-size:11px}
/* přístroj: zmenšit pr tlačítka na úroveň ostatních */
.ak-detail-actions.ak-pr-detail__owners{margin:0 0 14px}
.ak-detail-actions .ak-pr-btn{padding:5px 12px;font-size:11px;font-weight:600;letter-spacing:.05em;border-radius:4px;gap:6px}
.ak-detail-like{margin:14px 0}
.ak-like-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--ak-sans);font-weight:600;font-size:14px;padding:9px 16px;border-radius:999px;border:1px solid var(--wp--preset--color--border);background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text);cursor:pointer;transition:border-color .15s ease}
.ak-like-btn:hover{border-color:var(--wp--preset--color--accent)}
.ak-like-btn__icon{color:var(--wp--preset--color--secondary);font-size:16px;transition:color .15s ease}
.ak-like-btn--liked{border-color:#e0245e}
.ak-like-btn--liked .ak-like-btn__icon{color:#e0245e}
.ak-like-btn__count{font-family:var(--ak-mono);font-size:13px}
.ak-like-btn__label{color:var(--wp--preset--color--secondary);font-weight:500}
.ak-burza-card__author{font-size:12px;color:var(--wp--preset--color--secondary);margin-top:2px}

/* ── Profil: follow + sdílení wishlistu ── */
.ak-follow-wrap{display:flex;align-items:center;gap:12px;margin:10px 0 6px}
.ak-follow-btn{font-family:var(--ak-sans);font-weight:600;font-size:14px;padding:9px 18px;border-radius:999px;border:1px solid var(--wp--preset--color--accent);background:var(--wp--preset--color--accent);color:#fff;cursor:pointer;transition:.15s ease}
.ak-follow-btn:hover{filter:brightness(1.05)}
.ak-follow-btn--active{background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text);border-color:var(--wp--preset--color--border)}
.ak-follow-btn:disabled{opacity:.6;cursor:default}
.ak-follow-count{font-family:var(--ak-mono);font-size:12.5px;color:var(--wp--preset--color--secondary)}
.ak-wishlist-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;padding:14px 16px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:12px}
.ak-wishlist-share__label{font-family:var(--ak-sans);font-size:13.5px;color:var(--wp--preset--color--text)}
.ak-wishlist-share__url{border-radius:8px!important;border:1px solid var(--wp--preset--color--border)!important}

/* ── Archiv taxonomie (žánr / dekáda / typ pásky / země / štítek) ── */
.ak-term-archive__head{margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid var(--wp--preset--color--border)}
.ak-term-archive__eyebrow{display:block;font-family:var(--ak-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--accent);margin-bottom:4px}
.ak-term-archive__title{font-family:var(--ak-display);font-size:clamp(30px,5vw,46px);font-weight:700;letter-spacing:-.02em;margin:0}
.ak-term-archive__desc{font-size:15px;color:var(--wp--preset--color--secondary);margin:8px 0 0;max-width:60ch}
.ak-term-archive__count{display:inline-block;margin-top:10px;font-family:var(--ak-mono);font-size:12px;color:var(--wp--preset--color--secondary)}
.ak-pagination{margin-top:32px}
.ak-pagination ul{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;list-style:none;padding:0;margin:0}
.ak-pagination a,.ak-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;font-family:var(--ak-sans);font-size:14px;border-radius:9px;border:1px solid var(--wp--preset--color--border);background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text);text-decoration:none}
.ak-pagination a:hover{border-color:var(--wp--preset--color--accent);color:var(--wp--preset--color--accent)}
.ak-pagination .current{background:var(--wp--preset--color--accent);color:#fff;border-color:var(--wp--preset--color--accent)}

/* ── Hledání v hlavičce ── */
.ak-hubnav__search{display:inline-flex;align-items:center;gap:0;margin-left:6px}
.ak-hubnav__search-input{font-family:var(--ak-sans);font-size:13.5px;padding:6px 10px;width:130px;border:1px solid var(--wp--preset--color--border);border-right:0;border-radius:999px 0 0 999px;background:var(--wp--preset--color--background);color:var(--wp--preset--color--text)}
.ak-hubnav__search-input:focus{outline:none;border-color:var(--wp--preset--color--accent)}
.ak-hubnav__search-btn{font-size:13px;padding:6px 11px;border:1px solid var(--wp--preset--color--border);border-left:0;border-radius:0 999px 999px 0;background:var(--wp--preset--color--surface);cursor:pointer;line-height:1}
.ak-hubnav__search-btn:hover{background:var(--wp--preset--color--muted)}

/* ── Nejhledanější ── */
.ak-topsearch{margin:18px 0 28px}
.ak-topsearch__h{font-family:var(--ak-display);font-size:17px;font-weight:600;margin:0 0 12px;color:var(--wp--preset--color--secondary)}
.ak-topsearch__chips{display:flex;flex-wrap:wrap;gap:8px}
.ak-topsearch__chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--ak-sans);font-size:13.5px;padding:6px 12px;border-radius:999px;border:1px solid var(--wp--preset--color--border);background:var(--wp--preset--color--surface);color:var(--wp--preset--color--text);text-decoration:none;transition:.15s ease}
.ak-topsearch__chip:hover{border-color:var(--wp--preset--color--accent);color:var(--wp--preset--color--accent)}
.ak-topsearch__n{font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--secondary);background:var(--wp--preset--color--muted);padding:1px 6px;border-radius:999px}

/* ── Aktivitní feed (M20) — [audiokazeta_feed] ── */
.ak-feed{max-width:720px;margin:0 auto}
.ak-feed__list{display:flex;flex-direction:column}
.ak-feed__item{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--wp--preset--color--border)}
.ak-feed__item:last-child{border-bottom:none}
.ak-feed__avatar{flex:none;width:40px;height:40px;border-radius:50%;background:var(--wp--preset--color--muted)}
.ak-feed__body{flex:1 1 auto;min-width:0;font-family:var(--ak-sans);font-size:14px;line-height:1.5}
.ak-feed__user{font-weight:700;color:var(--wp--preset--color--text)}
.ak-feed__action{color:var(--wp--preset--color--secondary)}
.ak-feed__object a{color:var(--wp--preset--color--accent);text-decoration:none;font-weight:600}
.ak-feed__object a:hover{text-decoration:underline}
.ak-feed__time{font-family:var(--ak-mono);font-size:11.5px;color:var(--wp--preset--color--secondary);white-space:nowrap}
.ak-feed__loading,.ak-feed__empty{font-family:var(--ak-mono);font-size:12.5px;color:var(--wp--preset--color--secondary);text-align:center;padding:24px 0;margin:0}
.ak-feed__more{display:block;margin:20px auto 0}

/* ── Komunitní rozcestník ── */
/* ══ Mixtape builder ═══════════════════════════════════════════════════════ */

.ak-mixtape{max-width:900px;margin:0 auto}
.ak-mixtape__setup,.ak-mixtape__manual-row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.ak-mixtape__field{display:flex;flex-direction:column;gap:5px;flex:1 1 200px}
.ak-mixtape__field--len{flex:0 0 220px}
.ak-mixtape__field span{font-family:var(--ak-mono);font-size:11px;letter-spacing:.1em;
	text-transform:uppercase;color:var(--wp--preset--color--secondary)}
.ak-mixtape__field input,.ak-mixtape__field select{padding:9px 12px;font-size:15px;font-family:inherit;
	border:1px solid var(--wp--preset--color--border);border-radius:10px;background:var(--wp--preset--color--surface)}
.ak-mixtape__field input:focus,.ak-mixtape__field select:focus{outline:none;
	border-color:var(--wp--preset--color--accent);box-shadow:0 0 0 3px rgba(217,72,15,.14)}

.ak-mixtape__search{margin:26px 0}
.ak-mixtape__results{margin-top:10px;display:flex;flex-direction:column;gap:6px}
.ak-mixtape__result{display:flex;align-items:center;gap:10px;padding:8px 12px;
	border:1px solid var(--wp--preset--color--border);border-radius:10px;background:var(--wp--preset--color--surface)}
.ak-mixtape__result-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.ak-mixtape__result-info strong{font-size:14.5px}
.ak-mixtape__result-info small{font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--secondary)}
.ak-mixtape__searching{font-family:var(--ak-mono);font-size:12.5px;color:var(--wp--preset--color--secondary);margin:8px 0}
.ak-mixtape__manual{margin-top:12px}
.ak-mixtape__manual summary{font-family:var(--ak-sans);font-size:13.5px;cursor:pointer;
	color:var(--wp--preset--color--accent)}
.ak-mixtape__manual-row{margin-top:10px}
.ak-mixtape__manual-row input{padding:8px 11px;border:1px solid var(--wp--preset--color--border);
	border-radius:9px;font-family:inherit;font-size:14px}
.ak-mixtape__manual-row input:first-child,.ak-mixtape__manual-row input:nth-child(2){flex:1 1 150px}

.ak-mixtape__sides{display:grid;grid-template-columns:1fr;gap:20px;margin-top:26px}
@media (min-width:720px){.ak-mixtape__sides{grid-template-columns:1fr 1fr}}
.ak-mixtape__side{border:1px solid var(--wp--preset--color--border);border-radius:12px;
	padding:14px 16px;background:var(--wp--preset--color--surface)}
/* Nadpis a čas pod sebou: text času je dlouhý ("… zbývá 45:00 (1 stopa bez času)")
   a vedle nadpisu se lámal do dvou řádků. */
.ak-mixtape__side-head{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.ak-mixtape__side-head h2{font-family:var(--ak-display);font-size:18px;margin:0}
.ak-mixtape__time{font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--secondary)}
.ak-mixtape__time.is-over{color:#b3402a}
/* Ubývající páska: pruh se plní, jak přibývají minuty. */
.ak-mixtape__bar{height:6px;border-radius:6px;margin:9px 0 12px;overflow:hidden;
	background:color-mix(in srgb,var(--wp--preset--color--border) 60%,transparent)}
.ak-mixtape__fill{display:block;height:100%;width:0;border-radius:6px;
	background:var(--wp--preset--color--accent);transition:width .25s ease}
.ak-mixtape__fill.is-over{background:#b3402a}
.ak-mixtape__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;
	counter-reset:mx}
.ak-mixtape__track{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;
	background:var(--wp--preset--color--background);counter-increment:mx}
.ak-mixtape__track::before{content:counter(mx);font-family:var(--ak-mono);font-size:10px;
	color:var(--wp--preset--color--accent);flex:none;width:16px}
.ak-mixtape__track-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.ak-mixtape__track-artist{font-family:var(--ak-mono);font-size:11px;text-transform:uppercase;
	letter-spacing:.04em;color:var(--wp--preset--color--secondary)}
.ak-mixtape__track-name{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ak-mixtape__track-len{width:52px;flex:none;padding:3px 6px;font-family:var(--ak-mono);font-size:11px;
	border:1px solid var(--wp--preset--color--border);border-radius:6px;background:transparent;text-align:center}
.ak-mixtape__track-tools{display:flex;gap:2px;flex:none}
.ak-mixtape__btn{border:1px solid var(--wp--preset--color--border);background:var(--wp--preset--color--surface);
	border-radius:6px;font-family:var(--ak-mono);font-size:10.5px;padding:3px 6px;cursor:pointer;line-height:1.3}
.ak-mixtape__btn:hover{border-color:var(--wp--preset--color--accent);color:var(--wp--preset--color--accent)}
.ak-mixtape__btn--rm:hover{border-color:#b3402a;color:#b3402a}
.ak-mixtape__empty{font-family:var(--ak-mono);font-size:11.5px;color:var(--wp--preset--color--secondary);
	text-align:center;padding:10px 0;margin:0}
.ak-mixtape__actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}
.ak-mixtape__hint{font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--secondary)}

/* J-card k tisku: na obrazovce skrytý, v tisku jediné, co zbude. */
.ak-jcard-print{display:none}
@media print{
	body *{visibility:hidden !important}
	.ak-jcard-print,.ak-jcard-print *{visibility:visible !important}
	.ak-jcard-print{display:block !important;position:absolute;left:0;top:0;width:100%;
		font-family:'Courier Prime','Courier New',monospace;color:#000}
	/* Rozměr odpovídá papírové vložce do krabičky: 10,2 cm na výšku. */
	.ak-jcard-print__front{border:1px solid #000;border-bottom:none;width:10.2cm;padding:10px 12px;min-height:6.4cm}
	.ak-jcard-print__spine{border:1px solid #000;width:10.2cm;padding:3px 12px;font-size:9pt;
		letter-spacing:.08em;text-transform:uppercase;overflow:hidden;white-space:nowrap}
	.ak-jcard-print__title{font-size:15pt;font-weight:700;line-height:1.15;margin-bottom:6px}
	.ak-jcard-print__author{font-size:10pt;margin-bottom:4px}
	.ak-jcard-print__meta{font-size:8pt;letter-spacing:.1em;text-transform:uppercase}
	.ak-jcard-print__inside{display:flex;gap:10px;width:10.2cm;border:1px solid #000;border-top:none;padding:8px 12px}
	.ak-jcard-print__col{flex:1 1 50%}
	.ak-jcard-print__col h3{font-size:10pt;margin:0 0 4px;border-bottom:1px solid #000}
	.ak-jcard-print__col ol{margin:0;padding-left:14px;font-size:7.5pt;line-height:1.45}
	@page{margin:12mm}
}

/* Mobil: na úzkém displeji se do řádku skladby nevejde název, čas i čtyři
   tlačítka vedle sebe. Řádek se proto zalomí na [číslo + název + čas] a pod tím
   ovládání zarovnané doprava.
   `flex:1 1 60%` (ne 100 %) je schválně: při 100 % zůstalo číslo stopy samo na
   vlastním řádku a řádek narostl na 109 px; takhle vyjde na 86 px. Ověřeno
   simulací úzkého kontejneru — skutečný telefon zatím ne. */
@media (max-width:520px){
	.ak-mixtape__track{flex-wrap:wrap;row-gap:6px}
	.ak-mixtape__track-main{flex:1 1 60%;order:1}
	.ak-mixtape__track::before{order:0}
	.ak-mixtape__track-len{order:2}
	.ak-mixtape__track-tools{order:3;margin-left:auto}
	.ak-mixtape__btn{padding:5px 9px}      /* větší cíl pro prst */
	.ak-mixtape__field--len{flex:1 1 100%} /* pevných 220 px by tísnilo */
	.ak-mixtape__result{flex-wrap:wrap;row-gap:6px}
	.ak-mixtape__result-info{flex:1 1 100%}
}

/* ══ Kazetové detaily: typ pásky, razítko REC ══════════════════════════════ */

/* Čip s typem pásky na detailu — barva odpovídá reálné pásce. */
.ak-tape-chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--ak-mono);
	font-size:11.5px;letter-spacing:.06em;color:var(--wp--preset--color--text);
	border:1px solid color-mix(in srgb,var(--tt,#8a5a2b) 45%,transparent);
	background:color-mix(in srgb,var(--tt,#8a5a2b) 8%,transparent);
	border-radius:999px;padding:3px 11px 3px 8px}
.ak-tape-chip__dot{width:9px;height:9px;border-radius:50%;flex:none;background:var(--tt,#8a5a2b);
	box-shadow:0 0 0 2px color-mix(in srgb,var(--tt,#8a5a2b) 22%,transparent)}

/* Typ pásky na kartě katalogu — drobná tečka se zkratkou v těle karty.
   Vědomě vlastní element, ne ::before na .ak-kcard__body: tam už jeden pruh
   (oranžový akcent) je a přebil by nás. */
.ak-kcard__tape{display:inline-flex;align-items:center;gap:5px;margin-top:3px;
	font-family:var(--ak-mono);font-size:10.5px;letter-spacing:.07em;
	color:color-mix(in srgb,var(--tt,#8a5a2b) 78%,var(--wp--preset--color--text))}
.ak-kcard__tape-dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--tt,#8a5a2b);
	box-shadow:0 0 0 2px color-mix(in srgb,var(--tt,#8a5a2b) 20%,transparent)}
/* Ve zobrazení Hřbety je řádek jednořádkový — tam typ pásky vynecháme. */
.ak-catalog .is-spines .ak-kcard__tape{display:none}

/* Razítko REC s datem přidání do archivu. */
.ak-rec-stamp{display:inline-flex;align-items:center;gap:6px;margin-top:10px;
	font-family:var(--ak-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
	color:#b3402a;border:1px dashed rgba(179,64,42,.5);border-radius:4px;padding:3px 9px;
	transform:rotate(-1.2deg);transform-origin:left center}
.ak-rec-stamp__dot{width:7px;height:7px;border-radius:50%;background:#b3402a;flex:none}
.ak-rec-stamp__date{color:var(--wp--preset--color--secondary);letter-spacing:.06em}
@media (prefers-reduced-motion:no-preference){
	@keyframes ak-rec-blink{0%,72%{opacity:1}86%,100%{opacity:.25}}
	.ak-rec-stamp__dot{animation:ak-rec-blink 2.6s ease-in-out infinite}
}

/* ── Onboarding nováčka na /profil/ (inc/login.php) ── */
.ak-onboard{border:1px solid var(--wp--preset--color--border);border-left:4px solid var(--wp--preset--color--accent);
	border-radius:12px;background:var(--wp--preset--color--surface);padding:18px 20px;margin:0 0 28px}
.ak-onboard__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.ak-onboard__title{font-family:var(--ak-display);font-size:19px}
.ak-onboard__dismiss{font-family:var(--ak-sans);font-size:12.5px;color:var(--wp--preset--color--secondary);
	text-decoration:none;flex:none}
.ak-onboard__dismiss:hover{color:var(--wp--preset--color--accent);text-decoration:underline}
.ak-onboard__lead{margin:6px 0 14px;font-family:var(--ak-sans);font-size:14px;
	color:var(--wp--preset--color--secondary)}
/* 260px min → v obsahu 720px vyjdou 2 sloupce, takže 4 karty tvoří vyrovnané
   2×2 místo rozpadu 3+1; na mobilu spadnou pod sebe */
.ak-onboard__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.ak-onboard__card{display:flex;flex-direction:column;gap:3px;padding:12px 14px;text-decoration:none;
	border:1px solid var(--wp--preset--color--border);border-radius:10px;background:var(--wp--preset--color--background);
	transition:border-color .15s ease,transform .15s ease}
.ak-onboard__card:hover{border-color:var(--wp--preset--color--accent);transform:translateY(-2px)}
.ak-onboard__ico{font-size:17px;line-height:1}
.ak-onboard__t{font-family:var(--ak-sans);font-weight:700;font-size:14px;color:var(--wp--preset--color--text)}
.ak-onboard__d{font-family:var(--ak-sans);font-size:12.5px;line-height:1.4;color:var(--wp--preset--color--secondary)}

.ak-komunita__cta{margin:24px 0 0;text-align:center}
.ak-komunita__feed{margin-top:40px}
.ak-komunita__feed-h{font-family:var(--ak-display);font-size:22px;font-weight:600;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--wp--preset--color--border)}

/* ═══════════════════════════════════════════════════════════════════════════
   v1.4.0 — Vizuální modernizace: J-card samizdat, mikrointerakce, skeleton,
   kazetový loader, view transitions, hero CTA
   ═══════════════════════════════════════════════════════════════════════════ */

/* J-card texturа/typewriter + reel-hover mikrointerakce a card-cover hover-zoom: sloučeno výš do
   „Generovaný J-card obal" bloku a do .ak-kcard__cover/.ak-kazeta-card__cover pravidel (byl duplicitně
   definovaný na dvou místech v souboru — viz git historie/audit CSS). */

/* ── Skeleton loading (katalog) ── */
@keyframes ak-shimmer{from{background-position:200% 0}to{background-position:-200% 0}}
.ak-skel-card{border:2px solid var(--wp--preset--color--border);border-radius:22px;overflow:hidden;
	background:var(--wp--preset--color--background)}
.ak-skel-card__cover{aspect-ratio:10/9;background:linear-gradient(100deg,
	var(--wp--preset--color--muted) 40%, var(--wp--preset--color--surface) 50%, var(--wp--preset--color--muted) 60%);
	background-size:200% 100%;animation:ak-shimmer 1.4s ease-in-out infinite}
.ak-skel-card__body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:9px}
.ak-skel-card__line{height:12px;border-radius:6px;background:linear-gradient(100deg,
	var(--wp--preset--color--muted) 40%, var(--wp--preset--color--surface) 50%, var(--wp--preset--color--muted) 60%);
	background-size:200% 100%;animation:ak-shimmer 1.4s ease-in-out infinite}
.ak-skel-card__line--w70{width:70%}
.ak-skel-card__line--w45{width:45%}

/* ── Kazetový loader ── */
.ak-infinite-spinner{display:flex;align-items:center;justify-content:center;gap:12px;
	padding:22px 0;font-family:var(--ak-mono);font-size:12px;letter-spacing:.08em;
	color:var(--wp--preset--color--secondary);text-transform:uppercase}
.ak-cassette-loader{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;
	border:2px solid currentColor;border-radius:5px;color:var(--wp--preset--color--accent)}
.ak-cassette-loader__reel{width:13px;height:13px;border-radius:50%;border:2px solid currentColor;
	position:relative;animation:ak-reel-spin 1.1s linear infinite}
.ak-cassette-loader__reel::after{content:"";position:absolute;inset:2px;border-radius:50%;
	border:2px dotted currentColor}
.ak-cassette-loader__tape{width:14px;height:2px;background:currentColor;opacity:.5}
/* Převíjení: podávací cívka se točí rychleji (jak se vyprazdňuje), navíjecí
   pomaleji, a náplň pásky mezi nimi „přetéká" z jedné na druhou. */
.ak-cassette-loader__reel:first-child{animation-duration:.75s}
.ak-cassette-loader__reel:last-of-type{animation-duration:1.6s}
@media (prefers-reduced-motion:no-preference){
	@keyframes ak-wind{0%{transform:scaleX(1);opacity:.5}50%{transform:scaleX(.35);opacity:.85}100%{transform:scaleX(1);opacity:.5}}
	.ak-cassette-loader__tape{animation:ak-wind 1.1s ease-in-out infinite;transform-origin:left center}
}

/* ── View transitions mezi stránkami ── */
@view-transition{navigation:auto}
::view-transition-old(root){animation-duration:.18s}
::view-transition-new(root){animation-duration:.18s}

/* ── Hero CTA pro nepřihlášené ── */
.ak-hero-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:18px}
.ak-hero-cta .ak-btn--ghost{border:2px solid var(--wp--preset--color--border);border-radius:999px;
	padding:10px 20px;font-family:var(--ak-mono);font-size:13px;text-transform:uppercase;
	letter-spacing:.06em;text-decoration:none;color:var(--wp--preset--color--text);
	transition:transform .12s ease, box-shadow .12s ease;display:inline-block}
.ak-hero-cta .ak-btn--ghost:hover{transform:translate(-2px,-2px);
	box-shadow:3px 3px 0 var(--wp--preset--color--border)}
.ak-empty__hint{font-family:var(--ak-mono);font-size:13px;color:var(--wp--preset--color--secondary);
	margin-top:6px}

/* ═══ v1.5.0 — Komunita: zvoneček, follow, cenová historie, audio, sdílení ═══ */

/* ── Zvoneček v hlavičce ── */
.ak-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;
	width:40px;height:40px;border:2px solid var(--wp--preset--color--border);border-radius:50%;
	color:var(--wp--preset--color--text);margin-right:10px;transition:transform .12s ease, box-shadow .12s ease}
.ak-bell:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--wp--preset--color--border)}
.ak-bell__badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;
	border-radius:999px;background:var(--wp--preset--color--accent);color:var(--wp--preset--color--background);
	font-family:var(--ak-mono);font-size:10px;font-weight:700;line-height:18px;text-align:center}

/* ── Follow kapely ── */
.ak-kapela-profile__titlerow{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ak-kapela-profile__titlerow .ak-kapela-profile__name{margin:0}
.ak-follow-btn{display:inline-flex;align-items:center;gap:6px;margin:0;padding:6px 14px;
	border:1px solid var(--wp--preset--color--border);border-radius:999px;background:transparent;
	color:var(--wp--preset--color--text);font-size:12.5px;line-height:1.4;
	cursor:pointer;text-decoration:none;white-space:nowrap;flex:none;
	transition:transform .12s ease, box-shadow .12s ease, background .15s}
.ak-follow-btn:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--wp--preset--color--border)}
.ak-follow-btn .ak-follow-btn__on{display:none}
.ak-follow-btn.is-following{background:var(--wp--preset--color--accent);border-color:var(--wp--preset--color--accent);
	color:var(--wp--preset--color--background)}
.ak-follow-btn.is-following .ak-follow-btn__off{display:none}
.ak-follow-btn.is-following .ak-follow-btn__on{display:inline}

/* ── Cenová historie ── */
.ak-price-history{margin:32px 0;padding:20px 22px;border:2px solid var(--wp--preset--color--border);border-radius:14px}
.ak-price-history__h{font-family:var(--ak-display);font-size:19px;font-weight:600;margin:0 0 14px}
.ak-price-history__row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.ak-price-history__stats{display:flex;gap:26px;flex-wrap:wrap}
.ak-price-stat{display:flex;flex-direction:column;gap:2px}
.ak-price-stat__l{font-family:var(--ak-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;
	color:var(--wp--preset--color--secondary)}
.ak-price-stat strong{font-family:var(--ak-display);font-size:18px}
.ak-price-spark{width:220px;height:48px;color:var(--wp--preset--color--accent);flex:none}
.ak-price-history__meta{margin:10px 0 0;font-family:var(--ak-mono);font-size:12px;
	color:var(--wp--preset--color--secondary)}

/* ── Audioukázka ── */
.ak-detail-audio{margin:28px 0;padding:18px 20px;border:2px solid var(--wp--preset--color--border);border-radius:14px}
.ak-detail-audio__h{display:flex;align-items:center;gap:12px;font-family:var(--ak-display);
	font-size:19px;font-weight:600;margin:0 0 14px}
.ak-detail-audio__h .ak-cassette-loader__reel{animation-play-state:paused}
.ak-detail-audio:hover .ak-cassette-loader__reel{animation-play-state:running}
.ak-audio-embed--yt iframe{aspect-ratio:16/9;height:auto;border-radius:8px}

/* ── Sdílení sbírky ── */
.ak-sbirka__share{margin:0 0 22px}
.ak-sbirka__share .ak-btn--ghost{border:2px solid var(--wp--preset--color--border);border-radius:999px;
	padding:9px 18px;font-family:var(--ak-mono);font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;
	text-decoration:none;color:var(--wp--preset--color--text);display:inline-block;
	transition:transform .12s ease, box-shadow .12s ease}
.ak-sbirka__share .ak-btn--ghost:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--wp--preset--color--border)}

/* ═══════════════════════════════════════════════════════════════════════════
   v1.6.0 — MODERNIZACE: čistý světlý design
   Bílé plochy, chrome-red akcent, Inter v UI (mono jen pro technická data),
   měkké stíny místo tvrdých offsetů, tenčí ohraničení.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── UI prvky: z psacího stroje na Inter ── */
.ak-btn, .ak-btn--ghost, .ak-genre-chip, .ak-tag, .ak-follow-btn,
.ak-hero-cta .ak-btn--ghost, .ak-sbirka__share .ak-btn--ghost,
.ak-catalog__reset, .ak-topsearch__chip{
	font-family:var(--ak-sans);letter-spacing:0;text-transform:none;font-weight:600}
.ak-tagline, .ak-stat__l, .ak-home-hero__eyebrow, .ak-kapela-profile__eyebrow,
.ak-infinite-spinner{
	font-family:var(--ak-sans);letter-spacing:.04em;font-weight:500}
.ak-home-hero__eyebrow, .ak-kapela-profile__eyebrow{color:var(--wp--preset--color--accent)}

/* ── Karty: tenčí border, měkký stín, žádné tvrdé offsety ── */
.ak-kazeta-card, .ak-grid .ak-kazeta-card, .ak-skel-card{
	border-width:1px;border-radius:16px;
	box-shadow:0 1px 2px rgba(22,22,26,.04)}
.ak-kazeta-card:hover, .ak-grid .ak-kazeta-card:hover{
	transform:translateY(-3px);
	box-shadow:0 12px 28px rgba(22,22,26,.10), 0 2px 6px rgba(22,22,26,.06);
	border-color:#d8d8d4}
.ak-price-history, .ak-detail-audio, .ak-kolekce-card{
	border-width:1px;box-shadow:0 1px 2px rgba(22,22,26,.04)}

/* ── Tlačítka a interakce: měkké stíny ── */
.ak-btn--ghost:hover, .ak-hero-cta .ak-btn--ghost:hover,
.ak-sbirka__share .ak-btn--ghost:hover, .ak-follow-btn:hover, .ak-bell:hover{
	transform:translateY(-2px);
	box-shadow:0 6px 16px rgba(22,22,26,.12)}
.ak-btn--ghost, .ak-hero-cta .ak-btn--ghost, .ak-follow-btn, .ak-bell,
.ak-sbirka__share .ak-btn--ghost{border-width:1px}
.ak-btn.ak-btn--primary, .ak-btn{border-radius:999px}

/* ── Hlavička: bílá, jemná dělicí linka ── */
.ak-site-header, .ak-masthead{
	border-bottom:1px solid var(--wp--preset--color--border) !important}

/* ── Mono zůstává jen technickým datům (rok, cat#, typ pásky, pozice stop) ──
   .ak-detail-meta, .ak-jcard__tag, ceny, kódy — beze změny. */

/* ═══════════════════════════════════════════════════════════════════════════
   v1.7.0 — KAZETOVÉ PROSTŘEDÍ: karty jako skutečné plastové krabičky (MC case)
   Poměr 2/3 = kazeta nastojato. Pant vlevo, lesk plastu, papírový štítek
   pod plastem místo tmavého gradientu, hover = vytažení z poličky.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Krabička: tělo ── */
.ak-kazeta-card, .ak-grid .ak-kazeta-card{
	border-radius:6px;
	border:1px solid #cfcfc9;
	background:#e9e9e5;
	box-shadow:
		0 1px 0 rgba(255,255,255,.8) inset,
		0 1px 2px rgba(22,22,26,.08),
		0 10px 16px -12px rgba(22,22,26,.35)}

/* ── Pant (hinge) na levé hraně krabičky ── */
.ak-kazeta-card__cover{position:relative}
.ak-kazeta-card__cover::before{content:"";position:absolute;top:0;bottom:0;left:0;width:13px;z-index:4;
	pointer-events:none;
	background:
		linear-gradient(to bottom, rgba(0,0,0,0) 12%, rgba(0,0,0,.14) 12.5%, rgba(0,0,0,.14) 14%, rgba(0,0,0,0) 14.5%),
		linear-gradient(to bottom, rgba(0,0,0,0) 86%, rgba(0,0,0,.14) 86.5%, rgba(0,0,0,.14) 88%, rgba(0,0,0,0) 88.5%),
		linear-gradient(to right, rgba(0,0,0,.18), rgba(0,0,0,.04) 50%, rgba(255,255,255,.16) 78%, rgba(0,0,0,.12));
	border-right:1px solid rgba(0,0,0,.12)}

/* ── Lesk průhledného plastu přes celou přední stranu ── */
.ak-kazeta-card__cover::after{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;
	background:
		linear-gradient(115deg, rgba(255,255,255,.30) 0%, rgba(255,255,255,.10) 14%, rgba(255,255,255,0) 30%),
		linear-gradient(to bottom, rgba(255,255,255,.22), rgba(255,255,255,0) 7%),
		linear-gradient(to right, rgba(255,255,255,0) 93%, rgba(255,255,255,.20) 100%),
		linear-gradient(to top, rgba(0,0,0,.10), rgba(0,0,0,0) 5%)}

/* ── Papírový štítek (pod plastem) místo tmavého gradientu ── */
.ak-kazeta-card__body{
	background:
		repeating-linear-gradient(to bottom, rgba(0,0,0,0) 0 17px, rgba(70,90,150,.13) 17px 18px),
		linear-gradient(#f9f6ee, #efe9dc) !important;
	border-top:1px solid rgba(0,0,0,.16) !important;
	padding:9px 12px 9px 20px !important;
	color:#4a4a50}
.ak-kazeta-card__body::before{content:"";position:absolute;left:13px;top:0;bottom:0;width:5px;
	background:var(--wp--preset--color--accent);opacity:.8}
.ak-kazeta-card__interpret{color:var(--wp--preset--color--accent) !important;font-weight:700}
.ak-kazeta-card__title{color:#232328 !important;font-family:'Courier Prime','Courier New',monospace !important;font-weight:700 !important}
.ak-kazeta-card__rok{color:#6b6b70 !important}
.ak-kazeta-card__body .ak-rating{color:#9a9a92}
.ak-kazeta-card__body .ak-star--filled{color:var(--wp--preset--color--accent)}

/* ── Hover: vytažení kazety z poličky ── */
.ak-kazeta-card:hover, .ak-grid .ak-kazeta-card:hover{
	transform:perspective(900px) rotateY(-6deg) translateY(-6px);
	box-shadow:
		0 1px 0 rgba(255,255,255,.8) inset,
		14px 18px 30px -16px rgba(22,22,26,.35),
		0 4px 8px rgba(22,22,26,.08);
	border-color:#c2c2bb}

/* ── Hero obal jako velká krabička ── */
a.ak-home-hero__cover{position:relative}
a.ak-home-hero__cover::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
	background:
		linear-gradient(115deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,.08) 16%, rgba(255,255,255,0) 32%),
		linear-gradient(to right, rgba(0,0,0,.10), rgba(0,0,0,0) 4%)}

/* ── Polička: karty dosedají na spodní hranu řádku ── */
.ak-grid{align-items:end}

/* ── Katalog + homepage grid (.ak-kcard): stejná krabička ── */
.ak-catalog .ak-kcard, .ak-kgrid .ak-kcard{
	border-radius:6px;border:1px solid #cfcfc9;background:#e9e9e5;
	box-shadow:0 1px 0 rgba(255,255,255,.8) inset, 0 1px 2px rgba(22,22,26,.08), 0 10px 16px -12px rgba(22,22,26,.35)}
.ak-catalog .ak-kcard:hover, .ak-kgrid .ak-kcard:hover{
	transform:perspective(900px) rotateY(-6deg) translateY(-6px);
	box-shadow:0 1px 0 rgba(255,255,255,.8) inset, 14px 18px 30px -16px rgba(22,22,26,.35), 0 4px 8px rgba(22,22,26,.08);
	border-color:#c2c2bb}

/* pant vlevo (nad štítkem i obrázkem) */
.ak-catalog .ak-kcard__cover::before, .ak-kgrid .ak-kcard__cover::before{
	content:"";position:absolute;top:0;bottom:0;left:0;width:13px;z-index:4;pointer-events:none;
	background:
		linear-gradient(to bottom, rgba(0,0,0,0) 12%, rgba(0,0,0,.14) 12.5%, rgba(0,0,0,.14) 14%, rgba(0,0,0,0) 14.5%),
		linear-gradient(to bottom, rgba(0,0,0,0) 86%, rgba(0,0,0,.14) 86.5%, rgba(0,0,0,.14) 88%, rgba(0,0,0,0) 88.5%),
		linear-gradient(to right, rgba(0,0,0,.18), rgba(0,0,0,.04) 50%, rgba(255,255,255,.16) 78%, rgba(0,0,0,.12));
	border-right:1px solid rgba(0,0,0,.12)}
.ak-catalog .ak-kcard__cover, .ak-kgrid .ak-kcard__cover{position:relative}

/* lesk plastu NAD štítek (štítek je pod plastem) */
.ak-catalog .ak-kcard__coverlink::after, .ak-kgrid .ak-kcard__link::after{z-index:4;
	background:
		linear-gradient(115deg, rgba(255,255,255,.30) 0%, rgba(255,255,255,.10) 14%, rgba(255,255,255,0) 30%),
		linear-gradient(to bottom, rgba(255,255,255,.22), rgba(255,255,255,0) 7%),
		linear-gradient(to right, rgba(255,255,255,0) 93%, rgba(255,255,255,.20) 100%)}
.ak-catalog .ak-kcard__coverlink::before, .ak-kgrid .ak-kcard__link::before{z-index:4}

/* papírový štítek místo tmavého gradientu */
.ak-catalog .ak-kcard__body, .ak-kgrid .ak-kcard__body{
	background:
		repeating-linear-gradient(to bottom, rgba(0,0,0,0) 0 17px, rgba(70,90,150,.13) 17px 18px),
		linear-gradient(#f9f6ee, #efe9dc);
	border-top:1px solid rgba(0,0,0,.16);
	padding:8px 12px 9px 22px;color:#4a4a50}
.ak-catalog .ak-kcard__body::before, .ak-kgrid .ak-kcard__body::before{
	content:"";position:absolute;left:13px;top:0;bottom:0;width:5px;
	background:var(--wp--preset--color--accent);opacity:.8}
.ak-catalog .ak-kcard__artist, .ak-kgrid .ak-kcard__artist{color:var(--wp--preset--color--accent);font-weight:700}
.ak-catalog .ak-kcard__title, .ak-catalog .ak-kcard__title--link, .ak-kgrid .ak-kcard__title{
	color:#232328;font-family:'Courier Prime','Courier New',monospace;font-weight:700}
.ak-catalog .ak-kcard__title--link:hover{color:var(--wp--preset--color--accent)}
.ak-catalog .ak-kcard__meta, .ak-kgrid .ak-kcard__meta{color:#6b6b70}
.ak-kgrid .ak-kcard__body .ak-star--filled{color:var(--wp--preset--color--accent)}
.ak-kgrid .ak-kcard__body .ak-rating{color:#9a9a92}
/* v katalogu hodnocení na štítku nezobrazujeme */
.ak-catalog .ak-kcard__body .ak-rating{display:none}

/* ── Návrhy úprav (detail kazety) ── */
.ak-suggest{margin:22px 0;border:1px solid var(--wp--preset--color--border);border-radius:12px;
	background:var(--wp--preset--color--surface)}
.ak-suggest summary{padding:12px 16px;cursor:pointer;font-weight:600;font-size:14px;
	color:var(--wp--preset--color--secondary);list-style-position:inside}
.ak-su
/* ═══════════════════════════════════════════════════════════════════════════
   v2.1.1 — REKONSTRUKCE bloků ztracených nesynchronním commitem (fáze 4–F)
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Návrhy úprav (detail kazety) ── */
.ak-suggest{margin:22px 0;border:1px solid var(--wp--preset--color--border);border-radius:12px;
	background:var(--wp--preset--color--surface)}
.ak-suggest summary{padding:12px 16px;cursor:pointer;font-weight:600;font-size:14px;
	color:var(--wp--preset--color--secondary);list-style-position:inside}
.ak-suggest summary:hover{color:var(--wp--preset--color--accent)}
.ak-suggest__form{padding:4px 16px 16px;display:flex;flex-direction:column;gap:10px;max-width:480px}
.ak-suggest__form label{display:flex;flex-direction:column;gap:4px;font-size:13px;
	color:var(--wp--preset--color--secondary)}
.ak-suggest__form input, .ak-suggest__form select{padding:8px 10px;
	border:1px solid var(--wp--preset--color--border);border-radius:8px;font-family:inherit;font-size:14px}
.ak-suggest__send{align-self:flex-start}
.ak-suggest__msg{font-size:13px;color:var(--wp--preset--color--accent)}
.ak-suggest__login{font-size:14px;color:var(--wp--preset--color--secondary);margin:18px 0}

/* ── Reputační badge ── */
.ak-rep-badge{display:inline-flex;align-items:center;gap:5px;vertical-align:middle;margin-left:10px;
	font-family:var(--ak-sans);font-size:12.5px;font-weight:600;padding:4px 12px;border-radius:999px;
	background:var(--wp--preset--color--muted);border:1px solid var(--wp--preset--color--border);
	color:var(--wp--preset--color--text)}
.ak-rep-badge__pts{font-family:var(--ak-mono);font-size:11px;color:var(--wp--preset--color--accent)}

/* ── Edice / další vydání ── */
.ak-editions{margin:22px 0;padding:16px 20px;border:1px solid var(--wp--preset--color--border);
	border-radius:12px;background:var(--wp--preset--color--surface)}
.ak-editions__h{font-family:var(--ak-display);font-size:17px;font-weight:600;margin:0 0 10px}
.ak-editions__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.ak-editions__item a{color:var(--wp--preset--color--text);font-weight:600;text-decoration:none}
.ak-editions__item a:hover{color:var(--wp--preset--color--accent)}
.ak-editions__orig{font-family:var(--ak-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;
	color:var(--wp--preset--color--accent);border:1px solid currentColor;border-radius:999px;padding:1px 8px;margin-left:8px}
.ak-editions__meta{font-family:var(--ak-mono);font-size:12px;color:var(--wp--preset--color--secondary);margin-left:8px}

/* ── Moje kazeta + Do seznamu ── */
.ak-mycopy, .ak-addtolist{margin:22px 0;border:1px solid var(--wp--preset--color--border);
	border-radius:12px;background:var(--wp--preset--color--surface)}
.ak-mycopy summary, .ak-addtolist summary{padding:12px 16px;cursor:pointer;font-weight:600;font-size:14px;
	color:var(--wp--preset--color--secondary);list-style-position:inside}
.ak-mycopy summary:hover, .ak-addtolist summary:hover{color:var(--wp--preset--color--accent)}
.ak-mycopy__form{padding:4px 16px 16px;display:flex;flex-direction:column;gap:10px;max-width:480px}
.ak-mycopy__form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--wp--preset--color--secondary)}
.ak-mycopy__form input, .ak-mycopy__form select{padding:8px 10px;border:1px solid var(--wp--preset--color--border);
	border-radius:8px;font-family:inherit;font-size:14px}
.ak-mycopy__save{align-self:flex-start}
.ak-mycopy__msg{font-size:13px;color:var(--wp--preset--color--accent)}
.ak-addtolist__menu{padding:4px 16px 14px;display:flex;flex-direction:column;gap:6px;max-width:420px}
.ak-addtolist__item{display:flex;align-items:center;gap:9px;text-align:left;padding:8px 12px;
	border:1px solid var(--wp--preset--color--border);border-radius:8px;background:transparent;
	font-family:inherit;font-size:14px;cursor:pointer;color:var(--wp--preset--color--text);transition:.15s}
.ak-addtolist__item:hover{border-color:var(--wp--preset--color--accent)}
.ak-addtolist__item.is-in{background:color-mix(in srgb, var(--wp--preset--color--accent) 9%, transparent);
	border-color:var(--wp--preset--color--accent)}
.ak-addtolist__check{color:var(--wp--preset--color--accent);font-weight:700;width:14px}
.ak-addtolist__new{font-size:13px;color:var(--wp--preset--color--accent);text-decoration:none;margin-top:4px}

/* ── Seznamy ── */
.ak-lists__intro{color:var(--wp--preset--color--secondary)}
.ak-lists__create{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:18px 0 26px}
.ak-lists__title{flex:1;min-width:260px;padding:10px 14px;border:1px solid var(--wp--preset--color--border);
	border-radius:999px;font-family:inherit;font-size:14px}
.ak-lists__msg{font-size:13px;color:var(--wp--preset--color--accent)}
.ak-lists__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:10px}
.ak-list-card{display:flex;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;
	border:1px solid var(--wp--preset--color--border);border-radius:14px;background:var(--wp--preset--color--surface);
	transition:transform .15s ease, box-shadow .15s ease}
.ak-list-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(22,22,26,.10)}
.ak-list-card__count{flex:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;
	border-radius:10px;background:var(--wp--preset--color--muted);font-family:var(--ak-display);
	font-weight:700;font-size:17px;color:var(--wp--preset--color--accent)}
.ak-list-card__title{display:block;font-weight:600;color:var(--wp--preset--color--text)}
.ak-list-card__meta{display:block;font-size:12.5px;color:var(--wp--preset--color--secondary);margin-top:2px}
.ak-list-single__meta{color:var(--wp--preset--color--secondary);font-size:14px}
.ak-list-single__meta a{color:var(--wp--preset--color--accent);text-decoration:none}
.ak-list-single__grid{margin-top:18px}
.ak-list-single__grid .ak-kazeta-card{position:relative}
.ak-list-single__rank{position:absolute;top:8px;right:8px;z-index:6;width:30px;height:30px;
	display:flex;align-items:center;justify-content:center;border-radius:50%;
	background:var(--wp--preset--color--accent);color:#fff;font-family:var(--ak-display);
	font-weight:700;font-size:14px;box-shadow:0 2px 6px rgba(22,22,26,.25)}

/* ── Hodnota sbírky ── */
.ak-col-value{margin:0 0 18px;padding:14px 18px;border:1px solid var(--wp--preset--color--border);
	border-radius:12px;background:var(--wp--preset--color--surface);display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.ak-col-value__n{font-family:var(--ak-display);font-weight:700;font-size:24px;color:var(--wp--preset--color--accent)}
.ak-col-value__l{font-size:13px;color:var(--wp--preset--color--secondary)}

/* ── Fórum ── */
.ak-forum__intro{color:var(--wp--preset--color--secondary)}
.ak-forum__new{margin:18px 0 26px;border:1px solid var(--wp--preset--color--border);border-radius:12px;
	background:var(--wp--preset--color--surface)}
.ak-forum__new summary{padding:12px 16px;cursor:pointer;font-weight:600;font-size:14px;
	color:var(--wp--preset--color--secondary);list-style-position:inside}
.ak-forum__new summary:hover{color:var(--wp--preset--color--accent)}
.ak-forum__form{padding:4px 16px 16px;display:flex;flex-direction:column;gap:10px;max-width:560px}
.ak-forum__form input, .ak-forum__form select, .ak-forum__form textarea{padding:9px 12px;
	border:1px solid var(--wp--preset--color--border);border-radius:8px;font-family:inherit;font-size:14px}
.ak-forum__send{align-self:flex-start}
.ak-forum__msg{font-size:13px;color:var(--wp--preset--color--accent)}
.ak-forum__list{display:flex;flex-direction:column;gap:10px}
.ak-forum-topic{display:flex;align-items:center;justify-content:space-between;gap:14px;
	padding:14px 18px;text-decoration:none;border:1px solid var(--wp--preset--color--border);
	border-radius:12px;background:var(--wp--preset--color--surface);transition:transform .15s ease, box-shadow .15s ease}
.ak-forum-topic:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(22,22,26,.08)}
.ak-forum-topic__title{display:block;font-weight:600;color:var(--wp--preset--color--text)}
.ak-forum-topic__meta{display:block;font-size:12.5px;color:var(--wp--preset--color--secondary);margin-top:3px}
.ak-forum-topic__cat{color:var(--wp--preset--color--accent);font-weight:600}
.ak-forum-topic__replies{flex:none;font-family:var(--ak-mono);font-size:13px;color:var(--wp--preset--color--secondary)}
.ak-forum-single__meta{color:var(--wp--preset--color--secondary);font-size:14px}
.ak-forum-single__meta a{color:var(--wp--preset--color--accent);text-decoration:none}

/* ── Pomoz archivu ── */
.ak-archive-help__intro{font-size:16px;line-height:1.65;max-width:64ch}
.ak-archive-help__stats{display:flex;gap:14px;flex-wrap:wrap;margin:20px 0 8px}
.ak-help-stat{padding:12px 18px;border:1px solid var(--wp--preset--color--border);border-radius:12px;
	background:var(--wp--preset--color--surface);font-size:14px;color:var(--wp--preset--color--secondary)}
.ak-help-stat strong{font-family:var(--ak-display);font-size:20px;color:var(--wp--preset--color--accent);margin-right:6px}
.ak-archive-help__hint{color:var(--wp--preset--color--secondary);font-size:14px;margin:4px 0 12px}
.ak-archive-help__list{display:flex;flex-direction:column;gap:8px;margin-bottom:26px}
.ak-helpitem{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 16px;
	text-decoration:none;border:1px solid var(--wp--preset--color--border);border-radius:10px;
	background:var(--wp--preset--color--surface);transition:border-color .15s}
.ak-helpitem:hover{border-color:var(--wp--preset--color--accent)}
.ak-helpitem__title{color:var(--wp--preset--color--text);font-weight:600;font-size:14.5px}
.ak-helpitem__rok{color:var(--wp--preset--color--secondary);font-weight:400}
.ak-helpitem__cta{flex:none;color:var(--wp--preset--color--accent);font-size:13px;font-weight:600}
.ak-archive-help__refresh{font-size:13px;color:var(--wp--preset--color--secondary)}

/* ── 404 ── */
.ak-404{text-align:center;padding:20px 0}
/* kazeta s přetrženou páskou */
.ak-404__cassette{display:block;width:100%;max-width:340px;height:auto;margin:0 auto 6px;
	filter:drop-shadow(0 14px 22px rgba(22,22,26,.16))}
.ak-404__svg-code{font-family:'Courier Prime','Courier New',monospace;font-weight:700;font-size:34px;
	fill:#26221b;letter-spacing:.04em}
.ak-404__svg-label{font-family:'Courier Prime','Courier New',monospace;font-size:11px;fill:#8a7d66;
	letter-spacing:.08em}
/* páska se líně pohupuje, jako by se ještě dovlnila */
@keyframes ak-404-sway{from{transform:translateY(0) rotate(0)}to{transform:translateY(-3px) rotate(-1.2deg)}}
.ak-404__tape{transform-origin:200px 150px;animation:ak-404-sway 3.4s ease-in-out infinite alternate}
/* levé kolečko se ještě dotáčí naprázdno */
@keyframes ak-404-spin{to{transform:rotate(360deg)}}
.ak-404__reel{transform-origin:108px 145px;animation:ak-404-spin 5.5s linear infinite;
	stroke-dasharray:9 7}
.ak-404__reel--b{transform-origin:232px 145px;animation-duration:8s;animation-direction:reverse}
@media (prefers-reduced-motion:reduce){
	.ak-404__tape,.ak-404__reel{animation:none}
}
.ak-404__code{font-family:var(--ak-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;
	color:var(--wp--preset--color--accent)}
.ak-404__h{font-family:var(--ak-display);font-size:clamp(28px,5vw,44px);margin:10px 0 12px}
.ak-404__search{display:flex;gap:10px;justify-content:center;margin:22px 0;flex-wrap:wrap}
.ak-404__search input{min-width:260px;padding:11px 16px;border:1px solid var(--wp--preset--color--border);
	border-radius:999px;font-family:inherit;font-size:14px}
.ak-404__links{color:var(--wp--preset--color--secondary)}
.ak-404__links a{color:var(--wp--preset--color--accent);text-decoration:none;font-weight:600}

/* ── Událost: info + iCal ── */
.ak-event-info{padding:12px 16px;border:1px solid var(--wp--preset--color--border);border-radius:12px;
	background:var(--wp--preset--color--surface);font-size:14.5px}
.ak-ics-link{color:var(--wp--preset--color--accent);text-decoration:none;font-weight:600}
.ak-ics-link:hover{text-decoration:underline}

/* ── Sbírka: toolbar + seznamové zobrazení ── */
.ak-sbirka__toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 24px}
.ak-sbirka__viewtoggle{display:inline-flex;border:1px solid var(--wp--preset--color--border);
	border-radius:999px;overflow:hidden;margin-right:6px}
.ak-viewbtn{padding:8px 16px;border:none;background:transparent;font-family:var(--ak-sans);
	font-size:13px;font-weight:600;color:var(--wp--preset--color--secondary);cursor:pointer;transition:.15s}
.ak-viewbtn.is-active{background:var(--wp--preset--color--accent);color:#fff}
.ak-sbirka__toolbar .ak-btn--ghost{border:1px solid var(--wp--preset--color--border);border-radius:999px;
	padding:8px 16px;font-family:var(--ak-sans);font-size:13px;font-weight:600;text-decoration:none;
	color:var(--wp--preset--color--text);transition:transform .12s ease, box-shadow .12s ease}
.ak-sbirka__toolbar .ak-btn--ghost:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(22,22,26,.10)}
.ak-sbirka-list{width:100%;border-collapse:collapse;border:1px solid var(--wp--preset--color--border);
	border-radius:12px;overflow:hidden;background:var(--wp--preset--color--surface);font-size:14px}
.ak-sbirka-list th{font-family:var(--ak-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
	color:var(--wp--preset--color--secondary);text-align:left;padding:10px 14px;
	background:var(--wp--preset--color--muted);border-bottom:1px solid var(--wp--preset--color--border)}
.ak-sbirka-list td{padding:10px 14px;border-bottom:1px solid var(--wp--preset--color--border)}
.ak-sbirka-list tr:last-child td{border-bottom:none}
.ak-sbirka-list tbody tr:hover{background:var(--wp--preset--color--muted)}
.ak-sbirka-list a{color:var(--wp--preset--color--text);font-weight:600;text-decoration:none}
.ak-sbirka-list a:hover{color:var(--wp--preset--color--accent)}
.ak-sbirka-list__num{text-align:right !important;font-family:var(--ak-mono);font-size:13px}
@media(max-width:640px){
	.ak-sbirka-list th:nth-child(4), .ak-sbirka-list td:nth-child(4){display:none}
	.ak-sbirka-list th, .ak-sbirka-list td{padding:8px 10px}
}

/* ── Bannery (reklama/partneři) ── */
.ak-banner{position:relative}
.ak-banner__label{position:absolute;top:-14px;left:0;font-family:var(--ak-mono);font-size:9px;
	letter-spacing:.14em;text-transform:uppercase;color:var(--wp--preset--color--secondary);opacity:.7}
.ak-banner img{display:block;max-width:100%;height:auto;border-radius:8px}
.ak-banner a{display:block;line-height:0}
/* Header banner sedí ZA hlavičkou (viz class-banners.php) a je držený decentně:
   menší odstup nahoře, ať nerozráží web hned pod navigací. */
.ak-banner--header, .ak-banner--footer{max-width:970px;margin:18px auto 6px;padding:0 24px;opacity:.92}
.ak-banner--footer{margin:34px auto}
.ak-banner--header:hover, .ak-banner--footer:hover{opacity:1}
.ak-banner--side-l, .ak-banner--side-r{display:none}
@media (min-width:1640px){
	.ak-banner--side-l, .ak-banner--side-r{display:block;position:fixed;top:180px;width:160px;z-index:50}
	.ak-banner--side-l{left:calc(50% - 600px - 200px)}
	.ak-banner--side-r{right:calc(50% - 600px - 200px)}
	.ak-banner--side-l img, .ak-banner--side-r img{width:160px}
}
@media print{.ak-banner{display:none}}
/* ═══════════════════════════════════════════════════════════════════════════
   v2.2.0 — VÍC KAZETY: žánrová hlavička jako kazetový štítek, páska pod
   nadpisy sekcí
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Žánr/term archiv: hlavička jako velký kazetový štítek ── */
.ak-term-archive__head--label{position:relative;overflow:hidden;margin:6px 0 30px;
	padding:26px 28px 22px 32px;border:1px solid rgba(0,0,0,.18);border-radius:8px;
	background:
		repeating-linear-gradient(to bottom, rgba(0,0,0,0) 0 21px, rgba(70,90,150,.12) 21px 22px),
		repeating-linear-gradient(0deg, transparent 0 2px, rgba(0,0,0,.012) 2px 4px),
		linear-gradient(157deg,#f6f1e5 0%,#e9dfcb 100%);
	box-shadow:0 1px 0 rgba(255,255,255,.7) inset, 0 8px 20px -14px rgba(22,22,26,.35)}
.ak-term-archive__bar{position:absolute;top:0;left:0;right:0;height:10px;background:var(--jc,#d9480f)}
.ak-term-archive__head--label .ak-term-archive__eyebrow{display:inline-block;font-family:var(--ak-mono);
	font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--jc,#d9480f);
	border:1px solid var(--jc,#d9480f);border-radius:999px;padding:2px 10px;margin:8px 0 10px}
/* !important nutné — globální typografické pravidlo h1 (řádek ~3637) má taky !important */
.ak-term-archive__head--label .ak-term-archive__title{font-family:'Courier Prime','Courier New',monospace !important;
	font-weight:700;font-size:clamp(26px,4vw,40px);letter-spacing:.01em !important;text-transform:uppercase !important;
	color:#26221b;margin:0 0 6px}
.ak-term-archive__head--label .ak-term-archive__desc{color:#6d6557;max-width:60ch;margin:4px 0 8px}
.ak-term-archive__head--label .ak-term-archive__count{font-family:var(--ak-mono);font-size:12px;
	color:#8a8271;letter-spacing:.06em}
/* kazetová kolečka vpravo */
.ak-term-archive__reels{position:absolute;right:26px;bottom:18px;display:flex;gap:26px;align-items:center}
.ak-term-archive__reels span{width:34px;height:34px;border-radius:50%;border:3px solid rgba(0,0,0,.22);
	position:relative;transition:transform .4s ease}
.ak-term-archive__reels span::after{content:"";position:absolute;inset:8px;border-radius:50%;
	background:var(--jc,#d9480f);opacity:.75}
.ak-term-archive__head--label:hover .ak-term-archive__reels span{transform:rotate(180deg)}
@media(max-width:640px){.ak-term-archive__reels{display:none}}

/* ── Magnetová páska pod nadpisy sekcí (homepage a archivy) ── */
.ak-section-title{position:relative;padding-bottom:10px}
.ak-section-title::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:4px;
	border-radius:2px;
	background:linear-gradient(to bottom, #8a6a48 0%, #4a3525 50%, #8a6a48 100%)}

/* ═══════════════════════════════════════════════════════════════════════════
   v2.3.0 — Spine view (hřbety v regálu) + štítkové hlavičky sekcí
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Zářez na kolečkách štítků — bez něj není rotace vidět (radiální symetrie) ── */
.ak-term-archive__reels span::before{content:"";position:absolute;top:3px;left:50%;
	margin-left:-1.5px;width:3px;height:9px;border-radius:2px;background:rgba(0,0,0,.4);z-index:1}
.ak-term-archive__head--label:hover .ak-term-archive__reels span{transform:rotate(300deg)}
.ak-term-archive__reels span{transition:transform 1.1s cubic-bezier(.3,.7,.3,1)}

/* ── Toolbar katalogu ── */
.ak-catalog__bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ak-catalog__viewtoggle{margin-left:auto}

/* ── Spine view: hřbety kazet v regálu ── */
/* dva hřbety vedle sebe — celá šířka působila jako „nudle", ne hřbet */
.ak-grid.is-spines{display:grid;grid-template-columns:1fr 1fr;gap:5px 18px;align-items:stretch}
@media(max-width:860px){.ak-grid.is-spines{grid-template-columns:1fr}}
.ak-catalog .is-spines .ak-kcard{transform:none;height:44px;border-radius:4px;overflow:hidden;
	border:1px solid #c9c9c2;
	background:
		repeating-linear-gradient(90deg, transparent 0 3px, rgba(0,0,0,.008) 3px 6px),
		linear-gradient(to bottom, #f7f2e6 0%, #e9dfcb 100%);
	box-shadow:0 1px 0 rgba(255,255,255,.75) inset, 0 2px 4px -2px rgba(22,22,26,.25);
	transition:transform .18s ease, box-shadow .18s ease}
.ak-catalog .is-spines .ak-kcard:hover{transform:translateX(10px);
	box-shadow:0 1px 0 rgba(255,255,255,.75) inset, -6px 4px 14px -6px rgba(22,22,26,.35)}
/* skryté přední strany, odkaz přes celý hřbet */
.ak-catalog .is-spines .ak-kcard__cover{display:none}
.ak-catalog .is-spines .ak-kcard__coverlink{position:absolute;inset:0;z-index:3}
.ak-catalog .is-spines .ak-kcard__coverlink::before,
.ak-catalog .is-spines .ak-kcard__coverlink::after{display:none}
/* tělo jako řádek hřbetu */
.ak-catalog .is-spines .ak-kcard__body{position:static;display:flex;flex-direction:row;
	align-items:center;gap:16px;height:100%;padding:0 18px 0 22px;background:none;border:none}
.ak-catalog .is-spines .ak-kcard__body::before{left:0;top:0;bottom:0;width:9px;
	background:var(--jc, var(--wp--preset--color--accent));opacity:.9}
.ak-catalog .is-spines .ak-kcard__artist{font-size:11.5px;flex:none;max-width:32%;
	white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ak-catalog .is-spines .ak-kcard__title{font-size:13.5px;white-space:nowrap;overflow:hidden;
	text-overflow:ellipsis;flex:1 1 auto}
.ak-catalog .is-spines .ak-kcard__meta{flex:none;margin-left:auto;font-size:11.5px;white-space:nowrap}
.ak-catalog .is-spines .ak-kcard__rating{display:none}
/* šroubek hřbetu */
.ak-catalog .is-spines .ak-kcard__body::after{content:"";position:absolute;right:8px;top:50%;
	width:5px;height:5px;margin-top:-2.5px;border-radius:50%;
	background:radial-gradient(circle at 35% 35%, rgba(255,255,255,.55) 0 40%, rgba(0,0,0,.18) 55%, rgba(0,0,0,.30) 100%);
	box-shadow:0 0 0 1px rgba(0,0,0,.10) inset;pointer-events:none}

/* ============================================================
   KAZETOVÉ PROSTŘEDÍ (v2.9.0)
   Připojeno na konec záměrně — podle konvence tohoto souboru pozdější blok
   přebíjí starší (viz poznámka o vrstvení výše). Neslučovat s ničím nahoře.

   Čtyři vrstvy:
     1) papír a karton místo ploché bílé,
     2) karta = kazeta v obalu,
     3) detail = rozevřený J-card,
     4) barva typu pásky jako průběžný vizuální jazyk.
   Vše čistě CSS, žádné bitmapy — šum je jeden inline SVG turbulence filtr,
   takže nic nepřidává do requestů.
   ============================================================ */

:root {
	/* Kartonáž: teplejší než čistě bílá, ale pořád tiskový papír. */
	--ak-paper: #faf8f3;
	--ak-paper-deep: #f3efe6;
	--ak-card-edge: #ddd6c8;
	--ak-ink-faint: rgba(22, 22, 26, 0.055);

	/* Typy pásky — jedno místo pro celý web (dřív jen v jednom chipu). */
	--ak-tape-fe: #8a5a2b;
	--ak-tape-cro2: #2f6f8f;
	--ak-tape-fecr: #5f7a3a;
	--ak-tape-metal: #4a4a52;
}

/* ── 1) Papír ─────────────────────────────────────────────────────────────
   Šum je vzorek 180×180 px vygenerovaný fraktální turbulencí, hodně světlý.
   Fixní pozadí by při scrollu „plavalo", proto se necháva scrollovat s tělem. */
body {
	background-color: var(--ak-paper) !important;
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E");
	background-repeat: repeat;
}

/*
 * Obsahové plochy jsou průhledné, aby papír prosvítal celou stránkou —
 * papír je „stůl", karty a panely na něm leží.
 *
 * POZOR na past, kvůli které to nefungovalo: o pár tisíc řádků výš je pravidlo
 * `body, .wp-site-blocks, main, .wp-block-group { background-color:#fafaf8 !important }`.
 * Selektor `main` má specificitu 0-0-1, ale `<main>` nese i třídu
 * `wp-block-group` (0-1-0), takže plochá barva vyhrála a papír byl vidět jen
 * v úzkých pruzích mimo bloky. Proto se tady musí přebít i `.wp-block-group`.
 *
 * Vlastní podklad si dál drží: hlavička, patička (níž), karty a panely
 * (`.ak-kcard`, `.ak-label-card`, `.ak-fakta`, …) — jinak by stránka ztratila
 * členění na lištu a obsah.
 */
.wp-site-blocks,
main,
main .wp-block-group,
.wp-site-blocks > .wp-block-group {
	background-color: transparent !important;
}
.ak-site-header,
.ak-masthead {
	background-color: #fffefb !important;
}

/* Karty a panely: kartonový podklad + vlasová linka jako na potisku štítku. */
.ak-kcard,
.ak-label-card,
.ak-blog-card,
.ak-review-card,
.ak-fakta,
.ak-prazdna-sekce,
.ak-medium-card {
	background-color: #fffefb !important;
	border-color: var(--ak-card-edge) !important;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7) inset, 0 8px 20px -18px rgba(22, 22, 26, 0.35);
}

/* Hlavička sekce dostane linkování jako popisovací štítek. */
.ak-term-archive__head--label {
	background-image:
		repeating-linear-gradient(
			to bottom,
			transparent 0 21px,
			var(--ak-ink-faint) 21px 22px
		);
}

/* ── 2) Karta = kazeta v obalu ────────────────────────────────────────────
   Kazeta se při přejezdu povysune z pouzdra. Dřív se jen přibližoval obrázek
   (scale 1.04), což je gesto z e-shopů, ne z police s kazetami.
   Pseudoprvek `::after` je hrana pouzdra, přes kterou kazeta vyjíždí. */
.ak-kcard__cover,
.ak-kazeta-card__cover {
	position: relative;
}
.ak-kcard__cover img,
.ak-kcard__img,
.ak-kcard__cover .ak-jcard,
.ak-kazeta-card__cover img {
	transition: transform 0.42s cubic-bezier(0.22, 0.61, 0.36, 1);
	will-change: transform;
}
.ak-kcard:hover .ak-kcard__img,
.ak-kcard:hover .ak-kcard__cover img,
.ak-kcard:focus-within .ak-kcard__img,
.ak-kazeta-card:hover .ak-kazeta-card__cover img {
	/* Povysunutí místo přiblížení; scale zůstává minimální, jen aby se
	   nevykreslil prázdný pruh pod spodní hranou. */
	transform: translateY(-7px) scale(1.012) !important;
}

/* Hrana pouzdra — světlo na horní hraně, stín u spodní. */
.ak-kcard__cover::after,
.ak-kazeta-card__cover::after {
	content: "";
	position: absolute;
	inset: auto 0 0 0;
	height: 34%;
	pointer-events: none;
	z-index: 2;
	background: linear-gradient(
		to top,
		rgba(22, 22, 26, 0.16) 0,
		rgba(22, 22, 26, 0.05) 45%,
		rgba(22, 22, 26, 0) 100%
	);
	box-shadow: 0 -1px 0 rgba(255, 255, 255, 0.35) inset;
	opacity: 0;
	transition: opacity 0.42s ease;
}
.ak-kcard:hover .ak-kcard__cover::after,
.ak-kcard:focus-within .ak-kcard__cover::after,
.ak-kazeta-card:hover .ak-kazeta-card__cover::after {
	opacity: 1;
}

/* Na dotykových zařízeních hover neexistuje — kazeta tam ať sedí v pouzdře. */
@media (hover: none) {
	.ak-kcard:hover .ak-kcard__img,
	.ak-kcard:hover .ak-kcard__cover img {
		transform: none !important;
	}
}
/* Respekt k nastavení systému. */
@media (prefers-reduced-motion: reduce) {
	.ak-kcard__cover img,
	.ak-kcard__img,
	.ak-kazeta-card__cover img {
		transition: none;
	}
	.ak-kcard:hover .ak-kcard__img,
	.ak-kcard:hover .ak-kcard__cover img {
		transform: none !important;
	}
}

/* ── 3) Detail = rozevřený J-card ─────────────────────────────────────────
   Tracklist má anatomii potisku: SIDE A/B jako záložka, tečkované vodicí
   linky mezi názvem a časem, čísla v mono s tabulárními číslicemi. */
/*
 * Obě strany mají stejně dlouhý list papíru i při různém počtu skladeb.
 * Mřížka sloupce roztahuje (`stretch`), ale to platí jen pro `.ak-tracklist-fe`
 * — vnitřní `<ol>`, které nese rámeček a linkování, si drželo výšku podle
 * obsahu, takže u kratší strany papír končil dřív. Sloupec je proto flex
 * a seznam v něm dobírá zbylou výšku.
 */
.ak-tracklist-fe {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.ak-tracklist-fe ol {
	flex: 1 0 auto;
	background:
		repeating-linear-gradient(
			to bottom,
			transparent 0 33px,
			var(--ak-ink-faint) 33px 34px
		),
		#fffefb;
	border-color: var(--ak-card-edge);
}
.ak-tracklist-fe h3 {
	background: var(--ak-paper-deep);
	border: 1px solid var(--ak-card-edge);
	border-bottom: none;
	color: var(--wp--preset--color--text);
	font-family: var(--ak-mono);
	font-size: 11px;
	letter-spacing: 0.18em;
}
.ak-tracklist-fe li {
	border-bottom: none;
	background: transparent !important;
	position: relative;
	padding: 7px 14px;
}
.ak-tracklist-fe .ak-pozice,
.ak-tracklist-fe .ak-delka {
	font-variant-numeric: tabular-nums;
}
/*
 * Pozice byla v oranžovém akcentu — na světlejším papírovém podkladu vyšel
 * kontrast na 4.26, tedy pod hranicí WCAG AA (4.5) pro text téhle velikosti.
 * Tmavší odstín akcentu drží stejný tón a dostane se na 6+.
 */
.ak-tracklist-fe .ak-pozice {
	color: var(--wp--preset--color--accent-2, #a63305);
}
.ak-tracklist-fe .ak-nazev {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
/*
 * Vodicí tečky vedou pod celou řádkou a text je „přerazí" vlastním pozadím.
 * Zkoušel jsem je nejdřív jako `::after` na názvu skladby, aby začínaly přesně
 * za textem — to v CSS nejde: šířku vysázeného proporcionálního textu neumíme
 * zjistit, takže tečky buď přetékaly přes název, nebo končily moc brzy.
 */
/* Jen řádky, které opravdu mají čas (třídu dává PHP) — u ostatních by tečky
   vedly do prázdna. */
.ak-tracklist-fe li.ak-ma-delku::before {
	content: "";
	position: absolute;
	left: 60px;
	right: 58px;
	bottom: 12px;
	border-bottom: 1px dotted rgba(22, 22, 26, 0.22);
	z-index: 0;
}
.ak-tracklist-fe li > span {
	position: relative;
	z-index: 1;
	background: #fffefb;
}
.ak-tracklist-fe li > span.ak-nazev {
	padding-right: 6px;
}
.ak-tracklist-fe .ak-pozice {
	padding-right: 4px;
}
.ak-tracklist-fe .ak-delka {
	padding-left: 6px;
}

/* Hřbet s názvem u galerie detailu — svislý text jako na kazetě v police. */
.ak-detail-gallery__main {
	position: relative;
}
.ak-detail-gallery__main::before {
	content: attr(data-spine);
	position: absolute;
	left: -1px;
	top: 0;
	bottom: 0;
	width: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	writing-mode: vertical-rl;
	text-orientation: mixed;
	font-family: var(--ak-mono);
	font-size: 10px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(22, 22, 26, 0.45);
	background: linear-gradient(to right, var(--ak-paper-deep), rgba(255, 255, 255, 0));
	pointer-events: none;
}

/* ── 4) Barva typu pásky jako vizuální jazyk ──────────────────────────────
   Barvy existovaly, ale byly vidět jen v jednom chipu na detailu. Teď je nese
   i hrana karty a chip filtru, takže se typ pozná bez čtení. */
.ak-tape-chip,
.ak-kcard__tape {
	--ak-tape: var(--ak-tape-fe);
	border-left: 3px solid var(--ak-tape);
}
[data-tape="fe"] { --ak-tape: var(--ak-tape-fe); }
[data-tape="cro2"] { --ak-tape: var(--ak-tape-cro2); }
[data-tape="fecr"] { --ak-tape: var(--ak-tape-fecr); }
[data-tape="metal"] { --ak-tape: var(--ak-tape-metal); }

/*
 * Hrana karty podle typu pásky byla odstraněna spolu s typem pásky
 * u nahrávek — typ je vlastnost média (/medium/), ne vydané nahrávky.
 * Proměnné --ak-tape-* zůstávají, používá je výpis pásek.
 */
.ak-kcard {
	position: relative;
}

/* Tlačítko tisku J-cardu pod tracklistem — drobná akce, ne hlavní CTA. */
.ak-jcard-print-akce {
	margin: 14px 0 0;
	text-align: right;
}

/* Délka strany v záhlaví tracklistu: tišší než název strany. */
.ak-tracklist-fe__delka {
	font-weight: 400;
	opacity: 0.75;
	letter-spacing: 0.06em;
}

/* ── Kazetové ikony ve sbírkových tlačítkách ─────────────────────────────
   „Mám" = plná kazeta, „Chci" = kazeta obrysem, „Líbí se mi" = srdce.
   Dřív mělo „Chci" prázdné srdce a „Líbí se mi" plné — dvě různé funkce
   se stejným symbolem. `.ak-act-ico` počítalo s textovým znakem (font-size),
   pro SVG proto potřebuje vlastní rozměr; poměr 24:16 drží viewBox ikony. */
.ak-act-ico {
	display: inline-flex;
	align-items: center;
}
.ak-act-ico .ak-cassette-icon {
	width: 15px;
	height: 10px;
	display: block;
}
/* V poptávce a v nadpisech sbírky jde ikona do řádku textu. */
.ak-demand__item .ak-cassette-icon,
.ak-sbirka__heading .ak-cassette-icon {
	width: 15px;
	height: 10px;
	vertical-align: -1px;
}

/* ── Řádek metadat pod ikonami na detailu ────────────────────────────────
   Hodnocení a poptávka sedí v jednom obalu POD tlačítky Mám / Chci / ♥,
   stažené k jejich pravé hraně. Předtím byl každý z nich samostatný blok
   na celou šířku lišty: vlevo od kazetek zůstávalo prázdno a s poptávkou
   by z toho byly dva řídké řádky pod sebou.

   Pozor na jméno třídy: `.ak-detail-meta` už patří `<dl>` s parametry kazety
   (rok, vydavatel, páska) a nese rámeček — první verze tohoto obalu ho použila
   a kolem řádku se vykreslil orámovaný box přes celou šířku do prázdna. */
.ak-detail-actions__meta {
	flex: 0 0 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 4px 14px;
	margin: 4px 0 0;
}
/* Vnitřní bloky si nesmí nést vlastní odsazení ani vynucenou šířku — obal
   je řeší za ně, jinak se řádek zase roztrhne na dva. */
.ak-detail-actions__meta .ak-detail__rating,
.ak-detail-actions__meta .ak-demand {
	flex: 0 1 auto;
	margin: 0;
	justify-content: flex-end;
}
/*
 * Kazetky o vlas větší — ve výchozích 13×9 px by se ztratily.
 * Velikost drží `.ak-star`, ne vnitřní `svg` (to má width/height 100 %),
 * a poměr musí zůstat 24:16 z viewBoxu ikony, jinak se kazeta zdeformuje.
 */
.ak-detail-actions .ak-star {
	width: 17px;
	height: 11.33px;
}

/* ── Tracklist na úzkém displeji ─────────────────────────────────────────
   Dvě strany vedle sebe nechávají názvu málo místa. Původní `nowrap`
   + `ellipsis` z něj udělaly „Začátek Mrá…", což je horší než zalomení —
   u skladby je název to hlavní. Zalomení je proto povolené a vodicí tečky
   se kreslí až tam, kde se řádek na jeden řádek vejde. */
.ak-tracklist-fe .ak-nazev {
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
	overflow-wrap: anywhere;
}
@media (max-width: 900px) {
	.ak-tracklist-fe li.ak-ma-delku::before {
		display: none;
	}
	/* Bez teček nemusí mít text neprůhledné pozadí, které je „přerazí". */
	.ak-tracklist-fe li > span {
		background: transparent;
	}
}

/* Papír na obrazovku, ne do tiskárny — tisknutelný J-card z mixtapu by jinak
   vyjel s plošným rastrem přes celou stránku. */
@media print {
	body {
		background-image: none !important;
		background-color: #fff !important;
	}
	.ak-detail-gallery__main::before {
		display: none;
	}
}

/* ── Detail přístroje: sjednocení s detailem kazety (v2.11.1) ─────────────
   Detail přehrávače vypadal jako jiný web: titulek volně nad obsahem,
   parametry bez rámečku (viz oprava selektoru `.ak-detail-meta` výše)
   a tlačítka Mám/Chci zahozená dole vpravo. Kazetový detail má titulek
   i akce v jednom pruhu na papírovém podkladu — přístroj teď taky. */
.ak-pr-detail {
	background: #fffefb;
	border: 1px solid var(--ak-card-edge, #ddd6c8);
	border-radius: 14px;
	padding: 22px 24px 20px;
	margin: 8px 0 24px;
}
.ak-pr-detail__top {
	margin-top: 0;
}
/* Obal přehrávače je na šířku, ne na výšku jako kazeta — poměr 4:3 zůstává,
   jen dostane stejnou hranu a podklad jako karty. */
.ak-pr-detail__cover {
	border: 1px solid var(--ak-card-edge, #ddd6c8);
	background: var(--ak-paper-deep, #f3efe6);
}
/* Akce patří nahoru k titulku, ne pod tabulku parametrů. */
.ak-pr-detail__owners {
	justify-content: flex-start;
	margin: 16px 0 0;
}
/* Zástupná ikona v prázdném obalu: pravidlo o pár tisíc řádků výš (font-size 48px)
   přebíjelo pozdější `.ak-kcard__placeholder`, takže ikona zůstala drobná. */
.ak-pr-detail__cover .ak-kcard__placeholder {
	font-size: 56px !important;
	opacity: 0.55;
}

/* Titulek přístroje dostane stejný rytmus jako u kazety. */
.single-pristroj .ak-page-title,
.single-paska .ak-page-title {
	margin: 0 0 4px;
}

/* ── Pět kazet v řadě na desktopu (v2.11.7) ──────────────────────────────
   Pružná mřížka `auto-fill, minmax(210px, 1fr)` vycházela na pět sloupců jen
   těsně: v kontejneru 1200 px zbývalo pár desítek pixelů rezervy, takže stačil
   menší zoom prohlížeče nebo užší okno a řada spadla na čtyři.
   Od 1000 px se proto počet určuje napevno a nezávisí na zaokrouhlení. */
@media (min-width: 1000px) {
	.ak-kgrid,
	.ak-catalog .ak-grid,
	.ak-grid--4,
	.ak-kapela-kazety__grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}
/* Pod 1000 px zůstává pružná mřížka z pravidel výš — počet sloupců si určí
   sama podle dostupné šířky. */

/* ── Externí odkazy (Discogs, web, Bandcamp…) ────────────────────────────
   Jeden vzhled pro kazetu i kapelu. Chip dědí z `.ak-kapela-link`, tady se
   jen doladí ikona a šipka „ven z webu". */
.ak-ext-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 4px 0 20px;
}
.ak-ext-link__ico {
	font-size: 12px;
	/* Emoji nedědí letter-spacing textu chipu — bez toho se lepí na název. */
	letter-spacing: 0;
	margin-right: 1px;
}
.ak-ext-link__out {
	opacity: 0.55;
	font-size: 10px;
}

/* ══════════════════════════════════════════════════════════════════════════
   HLAVIČKA JAKO ČELO KAZEŤÁKU (v2.14.0)

   Druhý pokus. První verze udělala tmavý jen horní pruh a název posadila na
   papírový štítek — papír na kovu působil jako nalepený cizí prvek a lišta
   Scéna/Technika pod tím zůstala světlá, takže hlavička byla rozpůlená na dva
   nesouvisející pásy.

   Teď je čelem decku CELÁ hlavička: název, přepínač i podnavigace leží na
   jednom kovovém panelu. Papír zmizel, název je vyrytý přímo do kovu.
   ══════════════════════════════════════════════════════════════════════════ */

.ak-site-header {
	background:
		repeating-linear-gradient(90deg, rgba(255,255,255,.022) 0 1px, rgba(0,0,0,0) 1px 3px),
		linear-gradient(180deg, #3c3c44 0%, #2e2e35 38%, #26262b 72%, #1f1f24 100%) !important;
	border-bottom: 1px solid #14141a !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 2px 10px -4px rgba(0,0,0,.45);
}

/* ── Horní řada: název, tagline, displej ─────────────────────────────────── */
.ak-masthead {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 14px 24px 12px;
	background: transparent !important;
	border-bottom: 1px solid rgba(255,255,255,.09);
	box-shadow: 0 1px 0 rgba(0,0,0,.35);
}

/* Název vyrytý do kovu: světlý text s jemným hlubotiskem, žádný papír. */
.ak-masthead .ak-site-title {
	font-family: var(--ak-display);
	font-size: clamp(24px, 3vw, 34px);
	font-weight: 700;
	letter-spacing: -0.02em;
	text-transform: lowercase;
	color: #f2efe9;
	background: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
	margin: 0;
	text-shadow: 0 1px 0 rgba(0,0,0,.55), 0 -1px 0 rgba(255,255,255,.06);
}
.ak-masthead .ak-site-title::before { content: none; }
.ak-masthead .ak-site-title span { color: #ff9a3c; }

.ak-masthead .ak-tagline {
	color: #b9b5ac;
	margin: 0;
	flex: 1 1 auto;
}

/* ── Přepínač Scéna / Technika jako kovová tlačítka ──────────────────────── */
.ak-hubnav {
	background: transparent !important;
}
.ak-hubnav__switch {
	border-bottom: 1px solid rgba(255,255,255,.07);
	padding: 0 24px;
}
.ak-hub {
	color: #cfcbc2 !important;
	border: 1px solid transparent;
	border-bottom: 0;
	border-radius: 4px 4px 0 0;
	padding: 9px 16px 8px;
	background: transparent;
}
.ak-hub:hover {
	color: #fff !important;
	background: rgba(255,255,255,.05);
}
.ak-hub__d { color: #8f8b83 !important; }
/* Aktivní hub je „zapnutý kanál" — podsvícený a se světelnou linkou dole. */
.ak-hub.is-active {
	color: #fff !important;
	background: linear-gradient(180deg, rgba(255,154,60,.16) 0%, rgba(255,154,60,.05) 100%);
	border-color: rgba(255,154,60,.35);
	box-shadow: inset 0 -2px 0 #ff9a3c;
}
.ak-hub.is-active .ak-hub__k { color: #ff9a3c !important; }
.ak-hub.is-active .ak-hub__d { color: #c8c3b8 !important; }

/* ── Podnavigace na panelu ───────────────────────────────────────────────── */
.ak-hubnav__sub {
	padding: 6px 24px 8px;
}
.ak-subnav-link {
	color: #cfcbc2 !important;
}
.ak-subnav-link:hover {
	color: #fff !important;
	background: rgba(255,255,255,.07);
}
.ak-subnav-link.is-active { color: #ff9a3c !important; }
.ak-subnav-link.is-active::after { background: #ff9a3c; }

/* Pravá skupina odkazů (Blog, O projektu, profil) a rozbalovátko „Víc". */
.ak-hubnav__shared a,
.ak-subnav-more > summary,
.ak-subnav-more__link {
	color: #b9b5ac !important;
}
.ak-hubnav__shared a:hover,
.ak-subnav-more__link:hover { color: #fff !important; }
.ak-subnav-more__panel,
.ak-subnav-more[open] > div {
	background: #2b2b31 !important;
	border-color: rgba(255,255,255,.14) !important;
}

/* CTA „+ Přidat kazetu" musí na kovu držet — plná jantarová, ne obrys. */
.ak-hubnav__cta {
	background: #ff9a3c !important;
	border-color: #ff9a3c !important;
	color: #221a10 !important;
	font-weight: 700;
}
.ak-hubnav__cta:hover {
	background: #ffb063 !important;
	border-color: #ffb063 !important;
}

/* ── Displej s počtem kazet ──────────────────────────────────────────────── */
.ak-deck-display {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 1px;
	padding: 6px 12px 5px;
	border-radius: 3px;
	background: linear-gradient(180deg, #14140f 0%, #1c1c16 100%);
	border: 1px solid #0c0c09;
	box-shadow: inset 0 1px 3px rgba(0,0,0,.8), 0 1px 0 rgba(255,255,255,.06);
}
.ak-deck-display__num {
	font-family: var(--ak-mono);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.14em;
	color: #ffb340;
	text-shadow: 0 0 7px rgba(255,179,64,.45);
	font-variant-numeric: tabular-nums;
}
.ak-deck-display__lbl {
	font-family: var(--ak-mono);
	font-size: 8px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: #9a8e75;
}

/* Zvonek, avatar a hamburger na tmavém panelu. */
.ak-site-header .ak-bell,
.ak-site-header .ak-bell svg,
.ak-site-header .ak-avatar { color: #e8e6e1; border-color: rgba(255,255,255,.22); }
.ak-site-header .ak-bell:hover { color: #ff9a3c; border-color: rgba(255,154,60,.55); }
.ak-masthead .ak-hamburger span { background: #e8e6e1; }

/* Drobečky pod hlavičkou leží na papíru, ne na kovu — beze změny. */

@media (max-width: 700px) {
	.ak-deck-display { display: none; }
	.ak-masthead { gap: 12px; padding: 12px 16px; }
	.ak-hubnav__switch, .ak-hubnav__sub { padding-left: 16px; padding-right: 16px; }
}

/* Obal kolem podnavigace uvnitř hlavičky dostával bílou z obecného pravidla
   `.wp-block-group { background-color:#fafaf8 !important }`, takže spodní pás
   čela zůstal světlý a hlavička byla zase rozpůlená. Uvnitř hlavičky musí být
   všechny blokové obaly průhledné — podklad drží `.ak-site-header`. */
.ak-site-header .wp-block-group,
.ak-site-header .ak-hubnav,
.ak-site-header .ak-hubnav__sub,
.ak-site-header .ak-hubnav__switch {
	background-color: transparent !important;
}

/* ── Scéna / Technika jako dvě zřetelné záložky (v2.14.2) ────────────────
   Dvě chyby předchozí verze:
   1) barvu jsem nastavil na `.ak-hub`, ale text nese vnitřní `.ak-hub__k`,
      který má vlastní barvu z původního světlého motivu — „Technika" proto
      zůstala tmavá na tmavém a byla nečitelná;
   2) obě volby splývaly s panelem, takže nebylo poznat, že jde o hlavní
      rozcestí webu.
   Teď jsou to skutečné záložky: neaktivní zapuštěná do kovu, aktivní vystouplá
   a světlá, navazující na podnavigaci pod sebou. */
.ak-hubnav__switch {
	gap: 6px;
	align-items: flex-end;
	padding-top: 10px;
}
.ak-hub {
	min-width: 150px;
	padding: 10px 18px 9px !important;
	border: 1px solid rgba(255, 255, 255, 0.10) !important;
	border-bottom: 0 !important;
	border-radius: 6px 6px 0 0 !important;
	/* Neaktivní = zapuštěná do panelu. */
	background: linear-gradient(180deg, rgba(0,0,0,.28) 0%, rgba(0,0,0,.14) 100%) !important;
	box-shadow: inset 0 2px 5px rgba(0,0,0,.35);
	transition: background .15s ease, color .15s ease;
}
.ak-hub .ak-hub__k {
	color: #e6e3dc !important;
	font-weight: 700;
	letter-spacing: 0.01em;
}
.ak-hub .ak-hub__d {
	color: #97928a !important;
}
.ak-hub:hover {
	background: linear-gradient(180deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.04) 100%) !important;
}
.ak-hub:hover .ak-hub__k { color: #fff !important; }

/* Aktivní záložka „vyjede" z panelu a splyne s podnavigací pod sebou. */
.ak-hub.is-active {
	background: linear-gradient(180deg, #4a4a53 0%, #3b3b43 100%) !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 -2px 6px -2px rgba(0,0,0,.5);
	position: relative;
	z-index: 1;
}
.ak-hub.is-active .ak-hub__k { color: #ff9a3c !important; }
.ak-hub.is-active .ak-hub__d { color: #cbc6bc !important; }
/* Jantarový proužek nahoře = „zapnutý kanál". */
.ak-hub.is-active::before {
	content: "";
	position: absolute;
	left: -1px;
	right: -1px;
	top: -1px;
	height: 3px;
	background: #ff9a3c;
	border-radius: 6px 6px 0 0;
}

/* Podnavigace navazuje na aktivní záložku stejným odstínem. */
.ak-hubnav__sub {
	background: linear-gradient(180deg, #3b3b43 0%, #33333a 100%) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
}

/* ── CTA „Přidat kazetu" jako REC tlačítko (v2.15.0) ─────────────────────
   Tlačítko sedělo v pravé skupině podnavigace mezi textovými odkazy, kde
   opticky splývalo. Teď je v horní řadě u názvu a počítadla a vypadá jako
   tlačítko nahrávání na decku — červená tečka, kterou zná každý. */
.ak-cta-rec {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 15px 8px 12px;
	border-radius: 4px;
	font-family: var(--ak-mono);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
	background: linear-gradient(180deg, #4a4a53 0%, #35353c 100%);
	border: 1px solid rgba(255, 255, 255, 0.20);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 1px 3px rgba(0,0,0,.4);
	white-space: nowrap;
	transition: background .15s ease, border-color .15s ease;
}
.ak-cta-rec:hover {
	background: linear-gradient(180deg, #57575f 0%, #40404a 100%);
	border-color: rgba(255, 255, 255, 0.34);
	color: #fff;
}
/* Červená tečka jako REC — svítí, aby bylo jasné, že jde o akci. */
.ak-cta-rec__dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #e5342b;
	box-shadow: 0 0 6px rgba(229, 52, 43, .75);
	flex: 0 0 auto;
}
.ak-cta-rec:hover .ak-cta-rec__dot {
	background: #ff453a;
	box-shadow: 0 0 9px rgba(255, 69, 58, .9);
}
@media (max-width: 700px) {
	/* Na úzkém displeji zůstane jen tečka — text by tlačítko rozlámal. */
	.ak-cta-rec__txt { display: none; }
	.ak-cta-rec { padding: 8px 10px; }
}

/* Hover v rozbalovátku „Víc" (v2.15.1)
   Původní pravidlo dává na hover `background: surface` a `color: text`, tedy
   bílou plochu s tmavým písmem — to platilo pro světlý motiv. Na tmavém panelu
   z položky zbyl bílý blok. Hover je teď jen zesvětlení podkladu. */
.ak-site-header .ak-subnav-more__link:hover,
.ak-site-header .ak-subnav-more__link:focus-visible {
	background: rgba(255, 255, 255, 0.09) !important;
	color: #fff !important;
}
.ak-site-header .ak-subnav-more__link.is-active {
	color: #ff9a3c !important;
}
/* Souhrnný přepínač „Víc" ať se chová stejně. */
.ak-site-header .ak-subnav-more > summary:hover {
	background: rgba(255, 255, 255, 0.09) !important;
	color: #fff !important;
}

/* ── 2.15.2 — Hamburger: obecné pravidlo pro button ho vytáhlo i na desktop ──
   `button:not(.ak-nav button)` (0-1-2) přebíjí `.ak-hamburger{display:none}`
   (0-1-0), takže se kulaté tlačítko zobrazovalo ve všech šířkách — a na
   kovovém panelu navíc bíle, se světlými čárkami, tedy jako prázdné kolečko.
   Zvyšujeme specificitu a ladíme vzhled ke zvonku. */
.ak-masthead .ak-hamburger {
	display: none;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 999px;
	transition: border-color .18s ease;
}
.ak-masthead .ak-hamburger:hover,
.ak-masthead .ak-hamburger:focus-visible {
	border-color: rgba(255, 154, 60, .55);
}
.ak-masthead .ak-hamburger:hover span { background: #ff9a3c; }

@media (max-width: 860px) {
	.ak-masthead .ak-hamburger { display: flex; }
}

/* ── 2.16.0 — Mobilní menu: otevřený stav ───────────────────────────────── */
.ak-hamburger span { transform-origin: center; }
.ak-hamburger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.ak-hamburger.is-open span:nth-child(2) { opacity: 0; }
.ak-hamburger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.ak-masthead .ak-hamburger.is-open { border-color: rgba(255, 154, 60, .55); }
.ak-masthead .ak-hamburger.is-open span { background: #ff9a3c; }

@media (max-width: 860px) {
	.ak-hubnav.is-open {
		display: block;
		padding-block: 10px 14px;
	}
	.ak-hubnav.is-open .ak-hubnav__switch { gap: 8px; }
	.ak-hubnav.is-open .ak-hub { flex: 1 1 auto; }
}

/* Pod 860 px se do řady čela vejde jen logo, tlačítko a hamburger. */
@media (max-width: 860px) {
	.ak-masthead .ak-tagline { display: none; }
	.ak-masthead .ak-site-title { border-right: 0; }
}

/* ── 2.17.0 — Přehled žánrů (/zanry/) + odkaz z chipů na homepage ───────── */
.ak-genre-chip--vse-zanry {
	border-style: dashed;
	border-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--accent);
	font-weight: 600;
}
.ak-genre-chip--vse-zanry:hover {
	background: color-mix(in srgb, var(--wp--preset--color--accent) 10%, transparent);
}

.ak-zanry-prehled {
	display: grid;
	gap: 4px;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}
.ak-zanr-blok {
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 10px;
	background: var(--wp--preset--color--surface);
	padding: 14px 16px 16px;
}
.ak-zanr-blok__nadpis {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	margin: 0 0 10px;
	font-family: var(--ak-sans);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -.01em;
}
.ak-zanr-blok__nadpis a { color: var(--wp--preset--color--text); text-decoration: none; }
.ak-zanr-blok__nadpis a:hover { color: var(--wp--preset--color--accent); }
.ak-zanr-blok__pocet {
	font-size: 12px;
	font-weight: 600;
	color: var(--wp--preset--color--secondary);
	background: var(--wp--preset--color--background);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 999px;
	padding: 2px 9px;
	flex: 0 0 auto;
}
.ak-zanr-blok__deti { display: flex; flex-wrap: wrap; gap: 6px; }
.ak-zanr-podzanr {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: var(--ak-sans);
	font-size: 13px;
	padding: 5px 11px;
	border-radius: 999px;
	border: 1px solid var(--wp--preset--color--border);
	background: var(--wp--preset--color--background);
	color: var(--wp--preset--color--secondary);
	text-decoration: none;
	transition: .15s;
}
.ak-zanr-podzanr:hover {
	color: var(--wp--preset--color--text);
	border-color: var(--wp--preset--color--accent);
}
.ak-zanr-podzanr__pocet { font-size: 11px; opacity: .7; }
.ak-zanr-blok__prazdno {
	margin: 0;
	font-size: 13px;
	color: var(--wp--preset--color--secondary);
	font-style: italic;
}

/* ── 2.18.0 — Hlavička: přemapování barevných proměnných místo záplat ─────
   Za jediný den čtyřikrát prosáklo světlé pravidlo do tmavé hlavičky: bílý pás
   pod přepínačem, nečitelná „Technika", bílý hover v rozbalovátku „Víc", bílé
   kolečko hamburgeru. Pokaždé jiný selektor, pokaždé stejná příčina — pravidlo
   napsané pro světlý motiv sáhne po `surface` (#fff) nebo `text` (#16161a),
   což je na antracitovém kovu přesně naopak.

   Záplatovat to selektor po selektoru znamená čekat, až se chyba ukáže očima.
   Místo toho přepíšeme ty proměnné uvnitř hlavičky: každé pravidlo, které je
   používá, tak dostane hodnotu odpovídající tmavému podkladu, aniž bychom ho
   museli hledat. Nová tmavá plocha stačí označit stejným způsobem.

   Pravidla s vlastními barvami (REC tlačítko, aktivní záložka, LED počítadlo)
   se nemění — ta na proměnné nesahají. */
.ak-site-header {
	--wp--preset--color--surface: rgba(255, 255, 255, .09);
	--wp--preset--color--text: #f2f0ec;
	--wp--preset--color--secondary: #b9b4ab;
	--wp--preset--color--border: rgba(255, 255, 255, .18);
	--wp--preset--color--background: #22222a;
}

/* ── 2.19.0 — Doplňování obalů: přetažení + vizuální fronta ──────────────── */

/* Nahrávací plocha na detailu kazety. */
.ak-coverup__drop {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px 14px;
	border: 2px dashed var(--wp--preset--color--border);
	border-radius: 10px;
	background: var(--wp--preset--color--background);
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
	text-align: left;
}
.ak-coverup__drop:hover,
.ak-coverup__drop:focus-visible,
.ak-coverup__drop.is-over {
	border-color: var(--wp--preset--color--accent);
	background: color-mix(in srgb, var(--wp--preset--color--accent) 6%, transparent);
}
.ak-coverup__drop-ikona { font-size: 22px; line-height: 1; flex: 0 0 auto; }
.ak-coverup__drop-text { font-size: 13px; line-height: 1.45; }
.ak-coverup__drop-text small { color: var(--wp--preset--color--secondary); font-size: 11.5px; }

/* Náhled se ukáže až po výběru — do té doby by prázdný rámeček jen mátl. */
.ak-coverup__preview { display: none; margin: 10px 0 0; }
.ak-coverup.is-nahled .ak-coverup__preview { display: flex; align-items: flex-end; gap: 10px; }
.ak-coverup.is-nahled .ak-coverup__drop { display: none; }
.ak-coverup__preview img {
	max-width: 140px;
	max-height: 140px;
	border-radius: 6px;
	border: 1px solid var(--wp--preset--color--border);
	display: block;
}
.ak-coverup__zrusit {
	font-size: 12px;
	background: none;
	border: 0;
	color: var(--wp--preset--color--secondary);
	text-decoration: underline;
	cursor: pointer;
	padding: 0 0 4px;
}
.ak-coverup__zrusit:hover { color: var(--wp--preset--color--accent); }
.ak-coverup__btn[disabled] { opacity: .5; cursor: not-allowed; }
.ak-coverup__btn { margin-top: 10px; }

.ak-coverup--login { border-style: solid; }

/* Fronta na /pomoz-archivu/. */
.ak-helptiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: 4px;
	margin: 10px 0 22px;
}
.ak-helptile { text-decoration: none; display: block; }
.ak-helptile__cover { position: relative; display: block; }
.ak-helptile__over {
	position: absolute;
	inset: auto 0 0 0;
	padding: 6px 8px;
	font-family: var(--ak-sans);
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .06em;
	text-align: center;
	color: #fff;
	background: rgba(217, 72, 15, .92);
	opacity: 0;
	transition: opacity .15s ease;
}
.ak-helptile:hover .ak-helptile__over,
.ak-helptile:focus-visible .ak-helptile__over { opacity: 1; }
.ak-helptile__meta { display: block; padding: 6px 2px 0; line-height: 1.35; }
.ak-helptile__artist {
	display: block;
	font-family: var(--ak-sans);
	font-size: 10.5px;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: var(--wp--preset--color--accent);
}
.ak-helptile__title { display: block; font-size: 13px; color: var(--wp--preset--color--text); }
.ak-helptile__rok { display: block; font-size: 11px; color: var(--wp--preset--color--secondary); }

/* J-card bez žánrového štítku je nižší (123 px místo 141) a popisek pod ním
   se pak vyhoupne výš než u sousedů — řada vypadá rozházeně. Obálku proto
   držíme na pevném čtverci a J-card ji vyplní. */
.ak-helptile__cover {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-radius: 4px;
}
.ak-helptile__cover .ak-jcard { height: 100%; }

/* Dlouhý název (importované tituly z Discogs bývají celé věty) natáhne řadu
   na čtyři řádky a rozhodí rytmus mřížky — ořízneme na dva. */
.ak-helptile__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Nativní `<input type=file hidden>` zůstal vidět: starší pravidlo
   `.ak-coverup__file{display:block}` (v2.x) přebíjí atribut `hidden`, který je
   v prohlížeči jen UA styl `display:none`. Vedle nové plochy pro přetažení tak
   svítilo druhé, ošklivé tlačítko „Vybrat soubor / Soubor nevybrán". */
.ak-coverup__file[hidden] { display: none !important; }

/* ── 2.21.0 — Nálezy ve skladbách ve výsledcích hledání ─────────────────── */
.ak-tracklist-hits { list-style: none; margin: 8px 0 22px; padding: 0; display: grid; gap: 4px; }
.ak-trackhit a {
	display: flex;
	align-items: baseline;
	gap: 10px;
	padding: 9px 12px;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 8px;
	background: var(--wp--preset--color--surface);
	text-decoration: none;
	transition: border-color .15s ease;
}
.ak-trackhit a:hover { border-color: var(--wp--preset--color--accent); }
.ak-trackhit__nazev { font-weight: 600; color: var(--wp--preset--color--text); }
.ak-trackhit__delka {
	font-family: var(--ak-mono, monospace);
	font-size: 12px;
	color: var(--wp--preset--color--secondary);
}
.ak-trackhit__kde {
	margin-left: auto;
	font-size: 12.5px;
	color: var(--wp--preset--color--secondary);
	text-align: right;
}
@media (max-width: 600px) {
	.ak-trackhit a { flex-wrap: wrap; }
	.ak-trackhit__kde { margin-left: 0; width: 100%; text-align: left; }
}

/* ── 2.21.1 — Mobilní pojistky pro dnešní přírůstky ─────────────────────────
   Nové prvky (přehled žánrů, fronta obalů, nahrávací plocha, nálezy ve
   skladbách, čelo hlavičky) vznikly dnes a na úzkém displeji je nikdo neviděl —
   prohlížeč, ve kterém se web ověřuje, má zamčenou šířku. Tohle jsou obranná
   pravidla proti nejpravděpodobnějším problémům: přetečení mřížky, jejíž
   minimální stopa je širší než displej, a řada čela, která se nemá kam zalomit. */
@media (max-width: 600px) {
	/* minmax(280px,…) přeteče na displeji užším než 280 px + odsazení. */
	.ak-zanry-prehled { grid-template-columns: 1fr; }

	/* Dlaždice obalů: na úzkém displeji radši dvě v řadě než tři zmáčknuté. */
	.ak-helptiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	/* Nahrávací plocha — ikona a text pod sebe, ať se text nemačká. */
	.ak-coverup__drop { flex-direction: column; align-items: flex-start; gap: 8px; }

	/* Čelo hlavičky se musí umět zalomit, jinak logo vytlačí tlačítko z obrazovky. */
	.ak-masthead { flex-wrap: wrap !important; row-gap: 10px; }
}

/* Žádná mřížka na webu nesmí mít stopu širší než displej. */
@media (max-width: 380px) {
	.ak-kgrid,
	.ak-grid,
	.ak-helptiles,
	.ak-kolekce-grid,
	.ak-kraje-grid,
	.ak-medium-grid { grid-template-columns: 1fr; }
}

/* ── 2.24.0 — Co lidé hledali a nenašli ────────────────────────────────── */
.ak-missing { display: grid; gap: 4px; margin: 10px 0 22px; }
.ak-missing__item {
	display: flex;
	align-items: baseline;
	gap: 10px;
	padding: 9px 12px;
	border: 1px solid var(--wp--preset--color--border);
	border-left: 3px solid var(--wp--preset--color--accent);
	border-radius: 8px;
	background: var(--wp--preset--color--surface);
	text-decoration: none;
	transition: border-color .15s ease;
}
.ak-missing__item:hover { border-color: var(--wp--preset--color--accent); }
.ak-missing__term { font-weight: 600; color: var(--wp--preset--color--text); }
.ak-missing__n { font-size: 12px; color: var(--wp--preset--color--secondary); }
.ak-missing__cta {
	margin-left: auto;
	font-family: var(--ak-sans);
	font-size: 11.5px;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: var(--wp--preset--color--accent);
}
@media (max-width: 600px) {
	.ak-missing__item { flex-wrap: wrap; }
	.ak-missing__cta { margin-left: 0; }
}

/* ── 2.25.0 — Vyhledávací pole v hlavičce ──────────────────────────────────
   Pole dědilo světlý vzhled z obecného `input, select, textarea`, kde je barva
   napsaná NATVRDO (#fafaf8), ne přes proměnnou — přemapování proměnných
   z verze 2.18.0 na něj proto nemělo vliv. Je to tentýž vzorec „světlý motiv
   prosakuje do tmavé plochy", ale přes pevnou hodnotu; na ty je potřeba
   scope s vyšší specificitou.

   Vzhled: zapuštěné okénko v kovu, jako displej na čelu kazeťáku. */
.ak-site-header .ak-hubnav__search-input {
	/* Obecné `input, select, textarea` má barvy s `!important` — bez něj se
	   tenhle scope neprosadí ani při vyšší specificitě. */
	background: rgba(0, 0, 0, .28) !important;
	color: #f2f0ec !important;
	border-color: rgba(255, 255, 255, .18) !important;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, .4);
}
.ak-site-header .ak-hubnav__search-input::placeholder { color: #9a958c; }
.ak-site-header .ak-hubnav__search-input:focus {
	border-color: rgba(255, 154, 60, .65) !important;
	color: #fff !important;
}
.ak-site-header .ak-hubnav__search-btn {
	background: rgba(255, 255, 255, .09);
	color: #e8e6e1;
	border-color: rgba(255, 255, 255, .18);
	font-size: 16px;
}
.ak-site-header .ak-hubnav__search-btn:hover {
	background: rgba(255, 154, 60, .22);
	color: #ff9a3c;
}

/* Na širokém displeji je 130 px zbytečně málo — název kapely se nevejde. */
@media (min-width: 1000px) {
	.ak-hubnav__search-input { width: 210px; }
}

/* ── 2.26.0 — Galerie fotek u kazety ───────────────────────────────────── */
.ak-galerie { margin: 22px 0 4px; }
.ak-galerie__h {
	display: flex;
	align-items: baseline;
	gap: 8px;
	font-family: var(--ak-display);
	font-size: 18px;
	margin: 0 0 10px;
}
.ak-galerie__n {
	font-family: var(--ak-sans);
	font-size: 12px;
	font-weight: 600;
	color: var(--wp--preset--color--secondary);
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 999px;
	padding: 1px 8px;
}
.ak-galerie__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 4px;
}
.ak-galerie__item { margin: 0; }
.ak-galerie__item img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 6px;
	background: var(--wp--preset--color--surface);
	transition: border-color .15s ease;
}
.ak-galerie__item a:hover img { border-color: var(--wp--preset--color--accent); }
.ak-galerie__item figcaption { padding: 5px 2px 0; line-height: 1.3; }
.ak-galerie__typ {
	display: block;
	font-family: var(--ak-sans);
	font-size: 11.5px;
	color: var(--wp--preset--color--text);
}
.ak-galerie__autor {
	display: block;
	font-size: 11px;
	color: var(--wp--preset--color--secondary);
}
.ak-galerie__prazdno {
	font-size: 13px;
	color: var(--wp--preset--color--secondary);
	margin: 0 0 10px;
}
.ak-galerie__pridat {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	gap: 10px;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px dashed var(--wp--preset--color--border);
}
.ak-galerie__typ-vyber { display: flex; flex-direction: column; gap: 3px; font-size: 12px; }
.ak-galerie__typ-vyber select { font-size: 13px; padding: 5px 8px; }
.ak-galerie__msg { font-size: 12.5px; }
.ak-galerie__msg--ok { color: #1a6b28; }
.ak-galerie__msg--err { color: #c0392b; }

@media (max-width: 600px) {
	.ak-galerie__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── 2.29.0 — Nábor pod statistikami (přesun z hero) ───────────────────────
   V hero stály vedle „Zobrazit kazetu" ještě „Založ si sbírku" a „Jak to
   funguje?" — tři výzvy vedle sebe, z toho dvě o něčem jiném než o kazetě
   týdne. Nábor teď navazuje na čísla, která jsou pro něj argumentem. */
.ak-join {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	max-width: 1200px;
	margin: 0 auto 32px;
	padding: 16px 20px;
	border: 1px solid var(--wp--preset--color--border);
	border-left: 3px solid var(--wp--preset--color--accent);
	border-radius: 10px;
	background: var(--wp--preset--color--surface);
}
.ak-join__text { margin: 0; font-size: 14px; line-height: 1.5; max-width: 62ch; }
.ak-join__text strong { display: block; font-family: var(--ak-display); font-size: 16px; }
.ak-join__akce { margin: 0; display: flex; align-items: center; gap: 14px; flex: 0 0 auto; }
.ak-join__hint { font-size: 13px; color: var(--wp--preset--color--secondary); }
.ak-join__hint:hover { color: var(--wp--preset--color--accent); }

@media (max-width: 700px) {
	.ak-join { margin-inline: 16px; padding: 14px 16px; }
	.ak-join__akce { width: 100%; }
}

/* ---------------------------------------------------------------------------
   4. 9. 2026 — zavřená registrace
   Když je registrace vypnutá, nesmí po náborovém textu zůstat prázdno.
--------------------------------------------------------------------------- */
.ak-join__zavreno {
	margin: 0 0 10px;
	font-size: .92rem;
	line-height: 1.5;
	/* POZOR: `--wp--preset--color--muted` je světlá plocha (#f2f2f0), ne text —
	   na bílé dává kontrast 1,12 : 1 a věta je prakticky neviditelná.
	   `--secondary` je tlumená barva textu, stejná jako u sousedního odkazu. */
	color: var(--wp--preset--color--secondary, #55554f);
}

.ak-komunita__cta.ak-join__zavreno {
	max-width: 46ch;
}
