/* ==========================================================================
   imeno.dk commerce: Kurv, Kassen, Ordrebekræftelse, Min konto, log ind.
   Values from the Claude Design export (Kurv, Kassen, Konto).
   ========================================================================== */

.c-woo { padding-top: 24px; padding-bottom: 96px; }
.c-woo--checkout { padding-top: 32px; }
.c-woo--received { max-width: 880px; padding-top: 64px; }
.c-woo--account { padding-top: 24px; }
.c-woo > nav:first-child { margin-bottom: 8px; }
.imeno-hidden { display: none !important; }
.c-sumbox { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 24px; display: flex; flex-direction: column; gap: 10px; }
.c-totals__row--line { border-top: 1px solid var(--line); padding-top: 10px; margin-top: 2px; }
.c-sumbox .c-totals { gap: 10px; margin-bottom: 8px; }
.c-sumbox .c-totals__row { font-size: 15px; }
.c-sumbox .c-totals__row--total { font-size: 19px; }

/* ---------- Kurv ---------- */
.c-cartpage { position: relative; }
.c-cartpage.is-busy .c-cartpage__grid { opacity: .6; pointer-events: none; transition: opacity var(--t-fast); }
.c-cartpage__title { margin: 16px 0 4px; font-size: 44px; line-height: 1.1; }
.c-cartpage__title span { color: var(--muted); }
.c-cartpage__lede { margin: 0 0 28px; font-size: 15px; color: var(--muted); }
.c-cartpage__grid { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 32px; align-items: start; }
.c-cartpage__main { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.c-cartpage__ship { background: var(--accent-100); border-radius: var(--r-lg); padding: 16px 20px; }
.c-cartpage__ship b { font-size: 15px; }
.c-cartpage__lines { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 0 24px; }
.c-cartpage__list { list-style: none; margin: 0; padding: 0; }
.c-cpl { display: grid; grid-template-columns: 96px minmax(0, 1fr) auto auto auto; gap: 20px; align-items: center; padding: 20px 0; border-bottom: 1px solid var(--tile); }
.c-cpl__thumb { width: 96px; height: 96px; border-radius: var(--r-md); background: var(--tile); display: flex; align-items: center; justify-content: center; color: var(--ghost); position: relative; overflow: hidden; }
.c-cpl__thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 8%; mix-blend-mode: multiply; }
.c-cpl__info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.c-cpl__name { font-weight: 600; color: var(--ink); text-decoration: none; line-height: 1.35; }
.c-cpl__name:hover { text-decoration: underline; color: var(--ink); }
.c-cpl__sku { font-size: 12px; color: var(--muted); }
.c-cpl__total { min-width: 110px; text-align: right; font-weight: 700; font-feature-settings: "tnum"; white-space: nowrap; }
.c-cpl__rm { width: 36px; height: 36px; border: 0; background: transparent; border-radius: var(--r); display: flex; align-items: center; justify-content: center; color: var(--muted); }
.c-cpl__rm:hover { background: var(--bg); color: var(--ink); }
.c-cartpage__tools { display: flex; flex-wrap: wrap; gap: 8px 24px; padding: 16px 0; }
.c-cartpage__tools .c-textbtn { display: inline-flex; align-items: center; gap: 6px; }
.c-cartpage__h2 { margin: 8px 0 14px; font-size: 22px; }
.c-minis { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.c-mini { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 12px; display: flex; gap: 12px; align-items: center; min-width: 0; }
.c-mini__thumb { flex: none; width: 64px; height: 64px; border-radius: var(--r-md); background: var(--tile); position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; color: var(--ghost); }
.c-mini__thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 8%; mix-blend-mode: multiply; }
.c-mini__text { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1; }
.c-mini__name { font-size: 14px; font-weight: 600; line-height: 1.3; color: var(--ink); text-decoration: none; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.c-mini__name:hover { text-decoration: underline; color: var(--ink); }
.c-mini__price { font-size: 13px; font-weight: 700; font-feature-settings: "tnum"; }
.c-mini__add { flex: none; width: 40px; height: 40px; border: 0; border-radius: var(--r); background: var(--accent); color: var(--ink); display: flex; align-items: center; justify-content: center; transition: background-color var(--t-fast); }
.c-mini__add:hover { background: var(--accent-h); }
.c-mini__add.is-loading { opacity: .6; pointer-events: none; }
.c-cartpage__aside { position: sticky; top: calc(var(--sticky-top) + 16px); display: flex; flex-direction: column; gap: 16px; }
.admin-bar .c-cartpage__aside { top: calc(var(--sticky-top) + 48px); }
.c-cartpage__empty { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 48px; display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.c-cartpage__empty-title { font: 700 24px var(--ff-display); }
.c-cartpage__empty p { margin: 0; font-size: 15px; }
.c-cartpage__empty-btns { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 6px; }
.c-cartpage__popular { display: flex; flex-direction: column; gap: 10px; margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--line); width: 100%; }
@media (max-width: 1100px) {
	.c-cartpage__grid { grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; }
}
@media (max-width: 900px) {
	.c-cartpage__grid { grid-template-columns: 1fr; }
	.c-cartpage__aside { position: static; }
}
@media (max-width: 767px) {
	.c-cartpage__title { font-size: 30px; }
	.c-cartpage__lines { padding: 0 16px; }
	.c-cpl { grid-template-columns: 72px minmax(0, 1fr) auto; grid-template-areas: "thumb info rm" "thumb qty total"; gap: 10px 14px; padding: 16px 0; }
	.c-cpl__thumb { grid-area: thumb; width: 72px; height: 72px; align-self: start; }
	.c-cpl__info { grid-area: info; }
	.c-cpl .c-qty { grid-area: qty; justify-self: start; }
	.c-cpl__total { grid-area: total; min-width: 0; }
	.c-cpl__rm { grid-area: rm; align-self: start; }
	.c-cartpage__empty { padding: 28px 20px; }
}

/* ---------- Kassen: focused header ---------- */
.c-header--checkout { position: relative; }
.c-ckhead { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.c-ckhead .c-logo img { height: 32px; }
.c-ckhead__help { font-size: 14px; font-weight: 600; color: var(--ink); text-decoration: none; white-space: nowrap; }
.c-ckhead__help:hover { text-decoration: underline; color: var(--ink); }
.c-steps { display: flex; gap: 28px; list-style: none; margin: 0; padding: 0; font-size: 14px; font-weight: 600; }
.c-steps li { display: flex; align-items: center; gap: 8px; }
.c-steps span { width: 24px; height: 24px; border-radius: 50%; background: var(--dark); color: #fff; font-size: 12px; display: flex; align-items: center; justify-content: center; }
@media (max-width: 767px) {
	.c-steps { display: none; }
	.c-ckhead .c-logo img { height: 26px; }
}

/* ---------- Kassen ---------- */
.c-ck__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 1fr)); gap: 40px; align-items: start; }
.c-ck__main { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.c-ck__title { font-size: 40px; line-height: 1.1; }
.c-ck__sections { display: flex; flex-direction: column; gap: 20px; }
.c-ck-sec { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 28px; display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.c-ck-sec__title { font-size: 20px; letter-spacing: -0.01em; }
.c-ck__aside { position: sticky; top: 24px; margin-top: 64px; max-width: 560px; width: 100%; }
.admin-bar .c-ck__aside { top: 56px; }
.c-ck form.checkout, form.checkout.woocommerce-checkout { margin: 0; }
.woocommerce-NoticeGroup-checkout { margin-bottom: 20px; }

/* Fields grid (6 columns; WooCommerce rows are placed by id) */
.c-ck-fields { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.c-ck-fields .form-row { grid-column: span 6; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.c-ck-fields .form-row-first, .c-ck-fields .form-row-last { grid-column: span 3; }
#billing_cvr_field, #billing_company_field, #billing_ean_field, #billing_reference_field { grid-column: span 3; }
/* Companies have no EAN field: the reference then takes the whole row, so contact + e-mail + phone share the next one. */
#billing_ean_field[style*="none"] + #billing_reference_field { grid-column: span 6; }
#billing_first_name_field, #billing_email_field, #billing_phone_field { grid-column: span 2; }
#billing_address_1_field, #shipping_address_1_field, #billing_address_2_field, #shipping_address_2_field { grid-column: span 3; }
#billing_postcode_field, #shipping_postcode_field { grid-column: span 2; }
#billing_city_field, #shipping_city_field { grid-column: span 4; }
#shipping_first_name_field, #shipping_company_field { grid-column: span 3; }
/* Denmark is the only market: no country picker (WooCommerce renders a one-option select or a hidden input). */
#billing_country_field:has(input[type="hidden"]), #shipping_country_field:has(input[type="hidden"]),
#billing_country_field:has(.country_to_state--single), #shipping_country_field:has(.country_to_state--single) { display: none !important; }
#billing_state_field, #shipping_state_field { display: none !important; }
.c-ck-fields .form-row > label, .c-coform .c-field, .woocommerce form .form-row > label { font-size: 14px; font-weight: 600; color: var(--ink); line-height: 1.3; }
.woocommerce form .form-row label .required, .woocommerce form .form-row abbr.required { color: var(--danger); text-decoration: none; border: 0; font-weight: 600; }
.woocommerce form .form-row .optional { font-weight: 400; color: var(--muted); }
#billing_cvr_field .optional, #billing_ean_field .optional, #billing_company_field .optional, .imeno-customer-type .optional { display: none; }
.c-ck-fields .woocommerce-input-wrapper { display: flex; flex-direction: column; gap: 6px; }
.woocommerce form .form-row .input-text, .woocommerce form .form-row select { width: 100%; }
.woocommerce form .form-row .c-input--mono, .woocommerce form .form-row input.c-input--mono { font-family: var(--ff-mono); font-weight: 500; }
.woocommerce form .form-row.woocommerce-invalid .input-text, .woocommerce form .form-row .input-text[aria-invalid="true"] { border-color: var(--danger); }
.woocommerce form .form-row.woocommerce-validated .input-text { border-color: var(--line); }
.woocommerce form .form-row .description { font-size: 12px; color: var(--muted); }
.checkout-inline-error-message, .woocommerce-error-inline { font-size: 12px; font-weight: 500; color: var(--danger); margin: 0; }
.woocommerce form .form-row textarea.input-text { min-height: 72px; }
.woocommerce form .form-row .woocommerce-input-wrapper strong { font-weight: 500; }

/* "Jeg handler som": segmented control (imeno Setup renders radios) */
.imeno-customer-type .woocommerce-input-wrapper, .c-segctl {
	display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 4px; background: var(--bg); border: 1px solid var(--line); border-radius: var(--r-md); max-width: 560px; gap: 0 !important;
}
.imeno-customer-type .woocommerce-input-wrapper input.input-radio, .c-segctl input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.imeno-customer-type label.radio, .c-segctl span {
	height: 40px; margin: 0; display: flex; align-items: center; justify-content: center; border-radius: var(--r); font-size: 14px; font-weight: 600; color: var(--ink); cursor: pointer; text-align: center; line-height: 1.15; padding: 0 6px; transition: background-color var(--t-fast), color var(--t-fast);
}
.imeno-customer-type input.input-radio:checked + label.radio, .c-segctl input:checked + span { background: var(--dark); color: #fff; }
.imeno-customer-type input.input-radio:focus-visible + label.radio, .c-segctl input:focus-visible + span { outline: 2px solid var(--accent); outline-offset: 2px; }
.imeno-customer-type > label { margin-bottom: 2px; }

/* Delivery: different address, shipping options */
.c-ck-shipto { display: flex; flex-direction: column; gap: 16px; }
.c-ck-shipto .shipping_address { display: none; }
.c-ck-shipto__toggle { margin: 0; }
.c-ck-account { display: flex; flex-direction: column; gap: 12px; padding-top: 4px; }
.c-ck-account .form-row { margin: 0; }
.c-ck-account .create-account.c-ck-fields { margin-top: 4px; }
.woocommerce form .form-row .woocommerce-form__label-for-checkbox, .c-check { font-weight: 400; }
.c-ck-ship { min-width: 0; }
.c-ship-opts__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.c-ship-opt { position: relative; }
.c-ship-opt input.shipping_method[type="radio"] { position: absolute; opacity: 0; width: 1px; height: 1px; }
.c-ship-opt label, .c-ship-opt.is-static { display: flex; align-items: center; gap: 16px; padding: 16px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; cursor: pointer; margin: 0; font-weight: 400; }
.c-ship-opt.is-static { cursor: default; color: var(--ink); }
.c-ship-opt .c-icon { color: var(--dark); flex: none; }
.c-ship-opt.is-chosen label, .c-ship-opt:has(input:checked) label, .c-ship-opt input[type="hidden"] + label { border-color: var(--dark); background: var(--accent-50); }
.c-ship-opt input:focus-visible + label { outline: 2px solid var(--accent); outline-offset: 2px; }
.c-ship-opt__text { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.c-ship-opt__text b { font-weight: 600; }
.c-ship-opt__text span { font-size: 14px; }
.c-ship-opt__price { font-weight: 600; white-space: nowrap; font-feature-settings: "tnum"; }
.c-ship-opt.is-warn { border-color: #F2C5C0; background: #FDF0EE; }
.c-ship-opt.is-warn .c-icon { color: var(--danger); }

/* Payment options */
.c-pay__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.c-pay__opt { position: relative; }
.c-pay__opt > input.input-radio { position: absolute; opacity: 0; width: 1px; height: 1px; }
.c-pay__label { display: flex; align-items: center; gap: 14px; padding: 16px; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; cursor: pointer; margin: 0; transition: border-color var(--t-fast), background-color var(--t-fast); }
.c-pay__label:hover { border-color: var(--line-2); }
.c-pay__radio { flex: none; width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid var(--line-2); background: #fff; position: relative; transition: border-color var(--t-fast); }
.c-pay__opt > input:checked + .c-pay__label { border-color: var(--dark); background: var(--accent-50); }
.c-pay__opt > input:checked + .c-pay__label .c-pay__radio { border-color: var(--dark); }
.c-pay__opt > input:checked + .c-pay__label .c-pay__radio::after { content: ""; position: absolute; inset: 4px; border-radius: 50%; background: var(--dark); }
.c-pay__opt > input:focus-visible + .c-pay__label { outline: 2px solid var(--accent); outline-offset: 2px; }
.c-pay__text { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.c-pay__text b { font-weight: 600; }
.c-pay__text span { font-size: 13px; color: var(--muted); }
.c-pay__icon img { max-height: 24px; width: auto; display: inline-block; margin-left: 4px; }
.c-pay__fee { font-size: 14px; font-weight: 600; white-space: nowrap; }
.c-pay__box { padding: 14px 16px 4px; font-size: 14px; }
.c-pay__box p:last-child { margin-bottom: 0; }
.c-pay__opt.is-disabled { opacity: .5; }
.c-pay__opt.is-disabled .c-pay__label { cursor: not-allowed; }
.c-pay__opt.is-disabled input { width: 20px; height: 20px; margin: 0; accent-color: var(--dark); }
.c-pay__none .woocommerce-info { margin: 0; }

/* Order summary */
.c-ck-sum { gap: 12px; }
.c-ck-sum__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.c-ck-sum__head h2 { font-size: 20px; letter-spacing: -0.01em; }
.c-ck-sum__head a { font-size: 14px; }
.c-ck-review { display: flex; flex-direction: column; gap: 12px; }
.c-ck-lines { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.c-ck-line { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.c-ck-line__thumb { position: relative; width: 52px; height: 52px; border-radius: var(--r); background: var(--tile); display: flex; align-items: center; justify-content: center; color: #B8A88E; }
.c-ck-line__thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 8%; mix-blend-mode: multiply; border-radius: var(--r); }
.c-ck-line__qty { position: absolute; top: -6px; right: -6px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; background: var(--dark); color: #fff; font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; z-index: 1; }
.c-ck-line__name { font-size: 14px; line-height: 1.35; min-width: 0; }
.c-ck-line__name dl.variation { margin: 2px 0 0; font-size: 12px; color: var(--muted); }
.c-ck-line__total { font-size: 14px; font-weight: 600; font-feature-settings: "tnum"; white-space: nowrap; }
.c-ck-totals { border-top: 1px solid var(--line); padding-top: 12px; gap: 6px; }
.c-ck-totals .c-totals__row { font-size: 14px; }
.c-ck-totals .c-totals__row--total { font-size: 19px; padding-top: 8px; border-top: 0; margin-top: 0; }
.c-ck-place { display: flex; flex-direction: column; gap: 12px; margin: 4px 0 0; padding: 0; }
.c-ck-terms { margin: 0; }
.c-ck-terms .c-check { align-items: flex-start; }
.c-ck-terms input { margin-top: 2px !important; width: 20px !important; height: 20px !important; }
.c-ck-terms.woocommerce-invalid label { color: var(--danger); }
#place_order { width: 100%; }
#place_order.is-loading, .processing #place_order { opacity: .7; }
.c-ck-trust { display: flex; justify-content: center; flex-wrap: wrap; gap: 4px 16px; list-style: none; margin: 0; padding: 0; font-size: 12px; color: var(--muted); }
.c-ck-trust li + li::before { content: "·"; margin-right: 16px; }
.c-ck-privacy { margin: 0; font-size: 12px; color: var(--muted); text-align: center; }
.woocommerce-checkout .blockUI.blockOverlay { border-radius: var(--r-lg); }
.woocommerce-form-login-toggle .woocommerce-info, .woocommerce-form-coupon-toggle .woocommerce-info { margin-bottom: 16px; }
.c-ck form.woocommerce-form-login { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 24px; margin: 0 0 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; }
.c-ck form.woocommerce-form-login > p:first-child, .c-ck form.woocommerce-form-login .lost_password, .c-ck form.woocommerce-form-login .clear { grid-column: 1 / -1; margin: 0; }
.c-ck form.woocommerce-form-login .form-row { margin: 0; display: flex; flex-direction: column; gap: 6px; }
@media (max-width: 1100px) {
	.c-ck__aside { margin-top: 0; max-width: none; position: static; }
}
@media (max-width: 767px) {
	.c-woo--checkout { padding-top: 20px; padding-bottom: 48px; }
	.c-ck__title { font-size: 30px; }
	.c-ck-sec { padding: 20px 16px; gap: 16px; }
	.c-ck-fields { gap: 14px; }
	.c-ck-fields .form-row, .c-ck-fields .form-row-first, .c-ck-fields .form-row-last,
	#billing_cvr_field, #billing_company_field, #billing_ean_field, #billing_reference_field,
	#billing_first_name_field, #billing_email_field, #billing_phone_field,
	#billing_address_1_field, #billing_address_2_field, #billing_city_field, #billing_ean_field[style*="none"] + #billing_reference_field,
	#shipping_address_1_field, #shipping_address_2_field, #shipping_city_field, #shipping_first_name_field, #shipping_company_field { grid-column: span 6; }
	#billing_postcode_field, #shipping_postcode_field { grid-column: span 2; }
	#billing_city_field, #shipping_city_field { grid-column: span 4; }
	.c-ship-opt label, .c-ship-opt.is-static, .c-pay__label { padding: 14px; gap: 12px; }
	.c-sumbox { padding: 20px 16px; }
	.c-ck form.woocommerce-form-login { grid-template-columns: 1fr; }
}

/* ---------- Ordrebekræftelse ---------- */
.c-thanks { display: flex; flex-direction: column; gap: 28px; }
.c-thanks__head { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; }
.c-thanks__check { width: 56px; height: 56px; border-radius: 50%; background: var(--ok); color: #fff; display: flex; align-items: center; justify-content: center; }
.c-thanks__head h1 { margin-top: 8px; font-size: 44px; line-height: 1.1; }
.c-thanks__sub { margin: 0; font-size: 17px; }
.c-thanks__card { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 28px; }
.c-otrack { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.c-otrack li { display: flex; flex-direction: column; gap: 10px; }
.c-otrack__bar { height: 6px; border-radius: 999px; background: var(--line); }
.c-otrack b { font-weight: 600; font-size: 15px; }
.c-otrack li > span:last-child { font-size: 13px; color: var(--muted); }
.c-otrack li.is-done .c-otrack__bar { background: var(--ok); }
.c-otrack li.is-done b { color: var(--ok); }
.c-thanks__cols { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.c-thanks__fact { display: flex; flex-direction: column; gap: 6px; padding: 24px; }
.c-thanks__fact .c-eyebrow { font-size: 13px; letter-spacing: .06em; }
.c-thanks__fact b { font: 700 24px/1.2 var(--ff-display); letter-spacing: -0.01em; }
.c-thanks__fact > span:last-child { font-size: 14px; }
.c-thanks__btns { display: flex; gap: 12px; flex-wrap: wrap; }
.c-thanks__instr { font-size: 15px; }
.c-thanks__instr h2, .c-thanks__instr h3 { font-size: 18px; margin: 12px 0 8px; }
.c-thanks__instr ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.c-thanks__instr .wc-bacs-bank-details-account-name { font-weight: 600; margin-top: 12px; }
.c-thanks__instr ul.wc-bacs-bank-details li strong { font-family: var(--ff-mono); font-weight: 500; }
.c-thanks__lines { padding: 0; }
.c-thanks__lines summary { cursor: pointer; padding: 20px 28px; font-weight: 600; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.c-thanks__lines summary::-webkit-details-marker { display: none; }
.c-thanks__lines summary::after { content: ""; width: 10px; height: 10px; border-right: 2px solid var(--dark); border-bottom: 2px solid var(--dark); transform: rotate(45deg); transition: transform var(--t-fast); margin-top: -4px; }
.c-thanks__lines[open] summary::after { transform: rotate(-135deg); margin-top: 4px; }
.c-thanks__lines .c-ck-lines, .c-thanks__lines .c-ck-totals { padding-left: 28px; padding-right: 28px; }
.c-thanks__lines .c-ck-totals { padding-bottom: 24px; margin-top: 16px; }
@media (max-width: 767px) {
	.c-woo--received { padding-top: 32px; }
	.c-thanks__head h1 { font-size: 30px; }
	.c-thanks__card { padding: 20px 16px; }
	.c-otrack { grid-template-columns: 1fr 1fr; row-gap: 20px; }
	.c-thanks__cols { grid-template-columns: 1fr; }
	.c-thanks__fact b { font-size: 20px; }
	.c-thanks__lines summary { padding: 16px; }
	.c-thanks__lines .c-ck-lines, .c-thanks__lines .c-ck-totals { padding-left: 16px; padding-right: 16px; }
}

/* ---------- Min konto ---------- */
.c-account { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 40px; align-items: start; margin-top: 8px; }
.c-account__nav { position: sticky; top: calc(var(--sticky-top) + 24px); display: flex; flex-direction: column; gap: 4px; }
.admin-bar .c-account__nav { top: calc(var(--sticky-top) + 56px); }
.c-account__hello { font: 700 22px var(--ff-display); margin-bottom: 4px; }
.c-account__co { font-size: 13px; color: var(--muted); margin-bottom: 16px; }
.c-account__nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.c-account__nav li a { display: block; padding: 10px 14px; border-radius: var(--r); color: var(--ink); text-decoration: none; font-size: 15px; font-weight: 600; transition: background-color var(--t-fast); }
.c-account__nav li a:hover { background: var(--tile); color: var(--ink); }
.c-account__nav li.is-active a, .c-account__nav li a[aria-current="page"] { background: var(--dark); color: #fff; }
.c-account__logout { margin-top: 12px; padding: 10px 14px; font-size: 14px; display: inline-flex; align-items: center; gap: 8px; }
.c-account__main { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.c-account__title { font-size: 40px; line-height: 1.1; }
.c-account__lede { margin: -8px 0 0; font-size: 15px; color: var(--muted); max-width: 720px; }
.c-account__cols { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.c-account__pages { display: flex; gap: 12px; justify-content: space-between; }
.c-acard { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 20px 24px; min-width: 0; }
.c-acard--flush { padding: 0; overflow: hidden; }
.c-acard__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 10px; }
.c-acard--flush > .c-acard__head { padding: 20px 24px; border-bottom: 1px solid var(--line); margin: 0; }
.c-acard__head h2 { font-size: 20px; letter-spacing: -0.01em; }
.c-acard__head h2 .c-count { font: 500 13px var(--ff-ui); color: var(--muted); margin-left: 6px; letter-spacing: 0; }
.c-acard__head a { font-size: 14px; }
.c-acard__muted { margin: 0; font-size: 14px; color: var(--muted); }
.c-acard__empty { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; padding: 28px 24px; font-size: 15px; }
.c-acard__empty b { font: 700 18px var(--ff-display); }
.c-acard__empty span { color: var(--muted); }
.c-acard__empty .c-btn { margin-top: 6px; }
.c-otable { width: 100%; border-collapse: collapse; font-size: 14px; }
.c-otable th { text-align: left; color: var(--muted); font-size: 12px; font-weight: 600; padding: 12px; }
.c-otable th:first-child, .c-otable td:first-child { padding-left: 24px; }
.c-otable th:last-child, .c-otable td:last-child { padding-right: 24px; }
.c-otable td { padding: 14px 12px; border-top: 1px solid var(--tile); vertical-align: middle; }
.c-otable td a.mono { font-size: 13px; color: var(--ink); }
.c-otable__num { text-align: right !important; font-weight: 700; font-feature-settings: "tnum"; white-space: nowrap; }
.c-otable__act { text-align: right; white-space: nowrap; }
.c-otable__items { max-width: 320px; }
.c-ostatus { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; white-space: nowrap; }
.c-ostatus::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.c-ostatus--ok { color: var(--ok); }
.c-ostatus--warn { color: var(--warn); }
.c-ostatus--danger { color: var(--danger); }
.c-ostatus--muted { color: var(--muted); }
.c-doclist { list-style: none; margin: 0; padding: 0; }
.c-doclist a { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-top: 1px solid var(--tile); color: var(--ink); text-decoration: none; }
.c-doclist li:first-child a { border-top: 0; }
.c-doclist a:hover { color: var(--ink); }
.c-doclist a:hover .c-doclist__no { text-decoration: underline; }
.c-doclist__type { font: 600 10px var(--ff-mono); color: var(--dark-2); background: var(--accent-100); border-radius: var(--r-sm); padding: 3px 6px; flex: none; }
.c-doclist__no { flex: 1; font-size: 13px; min-width: 0; }
.c-doclist__what { flex: 2; font-size: 13px; color: var(--muted); min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.c-doclist__date { font-size: 13px; color: var(--muted); white-space: nowrap; }
.c-doclist__sum { font-weight: 600; font-size: 14px; font-feature-settings: "tnum"; white-space: nowrap; min-width: 90px; text-align: right; }
.c-listrow { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-top: 1px solid var(--tile); }
.c-acard__head + .c-listrow { border-top: 0; }
.c-listrow__text { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.c-listrow__text b { font-size: 15px; }
.c-listrow__text span { font-size: 13px; color: var(--muted); }
.c-cofacts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; font-size: 14px; padding: 24px; }
.c-cofacts > div { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.c-cofacts > div > span:first-child { color: var(--muted); }
.c-ovhead { display: flex; flex-direction: column; gap: 20px; padding: 24px; }
.c-ovhead__facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px 20px; font-size: 14px; }
.c-ovhead__facts > div { display: flex; flex-direction: column; gap: 2px; }
.c-ovhead__facts > div > span { color: var(--muted); }
.c-ovhead__facts b { font-size: 16px; }
.c-ovhead__btns { display: flex; gap: 12px; flex-wrap: wrap; }
.c-onotes { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.c-onotes__date { font-size: 13px; color: var(--muted); }
.c-odetails { padding: 24px; }
.c-odetails h2 { font-size: 20px; margin: 0 0 12px; letter-spacing: -0.01em; }
.c-odetails section + section { margin-top: 24px; }
.woocommerce-table, .shop_table { width: 100%; border-collapse: collapse; font-size: 14px; }
.woocommerce-table th, .woocommerce-table td, .shop_table th, .shop_table td { text-align: left; padding: 12px 8px; border-top: 1px solid var(--tile); vertical-align: top; }
.woocommerce-table thead th, .shop_table thead th { border-top: 0; color: var(--muted); font-size: 12px; font-weight: 600; }
.woocommerce-table tfoot th { font-weight: 600; }
.woocommerce-table .product-total, .woocommerce-table tfoot td { text-align: right; font-feature-settings: "tnum"; white-space: nowrap; }
.woocommerce-table .wc-item-meta { list-style: none; margin: 4px 0 0; padding: 0; font-size: 12px; color: var(--muted); }
.woocommerce-customer-details address { font-style: normal; line-height: 1.6; background: var(--bg); border-radius: var(--r-md); padding: 16px; border: 0; }
.woocommerce-customer-details .woocommerce-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.woocommerce-customer-details .woocommerce-column__title { font-size: 16px; margin-bottom: 8px; }
.woocommerce-order-details .order-again { margin-top: 16px; }

/* Mine lister */
.c-slist__tools { display: flex; gap: 16px; }
.c-slist__items { list-style: none; margin: 0; padding: 0 24px; }
.c-slist__item { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto auto; gap: 16px; align-items: center; padding: 14px 0; border-top: 1px solid var(--tile); }
.c-slist__item:first-child { border-top: 0; }
.c-slist__thumb { width: 56px; height: 56px; border-radius: var(--r); background: var(--tile); position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; color: var(--ghost); }
.c-slist__thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; padding: 8%; mix-blend-mode: multiply; }
.c-slist__text { display: flex; flex-direction: column; gap: 2px; min-width: 0; font-size: 14px; }
.c-slist__text a { font-weight: 600; color: var(--ink); text-decoration: none; }
.c-slist__text a:hover { text-decoration: underline; color: var(--ink); }
.c-slist__text .mono { font-size: 12px; }
.c-slist__price { font-weight: 600; font-feature-settings: "tnum"; white-space: nowrap; font-size: 14px; }
.c-slist__act { display: flex; gap: 6px; }
.c-slist__act .c-iconbtn { width: 40px; height: 40px; }
.c-slist__foot { display: flex; gap: 12px; flex-wrap: wrap; padding: 16px 24px 20px; border-top: 1px solid var(--line); }
.c-slist__new { display: flex; flex-direction: column; gap: 8px; }
.c-slist__newrow { display: flex; gap: 12px; }
.c-slist__newrow .c-input { flex: 1; }

/* Firmaoplysninger */
.c-coform { display: flex; flex-direction: column; gap: 20px; padding: 28px; }
.c-coform__type { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.c-coform__type legend { font-size: 14px; font-weight: 600; padding: 0; margin-bottom: 8px; }
.c-segctl label { position: relative; margin: 0; }
.c-coform__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.c-coform__foot { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }

/* Account forms from WooCommerce (addresses, login & security, lost password) */
.c-account__main .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.c-account__main .woocommerce-Address { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 20px 24px; }
.c-account__main .woocommerce-Address-title { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 12px; }
.c-account__main .woocommerce-Address-title h2, .c-account__main .woocommerce-Address-title h3 { font-size: 18px; }
.c-account__main .woocommerce-Address address { font-style: normal; line-height: 1.6; }
.c-account__main > p:first-of-type:not([class]) { color: var(--muted); font-size: 15px; margin: -8px 0 0; }
.c-account__main form.woocommerce-EditAccountForm, .c-account__main .woocommerce-address-fields, .c-account__main form.edit-account {
	background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 28px;
}
.c-account__main .woocommerce-address-fields__field-wrapper, .c-account__main form.woocommerce-EditAccountForm { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.c-account__main form.woocommerce-EditAccountForm > *, .c-account__main .woocommerce-address-fields__field-wrapper > * { grid-column: 1 / -1; }
.c-account__main .woocommerce-address-fields__field-wrapper > .form-row-first, .c-account__main form.woocommerce-EditAccountForm > .form-row-first { grid-column: 1; }
.c-account__main .woocommerce-address-fields__field-wrapper > .form-row-last, .c-account__main form.woocommerce-EditAccountForm > .form-row-last { grid-column: 2; }
.c-account__main .form-row { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.c-account__main fieldset { border: 1px solid var(--line); border-radius: var(--r-md); padding: 16px 20px 20px; margin: 8px 0 0; display: flex; flex-direction: column; gap: 14px; }
.c-account__main fieldset legend { font-weight: 600; padding: 0 6px; }
.c-account__main .woocommerce-address-fields > p:last-child, .c-account__main form.woocommerce-EditAccountForm > p:last-child { margin: 16px 0 0; }
.c-account__main .clear { display: none; }
.c-account__main .woocommerce-address-fields .button, .c-account__main form.woocommerce-EditAccountForm .button { background: var(--accent); border-color: var(--accent); color: var(--ink); height: 48px; padding: 0 22px; font-size: 15px; }
.c-account__main .woocommerce-address-fields .button:hover, .c-account__main form.woocommerce-EditAccountForm .button:hover { background: var(--accent-h); }
.woocommerce .password-input { position: relative; display: block; }
.woocommerce .show-password-input { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; border: 0; background: transparent; cursor: pointer; }
.woocommerce .show-password-input::before { content: ""; display: block; width: 18px; height: 18px; margin: 0 auto; border-radius: 50% / 60%; border: 2px solid var(--muted); }
.woocommerce .show-password-input.display-password::before { border-color: var(--dark); background: radial-gradient(circle, var(--dark) 30%, transparent 32%); }
.woocommerce-password-strength { font-size: 12px; font-weight: 600; margin-top: 6px; padding: 6px 10px; border-radius: var(--r-sm); }
.woocommerce-password-strength.strong { background: var(--ok-100); color: var(--ok); }
.woocommerce-password-strength.good { background: var(--accent-100); color: var(--warn); }
.woocommerce-password-strength.short, .woocommerce-password-strength.bad { background: #FDF0EE; color: var(--danger); }
.woocommerce-password-hint { font-size: 12px; color: var(--muted); }
@media (max-width: 1100px) {
	.c-cofacts { grid-template-columns: 1fr 1fr; }
	.c-account { grid-template-columns: 220px minmax(0, 1fr); gap: 28px; }
}
@media (max-width: 900px) {
	.c-account { grid-template-columns: 1fr; gap: 20px; }
	.c-account__nav { position: static; }
	.c-account__nav ul { flex-direction: row; overflow-x: auto; gap: 6px; scrollbar-width: none; margin: 0 calc(var(--gutter) * -1); padding: 0 var(--gutter); }
	.c-account__nav ul::-webkit-scrollbar { display: none; }
	.c-account__nav li a { white-space: nowrap; border: 1px solid var(--line); background: #fff; font-size: 14px; padding: 8px 14px; }
	.c-account__co { margin-bottom: 8px; }
	.c-account__logout { margin-top: 4px; padding: 6px 0; }
	.c-account__cols, .c-account__main .woocommerce-Addresses { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
	.c-account__title { font-size: 30px; }
	.c-otable thead { display: none; }
	.c-otable, .c-otable tbody, .c-otable tr, .c-otable td { display: block; width: 100%; }
	.c-otable tr { padding: 14px 16px; border-top: 1px solid var(--tile); display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; }
	.c-otable td { padding: 0 !important; border: 0; }
	.c-otable td:nth-child(2), .c-otable td:nth-child(3) { grid-column: 1 / -1; color: var(--muted); font-size: 13px; }
	.c-otable__act { grid-column: 1 / -1; text-align: left; margin-top: 6px; }
	.c-otable__act .c-btn { width: 100%; }
	.c-acard { padding: 18px 16px; }
	.c-acard--flush { padding: 0; }
	.c-acard--flush > .c-acard__head { padding: 16px; }
	.c-doclist__what { display: none; }
	.c-cofacts { grid-template-columns: 1fr; padding: 18px 16px; }
	.c-slist__items { padding: 0 16px; }
	.c-slist__item { grid-template-columns: 56px minmax(0, 1fr) auto; }
	.c-slist__price { grid-column: 2; }
	.c-slist__act { grid-column: 3; grid-row: 1 / span 2; }
	.c-slist__foot { padding: 14px 16px 16px; }
	.c-slist__newrow { flex-direction: column; }
	.c-coform { padding: 20px 16px; }
	.c-coform__grid, .c-account__main .woocommerce-address-fields__field-wrapper, .c-account__main form.woocommerce-EditAccountForm { grid-template-columns: 1fr; }
	.c-account__main .woocommerce-address-fields__field-wrapper > .form-row-last, .c-account__main form.woocommerce-EditAccountForm > .form-row-last, .c-account__main .woocommerce-address-fields__field-wrapper > .form-row-first, .c-account__main form.woocommerce-EditAccountForm > .form-row-first { grid-column: 1; }
	.c-account__main form.woocommerce-EditAccountForm, .c-account__main .woocommerce-address-fields { padding: 20px 16px; }
	.woocommerce-customer-details .woocommerce-columns { grid-template-columns: 1fr; }
	.c-segctl span, .imeno-customer-type label.radio { font-size: 13px; }
}

/* ---------- Log ind / Opret konto ---------- */
.c-login { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; max-width: 1040px; margin: 24px auto 0; }
.c-login.is-single { grid-template-columns: minmax(0, 520px); justify-content: center; }
.c-login__card { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 40px; display: flex; flex-direction: column; gap: 14px; }
.c-login__card--alt { background: var(--accent-50); border-color: var(--accent-300); }
.c-login__title { font-size: 32px; line-height: 1.1; }
.c-login__lede { margin: 0; color: var(--muted); }
.c-login__form { display: flex; flex-direction: column; gap: 14px; margin-top: 6px; }
.c-login__form .form-row { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.c-login__form label { font-size: 14px; font-weight: 600; }
.c-login__row { flex-direction: row !important; justify-content: space-between; align-items: center; }
.c-login__row .c-check { font-weight: 400 !important; }
.c-login__lost { font-size: 14px; }
.c-login__why { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 15px; }
.c-login__why li { display: flex; gap: 10px; align-items: center; }
.c-login__why .c-icon { color: var(--ok); }
.woocommerce-privacy-policy-text p { font-size: 12px; color: var(--muted); margin: 0; }
.woocommerce-ResetPassword, .woocommerce-form-lost-password { max-width: 520px; margin: 24px auto 0; background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 32px; display: flex; flex-direction: column; gap: 14px; }
.woocommerce-ResetPassword .form-row, .woocommerce-form-lost-password .form-row { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.woocommerce-ResetPassword .button, .woocommerce-form-lost-password .button { background: var(--accent); border-color: var(--accent); color: var(--ink); height: 48px; }
@media (max-width: 900px) {
	.c-login { grid-template-columns: 1fr; gap: 20px; }
	.c-login__card { padding: 24px 20px; }
	.c-login__title { font-size: 26px; }
}

/* ---------- Sammenlign page actions use commerce buttons too ---------- */
.c-woo .woocommerce-message .button, .c-woo .woocommerce-info .button { height: 36px; font-size: 13px; }
