:root {
    color-scheme: light;
    --border: #d9dee7;
    --muted: #667085;
    --primary: #2e3192;
    --bg: #f6f7fb;
    --card: #ffffff;
}
* { box-sizing: border-box; }
body {
    margin: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: var(--bg);
    color: #1d2433;
}
a { color: var(--primary); text-decoration: none; }
a:hover { text-decoration: underline; }
.site-header {
    background: #fff;
    border-bottom: 1px solid var(--border);
    padding: 18px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.site-header h1 { margin: 0; font-size: 24px; }
.site-header nav { display: flex; gap: 14px; }
.container { max-width: 1180px; margin: 0 auto; padding: 24px; }
.panel, .product-card, .product-detail {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(16, 24, 40, .06);
}
.panel { padding: 24px; }
.button {
    display: inline-block;
    background: var(--primary);
    color: #fff;
    padding: 10px 16px;
    border-radius: 8px;
}
.button:hover { text-decoration: none; background: #23266f; }
.search {
    display: flex;
    gap: 10px;
    margin-bottom: 18px;
}
.search input {
    flex: 1;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
}
.search button {
    padding: 12px 18px;
    border: 0;
    border-radius: 8px;
    background: var(--primary);
    color: #fff;
    cursor: pointer;
}
.grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 18px;
}
.product-card { overflow: hidden; display: flex; flex-direction: column; }
.product-card .image {
    height: 180px;
    background: #edf0f5;
    display: flex;
    align-items: center;
    justify-content: center;
}
.product-card img { max-width: 100%; max-height: 180px; object-fit: contain; display: block; }
.product-body { padding: 16px; }
.product-body h2 { font-size: 18px; margin: 0 0 8px; }
.code, .stock { color: var(--muted); }
.price { font-size: 18px; font-weight: 700; }
.no-image { color: var(--muted); }
.no-image.detail { min-height: 320px; display: flex; align-items: center; justify-content: center; background: #edf0f5; border-radius: 12px; }
.empty { padding: 24px; background: #fff; border: 1px dashed var(--border); border-radius: 12px; color: var(--muted); }
.product-detail { display: grid; grid-template-columns: minmax(260px, 420px) 1fr; gap: 28px; padding: 24px; }
.detail-image img { width: 100%; max-height: 420px; object-fit: contain; background: #fff; border-radius: 12px; }
.lead { font-size: 18px; color: var(--muted); }
@media (max-width: 760px) {
    .site-header { display: block; }
    .product-detail { grid-template-columns: 1fr; }
    .search { flex-direction: column; }
}


/* Kategória oldalsáv */
.catalog-layout {
    display: grid;
    grid-template-columns: minmax(240px, 290px) minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.catalog-sidebar {
    position: sticky;
    top: 16px;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 1px 3px rgba(16, 24, 40, .06);
}

.catalog-sidebar h2 {
    margin: 0 0 12px;
    font-size: 18px;
}

.catalog-main {
    min-width: 0;
}

.result-count {
    margin: 0 0 12px;
    color: var(--muted);
    font-weight: 700;
}

.category-tree,
.category-tree ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.category-tree ul {
    margin-left: 12px;
    padding-left: 10px;
    border-left: 1px solid var(--border);
}

.category-tree li {
    margin: 2px 0;
}

.category-tree a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-radius: 8px;
    padding: 8px 10px;
    color: #344054;
    text-decoration: none;
}

.category-tree a:hover,
.category-tree a:focus-visible {
    background: #edf0f5;
    text-decoration: none;
}

.category-tree a.is-active {
    background: #eef0fb;
    color: #2e3192;
    font-weight: 800;
}

.category-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    border-radius: 999px;
    padding: 2px 7px;
    background: #eef2ff;
    color: #475467;
    font-size: 12px;
    font-weight: 700;
}

.stock-available {
    color: #166534;
}

.stock-low {
    color: #92400e;
}

.stock-orderable {
    color: #2e3192;
}

.stock-unavailable {
    color: #991b1b;
}

.stock-unknown {
    color: var(--muted);
}

@media (max-width: 860px) {
    .catalog-layout {
        grid-template-columns: 1fr;
    }

    .catalog-sidebar {
        position: static;
    }
}


.site-header nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    align-items: center;
}

.site-header nav a {
    font-weight: 700;
}


.secondary { background: #374151; }
.secondary:hover { background: #1f2937; }

.stack-form {
    display: grid;
    gap: 14px;
}
.stack-form label,
.cart-add-form label,
.inline-admin-form label {
    display: grid;
    gap: 6px;
    font-weight: 650;
}
.stack-form input,
.stack-form textarea,
.stack-form select,
.cart-add-form input,
.inline-admin-form input,
.inline-admin-form select,
.search input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font: inherit;
}
.stack-form textarea {
    resize: vertical;
}
.stack-form button,
.cart-add-form button,
.inline-admin-form button,
button {
    border: 0;
    border-radius: 8px;
    padding: 10px 14px;
    background: var(--primary);
    color: #fff;
    cursor: pointer;
    font: inherit;
}
.auth-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(260px, 1fr));
    gap: 18px;
}
.narrow { max-width: 720px; margin: 0 auto; }
.wide { max-width: 1480px; }
.alert {
    padding: 12px 14px;
    border-radius: 10px;
    margin-bottom: 14px;
    border: 1px solid var(--border);
}
.alert.ok, .ok {
    color: #047857;
    background: #ecfdf5;
    border-color: #a7f3d0;
}
.alert.bad, .bad {
    color: #b91c1c;
    background: #fef2f2;
    border-color: #fecaca;
}
.checkbox {
    display: flex !important;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 8px !important;
    font-weight: 500 !important;
}
.checkbox input { width: auto !important; }
.table-wrap { overflow-x: auto; }
.admin-table {
    width: 100%;
    border-collapse: collapse;
}
.admin-table th,
.admin-table td {
    padding: 10px 12px;
    border-bottom: 1px solid var(--border);
    text-align: left;
    vertical-align: top;
}
.admin-table th {
    background: #f8fafc;
}
.inline-admin-form {
    display: contents;
}
.add-cart-panel {
    margin-top: 20px;
}
.cart-add-form {
    display: flex;
    gap: 10px;
    align-items: end;
    flex-wrap: wrap;
}
.cart-add-form label {
    min-width: 160px;
}
pre {
    white-space: pre-wrap;
    background: #111827;
    color: #e5e7eb;
    padding: 14px;
    border-radius: 10px;
    overflow: auto;
}
@media (max-width: 760px) {
    .auth-grid { grid-template-columns: 1fr; }
    .site-header nav { margin-top: 12px; flex-wrap: wrap; }
}

/* Nyilvános katalógus bemutatófelület */
.storefront-header .brand {
    color: #17324d;
    font-size: 1.45rem;
    font-weight: 850;
    letter-spacing: -.02em;
}
.catalog-page { max-width: 1480px; }
.catalog-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 20px;
}
.catalog-title h1 { margin: 0; font-size: clamp(1.75rem, 3vw, 2.7rem); }
.catalog-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 0 0 14px;
    color: var(--muted);
    font-size: .92rem;
}
.catalog-breadcrumb .separator { color: #98a2b3; }
.catalog-search { margin-bottom: 22px; }
.catalog-section {
    margin-bottom: 34px;
    padding: 22px;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(16,24,40,.06);
}
.section-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}
.section-heading h2 { margin: 0; font-size: 1.35rem; }
.section-heading span { color: var(--muted); font-weight: 700; }
.category-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.category-card {
    display: grid;
    grid-template-rows: 150px auto;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: #fff;
    color: #1d2433;
    text-decoration: none;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.category-card:hover,
.category-card:focus-visible {
    transform: translateY(-2px);
    border-color: #9db8d8;
    box-shadow: 0 10px 24px rgba(16,24,40,.10);
    text-decoration: none;
}
.category-card-image,
.show-all-image {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    background: #f2f5f8;
    overflow: hidden;
}
.category-card-image img,
.show-all-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.category-card strong { padding: 14px 16px; }
.category-image-placeholder {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: #53677b;
    font-size: 3rem;
    font-weight: 900;
    background: linear-gradient(145deg, #eef4f8, #dbe7ef);
}
.product-row,
.category-product-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.product-card.compact {
    position: relative;
    min-width: 0;
    border-radius: 14px;
}
.product-card.compact .image { height: 190px; }
.product-card.compact img { max-height: 190px; }
.product-card.compact .product-body { padding: 14px; }
.product-card.compact h3 { margin: 0 0 8px; font-size: 1rem; line-height: 1.35; }
.product-card.compact .code { margin: 0 0 8px; font-size: .82rem; }
.product-card.compact .price { margin: 8px 0; }
.product-card.compact .stock { margin: 0; font-size: .9rem; }
.product-badge {
    position: absolute;
    z-index: 2;
    top: 10px;
    left: 10px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #2e3192;
    color: #fff;
    font-size: .75rem;
    font-weight: 850;
}
.product-badge.promotion { background: #a02c2c; }
.product-badge.info { background: #58779b; }
.product-card.compact.product-card-state-out_of_stock { background: #fff1f1; border-color: #efcccc; }
.product-card.compact.product-card-state-featured { background: #f2f8ee; border-color: #d9e7d0; }
.product-card.compact.product-card-state-discontinued { background: #eef5ff; border-color: #cfe0f7; }
.partner-list-price { display: grid; gap: 2px; margin: 8px 0; }
.partner-list-price strong { font-size: 1.02rem; color: #2e3192; }
.partner-list-prices { display: grid; gap: 8px; margin: 8px 0; padding: 0; list-style: none; }
.partner-list-prices li { display: grid; gap: 1px; padding-bottom: 7px; border-bottom: 1px solid rgba(46,49,146,.14); }
.partner-list-prices li:last-child { padding-bottom: 0; border-bottom: 0; }
.partner-list-prices strong { font-size: 1rem; color: #2e3192; }
.partner-price-label { color: var(--muted); font-size: .78rem; font-weight: 700; }
.partner-price-vat, .partner-price-more { color: var(--muted); font-size: .82rem; }
.partner-price-more { font-weight: 700; }
.detail-price.partner-price-panel { display: grid; gap: 9px; margin: 12px 0 10px; font-size: 1rem; }
.partner-price-panel h2 { margin: 0; font-size: 1rem; line-height: 1.25; }
.partner-price-list { display: grid; gap: 8px; }
.partner-price-option { display: grid; grid-template-columns: 18px minmax(0, 1fr); align-items: start; gap: 8px; padding: 10px 12px; border: 1px solid #d7e0e8; border-radius: 12px; background: #fff; cursor: pointer; font-size: .9rem; line-height: 1.3; }
.partner-price-option.is-selected { border-color: #2e3192; background: #f6fbff; box-shadow: inset 0 0 0 1px rgba(23,63,103,.08); }
.partner-price-option input { margin: 3px 0 0; }
.partner-price-option-main { display: grid; grid-template-columns: minmax(0, auto) 1fr; align-items: baseline; column-gap: 8px; row-gap: 2px; min-width: 0; }
.partner-price-option-label { grid-column: 1 / -1; font-size: .92rem; line-height: 1.25; font-weight: 800; color: #23313f; }
.partner-price-option-value { font-size: 1rem; line-height: 1.25; color: #2e3192; }
.partner-price-option-vat { color: var(--muted); font-size: .8rem; white-space: nowrap; }
.partner-price-description { grid-column: 2; margin: 0; color: #52616f; font-size: .8rem; }
.partner-price-panel .inventory-source { margin: 2px 0 0; font-size: .78rem; line-height: 1.4; }
.show-all-card {
    display: grid;
    grid-template-rows: 190px auto;
    overflow: hidden;
    border-radius: 14px;
    background: #2e3192;
    color: #fff;
    text-decoration: none;
}
.show-all-card:hover,
.show-all-card:focus-visible { text-decoration: none; box-shadow: 0 10px 24px rgba(16,24,40,.16); }
.show-all-card > span:last-child { display: grid; gap: 7px; padding: 14px 16px; }
.show-all-card strong { font-size: 1.05rem; }
.show-all-card em { font-style: normal; font-weight: 800; text-decoration: underline; }
.category-tree a.is-current-path {
    background: #edf4fb;
    color: #2e3192;
    font-weight: 750;
}
.product-page { max-width: 1480px; }
.storefront-detail { grid-template-columns: minmax(320px, 520px) minmax(0, 1fr); }
.product-gallery { min-width: 0; }
.product-thumbnails {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
    gap: 10px;
    margin-top: 12px;
}
.gallery-thumb {
    padding: 4px;
    border: 2px solid transparent;
    background: #fff;
    border-radius: 10px;
}
.gallery-thumb.is-active { border-color: var(--primary); }
.gallery-thumb img { width: 100%; height: 70px; object-fit: contain; }
.product-information h1 { margin: 0 0 12px; font-size: clamp(1.7rem, 3vw, 2.45rem); }
.detail-price { font-size: 1.6rem; }
.product-description { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--border); }
.media-admin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 16px;
    margin-top: 20px;
}
.media-admin-card {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: #fff;
}
.media-admin-card > img { width: 100%; height: 160px; object-fit: contain; background: #f4f6f8; }
.media-admin-card > div { display: grid; gap: 10px; padding: 12px; }
.media-admin-card form { margin: 0; }
.danger-button { background: #b42318 !important; }
.inline-form { display: inline; }
.link-button { padding: 0; background: transparent; color: var(--primary); font-weight: 700; }
.link-button:hover { text-decoration: underline; }

@media (max-width: 1180px) {
    .category-card-grid,
    .product-row,
    .category-product-row,
    .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .category-product-row .show-all-card { grid-column: span 3; grid-template-columns: 220px 1fr; grid-template-rows: 190px; }
}
@media (max-width: 860px) {
    .category-card-grid,
    .product-row,
    .category-product-row,
    .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .category-product-row .show-all-card { grid-column: span 2; }
    .storefront-detail { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
    .catalog-section { padding: 14px; }
    .category-card-grid,
    .product-row,
    .category-product-row,
    .product-grid { grid-template-columns: 1fr; }
    .category-product-row .show-all-card { grid-column: span 1; grid-template-columns: 1fr; grid-template-rows: 160px auto; }
    .category-card { grid-template-rows: 135px auto; }
}

/* Admin szerepkörök és termékszerkesztő */
.admin-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}
.admin-card {
    display: grid;
    gap: 8px;
    padding: 20px;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 6px 20px rgba(16, 24, 40, .06);
}
.admin-card:hover,
.admin-card:focus-visible { border-color: var(--primary); text-decoration: none; }
.admin-card strong { font-size: 1.1rem; }
.admin-card span { color: var(--muted); }
.admin-create-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 14px;
    align-items: end;
}
.admin-two-column {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}
.inline-admin-form { display: contents; }
.stack-form.compact { min-width: 220px; margin-top: 10px; }
.admin-badge {
    display: inline-block;
    margin-top: 5px;
    padding: 2px 7px;
    border-radius: 999px;
    background: #e8f1fb;
    color: #2e3192;
    font-size: .75rem;
    font-weight: 700;
}
.checkbox-row { display: flex; flex-wrap: wrap; gap: 16px; }
.stack-form textarea { width: 100%; box-sizing: border-box; }
@media (max-width: 760px) {
    .admin-two-column { grid-template-columns: 1fr; }
}

/* Régi Webépker termékképek próbaimportja */
.import-source-card { align-content: start; text-align: left; }
.import-source-card button { justify-self: start; }
.import-job-heading {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: start;
}
.import-job-heading h2 { margin: 0; }
.import-action-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 20px 0;
}
.import-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0 12px;
}
.import-tab {
    padding: 8px 12px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: #fff;
    text-decoration: none;
}
.import-tab.is-active {
    border-color: var(--primary);
    background: #edf4fb;
    color: #2e3192;
    font-weight: 800;
}
.import-thumb {
    width: 118px;
    height: 118px;
    object-fit: contain;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: #f6f7f9;
}
.import-table td { vertical-align: top; min-width: 130px; }
.import-table td:nth-child(2) { min-width: 260px; }
.import-table td:nth-child(4) { min-width: 270px; }
.import-candidate-form { margin: 0; }
.import-error {
    max-width: 320px;
    margin-top: 8px;
    padding: 8px;
    border-radius: 8px;
    background: #fff0ed;
    color: #8f1d14;
    white-space: normal;
}
.status-pill {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 999px;
    background: #eef2f6;
    font-size: .78rem;
    font-weight: 800;
}
.alert.warning { background: #fff7d6; color: #6b4d00; }
@media (max-width: 960px) {
    .import-action-grid { grid-template-columns: 1fr; }
    .import-job-heading { display: grid; }
}

/* Partner raktárkészlet és készletkód */
.stock-code-badge{display:inline-flex;align-items:center;width:fit-content;margin:8px 0 6px;padding:4px 8px;border-radius:999px;background:#f1f1fb;color:#2e3192;font-size:.76rem;font-weight:800;letter-spacing:.01em}.warehouse-stock-compact{display:grid;gap:4px;margin:8px 0 0;padding:8px 0 0;list-style:none;border-top:1px solid #e2e8ee;font-size:.78rem}.warehouse-stock-compact li{display:flex;justify-content:space-between;gap:8px}.warehouse-stock-compact li span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.warehouse-stock-compact li strong{flex:0 0 auto;color:#2e3192}.warehouse-more{margin:5px 0 0;color:var(--muted);font-size:.75rem}.partner-inventory{margin:18px 0}.inventory-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.inventory-heading h2{margin:0}.inventory-heading .stock-code-badge{margin:0}.inventory-table-wrap{overflow-x:auto}.partner-inventory-table{width:100%;border-collapse:collapse;font-size:.92rem}.partner-inventory-table th,.partner-inventory-table td{padding:9px 10px;border-bottom:1px solid #e0e7ed;text-align:left;vertical-align:top}.partner-inventory-table th{background:#f4f7f9;color:#29465f;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.partner-inventory-table code{white-space:nowrap}.inventory-quantity{white-space:nowrap;font-weight:750}.inventory-notice{margin:10px 0 0;padding:10px 12px;border-radius:8px;background:#fff7df;color:#654d08}.inventory-source{margin:9px 0 0;font-size:.8rem}

/* Modern nyilvános felület – 2026.08.05 */
:root{
    --navy:#2e3192;
    --navy-dark:#23266f;
    --terracotta:#f47920;
    --terracotta-dark:#a94700;
    --forest:#f47920;
    --cream:#f6f2eb;
    --paper:#fffdfa;
    --ink:#20252c;
    --soft-ink:#5f6874;
    --line:#e5e0d8;
    --shadow:0 18px 50px rgba(24,38,55,.10);
    --radius:18px;
    --primary:var(--navy);
    --bg:#f7f5f1;
    --card:#fff;
    --border:#e4e0d9;
    --muted:#68717c;
}
html{scroll-behavior:smooth}
body.storefront-body{background:#f7f5f1;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}
body.storefront-body a{color:inherit}
.storefront-shell{width:min(1440px,calc(100% - 40px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.service-notice{background:#f2eee7;border-bottom:1px solid #e4ddd2;color:#3d4651;font-size:.82rem}
.service-notice .storefront-shell{display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;text-align:center}
.notice-icon,.callout-icon{display:inline-grid;place-items:center;flex:0 0 auto;width:21px;height:21px;border:1.5px solid currentColor;border-radius:50%;font-family:Georgia,serif;font-weight:800}
.storefront-site-header{position:relative;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 4px 18px rgba(22,33,48,.04)}
.header-primary{display:grid;grid-template-columns:auto minmax(280px,1fr) auto auto;gap:26px;align-items:center;min-height:86px}
.storefront-logo{display:flex;align-items:center;gap:13px;text-decoration:none!important;color:var(--navy-dark)!important;min-width:215px}
.storefront-logo>span:last-child{display:grid;line-height:1}
.storefront-logo strong{font-size:1.55rem;letter-spacing:.045em;font-weight:900}
.storefront-logo small{margin-top:6px;font-size:.62rem;letter-spacing:.17em;text-transform:uppercase;color:#77685e}
.logo-mark{position:relative;display:block;width:44px;height:44px;transform:rotate(45deg)}
.logo-mark i{position:absolute;width:19px;height:19px;border-radius:3px}
.logo-mark i:nth-child(1){left:0;top:0;background:var(--navy)}
.logo-mark i:nth-child(2){right:0;top:0;background:var(--terracotta)}
.logo-mark i:nth-child(3){left:0;bottom:0;background:var(--navy-dark)}
.header-search{display:flex;height:46px;border:1px solid #d9d5ce;border-radius:10px;overflow:hidden;background:#fff;box-shadow:inset 0 1px 1px rgba(0,0,0,.02)}
.header-search input{min-width:0;flex:1;border:0!important;border-radius:0!important;padding:0 16px!important;background:transparent;font:inherit;outline:0}
.header-search button{width:52px;border-radius:0;background:var(--terracotta);color:#20252c;font-size:1.55rem;padding:0}
.top-contact{display:flex;gap:15px;white-space:nowrap}
.top-contact a{font-size:.87rem;font-weight:750;text-decoration:none}
.header-actions{display:flex;align-items:center;gap:10px}
.header-action{display:flex;align-items:center;gap:10px;padding:7px 10px;border-left:1px solid var(--line);text-decoration:none!important;white-space:nowrap}
.header-action>span:first-child{font-size:1.45rem;color:var(--navy)}
.header-action>span:last-child{display:grid;line-height:1.15}
.header-action strong{font-size:.87rem}.header-action small{margin-top:4px;color:var(--muted);font-size:.68rem}
.compact-action{display:none}
.mobile-menu-button{display:none;background:transparent;color:var(--navy);font-size:1.5rem;padding:5px}
.storefront-nav-wrap{border-top:1px solid #f0ede8;background:#fff}
.storefront-nav{display:flex;align-items:center;gap:8px;min-height:50px}
.storefront-nav a{display:flex;align-items:center;min-height:50px;padding:0 17px;color:#2f3740;text-decoration:none!important;font-size:.9rem;font-weight:750;border-bottom:3px solid transparent}
.storefront-nav a:hover,.storefront-nav a.is-active{color:var(--navy);border-bottom-color:var(--navy)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:9px;background:var(--navy);color:#fff!important;font-weight:800;text-decoration:none!important;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.button:hover{background:var(--navy-dark);transform:translateY(-1px);box-shadow:0 8px 20px rgba(46,49,146,.22)}
.button-large{padding:14px 22px;font-size:1rem}.button-small{padding:10px 13px;font-size:.84rem}.secondary-outline{background:#fff;color:var(--navy)!important;border:1px solid var(--navy)}.secondary-outline:hover{color:#fff!important}

/* Kezdőlap */
.home-hero{background:linear-gradient(90deg,#f5f1ea 0%,#f5f1ea 42%,#e8e3db 42%,#e8e3db 100%);border-bottom:1px solid var(--line)}
.home-hero-inner{display:grid;grid-template-columns:minmax(390px,.82fr) 1.18fr;min-height:510px;overflow:hidden}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:64px 56px 64px 10px}
.hero-eyebrow,.section-kicker{margin:0 0 10px;color:var(--terracotta-dark);font-size:.76rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.hero-copy h1{max-width:650px;margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,4.6vw,4.6rem);line-height:1.03;letter-spacing:-.035em;color:#1e2630}
.hero-copy>p:not(.hero-eyebrow):not(.hero-fineprint){max-width:650px;margin:24px 0 0;color:#505963;font-size:1.06rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-fineprint{display:flex;align-items:center;gap:8px;margin:20px 0 0!important;color:#5d6670!important;font-size:.84rem!important;font-weight:700}
.hero-visual{min-height:510px;background-image:linear-gradient(90deg,rgba(245,241,234,.7) 0%,rgba(245,241,234,0) 18%),url('/assets/storefront-hero.webp');background-size:cover;background-position:center}
.value-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:-1px;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 16px 16px;box-shadow:0 10px 30px rgba(20,35,50,.05)}
.value-strip article{display:flex;align-items:flex-start;gap:14px;padding:24px 26px;border-right:1px solid var(--line)}.value-strip article:last-child{border-right:0}.value-strip article>span{font-size:1.55rem;color:var(--navy)}.value-strip article div{display:grid;gap:5px}.value-strip strong{font-size:.87rem;text-transform:uppercase;letter-spacing:.02em}.value-strip small{color:var(--muted);font-size:.78rem;line-height:1.45}
.home-section{padding-top:62px;padding-bottom:62px}.home-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.home-section-heading h2,.process-intro h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.75rem,2.6vw,2.65rem);line-height:1.15}.home-section-heading>a,.row-controls a{color:var(--terracotta-dark);font-weight:850;text-decoration:none}
.home-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.home-category-card{display:grid;grid-template-rows:220px auto;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);text-decoration:none!important;box-shadow:0 8px 26px rgba(25,36,50,.05);transition:transform .2s ease,box-shadow .2s ease}.home-category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.home-category-image{display:block;overflow:hidden;background:linear-gradient(145deg,#eee9e1,#d8d1c6)}.home-category-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.home-category-card:hover img{transform:scale(1.035)}.home-category-placeholder{display:grid;place-items:center;width:100%;height:100%;font:700 4.5rem Georgia,serif;color:rgba(46,49,146,.45)}.home-category-copy{position:relative;display:grid;gap:5px;padding:18px 44px 18px 18px}.home-category-copy strong{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.home-category-copy small{color:var(--muted)}.home-category-copy em{position:absolute;right:18px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--navy);font-size:1.3rem}
.home-featured{padding:58px 0 66px;background:#f0ece5;border-block:1px solid #e2dbd1}.row-controls{display:flex;align-items:center;gap:8px}.row-controls button{width:38px;height:38px;padding:0;border:1px solid #cfc8be;background:#fff;color:var(--navy);font-size:1.4rem}.row-controls a{margin-left:7px}.home-product-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(235px,1fr);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 3px 16px;scrollbar-width:thin}.home-product-card{position:relative;scroll-snap-align:start;display:grid;grid-template-rows:190px 1fr;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(24,36,48,.05)}.home-product-image{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f2f0ec}.home-product-image img{width:100%;height:100%;object-fit:cover}.home-product-placeholder{color:var(--muted)}.home-product-card>div{display:grid;align-content:start;gap:8px;padding:15px}.home-product-card h3{margin:0;font-size:1rem;line-height:1.35}.home-product-card h3 a{text-decoration:none}.home-product-card .code{margin:0;color:var(--muted);font-size:.76rem}.quote-price{margin:0;color:#4d5965;font-size:.82rem;min-height:40px}.home-product-card .button{margin-top:4px}
.order-process{display:grid;grid-template-columns:minmax(260px,.72fr) 1.6fr;gap:42px;padding-top:70px;padding-bottom:70px}.process-intro p:last-child{color:var(--muted)}.order-process ol{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:0;list-style:none}.order-process li{position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;align-content:start;padding:8px 26px 8px 0}.order-process li:not(:last-child)::after{content:'→';position:absolute;right:8px;top:14px;color:#a79682;font-size:1.35rem}.order-process li>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--terracotta);color:#20252c;font-weight:900}.order-process li div{display:grid;gap:7px}.order-process li strong{font-size:.9rem}.order-process li small{color:var(--muted);font-size:.78rem;line-height:1.45}
.order-legal-callout{display:flex;gap:22px;align-items:flex-start;margin-bottom:70px;padding:28px 32px;border:1px solid #cad5df;border-radius:16px;background:#f6f9fb;color:#253847}.order-legal-callout .callout-icon{width:38px;height:38px;color:var(--navy);font-size:1.15rem}.order-legal-callout h2{margin:0 0 8px;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem}.order-legal-callout p{margin:0 0 10px;color:#566472}.order-legal-callout a{color:var(--navy);font-weight:850;text-decoration:none}

/* Egységes lábléc */
.storefront-footer{background:#202e3c;color:#edf3f7}.footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:42px;padding-top:50px;padding-bottom:42px}.storefront-footer h2{margin:0 0 15px;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}.storefront-footer p{max-width:360px;color:#c7d0d8;font-size:.82rem}.storefront-footer ul{display:grid;gap:8px;margin:0;padding:0;list-style:none;color:#cbd3da;font-size:.82rem}.storefront-footer a{color:#edf3f7;text-decoration:none}.footer-brand{font-size:1.35rem;font-weight:900;letter-spacing:.06em}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:17px;padding-bottom:17px;border-top:1px solid rgba(255,255,255,.12);color:#aebbc6;font-size:.75rem}

/* Katalógus és termékoldal modernizálása */
.storefront-body .catalog-page,.storefront-body .product-page{max-width:none;padding-top:34px;padding-bottom:65px}.storefront-body .catalog-search{max-width:850px;margin:0 auto 28px}.storefront-body .catalog-search input{height:48px;background:#fff}.storefront-body .catalog-search button{min-width:108px;background:var(--navy)}.storefront-body .catalog-layout{grid-template-columns:280px minmax(0,1fr);gap:26px}.storefront-body .catalog-sidebar{top:18px;border-color:var(--line);border-radius:15px;box-shadow:0 8px 24px rgba(24,36,48,.05)}.storefront-body .catalog-sidebar h2{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.storefront-body .category-tree a.is-active{background:var(--navy);color:#fff}.storefront-body .category-tree a.is-current-path{background:#edf1e9;color:#314c27}.storefront-body .catalog-title{align-items:flex-start;padding:5px 0 20px;border-bottom:1px solid var(--line)}.storefront-body .catalog-title h1{font-family:Georgia,"Times New Roman",serif}.catalog-order-note{max-width:430px;margin:5px 0 0;padding:10px 13px;border-left:3px solid var(--terracotta);background:#fff6f2;color:#6a4a40;font-size:.82rem}.storefront-body .catalog-section{border-color:var(--line);box-shadow:0 8px 24px rgba(24,36,48,.045)}.storefront-body .section-heading h2{font-family:Georgia,"Times New Roman",serif}.storefront-body .product-card.compact{border-color:var(--line);box-shadow:0 7px 20px rgba(24,36,48,.045)}.storefront-body .product-card.compact .image{height:210px;background:#f4f1ec}.storefront-body .product-card.compact img{width:100%;height:100%;max-height:none;object-fit:cover}.storefront-body .show-all-card{background:var(--navy)}.partner-page-heading{display:flex;justify-content:space-between;gap:25px;align-items:flex-start;margin-bottom:22px}.partner-page-heading h1{margin:0;font-family:Georgia,"Times New Roman",serif}.partner-order-message{max-width:520px;padding:12px 15px;border-radius:10px;background:#fff4ec;border:1px solid #f0d0c0;color:#744939;font-size:.84rem}.storefront-body .storefront-detail{padding:22px;border-color:var(--line);box-shadow:var(--shadow)}.storefront-body .detail-image{overflow:hidden;border-radius:14px;background:#f2efea}.storefront-body .detail-image img{width:100%;height:min(540px,52vw);max-height:540px;object-fit:contain}.storefront-body .product-information h1{font-family:Georgia,"Times New Roman",serif}.product-order-notice{display:grid;gap:3px;margin:18px 0;padding:13px 15px;border-left:4px solid var(--terracotta);background:#fff6f1;border-radius:0 9px 9px 0}.product-order-notice span{color:#685a52;font-size:.82rem}.storefront-body .add-cart-panel{background:#f4f7f1;border-color:#d8dfd1}.storefront-body .add-cart-panel h2{font-family:Georgia,"Times New Roman",serif}.storefront-body .cart-add-form button{background:var(--terracotta);color:#20252c!important}.storefront-body .cart-add-form button:hover{background:var(--terracotta-dark);color:#fff!important}

/* Tartalmi és jogi oldalak */
.content-page{padding-top:48px;padding-bottom:70px}.content-page-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:38px;align-items:start}.content-page-layout.is-single-column{grid-template-columns:minmax(0,1fr)}.content-page-layout.is-single-column .content-article{width:100%}.legal-sidebar{position:sticky;top:18px;padding:22px;border:1px solid var(--line);border-radius:15px;background:#fff}.legal-sidebar h2{margin:0 0 14px;font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.legal-sidebar nav{display:grid}.legal-sidebar a{padding:11px 12px;border-radius:8px;text-decoration:none;font-size:.9rem}.legal-sidebar a:hover,.legal-sidebar a.is-active{background:#f3eae4;color:var(--terracotta-dark);font-weight:800}.content-article{min-width:0;padding:36px 42px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(24,36,48,.055)}.content-article header{padding-bottom:24px;border-bottom:1px solid var(--line)}.content-article h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,3.4rem)}.content-summary{max-width:900px;margin:12px 0 0;color:var(--muted);font-size:1.02rem}.rich-content{max-width:1000px;padding-top:18px}.rich-content h2{margin:32px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:1.55rem;color:#263a4e}.rich-content h3{margin:24px 0 10px}.rich-content p,.rich-content li{color:#47535f}.rich-content ul{padding-left:22px}.numbered-step{padding:11px 14px;border-left:3px solid var(--terracotta);background:#fff8f2;border-radius:0 8px 8px 0}.legal-draft-warning{margin:22px 0 5px;padding:14px 16px;border:1px solid #e9bf68;border-radius:10px;background:#fff6d9;color:#6b4c0a}.content-contact-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0;padding:18px;border-radius:12px;background:#eef3f7}.content-contact-card div{display:grid;gap:4px}.content-contact-card span{color:#53606c}

/* Admin kiegészítések */
.site-settings-grid{grid-template-columns:repeat(3,minmax(200px,1fr))}.site-settings-grid .full{grid-column:1/-1}.site-settings-grid textarea{min-height:120px}.alert.warning{background:#fff7d6;color:#6b4d00;border-color:#ecd58a}

/* Régi, még nem átállított oldalak finomhangolása */
body:not(.storefront-body) .site-header{background:#fff;border-bottom-color:var(--line);box-shadow:0 5px 20px rgba(24,36,48,.05)}body:not(.storefront-body) .site-header h1{color:var(--navy)}body:not(.storefront-body) .container{padding-top:28px}body:not(.storefront-body) .panel{border-color:var(--line);box-shadow:0 8px 24px rgba(24,36,48,.05)}

@media(max-width:1180px){
    .header-primary{grid-template-columns:auto minmax(240px,1fr) auto}.top-contact{display:none}.home-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.order-process{grid-template-columns:1fr}.order-process ol{margin-top:4px}.storefront-body .catalog-layout{grid-template-columns:245px minmax(0,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
    .storefront-shell{width:min(100% - 26px,1440px)}.service-notice .storefront-shell{justify-content:flex-start;overflow-x:auto;white-space:nowrap}.service-notice .storefront-shell span:last-child{display:none}.header-primary{grid-template-columns:auto 1fr auto;min-height:70px;gap:12px}.mobile-menu-button{display:block}.storefront-logo{min-width:0}.storefront-logo strong{font-size:1.2rem}.storefront-logo small{display:none}.logo-mark{width:36px;height:36px}.logo-mark i{width:16px;height:16px}.header-search{grid-column:1/-1;grid-row:2;margin-bottom:12px}.header-actions .header-action:first-child{display:none}.header-action{border:0;padding:4px}.header-action>span:last-child{display:none}.storefront-nav-wrap{display:none}.storefront-nav-wrap.is-open{display:block}.storefront-nav{display:grid;padding-block:8px}.storefront-nav a{min-height:42px;border:0;border-radius:8px}.storefront-nav a.is-active{background:#edf2f7}.home-hero{background:#f5f1ea}.home-hero-inner{grid-template-columns:1fr;min-height:0;width:100%}.hero-copy{padding:45px 28px 35px}.hero-visual{min-height:360px;background-image:linear-gradient(0deg,rgba(245,241,234,.15),rgba(245,241,234,.15)),url('/assets/storefront-hero.webp')}.value-strip{grid-template-columns:repeat(2,1fr)}.value-strip article:nth-child(2){border-right:0}.value-strip article:nth-child(-n+2){border-bottom:1px solid var(--line)}.home-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.order-process ol{grid-template-columns:repeat(2,1fr);gap:18px}.order-process li::after{display:none}.storefront-body .catalog-layout{grid-template-columns:1fr}.storefront-body .catalog-sidebar{position:static}.catalog-order-note{display:none}.content-page-layout{grid-template-columns:1fr}.legal-sidebar{position:static}.legal-sidebar nav{grid-template-columns:repeat(2,1fr)}.site-settings-grid{grid-template-columns:repeat(2,minmax(200px,1fr))}
}
@media(max-width:620px){
    .storefront-shell{width:min(100% - 20px,1440px)}.header-primary{gap:8px}.storefront-logo{gap:9px}.storefront-logo strong{font-size:1.05rem}.header-actions{gap:2px}.header-action>span:first-child{font-size:1.25rem}.home-hero-inner{width:100%}.hero-copy{padding:36px 20px 30px}.hero-copy h1{font-size:2.35rem}.hero-actions{display:grid}.hero-actions .button{width:100%}.hero-visual{min-height:260px;background-position:58% center}.value-strip{grid-template-columns:1fr;border-radius:0}.value-strip article{border-right:0!important;border-bottom:1px solid var(--line)}.value-strip article:last-child{border-bottom:0}.home-section{padding-top:45px;padding-bottom:45px}.home-section-heading{align-items:flex-start}.home-section-heading>a{font-size:.78rem}.home-category-grid{grid-template-columns:1fr}.home-category-card{grid-template-columns:128px 1fr;grid-template-rows:108px}.home-category-copy{align-content:center}.home-product-row{grid-auto-columns:78vw}.row-controls button{display:none}.order-process{padding-top:50px;padding-bottom:50px}.order-process ol{grid-template-columns:1fr}.order-legal-callout{padding:20px;margin-bottom:50px}.order-legal-callout .callout-icon{width:30px;height:30px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{display:grid}.storefront-body .catalog-page,.storefront-body .product-page{padding-top:20px}.storefront-body .catalog-search{display:grid}.storefront-body .catalog-search button{width:100%}.partner-page-heading{display:grid}.content-article{padding:25px 20px}.legal-sidebar nav{grid-template-columns:1fr}.content-contact-card{grid-template-columns:1fr}.site-settings-grid{grid-template-columns:1fr}.site-settings-grid .full{grid-column:auto}.inventory-heading{align-items:flex-start;flex-direction:column}.partner-inventory-table th,.partner-inventory-table td{padding:8px 7px;font-size:.82rem}
}

/* Akadálymentesítési kiegészítések – WCAG 2.2 AA célú megvalósítás */
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    scroll-padding-top: 1rem;
}

.skip-links {
    position: fixed;
    z-index: 10000;
    top: 0;
    left: 0;
    display: flex;
    gap: 6px;
    padding: 6px;
    pointer-events: none;
}
.skip-links a {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    padding: 12px 16px;
    border: 3px solid #111827;
    border-radius: 6px;
    background: #fff;
    color: #111827;
    font-weight: 850;
    text-decoration: underline;
    white-space: nowrap;
}
.skip-links a:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    pointer-events: auto;
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
    outline: 3px solid #ffbf47 !important;
    outline-offset: 3px !important;
    box-shadow: 0 0 0 2px #17202a !important;
}
main:focus,
#main-content:focus {
    outline: none !important;
    box-shadow: none !important;
}

button,
.button,
.mobile-menu-button,
.header-action,
.a11y-panel-toggle,
.a11y-option,
.a11y-reset,
.a11y-panel-close,
.gallery-thumb,
.row-controls button {
    min-width: 44px;
    min-height: 44px;
    touch-action: manipulation;
}
input,
select,
textarea {
    min-height: 44px;
}
textarea {
    min-height: 110px;
}
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    border-color: #2e3192 !important;
}
button:disabled,
[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: .66;
}

.service-notice .storefront-shell {
    position: relative;
    flex-wrap: wrap;
    padding-block: 5px;
}
.a11y-panel-wrap {
    position: relative;
    margin-left: auto;
}
.a11y-panel-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 7px 11px;
    border: 1px solid #6d6257;
    border-radius: 8px;
    background: #fff;
    color: #20252c;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}
.a11y-panel {
    position: absolute;
    z-index: 100;
    top: calc(100% + 8px);
    right: 0;
    width: min(430px, calc(100vw - 24px));
    padding: 18px;
    border: 2px solid #253849;
    border-radius: 12px;
    background: #fff;
    color: #17202a;
    box-shadow: 0 18px 45px rgba(15, 28, 42, .22);
    text-align: left;
    white-space: normal;
}
.a11y-panel[hidden] {
    display: none !important;
}
.a11y-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}
.a11y-panel-heading h2 {
    margin: 0;
    font-size: 1.15rem;
}
.a11y-panel > p {
    margin: 8px 0 14px;
    color: #43505c;
}
.a11y-panel-close {
    padding: 0;
    border: 1px solid #66727e;
    border-radius: 8px;
    background: #fff;
    color: #17202a;
    font-size: 1.5rem;
    cursor: pointer;
}
.a11y-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}
.a11y-option,
.a11y-reset {
    padding: 10px 12px;
    border: 2px solid #506171;
    border-radius: 8px;
    background: #fff;
    color: #17202a;
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}
.a11y-option[aria-pressed="true"] {
    border-color: #2e3192;
    background: #2e3192;
    color: #fff;
}
.a11y-option[aria-pressed="true"]::before {
    content: "✓ ";
}
.a11y-reset {
    grid-column: 1 / -1;
    border-color: #f47920;
    color: #a94700;
}

.catalog-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.catalog-breadcrumb li {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
.catalog-breadcrumb li:not(:last-child)::after {
    content: "/";
    color: #65717d;
}
.catalog-breadcrumb a {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.catalog-search label.sr-only + input,
.header-search label.sr-only + input {
    min-width: 0;
}
.result-count[aria-live] {
    min-height: 1.5em;
}

.product-card.compact h3 a,
.home-product-card h3 a,
.home-section-heading > a,
.row-controls a,
.order-legal-callout a,
.rich-content a,
.content-contact-card a {
    text-decoration-thickness: .12em;
    text-underline-offset: .18em;
}
.product-card.compact h3 a:hover,
.product-card.compact h3 a:focus-visible,
.home-product-card h3 a:hover,
.home-product-card h3 a:focus-visible,
.home-section-heading > a:hover,
.home-section-heading > a:focus-visible,
.row-controls a:hover,
.row-controls a:focus-visible,
.order-legal-callout a:hover,
.order-legal-callout a:focus-visible,
.rich-content a:hover,
.rich-content a:focus-visible {
    text-decoration: underline;
}

.home-product-row[tabindex="0"] {
    border-radius: 12px;
}
.gallery-thumb[aria-pressed="true"] {
    border-color: #2e3192;
    background: #eef4fa;
}
.field-help {
    margin: -4px 0 4px;
    color: #465361;
    font-size: .9rem;
}
.partner-inventory-table caption {
    padding: 0 0 10px;
    color: #283846;
    font-weight: 800;
    text-align: left;
}
.inventory-table-wrap[tabindex="0"] {
    border-radius: 6px;
}

.legal-sidebar a.is-active,
.storefront-nav a.is-active,
.category-tree a.is-active {
    font-weight: 850;
}
.legal-sidebar a.is-active::before,
.storefront-nav a.is-active::before {
    content: "Aktuális: ";
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}
.footer-contact-label {
    font-weight: 800;
    color: #fff;
}

/* A túl apró kísérőszövegek olvashatóságának javítása. */
.storefront-logo small,
.header-action small,
.footer-bottom,
.home-product-card .code,
.product-card.compact .code,
.quote-price,
.inventory-source,
.warehouse-more,
.product-badge,
.hero-fineprint,
.catalog-order-note,
.partner-order-message {
    font-size: max(.8rem, 12px);
}

html.a11y-large-text {
    font-size: 112.5%;
}
html.a11y-large-text .storefront-shell {
    width: min(1440px, calc(100% - 28px));
}

html.a11y-underline-links body a:not(.button):not(.home-category-card):not(.category-card):not(.show-all-card):not(.storefront-logo):not(.header-action) {
    text-decoration: underline !important;
    text-decoration-thickness: .12em !important;
    text-underline-offset: .18em !important;
}

html.a11y-high-contrast body.storefront-body {
    --navy: #002f63;
    --navy-dark: #001f43;
    --forest: #264d16;
    --terracotta: #a53216;
    --terracotta-dark: #85250f;
    --ink: #000;
    --soft-ink: #202020;
    --muted: #303840;
    --line: #59636c;
    --border: #59636c;
    --bg: #fff;
    --card: #fff;
    background: #fff;
    color: #000;
}
html.a11y-high-contrast .storefront-site-header,
html.a11y-high-contrast .catalog-sidebar,
html.a11y-high-contrast .catalog-section,
html.a11y-high-contrast .content-article,
html.a11y-high-contrast .legal-sidebar,
html.a11y-high-contrast .panel,
html.a11y-high-contrast .product-card,
html.a11y-high-contrast .home-product-card,
html.a11y-high-contrast .home-category-card {
    border-color: #2b333a !important;
    box-shadow: none !important;
}
html.a11y-high-contrast .service-notice,
html.a11y-high-contrast .home-featured,
html.a11y-high-contrast .home-hero,
html.a11y-high-contrast .value-strip,
html.a11y-high-contrast .content-contact-card {
    background: #fff !important;
    color: #000 !important;
}
html.a11y-high-contrast .muted,
html.a11y-high-contrast .code,
html.a11y-high-contrast .stock,
html.a11y-high-contrast small,
html.a11y-high-contrast .content-summary,
html.a11y-high-contrast .rich-content p,
html.a11y-high-contrast .rich-content li {
    color: #202020 !important;
}
html.a11y-high-contrast .button,
html.a11y-high-contrast button[type="submit"] {
    background: #002f63 !important;
    color: #fff !important;
    border: 2px solid #002f63 !important;
}
html.a11y-high-contrast .secondary-outline {
    background: #fff !important;
    color: #002f63 !important;
}

html.a11y-reduce-motion {
    scroll-behavior: auto;
}
html.a11y-reduce-motion *,
html.a11y-reduce-motion *::before,
html.a11y-reduce-motion *::after {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
}
html.a11y-reduce-motion .button:hover,
html.a11y-reduce-motion .home-category-card:hover,
html.a11y-reduce-motion .category-card:hover {
    transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
    }
    .button:hover,
    .home-category-card:hover,
    .category-card:hover {
        transform: none !important;
    }
}

@media (prefers-contrast: more) {
    :root {
        --border: #53606c;
        --line: #53606c;
        --muted: #37414a;
    }
    .panel,
    .product-card,
    .catalog-sidebar,
    .catalog-section,
    .content-article,
    .legal-sidebar {
        border-width: 2px;
        box-shadow: none;
    }
}

@media (forced-colors: active) {
    .button,
    button,
    input,
    select,
    textarea,
    .product-card,
    .home-category-card,
    .catalog-section,
    .panel {
        forced-color-adjust: auto;
        border: 1px solid CanvasText;
    }
    .logo-mark,
    .hero-visual,
    .product-badge {
        forced-color-adjust: none;
    }
}

@media (max-width: 900px) {
    .service-notice .storefront-shell {
        justify-content: flex-start;
        overflow: visible;
        white-space: normal;
    }
    .service-notice .storefront-shell span:last-of-type {
        display: inline;
    }
    .a11y-panel-wrap {
        width: 100%;
        margin-left: 0;
    }
    .a11y-panel-toggle {
        width: 100%;
    }
    .a11y-panel {
        position: fixed;
        top: 12px;
        right: 12px;
        left: 12px;
        width: auto;
        max-height: calc(100vh - 24px);
        overflow: auto;
    }
}

@media (max-width: 620px) {
    .a11y-options {
        grid-template-columns: 1fr;
    }
    .a11y-reset {
        grid-column: auto;
    }
    html.a11y-large-text {
        font-size: 106.25%;
    }
    .home-product-row[tabindex="0"] {
        padding-bottom: 22px;
    }
}


/* 2026.08.05.5 – kiszerelési egység szerinti mennyiségkezelés */
.quantity-stepper,
.cart-quantity-form {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
}

.quantity-stepper input,
.cart-quantity-form input[type="number"] {
    width: 8.5rem;
    min-height: 44px;
    text-align: center;
    font-variant-numeric: tabular-nums;
}

.quantity-step-button {
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    border: 1px solid var(--storefront-border, #c9c4bb);
    border-radius: .5rem;
    background: #fff;
    color: var(--storefront-ink, #18212a);
    font-size: 1.35rem;
    font-weight: 700;
    cursor: pointer;
}

.quantity-step-button:hover,
.quantity-step-button:focus-visible {
    background: #f1f4ed;
    border-color: #405f34;
}

.cart-update-button,
.cart-remove-button {
    min-height: 44px;
}

.cart-remove-button {
    background: transparent;
    color: #8b2b20;
    border: 1px solid #b85b50;
}

.cart-package-label {
    display: inline-block;
    margin-top: .35rem;
    font-size: .9rem;
    color: #52606d;
}

.cart-table td:nth-child(2) {
    min-width: 25rem;
}

@media (max-width: 760px) {
    .cart-table,
    .cart-table tbody,
    .cart-table tr,
    .cart-table td {
        display: block;
        width: 100%;
    }

    .cart-table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        white-space: nowrap;
    }

    .cart-table tr {
        padding: 1rem 0;
        border-bottom: 1px solid var(--storefront-border, #ddd7cd);
    }

    .cart-table td {
        padding: .45rem 0;
        border: 0;
    }

    .cart-table td:nth-child(2) {
        min-width: 0;
    }

    .cart-quantity-form {
        align-items: stretch;
    }

    .cart-update-button,
    .cart-remove-button {
        flex: 1 1 8rem;
    }
}

/* Partnercsoport alapján feloldott katalógus-, árlista- és raktárprofil */
.partner-access-summary{margin:0 0 16px;padding:12px 16px;border:1px solid #d8e2ea;border-radius:12px;background:#f7fafc}.partner-access-summary ul{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0;padding:0;list-style:none}.partner-access-summary li{display:flex;align-items:baseline;gap:7px}.partner-access-summary span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.partner-access-summary strong{color:#2e3192;font-size:.92rem}@media(max-width:720px){.partner-access-summary ul{display:grid;gap:8px}.partner-access-summary li{justify-content:space-between;gap:12px}.partner-access-summary strong{text-align:right}}

@media (max-width: 640px) {
    .partner-price-option { padding: 9px 10px; }
    .partner-price-option-main { grid-template-columns: 1fr; gap: 1px; }
    .partner-price-option-vat { white-space: normal; }
}

/* Kezdooldali hirdetes slider - 2026.10.08.11 */
.home-hero-slider{position:relative;overflow:hidden}.home-hero-slide[hidden]{display:none}.home-hero-slide{animation:heroFade .32s ease}.home-hero-slider .hero-banner-image{position:relative;overflow:hidden;background:#e8e3db}.home-hero-slider .hero-banner-image img{width:100%;height:100%;min-height:510px;display:block;object-fit:cover;object-position:center}.home-hero-controls{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:5;display:flex;align-items:center;justify-content:center;gap:12px;pointer-events:none}.home-hero-controls>*{pointer-events:auto}.hero-arrow{width:42px;height:42px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(20,28,38,.68);color:#fff;font-size:1.8rem;line-height:1;display:grid;place-items:center;cursor:pointer}.hero-dots{display:flex;gap:8px;padding:9px 12px;border-radius:999px;background:rgba(20,28,38,.55)}.hero-dots button{width:10px;height:10px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.48);cursor:pointer}.hero-dots button[aria-current="true"]{background:#fff;transform:scale(1.18)}
.home-banner-admin-list{display:grid;gap:18px}.home-banner-admin-card{display:grid;gap:16px}.home-banner-admin-preview{max-width:640px;aspect-ratio:16/6;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#eee}.home-banner-admin-preview img{width:100%;height:100%;object-fit:cover;display:block}
@keyframes heroFade{from{opacity:.35}to{opacity:1}}
@media(max-width:900px){.home-hero-slider .hero-banner-image img{min-height:360px}.home-hero-controls{bottom:12px}}
@media(max-width:620px){.home-hero-slider .hero-banner-image img{min-height:260px}.hero-arrow{width:38px;height:38px}.home-hero-controls{bottom:8px}.hero-dots{padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.home-hero-slide{animation:none}}
