/* =========================================================
   OSTRIUM – WordPress a WooCommerce
   Doplnky k design systému (main.css): obsah z editora, archívy,
   košík a pokladňa (blokové aj klasické), účet, notifikácie.
   ========================================================= */

/* ---------- Prístupnosť a WordPress jadro ---------- */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{position:fixed!important;top:8px;left:8px;width:auto;height:auto;clip:auto;z-index:1000;padding:.8rem 1rem;background:var(--beige);color:#000}
.ostrium-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.alignwide{max-width:min(var(--maxw),100%)}
.alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}
.wp-caption-text,.wp-element-caption{font-size:var(--t-small);color:var(--text-dim);margin-top:.6rem}
.sticky,.bypostauthor,.gallery-caption{outline:0}
.has-hero .site-header:not(.is-scrolled){background:linear-gradient(180deg,rgba(0,0,0,.55),transparent)}
:target{scroll-margin-top:calc(var(--header-h) + 16px)}
.prose--wide{max-width:none}
.phero .crumbs a,.crumbs a{color:inherit}
.section--light .crumbs,.section--mist .crumbs{color:var(--text-dim-light)}

/* obsah z editora (bežné bloky) */
.prose>*:first-child{margin-top:0}
.prose a:not(.btn):not(.link){color:var(--beige-soft);text-underline-offset:3px}
.section--light .prose a:not(.btn):not(.link){color:var(--bronze-ink)}
.prose img{border-radius:var(--radius)}
.prose figure{margin:2rem 0}
.prose ol{padding-left:1.4em;margin-bottom:1em}
.prose table{width:100%;border-collapse:collapse;font-size:.95rem;margin:1.5rem 0}
.prose th,.prose td{text-align:left;padding:.7rem .5rem .7rem 0;border-bottom:1px solid var(--line-dark)}
.prose hr{border:0;border-top:1px solid var(--line-dark);margin:2.5rem 0}
.prose .wp-block-buttons{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.5rem 0}
.wp-block-button__link,.wp-element-button{--bg:var(--beige);--fg:#000;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.9rem 1.6rem;background:var(--bg);color:var(--fg)!important;font-weight:600;text-decoration:none!important;border:0;border-radius:0;clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,0 100%);transition:background var(--d-fast)}
.wp-block-button__link:hover,.wp-element-button:hover{--bg:var(--beige-soft)}
.is-style-outline .wp-block-button__link{--bg:transparent;--fg:currentColor;box-shadow:inset 0 0 0 1px currentColor;clip-path:none}
.wp-block-quote{margin:2em 0;padding-left:1.4rem;border-left:2px solid var(--beige)}
.wp-block-quote p{font-family:var(--f-display);font-size:1.5rem;line-height:1.25;color:#fff}
.wp-block-separator{border:0;border-top:1px solid var(--line-dark);margin:2.5rem 0}
.wp-block-image figcaption{font-size:var(--t-small);color:var(--text-dim)}
.ostrium-flow+.ostrium-flow{padding-top:0}
.entry-content>*+*{margin-top:1em}

/* komentáre */
.comment-list{list-style:none;display:grid;gap:1.25rem;margin-bottom:2.5rem}
.comment-list .comment-body{padding:1.25rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark)}
.comment-list .avatar{border-radius:50%;float:left;margin-right:.75rem}
.comment-meta{font-size:.85rem;color:var(--text-dim)}
.comment-form{padding:clamp(20px,3vw,32px);display:grid;gap:1rem}
.comment-form label{display:block;font-size:.9rem;margin-bottom:.35rem}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;min-height:52px;padding:.8rem 1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);color:#fff}

/* ---------- Hlavička a menu ---------- */
.mnav__link small{display:block}
.filter-tabs a{padding:.55rem 1rem;border-radius:99px;font-size:.92rem;box-shadow:inset 0 0 0 1px var(--line-dark);text-decoration:none;color:inherit;transition:background var(--d-fast)}
.filter-tabs a[aria-current="page"]{background:var(--beige);color:#000;box-shadow:none}
.filter-tabs a:hover{background:rgba(170,140,111,.14)}

/* ---------- Bloky – doplnky ---------- */
.wall--flip .wall__media{grid-column:7/span 6;order:2}
.wall--flip .wall__body{grid-column:1/span 5}
@media (max-width:900px){.wall--flip .wall__media,.wall--flip .wall__body{grid-column:1/-1;order:0}}
.acc__h{margin:0;font:inherit;letter-spacing:inherit}
.course-row .course-row__seats{min-width:7.5rem}
.facts>div:last-child:nth-child(odd){grid-column:1/-1}
.course-feature .dim,.section--mist .course-feature .dim,.section--light .course-feature .dim{color:rgba(255,255,255,.78)}
.course-feature .buy-tag{background:rgba(0,0,0,.55);color:#fff}
.course-row h3{font-family:var(--f-display)}
.team__p .media{border-radius:var(--radius)}
.masonry figure[hidden]{display:none}
.masonry button.media{cursor:zoom-in;border-radius:var(--radius)}
.masonry button.media:focus-visible{outline:2px solid var(--beige);outline-offset:3px}
.voucher img{height:auto}
.hero__facts:empty{display:none}
.is-404 .search-big{max-width:560px}

/* ---------- Katalóg Kniland ---------- */
.pcard__img img{width:100%;height:100%;object-fit:contain;padding:8%;mix-blend-mode:multiply;transition:transform var(--d-slow) var(--ease-out)}
.pcard:hover .pcard__img img{transform:scale(1.04)}
.pcard__stock{margin-top:.35rem;font-size:.8rem}
.pcard__stock.is-in,.pdp__stock.is-in{color:var(--ok-ink)}
.pcard__stock.is-out,.pdp__stock.is-out{color:var(--text-dim-light)}
.section--charcoal .pcard__stock.is-in{color:var(--ok)}
.pcard__price del{font-family:var(--f-body)}
.pdp__main{overflow:hidden}
.pdp__main img{width:100%;height:100%;object-fit:contain;padding:6%;mix-blend-mode:multiply}
.pdp__desc{color:var(--text-dim-light);font-size:.98rem}
.pdp__desc p{margin-bottom:1em}
.pdp__desc img{max-width:100%;height:auto}
.chip a{text-decoration:none;font-size:1rem;line-height:1;opacity:.6;color:inherit}
.chip a:hover{opacity:1}
.catalog-page .filters .row-2{gap:.5rem}
.catalog-page .filters .row-2 label{font-size:.82rem;font-weight:500}
.catalog-page .filters .input{min-height:44px}
.catalog-page .check{color:#000}
.pager a,.pager span{color:inherit}
.pager .ico{width:18px;height:18px}
.search-results li>span:first-child{display:block}
.search-results .link{font-size:1.1rem}

/* ---------- Notifikácie WooCommerce (klasické aj blokové) ---------- */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;padding:1rem 1.15rem!important;margin:0 0 1.25rem!important;border:0!important;border-radius:var(--radius)!important;font-size:.95rem;color:inherit!important;background:rgba(170,140,111,.12)!important;box-shadow:inset 3px 0 0 var(--beige)}
.woocommerce-message,.wc-block-components-notice-banner.is-success{background:rgba(157,184,154,.12)!important;box-shadow:inset 3px 0 0 var(--ok)}
.woocommerce-error,.wc-block-components-notice-banner.is-error{background:rgba(224,134,111,.12)!important;box-shadow:inset 3px 0 0 var(--danger)}
.woocommerce-error li{list-style:none}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{order:2;margin-left:auto}
.wc-block-components-notice-banner>svg{fill:currentColor;background:transparent!important;color:var(--beige)}
.wc-block-components-notice-banner.is-error>svg{color:var(--danger)}
.wc-block-components-notice-banner.is-success>svg{color:var(--ok)}
.wc-block-components-notice-banner__content{color:inherit}

/* ---------- Tlačidlá WooCommerce ---------- */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.wc-block-components-button:not(.is-link),.wp-block-woocommerce-cart .wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{--bg:var(--beige);--fg:#000;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.85rem 1.5rem;background:var(--bg)!important;color:var(--fg)!important;font-family:var(--f-body);font-weight:600;font-size:1rem;text-decoration:none;border:0!important;border-radius:0!important;clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,0 100%);transition:background var(--d-fast);cursor:pointer;box-shadow:none!important}
.woocommerce .button:hover,.wc-block-components-button:not(.is-link):hover{--bg:var(--beige-soft)}
.woocommerce .button:focus-visible,.wc-block-components-button:not(.is-link):focus-visible{clip-path:none;outline:2px solid #fff;outline-offset:3px}
.woocommerce .button.alt{--bg:var(--beige)}
.woocommerce .button:disabled,.woocommerce .button.disabled,.wc-block-components-button:disabled{opacity:.45}
.wc-block-components-button.is-link{color:var(--beige-soft)!important}

/* ---------- Formuláre WooCommerce ---------- */
.woocommerce form .form-row{display:grid;gap:.4rem;margin:0 0 1rem;padding:0}
.woocommerce form .form-row label{font-size:.9rem;font-weight:500;line-height:1.4}
.woocommerce form .form-row .required{color:var(--danger);text-decoration:none}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:calc(50% - .5rem);float:left}
.woocommerce form .form-row-last{float:right}
.woocommerce form .form-row-wide{clear:both}
@media (max-width:600px){.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%;float:none}}
.woocommerce input.input-text,.woocommerce select,.woocommerce textarea,.woocommerce .select2-container .select2-selection,.woocommerce form .input,.woocommerce-page input[type=password]{width:100%;min-height:52px;padding:.8rem 1rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);color:#fff;font:inherit}
.woocommerce select option{color:#000}
.woocommerce input.input-text:focus,.woocommerce select:focus,.woocommerce textarea:focus{outline:none;border-color:var(--beige);box-shadow:0 0 0 3px rgba(170,140,111,.25)}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:var(--danger)}
.woocommerce .select2-container .select2-selection__rendered{color:#fff;line-height:1.4;padding:0}
.woocommerce .password-input{position:relative;display:block}
.woocommerce .show-password-input{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:var(--text-dim)}
.woocommerce-form__label-for-checkbox{display:flex!important;gap:.6rem;align-items:flex-start}
.woocommerce input[type=checkbox],.woocommerce input[type=radio]{accent-color:var(--beige);width:18px;height:18px;flex:none;margin-top:.2rem}

/* ---------- Tabuľky WooCommerce ---------- */
.woocommerce table.shop_table{width:100%;border-collapse:collapse;font-size:.95rem;margin-bottom:2rem}
.woocommerce table.shop_table th{text-align:left;font-weight:500;color:var(--text-dim);font-size:.82rem;padding:.6rem .75rem .6rem 0;border-bottom:1px solid var(--line-dark)}
.woocommerce table.shop_table td{padding:1rem .75rem 1rem 0;border-bottom:1px solid var(--line-dark);vertical-align:top}
.woocommerce table.shop_table .wc-item-meta,.woocommerce table.shop_table .variation{list-style:none;font-size:.85rem;color:var(--text-dim);margin-top:.35rem}
.woocommerce table.shop_table .wc-item-meta p,.woocommerce table.shop_table .variation dd{display:inline;margin:0}
.woocommerce table.shop_table .variation dt{float:left;clear:left;margin-right:.3rem;font-weight:500}
.woocommerce table.shop_table tfoot th,.woocommerce table.shop_table tfoot td{font-weight:600;color:#fff}
.woocommerce table.shop_table .order-total td,.woocommerce table.shop_table .order-total th{font-family:var(--f-display);font-size:1.2rem}
.woocommerce .cart_totals h2,.woocommerce h2,.woocommerce h3{margin-bottom:1rem}
.woocommerce-cart-form .product-remove a{font-size:1.4rem;text-decoration:none;color:var(--text-dim)}
.woocommerce-cart-form .product-thumbnail img{width:64px;height:64px;object-fit:cover;border-radius:var(--radius)}
.woocommerce .quantity .qty{width:72px;min-height:44px;text-align:center}
@media (max-width:760px){
  .woocommerce table.shop_table_responsive thead{display:none}
  .woocommerce table.shop_table_responsive tr{display:grid;padding:1rem 0;border-bottom:1px solid var(--line-dark)}
  .woocommerce table.shop_table_responsive td{border:0;padding:.25rem 0;display:flex;justify-content:space-between;gap:1rem}
  .woocommerce table.shop_table_responsive td::before{content:attr(data-title);color:var(--text-dim);font-size:.85rem}
  .woocommerce table.shop_table_responsive td.product-remove::before,.woocommerce table.shop_table_responsive td.product-thumbnail::before{content:none}
}
.woocommerce .cart-collaterals{display:grid;justify-content:end;margin-top:2rem}
.woocommerce .cart_totals{width:min(460px,100%);padding:1.5rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark)}
.woocommerce .coupon{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.woocommerce .coupon .input-text{width:auto;flex:1;min-width:160px}

/* ---------- Klasická pokladňa ---------- */
.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,48px)}
@media (max-width:900px){.woocommerce-checkout .col2-set{grid-template-columns:1fr}}
.woocommerce-checkout #order_review_heading{margin-top:2.5rem}
.woocommerce-checkout #order_review{padding:1.5rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark)}
.woocommerce-checkout-payment .wc_payment_methods{list-style:none;display:grid;gap:.5rem;margin-bottom:1.25rem}
.woocommerce-checkout-payment .wc_payment_method{padding:1rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark)}
.woocommerce-checkout-payment .payment_box{margin-top:.75rem;font-size:.92rem;color:var(--text-dim)}
.woocommerce-terms-and-conditions-wrapper{font-size:.9rem;margin:1rem 0}
#place_order{width:100%}

/* ---------- Blokový košík a pokladňa ---------- */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{color:#fff;font-family:var(--f-body)}
.wc-block-components-sidebar-layout{gap:clamp(24px,4vw,64px)}
.wc-block-components-sidebar{padding:1.5rem!important;border-radius:var(--radius);background:linear-gradient(140deg,rgba(255,255,255,.08),rgba(255,255,255,.03));box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.wc-block-components-title,.wc-block-components-checkout-step__title,.wc-block-cart__totals-title{font-family:var(--f-display)!important;font-weight:500!important;letter-spacing:-.015em;color:#fff!important}
.wc-block-components-checkout-step__title{font-size:1.5rem!important}
.wc-block-components-checkout-step{border-top:1px solid var(--line-dark);padding-top:1.5rem!important}
.wc-block-components-checkout-step__description,.wc-block-components-product-metadata,.wc-block-components-totals-item__description,.wc-block-components-address-card__address-section,.wc-block-components-checkout-step__heading-content{color:var(--text-dim)!important}
.wc-block-components-text-input input,.wc-block-components-text-input textarea,.wc-blocks-components-select__select,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-block-components-form .wc-block-components-text-input input,.wc-block-components-textarea{background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:var(--radius)!important;color:#fff!important;font-family:var(--f-body)!important}
.wc-block-components-text-input label,.wc-blocks-components-select__label,.wc-block-components-combobox label{color:var(--text-dim)!important}
.wc-block-components-text-input.is-active input,.wc-block-components-text-input input:focus,.wc-blocks-components-select__select:focus{border-color:var(--beige)!important;box-shadow:0 0 0 3px rgba(170,140,111,.25)!important;outline:none!important}
.wc-blocks-components-select__select option{color:#000}
.wc-blocks-components-select__expand{fill:var(--beige)!important}
.wc-block-components-validation-error{color:var(--danger)!important}
.wc-block-components-text-input.has-error input{border-color:var(--danger)!important}
.wc-block-components-radio-control__option,.wc-block-components-radio-control-accordion-option{border-radius:var(--radius)!important;box-shadow:inset 0 0 0 1px var(--line-dark)!important;color:#fff}
.wc-block-components-radio-control__option-checked,.wc-block-components-radio-control-accordion-option--checked-option-highlighted{box-shadow:inset 0 0 0 1.5px var(--beige)!important;background:rgba(170,140,111,.12)}
.wc-block-components-radio-control__input{border-color:rgba(255,255,255,.5)!important;background:transparent!important}
.wc-block-components-radio-control__input:checked::before{background:var(--beige)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{background:transparent!important;border-color:rgba(255,255,255,.5)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:var(--beige)!important;border-color:var(--beige)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:#000!important}
.wc-block-components-totals-wrapper{border-top-color:var(--line-dark)!important}
.wc-block-components-totals-item__value,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-weight:600}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--f-display);font-size:1.3rem!important}
.wc-block-components-order-summary-item__quantity{background:var(--beige)!important;color:#000!important;border:0!important;box-shadow:none!important}
.wc-block-components-order-summary-item__image img,.wc-block-cart-item__image img{border-radius:var(--radius)}
.wc-block-cart-items td,.wc-block-cart-items th{border-color:var(--line-dark)!important}
.wc-block-cart-items__header{color:var(--text-dim)}
.wc-block-components-product-name{color:#fff!important;font-weight:600;text-decoration:none!important}
.wc-block-components-product-details{list-style:none;color:var(--text-dim);font-size:.85rem}
.wc-block-components-quantity-selector{border-color:rgba(255,255,255,.22)!important;border-radius:var(--radius)!important}
.wc-block-components-quantity-selector input,.wc-block-components-quantity-selector button{color:#fff!important;background:transparent!important}
.wc-block-cart-item__remove-link{color:var(--text-dim)!important}
.wc-block-components-panel__button,.wc-block-components-totals-coupon-link{color:#fff!important}
.wc-block-components-formatted-money-amount{font-variant-numeric:tabular-nums}
.wc-block-checkout__terms,.wc-block-checkout__guest-checkout-notice{color:var(--text-dim)}
.wc-block-checkout__terms a,.wc-block-components-checkout-step a{color:var(--beige-soft)}
.wc-block-components-address-card{border-color:var(--line-dark)!important;border-radius:var(--radius)!important}
.wc-block-components-express-payment__content{border-color:var(--line-dark)!important}
.wc-block-components-express-payment__title-container::before,.wc-block-components-express-payment__title-container::after{border-color:var(--line-dark)!important}
.wc-block-components-express-payment__title{color:#fff!important}
.wc-block-components-express-payment-continue-rule{color:var(--text-dim)}
.wc-block-components-express-payment-continue-rule::before,.wc-block-components-express-payment-continue-rule::after{background:var(--line-dark)!important}
.wc-block-components-loading-mask{background:rgba(0,0,0,.4)}
.wc-block-cart__empty-cart__title{font-family:var(--f-display)}
.wp-block-woocommerce-empty-cart-block{text-align:center}
.wc-block-components-product-badge{border-color:var(--beige)!important;color:var(--beige-soft)!important;border-radius:2px!important}
.wc-block-components-spinner::after{border-color:var(--beige) transparent transparent!important}
.wc-block-components-checkout-return-to-cart-button{color:var(--text-dim)!important}
.wc-block-components-checkout-return-to-cart-button svg{fill:currentColor}
/* Stripe Elements má vlastný iframe – necháme mu svetlý podklad kvôli čitateľnosti. */
.wc-block-gateway-container,.wc-stripe-elements-field,.wc-stripe-upe-element{background:#fff;border-radius:var(--radius);padding:.6rem}

/* ---------- Môj účet ---------- */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.woocommerce-account:not(.logged-in) .woocommerce{display:block}
.woocommerce-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.woocommerce-MyAccount-navigation ul{list-style:none;display:grid;gap:.2rem;position:sticky;top:calc(var(--header-h) + 16px)}
.woocommerce-MyAccount-navigation a{display:flex;align-items:center;gap:.7rem;padding:.75rem .9rem;border-radius:var(--radius);text-decoration:none;color:var(--text-dim);transition:background var(--d-fast),color var(--d-fast)}
.woocommerce-MyAccount-navigation a:hover{background:rgba(255,255,255,.05);color:#fff}
.woocommerce-MyAccount-navigation .is-active a{background:rgba(170,140,111,.14);color:#fff}
.woocommerce-MyAccount-content>p:first-child{color:var(--text-dim)}
.woocommerce-MyAccount-content a:not(.button):not(.btn){color:var(--beige-soft)}
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.woocommerce-Address{padding:1.25rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark)}
.woocommerce-Address address{font-style:normal;color:var(--text-dim)}
@media (max-width:860px){.woocommerce-account .woocommerce{grid-template-columns:1fr}.woocommerce-MyAccount-navigation ul{position:static;display:flex;overflow-x:auto;gap:.35rem}.woocommerce-MyAccount-navigation li{flex:none}.woocommerce-Addresses{grid-template-columns:1fr}}
.woocommerce-orders-table__cell-order-status mark,.order-status{background:rgba(170,140,111,.16);color:var(--beige-soft);padding:.2rem .5rem;border-radius:2px;font-size:.82rem;font-weight:600}
mark.order-number,mark.order-date,mark.order-status{background:none;color:#fff;padding:0}

/* prihlásenie a registrácia */
.woocommerce-account:not(.logged-in) .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px)}
.woocommerce-account:not(.logged-in) .u-column1,.woocommerce-account:not(.logged-in) .u-column2,.woocommerce-form-login,.woocommerce-form-register,.woocommerce-ResetPassword{padding:clamp(20px,3vw,36px);border-radius:var(--radius);background:linear-gradient(140deg,rgba(255,255,255,.08),rgba(255,255,255,.03));box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.woocommerce-account:not(.logged-in) .u-column1 .woocommerce-form-login,.woocommerce-account:not(.logged-in) .u-column2 .woocommerce-form-register{padding:0;background:none;box-shadow:none}
@media (max-width:860px){.woocommerce-account:not(.logged-in) .u-columns{grid-template-columns:1fr}}
.woocommerce-form-login__rememberme{margin:.5rem 0 1rem}
.lost_password a{color:var(--beige-soft);font-size:.9rem}

/* ---------- Poďakovanie za objednávku ---------- */
.woocommerce-order .woocommerce-thankyou-order-received,.wc-block-order-confirmation-status{font-family:var(--f-display);font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.15;margin-bottom:1.5rem}
.woocommerce-order-overview{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin:0 0 2rem;padding:0}
.woocommerce-order-overview li{padding:1rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark);font-size:.85rem;color:var(--text-dim)}
.woocommerce-order-overview li strong{display:block;color:#fff;font-size:1.05rem;margin-top:.2rem}
.woocommerce-customer-details address{font-style:normal;padding:1.25rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark)}
.wc-block-order-confirmation-summary-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;padding:0}
.wc-block-order-confirmation-summary-list-item{padding:1rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--line-dark)}
.ostrium-order-bookings{margin:1.5rem 0;padding:1.25rem;border-radius:var(--radius);box-shadow:inset 0 0 0 1px var(--beige)}

/* ---------- Obchod a produkt (služby) ---------- */
.wc-page .woocommerce-products-header__title,.wc-page .product_title{font-family:var(--f-display)}
.woocommerce ul.products{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,32px);margin:2rem 0;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;display:flex;flex-direction:column;gap:.6rem}
.woocommerce ul.products li.product a img{aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius);margin-bottom:.5rem}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--f-body);font-size:1.05rem;font-weight:600}
.woocommerce ul.products li.product .price{font-family:var(--f-display);font-size:1.2rem;color:#fff}
.woocommerce ul.products li.product a{text-decoration:none;color:inherit}
@media (max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
.woocommerce-result-count{color:var(--text-dim);font-size:.9rem}
.woocommerce-ordering select{width:auto}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,5vw,88px);align-items:start}
.woocommerce div.product .woocommerce-product-gallery{grid-column:1;position:relative}
.woocommerce div.product .summary{grid-column:2}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
@media (max-width:900px){.woocommerce div.product{grid-template-columns:1fr}.woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product .summary{grid-column:1}}
.woocommerce div.product .price{font-family:var(--f-display);font-size:2rem;color:#fff;margin:1rem 0}
.woocommerce div.product form.cart{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin:1.5rem 0}
.woocommerce div.product .woocommerce-product-gallery img{border-radius:var(--radius)}
.woocommerce-product-gallery__trigger{position:absolute;top:12px;right:12px;z-index:2}
.woocommerce div.product .product_meta{font-size:.85rem;color:var(--text-dim);display:grid;gap:.25rem}
.woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:1.5rem;border-bottom:1px solid var(--line-dark);margin:2rem 0 1.5rem;padding:0}
.woocommerce-tabs ul.tabs li a{display:block;padding:.8rem 0;font-weight:600;color:var(--text-dim);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}
.woocommerce-tabs ul.tabs li.active a{color:#fff;border-color:var(--beige)}
.woocommerce span.onsale{position:absolute;top:12px;left:12px;z-index:2;background:var(--beige);color:#000;font-size:.8rem;font-weight:700;padding:.25rem .6rem;border-radius:2px}
.woocommerce .star-rating{display:none}
.woocommerce-breadcrumb{font-size:.85rem;color:var(--text-dim)}

/* ---------- Plávajúce prvky pri nákupe ---------- */
.is-shop-flow .sticky-cta{display:none!important}
.is-shop-flow .phero{padding-bottom:clamp(24px,3vw,40px)}

/* ---------- Tlač ---------- */
@media print{.site-header,.mnav,.drawer,.scrim,.site-footer,.sticky-cta,.toasts{display:none!important}body{background:#fff;color:#000}}
.pdp__main .buy-tag svg,.pcard__img .buy-tag svg{width:14px;height:14px}
.wc-blocks-components-select .wc-blocks-components-select__container{background:transparent!important;border-radius:var(--radius)}
.wc-blocks-components-select .wc-blocks-components-select__select{height:52px}
.wc-block-components-order-summary-item__individual-prices{color:var(--text-dim)}
@media (max-width:960px){.catalog-page .filters{z-index:450}}
.has-black-color{color:#000}.has-white-color{color:#fff}.has-beige-color{color:var(--beige)}.has-gray-color{color:var(--gray)}
.has-black-background-color{background:#000}.has-white-background-color{background:#fff;color:#000}.has-beige-background-color{background:var(--beige);color:#000}.has-gray-background-color{background:var(--gray);color:#000}

/* ---------- Vernostný program ---------- */
.loyalty__grid{align-items:start}
.loyalty__info .craft__steps{margin-top:1rem}
.loyalty__tiers{max-width:420px}
.loyalty__tiers .is-start span:first-child{font-weight:600;color:#fff}
.loyalty__tiers li span:last-child{color:var(--beige);font-variant-numeric:tabular-nums}
.loyalty__panel{position:sticky;top:calc(var(--header-h) + 16px)}
.loyalty__box{padding:clamp(20px,3vw,36px)}
.loyalty__card-input{display:flex;gap:.5rem}
.loyalty__card-input .input{flex:1;min-width:0;font-size:1.2rem;letter-spacing:.12em}
.loyalty__card-input .input::placeholder{font-size:.95rem;letter-spacing:normal}
.loyalty__scan{flex:none;min-height:52px}
.loyalty__count.is-ok{color:var(--ok);font-weight:600}
.loyalty .check.is-invalid span{color:var(--danger)}
.loyalty__captcha{min-height:78px}
.loyalty__captcha.is-invalid{outline:2px solid var(--danger);outline-offset:4px;border-radius:4px}
.loyalty__done{display:grid;gap:1.25rem;justify-items:start}
.loyalty__done:focus{outline:none}
.loyalty-card{position:relative;width:100%;max-width:380px;aspect-ratio:1.586;padding:clamp(16px,2.4vw,24px);display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:var(--g-bronze-black);box-shadow:inset 0 0 0 1px rgba(170,140,111,.45),0 30px 60px -30px rgba(0,0,0,.8);clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,0 100%);overflow:hidden}
.loyalty-card::after{content:"";position:absolute;inset:0;background:url("../img/patterns/broken-rings.svg") right -50px top -40px/240px no-repeat;opacity:.5;pointer-events:none}
.loyalty-card>*{position:relative;z-index:1}
.loyalty-card__top{display:flex;justify-content:space-between;align-items:center}
.loyalty-card__top img{width:110px;height:auto}
.loyalty-card__disc{font-family:var(--f-display);font-size:1.6rem;color:var(--beige)}
.loyalty-card__name{font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.loyalty-card__code{background:#fff;color:#111;border-radius:2px;padding:.5rem .75rem .4rem;display:grid;gap:.25rem;justify-items:center}
.loyalty-card__bars{width:100%;height:32px;background:repeating-linear-gradient(90deg,#111 0 2px,transparent 2px 4px,#111 4px 5px,transparent 5px 8px,#111 8px 11px,transparent 11px 12px,#111 12px 13px,transparent 13px 16px)}
.loyalty-card__num{font-size:.85rem;letter-spacing:.14em;min-height:1.2em}
.loyalty-scanner{position:fixed;inset:0;z-index:600;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:calc(20px + env(safe-area-inset-top)) var(--gutter) calc(20px + env(safe-area-inset-bottom));background:rgba(0,0,0,.94);text-align:center}
.loyalty-scanner[hidden]{display:none}
.loyalty-scanner p{margin:0;max-width:42ch}
.loyalty-scanner__view{position:relative;width:min(640px,100%);aspect-ratio:4/3;overflow:hidden;background:#000;clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%)}
.loyalty-scanner__view video{width:100%;height:100%;object-fit:cover;display:block}
.loyalty-scanner__view video.is-mirror{transform:scaleX(-1)}
.loyalty-scanner__guide{position:absolute;left:10%;right:10%;top:30%;bottom:30%;border:2px solid var(--beige);box-shadow:0 0 0 999px rgba(0,0,0,.4);pointer-events:none}
.loyalty-scanner__guide::after{content:"";position:absolute;left:6%;right:6%;top:50%;height:2px;background:var(--beige-soft);box-shadow:0 0 12px var(--beige);animation:loyaltySweep 1.6s ease-in-out infinite alternate}
@keyframes loyaltySweep{from{transform:translateY(-28px)}to{transform:translateY(28px)}}
@media (prefers-reduced-motion:reduce){.loyalty-scanner__guide::after{animation:none}}
.loyalty-scanner__status{min-height:1.5em;font-size:.95rem;color:var(--text-dim)}
.loyalty-scanner__status.is-error{color:var(--danger)}
@media (max-width:900px){.loyalty__panel{position:static;order:-1}.loyalty__preview{display:none}}
@media (max-width:480px){.loyalty__card-input{flex-direction:column}}
/* Režim tabletu v predajni: bez navigácie a pätičky, aby zákazník neodišiel zo stránky. */
.is-kiosk .site-header .nav,.is-kiosk .header-actions,.is-kiosk .site-footer,.is-kiosk .sticky-cta{display:none!important}
.is-kiosk .brand{pointer-events:none}

/* Rezervácia: skupinová zľava */
.bk-group.is-on{font-weight:600}

/* Cookie lišta */
.consent{position:fixed;left:16px;bottom:16px;z-index:200;width:min(460px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;background:rgba(18,16,14,.96);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#fff;border:1px solid var(--line-dark);box-shadow:0 18px 60px rgba(0,0,0,.45)}
.consent[hidden]{display:none}
.consent__inner{padding:1.25rem 1.25rem 1.1rem}
.consent__title{font-family:var(--f-display);font-size:1.35rem;font-weight:500;margin:0 0 .5rem}
.consent__text{font-size:.9rem;line-height:1.55;color:var(--text-dim);margin:0}
.consent__text .link{color:#fff}
.consent__prefs fieldset{border:0;margin:1rem 0 0;padding:0;display:grid;gap:.6rem}
.consent__opt{display:flex;gap:.65rem;align-items:flex-start;font-size:.88rem;line-height:1.45;color:var(--text-dim);cursor:pointer}
.consent__opt b{color:#fff;font-weight:600}
.consent__opt input{margin-top:.2rem;width:18px;height:18px;accent-color:var(--beige);flex:none}
.consent__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.consent__actions .btn{flex:1 1 auto}
.link-btn{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:none}
.link-btn:hover{color:#fff;text-decoration:underline}
@media (max-width:760px){.consent{left:0;right:0;bottom:0;width:100%;border-left:0;border-right:0}.has-consent-bar .sticky-cta,.has-consent-bar .cfg-mobile-bar{visibility:hidden}}
@media print{.consent{display:none!important}}
