/* Hacktify Learn: kurzuslista, kosár, pénztár, köszönőoldal, irányítópult.
   Tokenek: style.css :root (navy, teal, pára, köd, vonal). */

/* ── Fejléc kosár ── */
.hk-cart { position: relative; display: inline-flex; align-items: center; justify-content: center; flex: none; width: 44px; height: 44px; border-radius: 6px; color: var(--hk-navy); text-decoration: none; box-shadow: inset 0 0 0 1px var(--hk-line-2); transition: box-shadow .15s, background-color .15s; }
.hk-cart:hover { color: var(--hk-navy); box-shadow: inset 0 0 0 1px var(--hk-navy); }
.hk-cart svg { width: 20px; height: 20px; display: block; }
.hk-cart__n { position: absolute; top: -7px; right: -7px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px; background: var(--hk-teal); color: var(--hk-navy); font: 600 12px/20px var(--hk-mono); text-align: center; box-shadow: 0 0 0 2px #fff; transform: scale(0); transition: transform .25s cubic-bezier(.3, 1.6, .5, 1); }
.hk-cart.has-items .hk-cart__n { transform: scale(1); }
.hk-cart.is-bump .hk-cart__n { animation: hk-bump .5s ease-out; }
@keyframes hk-bump { 35% { transform: scale(1.4); } }
@media (prefers-reduced-motion: reduce) { .hk-cart.is-bump .hk-cart__n { animation: none; } }

/* ── Kurzuslista ── */
.course-archive-page { padding-top: 48px; padding-bottom: 24px; }
.tutor-course-card { display: flex; flex-direction: column; overflow: hidden; }
.tutor-course-card .tutor-card-body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 20px 20px 16px; }
.tutor-course-card .tutor-course-ratings { display: none; }
.tutor-course-card .tutor-course-name { margin: 0 0 4px; font-size: 18px !important; line-height: 1.3; }
.tutor-course-card .tutor-course-name a { color: var(--hk-navy); text-decoration: none; }
.tutor-course-card .tutor-course-name a:hover { color: var(--hk-teal-deep); }
.tutor-course-card .tutor-card-image-top { object-fit: cover; }

/* Csomag sor: a Tutor saját „megtakarítás” és „course bundle” címkéi helyett */
.tutor-bundle-discount-info, .tutor-bundle-course-count-badge { display: none !important; }
.hk-bmeta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 12px; }
.hk-bmeta__type, .hk-save { display: inline-flex; align-items: center; height: 28px; border-radius: 4px; font: 500 12px/1 var(--hk-mono); letter-spacing: .08em; white-space: nowrap; }
.hk-bmeta__type { gap: 7px; padding: 0 10px; background: var(--hk-navy); color: var(--hk-teal-light); text-transform: uppercase; }
.hk-bmeta__type svg { width: 14px; height: 14px; flex: none; }
.hk-save { padding: 0 10px; background: var(--hk-teal); color: var(--hk-navy); font-weight: 600; font-size: 13px; letter-spacing: .02em; }
/* Kedvezmény a borítókép sarkában, hogy a csomagjelölő kiférjen */
.tutor-course-card { position: relative; }
.tutor-course-card .hk-bmeta { justify-content: flex-start; min-width: 0; }
.tutor-course-card .hk-bmeta__type { max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.tutor-course-card .hk-save { position: absolute; top: 12px; right: 12px; z-index: 2; height: 28px; background: #fff; color: var(--hk-navy); box-shadow: inset 0 0 0 2px var(--hk-teal), 0 4px 14px -4px rgba(8, 20, 39, .5); font-weight: 700; }

/* Témakörök és időtartam (tutor/loop/meta.php) */
.hk-cmeta { display: grid; gap: 12px; margin-top: auto; padding-top: 16px; }
.hk-cmeta__row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.hk-cmeta__label { flex: 0 0 100%; margin: 0 0 4px; font: 500 12px/1 var(--hk-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--hk-muted); }
.hk-topic { display: inline-flex; align-items: center; gap: 8px; height: 26px; padding-right: 9px; border-radius: 4px; overflow: hidden; background: var(--hk-para); color: var(--hk-teal-deep); font-size: 14px; font-weight: 600; line-height: 1; text-decoration: none; transition: background-color .15s, color .15s; }
.hk-topic b { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; background: var(--hk-teal-deep); color: #fff; font: 600 12px/1 var(--hk-mono); }
.hk-topic--code { padding-right: 0; height: 24px; }
.hk-topic--code b { width: 24px; height: 24px; }
.hk-cmeta__row:has(.hk-topic--code) { gap: 5px; }
.hk-topic:hover { background: var(--hk-navy); color: #fff; }
.hk-topic:hover b { background: var(--hk-teal); color: var(--hk-navy); }
.hk-dur { display: inline-flex; align-items: center; gap: 7px; font: 500 13px/1 var(--hk-mono); color: var(--hk-navy); }
.hk-dur svg { width: 15px; height: 15px; color: var(--hk-teal-deep); }

.tutor-course-card .tutor-card-footer { padding: 16px 20px 20px; border-top: 1px solid var(--hk-line); background: #fff; }
.tutor-course-card .list-item-price .price { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; color: var(--hk-navy) !important; font-size: 18px !important; font-weight: 800 !important; }
.tutor-course-card .list-item-price del { order: 2; color: var(--hk-muted); font-size: 14px; font-weight: 400; }
.tutor-course-card .list-item-price ins { text-decoration: none; }
.tutor-course-card .list-item-button .tutor-btn { min-height: 44px; }
.tutor-course-card .added_to_cart { display: none; }

/* Szűrő (Tutor: Beállítások › Kurzuslista szűrő) */
.tutor-course-filter-form .tutor-widget + .tutor-widget { margin-top: 32px !important; }
.tutor-course-filter-form .tutor-widget-title { margin: 0 0 12px; font: 500 12px/1 var(--hk-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-deep); }
.tutor-course-filter-form .tutor-widget-search .tutor-form-control { height: 46px; border-radius: 6px; border-color: var(--hk-line-2); font-size: 16px; }
.tutor-course-filter-form .tutor-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 2px; }
.tutor-course-filter-form .tutor-list-item label { display: flex; align-items: center; gap: 10px; padding: 7px 10px; margin: 0 -10px; border-radius: 6px; font-size: 15px; line-height: 1.3; color: var(--hk-navy); cursor: pointer; transition: background-color .15s; }
.tutor-course-filter-form .tutor-list-item label:hover { background: var(--hk-kod); }
.tutor-course-filter-form .tutor-form-check-input { flex: none; width: 18px; height: 18px; margin: 0; accent-color: var(--hk-teal-deep); }
.tutor-course-filter-form [action-tutor-clear-filter] { width: 100%; justify-content: center; }
.tutor-course-filter { margin-bottom: 8px; }
.tutor-course-filter .tutor-form-select { min-height: 42px; border-radius: 6px; border-color: var(--hk-line-2); font-size: 15px; }

/* ── Vásárlás lépései az oldal fejlécében ── */
.hk-flow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0; padding: 0; list-style: none; font: 500 12px/1 var(--hk-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--hk-muted); }
.hk-flow li { display: inline-flex; align-items: center; gap: 10px; }
.hk-flow li + li::before { content: ""; width: 28px; height: 1px; background: var(--hk-line-2); }
.hk-flow i { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 4px; border: 1px solid var(--hk-line-2); background: #fff; font-style: normal; color: var(--hk-muted); }
.hk-flow .is-done i { background: var(--hk-teal); border-color: var(--hk-teal); color: var(--hk-navy); }
.hk-flow .is-current { color: var(--hk-navy); }
.hk-flow .is-current i { background: var(--hk-navy); border-color: var(--hk-navy); color: #fff; }
.hk-flow a { color: inherit; text-decoration: none; display: inline-flex; align-items: center; gap: 10px; }
.hk-flow a:hover { color: var(--hk-navy); }
.hk-page-head--shop h1 { margin-top: 18px; }

/* ── Kosár és pénztár (WooCommerce blokkok) ── */
.hk-shop { font-family: var(--hk-font); color: var(--hk-navy); }
.hk-shop button, .hk-shop input, .hk-shop select, .hk-shop textarea { font-family: var(--hk-font); }
.hk-shop .wp-block-woocommerce-cart, .hk-shop .wp-block-woocommerce-checkout { margin: 0; }
.hk-shop .wc-block-components-sidebar-layout { margin-bottom: 0; }

/* összesítő kártya */
.hk-shop .wp-block-woocommerce-cart-totals-block,
.hk-shop .wp-block-woocommerce-checkout-order-summary-block { padding: 20px 22px 22px; border: 1px solid var(--hk-line) !important; border-radius: 16px !important; background: var(--hk-kod); }
.hk-shop .wc-block-cart__totals-title,
.hk-shop .wc-block-components-checkout-order-summary__title-text { display: block; margin: 0 0 6px !important; padding: 0 !important; font: 500 12px/1.2 var(--hk-mono) !important; letter-spacing: .14em; text-transform: uppercase !important; color: var(--hk-teal-deep) !important; }
.hk-shop .wc-block-components-checkout-order-summary__title { padding: 0 !important; margin: 0 0 6px !important; }
.hk-shop .wc-block-components-totals-wrapper { padding: 14px 0 !important; border-top: 1px solid var(--hk-line-2) !important; }
.hk-shop .wc-block-components-totals-wrapper:first-of-type { border-top: 0 !important; }
.hk-shop .wc-block-components-totals-item__label { font-size: 15px; color: var(--hk-navy); }
.hk-shop .wc-block-components-totals-item__value { font-weight: 700; }
.hk-shop .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font: 500 12px/1.2 var(--hk-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-deep); }
.hk-shop .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 26px; font-weight: 800; letter-spacing: -.01em; color: var(--hk-navy); }
.hk-shop .wc-block-components-panel__button, .hk-shop .wc-block-components-totals-coupon-link { color: var(--hk-teal-deep) !important; font-size: 15px !important; }

/* kosár tételek */
.hk-shop table.wc-block-cart-items { margin: 0; border-collapse: separate; border-spacing: 0; }
.hk-shop .wc-block-cart-items__header th { padding-bottom: 12px !important; font: 500 12px/1 var(--hk-mono) !important; letter-spacing: .14em; text-transform: uppercase !important; color: var(--hk-muted) !important; }
.hk-shop .wc-block-cart-items__row td { padding-top: 22px !important; padding-bottom: 22px !important; border-top: 1px solid var(--hk-line) !important; vertical-align: top; }
.hk-shop .wc-block-cart-item__image img, .hk-shop .wc-block-components-order-summary-item__image img { border-radius: 8px; aspect-ratio: 16 / 9; object-fit: cover; }
.hk-shop img[src*="woocommerce-placeholder"] { content: url("../img/placeholder-course.svg"); }
.hk-shop .wc-block-components-product-name { display: inline-block; color: var(--hk-navy) !important; font-size: 17px !important; font-weight: 700 !important; line-height: 1.3 !important; text-decoration: none !important; }
.hk-shop a.wc-block-components-product-name:hover { color: var(--hk-teal-deep) !important; }
.hk-shop .wc-block-components-product-metadata, .hk-shop .wc-block-components-product-metadata__description { font-size: 14px; color: var(--hk-muted); }
.hk-shop .wc-block-components-product-price { font-weight: 700; color: var(--hk-navy); }
.hk-shop .wc-block-components-product-price del, .hk-shop .wc-block-components-product-price__regular { color: var(--hk-muted); font-weight: 400; }
.hk-shop .wc-block-components-product-price ins { text-decoration: none; }
.hk-shop .wc-block-components-sale-badge, .hk-shop .wc-block-components-product-badge { border: 0 !important; border-radius: 4px !important; background: var(--hk-teal) !important; color: var(--hk-navy) !important; font: 600 12px/1 var(--hk-mono) !important; padding: 5px 7px !important; text-transform: none !important; }
.hk-shop .wc-block-cart-item__remove-link { color: var(--hk-muted) !important; font-size: 14px !important; text-decoration: underline !important; }
.hk-shop .wc-block-cart-item__remove-link:hover { color: var(--hk-navy) !important; }
.hk-shop .wc-block-components-quantity-selector { border-radius: 6px !important; border-color: var(--hk-line-2) !important; }
.hk-shop .wc-block-components-quantity-selector::after { border-color: var(--hk-line-2) !important; border-radius: 6px !important; }

/* gombok */
.hk-shop .wc-block-components-button:not(.is-link):not(.wc-block-components-button--text),
.hk-shop .wc-block-cart__submit-button,
.hk-shop .wc-block-components-checkout-place-order-button { min-height: 52px; border: 0 !important; border-radius: 6px !important; background: var(--hk-navy) !important; color: #fff !important; box-shadow: none !important; font: 700 16px/1.2 var(--hk-font) !important; text-decoration: none !important; transition: background-color .15s; }
.hk-shop .wc-block-components-button:not(.is-link):not(.wc-block-components-button--text):hover,
.hk-shop .wc-block-cart__submit-button:hover,
.hk-shop .wc-block-components-checkout-place-order-button:hover { background: var(--hk-teal-deep) !important; }
.hk-shop .wc-block-components-checkout-return-to-cart-button { color: var(--hk-teal-deep) !important; font-weight: 600; text-decoration: none; }

/* mezők */
.hk-shop .wc-block-components-text-input input,
.hk-shop .wc-block-components-text-input textarea,
.hk-shop .wc-block-components-textarea,
.hk-shop .wc-blocks-components-select .wc-blocks-components-select__select,
.hk-shop .wc-block-components-combobox .wc-block-components-combobox-control input { border: 1px solid var(--hk-line-2) !important; border-radius: 6px !important; background: #fff !important; color: var(--hk-navy) !important; box-shadow: none !important; }
.hk-shop .wc-block-components-text-input input:focus,
.hk-shop .wc-block-components-textarea:focus,
.hk-shop .wc-blocks-components-select .wc-blocks-components-select__select:focus,
.hk-shop .wc-block-components-combobox .wc-block-components-combobox-control input:focus { border-color: var(--hk-teal-deep) !important; box-shadow: 0 0 0 3px rgba(86, 160, 153, .22) !important; outline: 0 !important; }
.hk-shop .wc-block-components-text-input label, .hk-shop .wc-blocks-components-select__label { color: var(--hk-muted) !important; }
.hk-shop .wc-block-components-validation-error p { font-size: 14px; color: #B4442F; }

/* jelölőnégyzetek */
.hk-shop .wc-block-components-checkbox { margin-top: 14px; }
.hk-shop .wc-block-components-checkbox label { align-items: flex-start; gap: 0; font-size: 15px; line-height: 1.5; color: var(--hk-navy); }
.hk-shop .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] { flex: none; width: 20px; height: 20px; min-width: 20px; margin: 1px 12px 0 0 !important; border: 1.5px solid var(--hk-line-2) !important; border-radius: 4px !important; background: #fff !important; }
.hk-shop .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background: var(--hk-navy) !important; border-color: var(--hk-navy) !important; }
.hk-shop .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:focus { outline: 2px solid var(--hk-teal) !important; outline-offset: 2px; }
.hk-shop .wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: #fff !important; top: 3px !important; left: 2px !important; }

/* lépések kártyákban, saját számozással */
.hk-shop .wc-block-checkout__form { counter-reset: hkstep; }
.hk-shop .wc-block-components-checkout-step { counter-increment: hkstep; position: relative; margin: 0 0 16px !important; padding: 22px 24px 24px !important; border: 1px solid var(--hk-line); border-radius: 16px; background: #fff; }
.hk-shop .wc-block-components-checkout-step__container::after { display: none !important; }
.hk-shop .wc-block-components-checkout-step__heading { margin: 0 0 14px !important; }
.hk-shop .wc-block-components-checkout-step__title { display: flex !important; align-items: center; gap: 12px; margin: 0 !important; font-size: 20px !important; font-weight: 800 !important; line-height: 1.25 !important; color: var(--hk-navy) !important; }
.hk-shop .wc-block-components-checkout-step__title::before { content: counter(hkstep, decimal-leading-zero) !important; position: static !important; display: inline-flex !important; align-items: center; justify-content: center; width: auto !important; min-width: 34px; height: 26px !important; padding: 0 6px; border-radius: 4px; background: var(--hk-para) !important; color: var(--hk-teal-deep) !important; font: 600 13px/1 var(--hk-mono) !important; transform: none !important; }
.hk-shop .wc-block-components-checkout-step__description { margin-bottom: 14px; font-size: 15px; color: var(--hk-muted); }
.hk-shop .wc-block-components-checkout-step__heading-content { font-size: 15px; }
.hk-shop .wc-block-components-checkout-step__heading-content a { color: var(--hk-teal-deep); }

/* gyors fizetés: látható cím, hogy ne csak egy magányos Apple Pay gomb legyen */
.hk-shop .wc-block-components-express-payment--checkout { position: relative; margin: 0 0 20px !important; padding: 20px 24px 22px; border: 1px solid var(--hk-teal); border-radius: 16px; background: linear-gradient(180deg, var(--hk-para), #fff 75%); }
.hk-shop .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container { display: none !important; }
.hk-shop .wc-block-components-express-payment--checkout::before { content: "Gyors fizetés · Apple Pay / Google Pay"; display: block; margin: 0 0 4px; font: 500 12px/1.2 var(--hk-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-deep); }
.hk-shop .wc-block-components-express-payment--checkout::after { content: "Egy érintés, ha az eszközöd támogatja. A számla ugyanúgy elkészül."; display: block; margin: 12px 0 0; font-size: 14px; color: var(--hk-muted); }
.hk-shop .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content { margin-top: 10px; padding: 0 !important; border: 0 !important; background: none !important; }
.hk-shop .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content::after { display: none !important; }
.hk-shop .wc-block-components-express-payment-continue-rule { margin: 0 0 24px !important; font: 500 12px/1 var(--hk-mono) !important; letter-spacing: .14em; text-transform: uppercase !important; color: var(--hk-muted) !important; }
.hk-shop .wc-block-components-express-payment-continue-rule::before, .hk-shop .wc-block-components-express-payment-continue-rule::after { border-color: var(--hk-line-2) !important; }
.hk-shop .wc-block-components-express-payment--cart .wc-block-components-express-payment__event-buttons { margin-top: 8px; }

/* fizetési mód */
.hk-shop .wc-block-components-radio-control-accordion-option, .hk-shop .wc-block-components-radio-control__option { border-color: var(--hk-line-2) !important; }
.hk-shop .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.hk-shop .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted { box-shadow: inset 0 0 0 2px var(--hk-navy) !important; border-radius: 10px; }
.hk-shop .wc-block-components-radio-control__input:checked { border-color: var(--hk-navy) !important; }
.hk-shop .wc-block-components-radio-control__input:checked::before { background: var(--hk-navy) !important; }
.hk-shop .wc-block-components-radio-control__label { font-weight: 700; }

.hk-shop .wc-block-checkout__terms { font-size: 14px; color: var(--hk-muted); }
.hk-shop .wc-block-checkout__terms a { color: var(--hk-teal-deep); }
.hk-shop .wc-block-components-notice-banner { border-radius: 10px; font-size: 15px; }
.hk-shop .wc-block-components-order-summary-item__quantity { background: var(--hk-navy) !important; color: #fff !important; border: 0 !important; box-shadow: none !important; font-family: var(--hk-mono); }

/* üres kosár */
.hk-shop .wp-block-woocommerce-empty-cart-block { padding: 40px 0; text-align: center; }
.hk-shop .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { font-size: 26px; font-weight: 800; }
.hk-shop .wp-block-woocommerce-empty-cart-block .wp-block-separator { display: none; }

/* ── Köszönőoldal (klasszikus sablon) ── */
.hk-shop .woocommerce-order { max-width: 880px; }
.hk-shop .woocommerce-notice--success.woocommerce-thankyou-order-received,
.hk-shop .woocommerce-thankyou-order-received { display: flex; align-items: center; gap: 14px; margin: 0 0 20px; padding: 18px 22px; border-radius: 14px; background: var(--hk-navy); color: #fff; font-size: 18px; font-weight: 600; line-height: 1.35; }
.hk-shop .woocommerce-thankyou-order-received::before { content: ""; flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--hk-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23081427' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 10 17l9-10'/%3E%3C/svg%3E") center / 16px no-repeat; }
.hk-shop ul.woocommerce-order-overview,
.woocommerce .hk-shop ul.order_details { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; margin: 0 0 44px; padding: 0; list-style: none; }
.hk-shop ul.woocommerce-order-overview::before, .hk-shop ul.woocommerce-order-overview::after { display: none !important; content: none !important; }
.hk-shop ul.woocommerce-order-overview li { float: none !important; margin: 0 !important; padding: 14px 16px !important; border: 1px solid var(--hk-line) !important; border-radius: 12px; background: var(--hk-kod); font: 500 12px/1.3 var(--hk-mono) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--hk-teal-deep); list-style: none; }
.hk-shop ul.woocommerce-order-overview li strong { display: block; margin-top: 8px; font: 700 17px/1.3 var(--hk-font); letter-spacing: 0; text-transform: none; color: var(--hk-navy); word-break: break-word; }
.hk-shop .woocommerce-order h2, .hk-shop .woocommerce-order-details__title, .hk-shop .woocommerce-column__title { margin: 0 0 14px; font-size: 24px; font-weight: 800; line-height: 1.2; }
.hk-shop .woocommerce-order-details, .hk-shop .woocommerce-customer-details { margin-bottom: 36px; }
.hk-shop table.shop_table { width: 100%; margin: 0; border: 1px solid var(--hk-line) !important; border-radius: 14px !important; border-collapse: separate !important; border-spacing: 0; overflow: hidden; font-size: 16px; }
.hk-shop table.shop_table th, .hk-shop table.shop_table td { padding: 14px 18px !important; border: 0 !important; border-top: 1px solid var(--hk-line) !important; background: #fff; text-align: left; vertical-align: top; }
.hk-shop table.shop_table thead th { border-top: 0 !important; background: var(--hk-kod); font: 500 12px/1.2 var(--hk-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-deep); }
.hk-shop table.shop_table tfoot th { font: 500 12px/1.5 var(--hk-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--hk-muted); }
.hk-shop table.shop_table tfoot td { font-weight: 700; }
.hk-shop table.shop_table td.product-name a { color: var(--hk-navy); font-weight: 700; text-decoration: none; }
.hk-shop table.shop_table td.product-name a:hover { color: var(--hk-teal-deep); }
.hk-shop table.shop_table .product-quantity { color: var(--hk-muted); font-weight: 600; }
.hk-shop .woocommerce-customer-details address { margin: 0; padding: 18px 20px !important; border: 1px solid var(--hk-line) !important; border-radius: 14px; background: #fff; font-style: normal; font-size: 16px; line-height: 1.65; }
.hk-shop .woocommerce-customer-details address p { margin: 10px 0 0; font-size: 15px; color: var(--hk-muted); }
.hk-shop .woocommerce-customer-details address p::before { color: var(--hk-teal-deep) !important; }
.hk-taxno { font-weight: 700; color: var(--hk-navy); }

/* WooCommerce fiókoldal */
.hk-shop .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.hk-shop .woocommerce-MyAccount-navigation a { display: block; padding: 10px 12px; border-radius: 6px; color: var(--hk-navy); font-weight: 600; text-decoration: none; }
.hk-shop .woocommerce-MyAccount-navigation .is-active a, .hk-shop .woocommerce-MyAccount-navigation a:hover { background: var(--hk-para); }

/* ── Képzési csomag és modul oldal: kiemelt kép a kártyákhoz igazított sarkokkal ── */
.tutor-course-details-page .tutor-course-thumbnail { position: relative; overflow: hidden; border-radius: 16px; }
.tutor-course-details-page .tutor-course-thumbnail img { display: block; width: 100%; height: auto; border-radius: 16px; }

/* ── Képzési csomag és modul oldal: oldalsáv doboz ── */
.tutor-single-course-sidebar .tutor-sidebar-card { overflow: hidden; border: 1px solid var(--hk-line) !important; border-radius: 16px !important; background: #fff; box-shadow: 0 20px 40px -28px rgba(8, 20, 39, .35) !important; }
.tutor-single-course-sidebar .tutor-sidebar-card > .tutor-card-body { padding: 24px !important; }
.tutor-single-course-sidebar .tutor-sidebar-card > .tutor-card-footer { padding: 18px 24px 22px !important; border-top: 1px solid var(--hk-line) !important; background: var(--hk-kod); }
.tutor-single-course-sidebar .tutor-card-footer .tutor-ul li { align-items: center; font-size: 15px; }
.tutor-single-course-sidebar .tutor-card-footer [class*="tutor-icon-"] { margin-top: 0 !important; color: var(--hk-teal-deep) !important; }
.tutor-single-course-sidebar .tutor-card-footer .tutor-color-secondary { color: var(--hk-navy) !important; }
.tutor-single-course-sidebar .tutor-course-details-widget-title { font-size: 12px !important; font-family: var(--hk-mono); font-weight: 500 !important; letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-deep) !important; }
.tutor-single-course-sidebar .tutor-color-success, .tutor-single-course-sidebar .tutor-enrolled-info-date { color: var(--hk-teal-deep) !important; }
.tutor-bundle-author-list { display: none !important; }
.tutor-bundle-course-list-desc p.tutor-mt-4 > :nth-child(-n+3) { display: none; }
.tutor-bundle-courses-wrapper { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.tutor-bundle-course-list-wrapper { display: flex; gap: 16px; align-items: center; padding: 12px; border: 1px solid var(--hk-line); border-radius: 12px; background: #fff; }
.tutor-bundle-course-list-wrapper img { width: 112px; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 8px; }
.tutor-bundle-course-title { margin: 0; color: var(--hk-navy) !important; }

.hk-bundle-box { display: grid; gap: 12px; }
.hk-bundle-box__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.hk-bundle-box__label { font: 500 12px/1 var(--hk-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-deep); }
.hk-bundle-box__count { font-size: 15px; font-weight: 700; color: var(--hk-navy); }
.hk-bundle-box__bar { height: 8px; border-radius: 4px; background: var(--hk-para); overflow: hidden; }
.hk-bundle-box__bar span { display: block; height: 100%; min-width: 4px; background: var(--hk-teal); border-radius: 4px; }
.hk-bundle-box .hk-btn { width: 100%; min-height: 50px; font-size: 16px; }
.hk-bundle-box__cta { margin-top: 8px; }
.hk-bundle-box__next { margin: 0; font-size: 15px; line-height: 1.4; color: var(--hk-navy); }
.hk-bundle-box__next span { display: block; margin-bottom: 4px; font: 500 12px/1 var(--hk-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--hk-muted); }
.hk-bundle-box__note { margin: 4px 0 0; font-size: 15px; color: var(--hk-muted); }

/* ── Kvíz: nem indítható ── */
.hk-quiz-block { display: grid; gap: 4px; margin: 20px auto 0; max-width: 640px; padding: 16px 18px; border: 1px solid #F1C9C0; border-left: 4px solid var(--hk-coral); border-radius: 12px; background: #FDF3F1; font-size: 15px; line-height: 1.5; color: var(--hk-navy); }
.hk-quiz-block b { font: 600 12px/1.3 var(--hk-mono); letter-spacing: .12em; text-transform: uppercase; color: #B4442F; }
.hk-why { display: block; margin-top: 8px; font-size: 14px; line-height: 1.45; color: var(--hk-muted); text-align: center; }

/* ── Szervezeteknek ── */
.hk-org .hk-sec { padding: 88px 0; }
.hk-org-hero { position: relative; overflow: hidden; background: var(--hk-navy); color: #fff; }
.hk-org-hero__dots { left: 55%; -webkit-mask-image: linear-gradient(to right, transparent, #000 40%); mask-image: linear-gradient(to right, transparent, #000 40%); }
.hk-org-hero .hk-wrap { position: relative; padding-top: 80px; padding-bottom: 72px; }
.hk-org-hero .hk-kick { color: var(--hk-teal-light); }
.hk-org-hero h1 { margin: 18px 0 0; max-width: 820px; font-weight: 300; text-transform: uppercase; font-size: clamp(38px, 6vw, 72px); line-height: 1.04; letter-spacing: -.02em; }
.hk-org-hero h1 b { display: block; font-weight: 800; }
.hk-org-hero__lead { margin: 24px 0 0; max-width: 600px; font-size: 19px; line-height: 1.55; color: var(--hk-ice); }
.hk-org-hero__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 32px; }
.hk-org-hero__link { color: #fff; font-weight: 600; text-decoration: none; }
.hk-org-hero__link:hover { color: var(--hk-teal-light); }
.hk-org-hero__facts { display: flex; flex-wrap: wrap; gap: 10px 32px; margin: 56px 0 0; padding: 22px 0 0; list-style: none; border-top: 1px solid rgba(255, 255, 255, .12); font-size: 15px; color: var(--hk-ice); }
.hk-org-hero__facts b { margin-right: 6px; font-family: var(--hk-mono); font-weight: 600; color: var(--hk-teal-light); }

.hk-org-tracks { display: grid; gap: 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 900px) { .hk-org-tracks { grid-template-columns: 1fr; } }
.hk-org-track { display: flex; flex-direction: column; padding: 26px; border: 1px solid var(--hk-line); border-radius: 18px; background: #fff; }
.hk-org-track__top { display: flex; align-items: center; justify-content: space-between; }
.hk-org-track__code { display: inline-flex; align-items: center; justify-content: center; min-width: 52px; height: 36px; padding: 0 10px; border-radius: 6px; background: var(--hk-navy); color: var(--hk-teal-light); font: 600 16px/1 var(--hk-mono); }
.hk-org-track__h { font: 600 14px/1 var(--hk-mono); letter-spacing: .08em; color: var(--hk-teal-deep); }
.hk-org-track h3 { margin: 22px 0 0; font-size: 24px; font-weight: 800; line-height: 1.15; }
.hk-org-track p { margin: 10px 0 0; font-size: 16px; color: var(--hk-muted); }
.hk-org-track__foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 22px; border-top: 1px solid var(--hk-line); font-size: 15px; color: var(--hk-muted); }
.hk-org-track > p { margin-bottom: 22px; }
.hk-org-track__foot b { font-size: 20px; font-weight: 800; color: var(--hk-navy); }
.hk-org-track__foot a { font-weight: 700; color: var(--hk-teal-deep); text-decoration: none; }
.hk-org-track__foot a:hover { color: var(--hk-navy); }
.hk-steps--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1000px) { .hk-steps--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .hk-steps--4 { grid-template-columns: 1fr; } }

.hk-org-audit__grid { display: grid; gap: 56px; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); align-items: center; }
@media (max-width: 980px) { .hk-org-audit__grid { grid-template-columns: 1fr; gap: 36px; } }
.hk-org-audit .hk-kick { color: var(--hk-teal-deep); }
.hk-org-audit__lead { margin: 18px 0 0; max-width: 560px; font-size: 18px; line-height: 1.6; color: var(--hk-muted); }
.hk-org-audit__list { display: grid; gap: 12px; margin: 26px 0 0; padding: 0; list-style: none; }
.hk-org-audit__list li { position: relative; padding-left: 28px; font-size: 16px; line-height: 1.5; }
.hk-org-audit__list li::before { content: ""; position: absolute; left: 0; top: 7px; width: 12px; height: 12px; border-radius: 3px; background: var(--hk-teal); }
.hk-org-audit__note { margin: 22px 0 0; padding: 12px 16px; border-left: 3px solid var(--hk-teal); border-radius: 0 8px 8px 0; background: var(--hk-para); font-size: 14px; line-height: 1.5; color: var(--hk-teal-deep); }
.hk-org-audit__mock { margin: 0; padding: 22px; border-radius: 18px; background: var(--hk-navy); color: #fff; box-shadow: 0 30px 60px -30px rgba(8, 20, 39, .55); }
.hk-org-audit__bar { display: flex; justify-content: space-between; align-items: center; padding-bottom: 14px; border-bottom: 1px solid rgba(255, 255, 255, .12); font: 500 12px/1 var(--hk-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-light); }
.hk-org-audit__bar em { font-style: normal; padding: 4px 8px; border-radius: 4px; background: rgba(255, 255, 255, .08); color: var(--hk-ice); letter-spacing: .08em; }
.hk-org-audit__kpi { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 16px 0; }
.hk-org-audit__kpi div { padding: 10px 12px; border-radius: 10px; background: rgba(255, 255, 255, .06); }
.hk-org-audit__kpi b { display: block; font-size: 24px; font-weight: 800; line-height: 1.1; }
.hk-org-audit__kpi span { font-size: 12px; color: var(--hk-ice); }
.hk-org-audit__rows { margin: 0; padding: 0; list-style: none; }
.hk-org-audit__rows li { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0; border-top: 1px solid rgba(255, 255, 255, .1); font-size: 13px; color: var(--hk-ice); }
.hk-org-audit__rows b { display: block; margin-bottom: 2px; font-size: 15px; color: #fff; }
.hk-org-audit__rows i { flex: none; padding: 5px 9px; border-radius: 4px; background: rgba(255, 255, 255, .08); font: 500 12px/1.2 var(--hk-mono); font-style: normal; color: var(--hk-ice); }
.hk-org-audit__rows i.is-done { background: var(--hk-teal); color: var(--hk-navy); }
.hk-org-audit__rows i.is-run { color: var(--hk-teal-light); }
.hk-org-audit__foot { display: flex; gap: 8px; margin-top: 14px; }
.hk-org-audit__foot span { padding: 9px 14px; border: 1px solid rgba(255, 255, 255, .25); border-radius: 999px; font-size: 13px; font-weight: 600; }
.hk-org-audit__foot span.is-pri { border-color: var(--hk-teal); background: var(--hk-teal); color: var(--hk-navy); }
@media (max-width: 520px) { .hk-org-audit__kpi { grid-template-columns: repeat(2, minmax(0, 1fr)); } .hk-org-audit__rows li { flex-direction: column; align-items: flex-start; } }

.hk-org-quote { display: grid; gap: 48px; grid-template-columns: minmax(0, 1fr) 320px; align-items: start; }
@media (max-width: 980px) { .hk-org-quote { grid-template-columns: 1fr; } }
.hk-org-quote .hk-kick { color: var(--hk-teal-deep); }
.hk-org-badges { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.hk-org-badges li { padding: 6px 10px; border-radius: 4px; background: var(--hk-para); color: var(--hk-teal-deep); font: 500 13px/1.2 var(--hk-mono); }
.hk-org-progress { display: flex; gap: 8px; margin: 32px 0 16px; padding: 0; list-style: none; }
.hk-org-progress li { flex: 1; display: flex; align-items: center; gap: 10px; padding-top: 12px; border-top: 3px solid var(--hk-line-2); font: 500 12px/1 var(--hk-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--hk-muted); transition: border-color .2s, color .2s; }
.hk-org-progress li.is-on { border-color: var(--hk-teal); color: var(--hk-navy); }
.hk-org-progress i { font-style: normal; color: var(--hk-teal-deep); }
.hk-org-form { margin: 0; }
.hk-org-step { margin: 0; padding: 26px; border: 1px solid var(--hk-line); border-radius: 18px; background: #fff; }
.js-hk .hk-org-step { display: none; }
.js-hk .hk-org-step.is-on { display: block; animation: hk-in .25s ease-out; }
.hk-org-step + .hk-org-step { margin-top: 16px; }
.js-hk .hk-org-step + .hk-org-step { margin-top: 0; }
@keyframes hk-in { from { opacity: 0; transform: translateY(6px); } }
.hk-org-step legend { float: left; width: 100%; margin: 0; padding: 0; font-size: 22px; font-weight: 800; line-height: 1.2; }
.hk-org-step legend + * { clear: both; }
.hk-org-hint { margin: 8px 0 18px; font-size: 15px; color: var(--hk-muted); }
.hk-org-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.hk-chip { position: relative; cursor: pointer; }
.hk-chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.hk-chip span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1px solid var(--hk-line-2); border-radius: 6px; background: #fff; font-size: 15px; font-weight: 600; color: var(--hk-navy); transition: background-color .15s, border-color .15s, color .15s; }
.hk-chip:hover span { border-color: var(--hk-navy); }
.hk-chip input:checked + span { border-color: var(--hk-navy); background: var(--hk-navy); color: #fff; }
.hk-chip input:focus-visible + span { outline: 2px solid var(--hk-teal); outline-offset: 2px; }
.hk-org-q { margin-top: 22px; }
.hk-org-q > p { margin: 0 0 10px; font-size: 15px; font-weight: 700; }
.hk-org-grid { display: grid; gap: 14px 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; }
@media (max-width: 640px) { .hk-org-grid { grid-template-columns: 1fr; } }
.hk-field { display: grid; gap: 6px; font-size: 14px; font-weight: 700; color: var(--hk-navy); }
.hk-field em { font-style: normal; font-weight: 400; color: var(--hk-muted); }
.hk-field--wide { grid-column: 1 / -1; }
.hk-field input, .hk-field select, .hk-field textarea { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--hk-line-2); border-radius: 6px; background: #fff; font: 400 16px/1.4 var(--hk-font); color: var(--hk-navy); }
.hk-field textarea { min-height: 110px; resize: vertical; }
.hk-field input:focus, .hk-field select:focus, .hk-field textarea:focus { outline: 0; border-color: var(--hk-teal-deep); box-shadow: 0 0 0 3px rgba(86, 160, 153, .22); }
.hk-field .is-bad { border-color: #B4442F; }
.hk-check { display: flex; gap: 12px; align-items: flex-start; margin-top: 20px; font-size: 15px; line-height: 1.5; cursor: pointer; }
.hk-check input { flex: none; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--hk-navy); }
.hk-check a { color: var(--hk-teal-deep); }
.hk-org-nav { display: flex; justify-content: space-between; gap: 12px; margin-top: 26px; }
.hk-org-nav [data-next]:only-child, .hk-org-nav button[type=submit]:only-child { margin-left: auto; }
.hk-org-nav .hk-btn { min-height: 48px; padding: 0 22px; font-size: 16px; }
.hk-org-fielderr { margin: 12px 0 0; font-size: 14px; font-weight: 600; color: #B4442F; }
.hk-org-err { margin: 24px 0 0; padding: 14px 18px; border-left: 4px solid var(--hk-coral); border-radius: 10px; background: #FDF3F1; font-size: 15px; font-weight: 600; }
.hk-org-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.hk-org-done { margin-top: 28px; padding: 32px; border-radius: 18px; background: var(--hk-navy); color: #fff; }
.hk-org-done__t { margin: 0; font-size: 34px; font-weight: 300; text-transform: uppercase; line-height: 1.05; }
.hk-org-done__t b { display: block; font-weight: 800; color: var(--hk-teal-light); }
.hk-org-done p { color: var(--hk-ice); }
.hk-org-done__cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.hk-org-done .hk-btn--navy { background: var(--hk-teal); color: var(--hk-navy); }
.hk-org-done .hk-btn--ghost { color: #fff; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .3); }
.hk-org-quote__side { position: sticky; top: 104px; padding: 26px; border-radius: 18px; background: var(--hk-kod); border: 1px solid var(--hk-line); }
.hk-org-next { margin: 16px 0 0; padding: 0; list-style: none; counter-reset: hkn; display: grid; gap: 14px; }
.hk-org-next li { counter-increment: hkn; position: relative; padding-left: 40px; font-size: 15px; line-height: 1.5; color: var(--hk-muted); }
.hk-org-next li::before { content: counter(hkn, decimal-leading-zero); position: absolute; left: 0; top: 0; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 24px; border-radius: 4px; background: var(--hk-navy); color: var(--hk-teal-light); font: 600 12px/1 var(--hk-mono); }
.hk-org-next b { color: var(--hk-navy); }
.hk-org-talk { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--hk-line-2); }
.hk-org-talk p { margin: 0 0 6px; font-weight: 700; }
.hk-org-talk a { display: block; color: var(--hk-teal-deep); font-weight: 600; text-decoration: none; }

/* ── Tutor irányítópult: Figtree, navy oldalsáv, pára háttér ── */
.tutor-screen-frontend-dashboard, .tutor-screen-frontend-dashboard .tutor-dashboard-header, .tutor-screen-frontend-dashboard button { font-family: var(--hk-font); }
.tutor-dashboard-layout { background: var(--hk-kod, #F4F8F7); }
.tutor-dashboard-main, .tutor-dashboard-body { background: transparent; }
/* A Tutor a sávot rögzített pozícióval tartja a képernyő szélén: azt nem írjuk felül, csak a színt. */
.tutor-dashboard-sidebar { overflow: hidden; background: var(--hk-navy, #081427) !important; border-right: 0 !important; color: #C5D3E1; }

/* Statisztika kártyák (tutor/dashboard/student/stat-card.php) */
.tutor-stat-card.hk-stat { position: relative; display: flex; align-items: center; gap: 16px; min-height: 104px; padding: 18px 20px; border: 1px solid var(--hk-line, #D3E3E0); border-radius: 16px; background: #fff; color: var(--hk-navy, #081427); text-decoration: none; box-shadow: none; transition: border-color .15s, box-shadow .15s, transform .15s; }
a.tutor-stat-card.hk-stat:hover { border-color: var(--hk-teal, #56A099); box-shadow: 0 14px 30px -22px rgba(8, 20, 39, .45); transform: translateY(-1px); }
.hk-stat__tile { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 7px; background: var(--hk-para, #EAF3F1); color: var(--hk-teal-deep, #2F6B65); }
.hk-stat__body { display: grid; gap: 6px; min-width: 0; }
.hk-stat__label { font: 500 12px/1.2 var(--hk-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--hk-muted, #5B6B7C); }
.hk-stat__value { font: 800 32px/1 var(--hk-font); letter-spacing: -.02em; color: var(--hk-navy, #081427); }
.hk-stat__go { position: absolute; top: 16px; right: 16px; color: var(--hk-line-2, #C5D3E1); transition: color .15s, transform .15s; }
a.hk-stat:hover .hk-stat__go { color: var(--hk-teal-deep, #2F6B65); transform: translateX(2px); }
.tutor-stat-card.hk-stat--lead { border-color: var(--hk-navy, #081427); background: var(--hk-navy, #081427); }
.hk-stat--lead .hk-stat__tile { background: rgba(86, 160, 153, .16); color: var(--hk-teal-light, #8CC9C2); }
.hk-stat--lead .hk-stat__label { color: var(--hk-teal-light, #8CC9C2); }
.hk-stat--lead .hk-stat__value { color: #fff; }
.hk-stat--lead .hk-stat__go { color: rgba(255, 255, 255, .35); }
a.hk-stat--lead:hover .hk-stat__go { color: var(--hk-teal-light, #8CC9C2); }
@media (max-width: 600px) { .tutor-stat-card.hk-stat { min-height: 88px; padding: 14px; gap: 12px; } .hk-stat__tile { width: 40px; height: 40px; } .hk-stat__value { font-size: 26px; } }

/* Kártyák: a Tutor oszlopos elrendezését felülírjuk, ikon balra, szöveg mellette */
.tutor-stat-card.hk-stat { flex-direction: row !important; align-items: center !important; justify-content: flex-start !important; text-align: left !important; height: 100%; }
.tutor-stat-card.hk-stat > * { margin: 0 !important; }
.hk-stat__label, .hk-stat__value { display: block; }
.hk-stat__body { flex: 1 1 auto; align-content: center; padding-right: 22px; }

/* Oldalsáv logó + LEARN */
.hk-side-logo { display: flex !important; align-items: center; gap: 10px; text-decoration: none; }
.hk-side-logo .tutor-brand-logo, .hk-side-logo .tutor-brand-logo-light { display: inline-flex !important; align-items: center; }
.hk-side-logo .tutor-brand-logo-dark { display: none !important; }
.hk-stat__go { display: none !important; }
.hk-stat__body { padding-right: 0 !important; }
.hk-stat__label { letter-spacing: .08em !important; line-height: 1.3 !important; }
.hk-side-logo .tutor-brand-logo img { height: 22px; width: auto; }
/* Kompakt kártyák: egyforma belső margó, egysoros címke, kisebb számláló */
.tutor-stat-card.hk-stat { min-height: 0 !important; height: auto !important; padding: 16px 18px !important; gap: 14px !important; align-self: stretch; }
.tutor-stat-card.hk-stat .hk-stat__tile { width: 40px; height: 40px; border-radius: 6px; }
.tutor-stat-card.hk-stat .hk-stat__tile svg { width: 20px; height: 20px; }
.tutor-stat-card.hk-stat .hk-stat__body { gap: 4px; }
.tutor-stat-card.hk-stat .hk-stat__label { font-size: 11px !important; letter-spacing: .06em !important; line-height: 1.2 !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tutor-stat-card.hk-stat .hk-stat__value { font-size: 22px !important; line-height: 1.1 !important; white-space: nowrap; }
@media (max-width: 600px) { .tutor-stat-card.hk-stat { padding: 12px 14px !important; gap: 12px !important; } .tutor-stat-card.hk-stat .hk-stat__tile { width: 36px; height: 36px; } .tutor-stat-card.hk-stat .hk-stat__value { font-size: 20px !important; } }
/* Tanúsítványaim: vissza az irányítópultra */
.hk-back { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px; font: 500 13px/1 var(--hk-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--hk-teal-deep, #2F6B65); text-decoration: none; }
.hk-back:hover { color: var(--hk-navy, #081427); }
.hk-back svg { transition: transform .15s; }
.hk-back:hover svg { transform: translateX(-2px); }
.hk-side-logo__tag { padding-left: 10px; border-left: 1px solid rgba(255, 255, 255, .22); font: 500 12px/1 var(--hk-mono); letter-spacing: .2em; text-transform: uppercase; color: var(--hk-teal-light, #8CC9C2); }

/* Felső sáv */
.hk-dhead .tutor-dashboard-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.hk-dhead__left { display: grid !important; gap: 6px; }
.hk-dhead__kick { font: 500 12px/1 var(--hk-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hk-teal-deep, #2F6B65); }
.hk-dhead__title { font: 800 24px/1.1 var(--hk-font); letter-spacing: -.01em; color: var(--hk-navy, #081427); }
.hk-dhead__right { display: flex !important; align-items: center; gap: 10px; }
.hk-dhead__account { display: inline-flex !important; align-items: center; gap: 8px; height: 42px; padding: 0 12px 0 5px !important; border: 1px solid var(--hk-line-2, #C5D3E1) !important; border-radius: 6px !important; background: #fff !important; color: var(--hk-navy, #081427) !important; font: 600 15px/1 var(--hk-font); cursor: pointer; transition: border-color .15s; }
.hk-dhead__account:hover, .hk-dhead__account.active { border-color: var(--hk-navy, #081427) !important; }
.hk-dhead__account .tutor-avatar { width: 30px !important; height: 30px !important; }
.hk-dhead__logout { display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 16px; border-radius: 6px; background: var(--hk-navy, #081427); color: #fff !important; font: 700 15px/1 var(--hk-font); text-decoration: none !important; transition: background-color .15s; }
.hk-dhead__logout:hover { background: var(--hk-teal-deep, #2F6B65); }
@media (max-width: 600px) { .hk-dhead__title { font-size: 19px; } .hk-dhead__account-label { display: none; } .hk-dhead__logout { padding: 0 12px; font-size: 14px; } }

/* Csomag kártya: összecsukható modullista */
.hk-bundle-card { border: 1px solid var(--hk-line, #D3E3E0) !important; border-radius: 16px !important; background: #fff !important; overflow: hidden; }
.hk-bundle-card__main { color: inherit; text-decoration: none; }
.hk-bundle-card__main:hover .tutor-progress-card-title, .hk-bundle-card__main:hover h3 { color: var(--hk-teal-deep, #2F6B65); }
.hk-bundle-card__toggle { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; min-height: 46px; margin: 0; padding: 0 18px; border: 0; border-top: 1px solid var(--hk-line, #D3E3E0); background: var(--hk-kod, #F4F8F7); color: var(--hk-teal-deep, #2F6B65); font: 500 13px/1 var(--hk-mono); letter-spacing: .1em; text-transform: uppercase; cursor: pointer; transition: background-color .15s, color .15s; }
.hk-bundle-card__toggle:hover { background: var(--hk-para, #EAF3F1); color: var(--hk-navy, #081427); }
.hk-bundle-card__toggle svg { transition: transform .2s; }
.hk-bundle-card__toggle svg.is-up { transform: rotate(180deg); }
.hk-bundle-card .tutor-dashboard-bundle-courses-wrapper { border-top: 1px solid var(--hk-line, #D3E3E0); background: var(--hk-kod, #F4F8F7); }
.hk-bundle-card .tutor-progress-card-actions:empty { display: none; }
/* Lélegző hely a haladás alatt, a lenyitó külön lekerekített sáv */
.hk-bundle-card { padding-bottom: 10px !important; }
.hk-bundle-card .hk-bundle-card__main { margin-bottom: 14px !important; }
.hk-bundle-card .hk-bundle-card__toggle { width: calc(100% - 20px); margin: 0 10px; border: 1px solid var(--hk-line, #D3E3E0); border-radius: 10px; min-height: 44px; }
.hk-bundle-card.tutor-active .hk-bundle-card__toggle { border-radius: 10px 10px 0 0; }
.hk-bundle-card .tutor-dashboard-bundle-courses-wrapper { margin: 0 10px; border: 1px solid var(--hk-line, #D3E3E0); border-top: 0; border-radius: 0 0 10px 10px; overflow: hidden; }
.tutor-progress-card-thumbnail > :not(img) { background: var(--hk-navy, #081427) !important; color: var(--hk-teal-light, #8CC9C2) !important; border: 0 !important; border-radius: 4px !important; font-family: var(--hk-mono) !important; }
.tutor-progress-card-thumbnail > :not(img) svg { color: currentColor !important; }
.tutor-dashboard-sidebar::after { content: ""; position: absolute; inset: auto 0 0 0; height: 220px; pointer-events: none; background-image: radial-gradient(rgba(86, 160, 153, .22) 1.2px, transparent 1.4px); background-size: 16px 16px; -webkit-mask-image: linear-gradient(to top, #000, transparent); mask-image: linear-gradient(to top, #000, transparent); }
.tutor-dashboard-sidebar > * { position: relative; z-index: 1; }
.tutor-dashboard-sidebar-logo { border-color: rgba(255, 255, 255, .08) !important; }
.tutor-dashboard-sidebar-logo .tutor-brand-logo img { content: url("https://learn.hacktify.com/wp-content/uploads/2026/10/Hacktify-logo-feher.png"); }
.tutor-dashboard-sidebar-logo .site-title { color: #fff; }
.tutor-dashboard-sidebar-nav ul li a { color: #C5D3E1 !important; border-radius: 8px; transition: background-color .15s, color .15s; }
.tutor-dashboard-sidebar-nav ul li a svg, .tutor-dashboard-sidebar-nav ul li a .tutor-icon { color: var(--hk-teal-light, #8CC9C2) !important; }
.tutor-dashboard-sidebar-nav ul li a:hover { background: rgba(86, 160, 153, .14) !important; color: #fff !important; }
.tutor-dashboard-sidebar-nav ul li a.active { background: var(--hk-teal, #56A099) !important; color: var(--hk-navy, #081427) !important; font-weight: 700; }
.tutor-dashboard-sidebar-nav ul li a.active svg { color: var(--hk-navy, #081427) !important; }
.tutor-dashboard-sidebar .tutor-see-all-courses { color: #fff !important; background: transparent !important; border: 1px solid rgba(255, 255, 255, .18) !important; border-radius: 8px; }
.tutor-dashboard-sidebar .tutor-see-all-courses:hover { border-color: var(--hk-teal, #56A099) !important; color: var(--hk-teal-light, #8CC9C2) !important; }
.tutor-dashboard-sidebar .tutor-see-all-courses svg { color: currentColor !important; }
.tutor-dashboard-header { background: #fff; border-bottom: 1px solid var(--hk-line, #D3E3E0); }
.tutor-dashboard-page .tutor-surface-l1, .tutor-dashboard-courses-card, .tutor-stat-card { background: #fff; }

/* ── Interaktív tananyag elemek ── */

/* Döntési doboz */
.hk-box--decide { background: #F0F7F6; border-left: 4px solid var(--hk-teal, #56A099); border-radius: 8px; padding: 1.25rem 1.5rem; margin: 1.5rem 0; }
.hk-box--decide .hk-box__t { color: var(--hk-navy, #081427); font-weight: 700; font-size: 1.05rem; margin-bottom: .5rem; }

/* Választógombok */
.hk-choices { display: flex; flex-wrap: wrap; gap: .5rem; margin: .75rem 0; }
.hk-choices--sm { gap: .375rem; }
.hk-choice, .hk-choices button { background: #fff; border: 2px solid #D3E3E0; border-radius: 8px; padding: .5rem 1rem; font-family: inherit; font-size: .95rem; color: var(--hk-navy, #081427); cursor: pointer; transition: border-color .15s, background-color .15s; line-height: 1.4; text-align: left; }
.hk-choices--sm .hk-choice, .hk-choices--sm button { font-size: .9rem; padding: .375rem .875rem; }
.hk-choice:hover, .hk-choices button:hover { border-color: var(--hk-teal, #56A099); background: rgba(86, 160, 153, .06); }
.hk-choice:focus-visible, .hk-choices button:focus-visible { outline: 2px solid var(--hk-navy, #081427); outline-offset: 2px; }
.hk-choice.is-picked, .hk-choices button.is-picked { border-color: var(--hk-navy, #081427); background: var(--hk-navy, #081427); color: #fff; font-weight: 600; }
[x-cloak] { display: none !important; }

/* Visszajelzések */
.hk-feedback { margin-top: .75rem; padding: .75rem 1rem; border-radius: 6px; font-size: .95rem; line-height: 1.5; }
.hk-feedback--right { background: #E8F5E9; border-left: 3px solid #43A047; padding: .5rem .75rem; border-radius: 4px; }
.hk-feedback--wrong { background: #FFEBEE; border-left: 3px solid #E53935; padding: .5rem .75rem; border-radius: 4px; }
.hk-feedback--partial { background: #FFF8E1; border-left: 3px solid #F9A825; padding: .5rem .75rem; border-radius: 4px; }

/* Felfedő gomb */
.hk-reveal-btn { background: var(--hk-navy, #081427); color: #fff; border: none; border-radius: 6px; padding: .5rem 1.25rem; font-family: inherit; font-size: .9rem; font-weight: 600; cursor: pointer; transition: background-color .15s; margin-top: .5rem; }
.hk-reveal-btn:hover { background: #1B2A44; }

/* Idővonal navigáció */
.hk-timeline { background: #F0F7F6; border-radius: 10px; padding: 1.5rem; margin: 1.5rem 0; }
.hk-timeline__nav { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; padding-bottom: .75rem; border-bottom: 1px solid #D3E3E0; }
.hk-timeline__nav button { background: #fff; border: 1px solid #D3E3E0; border-radius: 6px; padding: .375rem .875rem; font-family: inherit; font-size: .85rem; color: var(--hk-navy, #081427); cursor: pointer; transition: all .15s; }
.hk-timeline__nav button:hover { border-color: var(--hk-teal, #56A099); }
.hk-timeline__nav button.is-active { background: var(--hk-navy, #081427); color: #fff; border-color: var(--hk-navy, #081427); font-weight: 600; }

/* Flip kártyák */
.hk-flip-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin: 1rem 0; }
.hk-flip-grid .hk-box__t { grid-column: 1 / -1; font-weight: 700; color: var(--hk-navy, #081427); }
.hk-flip-card { background: #fff; border: 2px solid #D3E3E0; border-radius: 10px; padding: 1rem; min-height: 100px; cursor: pointer; transition: border-color .15s, box-shadow .15s; text-align: center; display: flex; align-items: center; justify-content: center; }
.hk-flip-card:hover { border-color: var(--hk-teal, #56A099); box-shadow: 0 2px 8px rgba(86, 160, 153, .15); }
.hk-flip-front { color: var(--hk-navy, #081427); }
.hk-flip-back { color: var(--hk-navy, #081427); font-size: .9rem; line-height: 1.5; }

/* Párosítás rács */
.hk-match-grid { display: flex; flex-direction: column; gap: 1rem; margin: .75rem 0; }
.hk-match-item { background: #fff; border: 1px solid #D3E3E0; border-radius: 8px; padding: 1rem; }
.hk-match-item p { margin: 0 0 .5rem; }

/* Helyzet blokk */
.hk-scenario { margin-bottom: 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px solid #E8EDED; }
.hk-scenario:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
