/* =====================================================================
   Skomø — Mini-kurv / Cart Overlay (WooCommerce / Elementor Pro)
   Drawer, backdrop, rows, steppers, footer + Elementor header integration.
   Accent #EF1923, fonts Sora + Inter.
   ===================================================================== */

:root{
  --sk-accent:#EF1923;
  --sk-ink:#0B0B0D;
  --sk-ink-2:#15171A;
  --sk-body:#5B5B5B;
  --sk-muted:#9A9A9A;
  --sk-bg:#F4F4F4;
  --sk-success:#1C6B4A;
  --sk-danger:#C9141D;
  --sk-font-display:'Sora',-apple-system,BlinkMacSystemFont,sans-serif;
  --sk-font-ui:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  --sk-content:1400px; /* match the Elementor header content frame (max 1400, ~20px gutter) */
}

/* overflow-x:clip (NOT hidden) on root so position:sticky works — 'hidden' creates a scroll container that breaks sticky */
html:root,html body{ overflow-x:clip !important; }

/* ===== GLOBAL SITE — side gutter so content never touches the viewport edge =====
   Includes the Elementor header (#24). The header's boxed containers had 0 side
   padding, so below the 1400px content frame the logo/nav/cart/CTA sat flush to
   the edge. Padding goes on .e-con-inner (not the outer .e-con-boxed that carries
   the black/white bar backgrounds) so the full-bleed bars stay edge-to-edge and
   only the content indents — and it matches .site-main so header aligns with page. */
@media (max-width:1448px){
  .site-main .e-con-boxed > .e-con-inner,
  .site-main .elementor-section.elementor-section-boxed > .elementor-container,
  .elementor-location-header .e-con-boxed > .e-con-inner{ padding-left:clamp(34px,5vw,58px); padding-right:clamp(34px,5vw,58px); }
}
/* MOBIL: clamp'ens MINIMUM (34px) er for meget på en smal skærm — 5vw er kun ~19px
   på en 390px-telefon, så minimummet vandt og åd 68px af bredden. 16px i stedet. */
@media (max-width:767px){
  .site-main .e-con-boxed > .e-con-inner,
  .site-main .elementor-section.elementor-section-boxed > .elementor-container,
  .elementor-location-header .e-con-boxed > .e-con-inner{ padding-left:16px; padding-right:16px; }
}

/* ---------- backdrop + drawer shell ---------- */
#skomo-cart-backdrop{
  position:fixed; inset:0; z-index:100000;
  background:rgba(11,11,13,.55);
  opacity:0; pointer-events:none; transition:opacity .3s ease;
}
#skomo-cart-drawer{
  position:fixed; top:0; right:0; z-index:100001;
  height:100%; width:min(424px,94vw);
  background:#fff; box-shadow:-24px 0 60px rgba(11,11,13,.22);
  display:flex; flex-direction:column;
  transform:translateX(105%);
  transition:transform .34s cubic-bezier(.4,0,.2,1);
}
body.skomo-cart-open{ overflow:hidden; }
body.skomo-cart-open #skomo-cart-backdrop{ opacity:1; pointer-events:auto; }
body.skomo-cart-open #skomo-cart-drawer{ transform:translateX(0); }
/* keep the drawer clear of the WP admin bar for logged-in users */
body.admin-bar #skomo-cart-drawer{ top:32px; height:calc(100% - 32px); }
@media (max-width:782px){ body.admin-bar #skomo-cart-drawer{ top:46px; height:calc(100% - 46px); } }

/* ---------- header ---------- */
.skomo-cart__head{
  flex:0 0 auto; padding:22px 24px; border-bottom:1px solid #EFEFEF;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.skomo-cart__head-l{ display:flex; align-items:center; gap:11px; }
.skomo-cart__head-ico{ flex:0 0 auto; color:var(--sk-ink); }
.skomo-cart__title{ margin:0; font-family:var(--sk-font-display); font-weight:700; font-size:19px; letter-spacing:-.01em; color:var(--sk-ink); }
.skomo-cart__count{
  font-family:var(--sk-font-ui); font-size:13px; font-weight:600; color:#fff;
  background:var(--sk-accent); border-radius:999px; min-width:22px; height:22px;
  padding:0 7px; display:flex; align-items:center; justify-content:center;
}
.skomo-cart__close{
  width:38px; height:38px; border-radius:999px; border:none; cursor:pointer;
  background:var(--sk-bg); color:var(--sk-ink-2);
  display:flex; align-items:center; justify-content:center; transition:all .15s ease;
  font-size:15px; line-height:1;
}
.skomo-cart__close:hover{ background:var(--sk-ink-2); color:#fff; }

/* ---------- optional free-shipping bar ---------- */
.skomo-cart__ship{ flex:0 0 auto; padding:16px 24px 4px; }
.skomo-cart__ship p{ margin:0 0 9px; font-family:var(--sk-font-ui); font-size:13px; color:#3A3D41; }
.skomo-cart__ship-track{ height:6px; background:#EEE; border-radius:999px; overflow:hidden; }
.skomo-cart__ship-fill{ height:100%; background:var(--sk-accent); border-radius:999px; transition:width .35s ease; }

/* ---------- body / items ---------- */
.skomo-cart__body{ flex:1 1 auto; overflow-y:auto; padding:6px 24px; }
.skomo-cart__body::-webkit-scrollbar{ width:8px; }
.skomo-cart__body::-webkit-scrollbar-thumb{ background:#DADADA; border-radius:8px; }
.skomo-cart__body .widget_shopping_cart_content{ display:block; }

/* WooCommerce mini-cart list resets */
ul.woocommerce-mini-cart{ list-style:none; margin:0; padding:0; }
li.woocommerce-mini-cart-item,
.skomo-cart__row{
  display:flex; gap:14px; padding:18px 0; margin:0;
  border-bottom:1px solid #F1F1F1; position:relative;
}
/* last row keeps its 1px divider per the design (no :last-child exception) */

.skomo-cart__thumb{
  flex:0 0 auto; width:70px; height:70px; border-radius:12px; background:var(--sk-bg);
  display:flex; align-items:center; justify-content:center; padding:9px; overflow:hidden;
}
.skomo-cart__thumb a{ display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
.skomo-cart__thumb img{ width:100%; height:100%; object-fit:contain; border-radius:4px; margin:0; }

.skomo-cart__info{ flex:1; min-width:0; display:flex; flex-direction:column; }
.skomo-cart__row-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.skomo-cart__namewrap{ min-width:0; }
.skomo-cart__name,
.skomo-cart__name a{
  margin:0; font-family:var(--sk-font-display); font-weight:600; font-size:14px;
  line-height:1.3; color:var(--sk-ink-2); text-decoration:none; display:block;
}
.skomo-cart__name:hover{ color:var(--sk-accent); }
.skomo-cart__variant{ font-family:var(--sk-font-ui); font-size:12.5px; color:var(--sk-muted); margin-top:3px; }
.skomo-cart__row-bot{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:11px; }

/* qty stepper */
.skomo-qty{ display:flex; align-items:center; border:1.5px solid #E6E6E6; border-radius:999px; overflow:hidden; }
.skomo-qty button{
  width:30px; height:30px; border:none; background:#fff; color:var(--sk-ink-2);
  cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .15s ease;
  font-size:16px; line-height:1; padding:0;
}
.skomo-qty button:hover{ background:var(--sk-bg); }
.skomo-qty button[disabled]{ opacity:.4; cursor:not-allowed; }
.skomo-qty__val{ min-width:30px; text-align:center; font-family:var(--sk-font-ui); font-size:14px; font-weight:600; color:var(--sk-ink-2); }
/* PDP: __val er et rigtigt <input> (tastbart antal, kundeønske) — nulstil
   browser-spinners + Elementor-input-chrome så det ligner span'en i kurven */
input.skomo-qty__val{ border:none !important; background:transparent !important; box-shadow:none !important; padding:0 !important; width:8ch; -moz-appearance:textfield; appearance:textfield; }
input.skomo-qty__val::-webkit-outer-spin-button,
input.skomo-qty__val::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
input.skomo-qty__val:focus{ outline:none; }
/* nyere browsere: feltet vokser/krymper med indholdet (fx "10" vs "100.000") */
@supports (field-sizing: content){
	input.skomo-qty__val{ field-sizing:content; width:auto; min-width:3ch; max-width:10ch; }
}

.skomo-cart__line{ font-family:var(--sk-font-display); font-weight:700; font-size:14.5px; color:var(--sk-ink-2); white-space:nowrap; }

/* remove (×) — WooCommerce .remove_from_cart_button */
.skomo-cart__remove,
li.woocommerce-mini-cart-item a.remove{
  position:static; flex:0 0 auto; width:24px; height:24px; border-radius:999px; border:none;
  background:transparent; color:#B4B4B4; cursor:pointer; text-decoration:none;
  display:flex; align-items:center; justify-content:center; font-size:0; line-height:0; transition:all .15s ease;
}
.skomo-cart__remove:hover,
li.woocommerce-mini-cart-item a.remove:hover{ background:var(--sk-bg); color:var(--sk-danger); }
/* hide WooCommerce's text "×" and draw our own glyph */
li.woocommerce-mini-cart-item a.remove::before{ content:"\2715"; font-size:13px; }

/* ---------- empty state ---------- */
.skomo-cart__empty{ text-align:center; padding:64px 16px; }
.skomo-cart__empty-icon{
  width:64px; height:64px; border-radius:999px; background:var(--sk-bg);
  display:flex; align-items:center; justify-content:center; margin:0 auto 18px; color:#B4B4B4;
}
.skomo-cart__empty h3{ margin:0; font-family:var(--sk-font-display); font-weight:700; font-size:17px; color:var(--sk-ink-2); }
.skomo-cart__empty p{ margin:7px 0 20px; font-family:var(--sk-font-ui); font-size:14px; color:#8A8A8A; }
.skomo-cart__empty a{
  display:inline-block; cursor:pointer; text-decoration:none; border:none; background:var(--sk-accent); color:#fff;
  font-family:var(--sk-font-ui); font-weight:600; font-size:14px; padding:12px 22px; border-radius:999px;
}
/* hide the footer when the cart is empty (body class toggled by skomo-cart.js) */
body.skomo-cart-empty .skomo-cart__foot{ display:none; }

/* ---------- footer ---------- */
.skomo-cart__foot{
  flex:0 0 auto; border-top:1px solid #EFEFEF; padding:18px 24px 22px; background:#fff;
}
.skomo-cart__subtotal-row{ display:flex; align-items:baseline; justify-content:space-between; }
.skomo-cart__subtotal-row span:first-child{ font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-body); }
.skomo-cart__subtotal{ font-family:var(--sk-font-display); font-weight:800; font-size:21px; color:var(--sk-ink); white-space:nowrap; }
.skomo-cart__subtotal .woocommerce-Price-amount{ font-family:inherit; font-weight:inherit; }
.skomo-cart__note{ margin:5px 0 0; font-family:var(--sk-font-ui); font-size:12px; color:var(--sk-muted); }

.skomo-cart__btns{ display:flex; gap:11px; margin-top:16px; }
.skomo-cart__btns a{
  flex:1; display:flex; align-items:center; justify-content:center; gap:8px;
  cursor:pointer; text-decoration:none; font-family:var(--sk-font-ui); font-size:15px;
  padding:14px; border-radius:999px; transition:all .15s ease;
}
.skomo-cart__btn-secondary{ font-weight:600; background:#fff; border:1.5px solid var(--sk-ink-2); color:var(--sk-ink-2); }
.skomo-cart__btn-secondary:hover{ background:var(--sk-ink-2); color:#fff; }
.skomo-cart__btn-primary{ font-weight:700; background:var(--sk-accent); color:#fff; border:none; }
.skomo-cart__btn-primary:hover{ filter:brightness(1.08); }

.skomo-cart__continue{
  width:100%; margin-top:12px; background:none; border:none; cursor:pointer;
  font-family:var(--sk-font-ui); font-size:13.5px; font-weight:600; color:#8A8A8A; transition:color .15s ease;
}
.skomo-cart__continue:hover{ color:var(--sk-ink-2); }

/* ---------- responsive ---------- */
@media (max-width:520px){
  #skomo-cart-drawer{ width:100vw; }
  .skomo-cart__btns{ flex-direction:column; }
}

/* =====================================================================
   Elementor header Menu Cart integration
   - Neutralise Elementor's own off-canvas panel (we use our drawer).
   - Brand the live count bubble; hide it at zero.
   ===================================================================== */
.elementor-menu-cart__container{ display:none !important; }
.elementor-menu-cart__toggle_button{ cursor:pointer; }

.elementor-menu-cart__toggle_button .elementor-button-icon{ position:relative; }
.elementor-menu-cart__toggle_button .elementor-button-icon-qty{
  display:flex !important; align-items:center; justify-content:center;
  position:absolute; top:-7px; right:-9px;
  min-width:18px; height:18px; padding:0 5px; box-sizing:border-box;
  background:var(--sk-accent); color:#fff; border-radius:999px;
  font-family:var(--sk-font-ui); font-size:11px; font-weight:600; line-height:1;
}
.elementor-menu-cart__toggle_button .elementor-button-icon-qty[data-counter="0"]{ display:none !important; }

/* =====================================================================
   Fixes — neutralise theme/WooCommerce styling that leaks into the drawer
   ===================================================================== */

/* "Fortsæt med at handle" is a <button>, so Hello/Woo button styles paint it
   like a filled pill. Force it back to plain ghost text. */
button.skomo-cart__continue,
.skomo-cart__foot button.skomo-cart__continue{
  background:none !important; background-color:transparent !important;
  border:none !important; box-shadow:none !important; border-radius:0 !important;
  color:#8A8A8A !important; font-family:var(--sk-font-ui) !important; font-weight:600 !important;
  font-size:13.5px !important; width:100% !important; margin-top:12px !important;
  padding:0 !important; min-height:0 !important; line-height:1.4 !important; text-transform:none !important;
}
button.skomo-cart__continue:hover{ color:var(--sk-ink-2) !important; background:none !important; filter:none !important; }

/* Thumbnail tile: borderless light-grey; strip any inherited img border/shadow. */
.skomo-cart__thumb{ background:var(--sk-bg) !important; border:none !important; box-shadow:none !important; }
.skomo-cart__thumb img{ border:none !important; box-shadow:none !important; background:transparent !important; padding:0 !important; }

/* Primary CTA text must stay WHITE (Hello/Woo link colours paint it dark otherwise). */
.skomo-cart__btn-primary,
.skomo-cart__btn-primary:link,
.skomo-cart__btn-primary:visited,
.skomo-cart__btn-primary:hover,
.skomo-cart__btn-primary:focus{ color:#fff !important; }
.skomo-cart__btn-primary svg{ stroke:#fff !important; }

/* Secondary CTA colour hardening (black text, inverts to white on hover). */
.skomo-cart__btn-secondary,
.skomo-cart__btn-secondary:link,
.skomo-cart__btn-secondary:visited{ color:var(--sk-ink-2) !important; }
.skomo-cart__btn-secondary:hover{ color:#fff !important; }

/* Match the design's slightly larger button label. */
.skomo-cart__btns a{ font-size:16px !important; }

/* Subtotal = black + big; line price = ink + bold. Force the WooCommerce price
   markup (.woocommerce-Price-amount / bdi / currency symbol) to adopt our type —
   the theme otherwise renders it grey and smaller. */
.skomo-cart__subtotal{ color:var(--sk-ink) !important; font-family:var(--sk-font-display) !important; font-weight:800 !important; font-size:21px !important; }
.skomo-cart__line{ color:var(--sk-ink-2) !important; font-family:var(--sk-font-display) !important; font-weight:700 !important; font-size:14.5px !important; }
.skomo-cart__subtotal .woocommerce-Price-amount,
.skomo-cart__subtotal bdi,
.skomo-cart__subtotal .woocommerce-Price-currencySymbol,
.skomo-cart__line .woocommerce-Price-amount,
.skomo-cart__line bdi,
.skomo-cart__line .woocommerce-Price-currencySymbol{
  color:inherit !important; font-family:inherit !important; font-weight:inherit !important; font-size:inherit !important; background:none !important;
}

/* Thumbnail: hard-lock to a 70×70 tile (300px product images + theme box-sizing
   were inflating it). overflow:hidden clips the contained image to the radius. */
.skomo-cart__thumb{
  box-sizing:border-box !important;
  width:70px !important; height:70px !important;
  min-width:70px !important; max-width:70px !important;
  flex:0 0 70px !important; padding:8px !important; overflow:hidden !important;
}
.skomo-cart__thumb a{ width:100% !important; height:100% !important; display:flex !important; }
.skomo-cart__thumb img{ width:100% !important; height:100% !important; max-width:100% !important; object-fit:contain !important; }

/* Remove ×: grey ghost by default, red on hover. WooCommerce core ships
   `a.remove{ color:red !important }`, so we must use !important to win. */
.skomo-cart__remove,
li.woocommerce-mini-cart-item a.remove{ color:#B4B4B4 !important; background:transparent !important; }
.skomo-cart__remove:hover,
li.woocommerce-mini-cart-item a.remove:hover{ color:var(--sk-danger) !important; background:var(--sk-bg) !important; }

/* Row breathing room: WooCommerce's `.woocommerce ul.cart_list li` padding is more
   specific than ours and was crowding the content against the dividers. Win with the
   drawer id + !important, and open up the vertical rhythm (24px each side of a divider). */
#skomo-cart-drawer li.woocommerce-mini-cart-item,
#skomo-cart-drawer .skomo-cart__row{
  padding:24px 0 !important; margin:0 !important; gap:14px !important;
}
/* keep the body side padding; give the first row a touch more from the header line */
#skomo-cart-drawer .skomo-cart__body{ padding-top:2px !important; }
/* space the qty/price row a little further from the title block */
#skomo-cart-drawer .skomo-cart__row-bot{ padding-top:13px !important; }

/* Close button: text × glyph — big + bold so it's solid AND well-sized (per the mockup). */
.skomo-cart__close{
  width:40px !important; height:40px !important;
  font-size:18px !important; font-weight:700 !important; line-height:1 !important;
}

/* Qty steppers must stay white/ink in EVERY state — the theme paints button
   :active/:focus with the accent red otherwise (the + turning red on click). */
.skomo-qty button,
.skomo-qty button:focus,
.skomo-qty button:focus-visible,
.skomo-qty button:active{
  background:#fff !important; color:var(--sk-ink-2) !important;
  border:none !important; box-shadow:none !important; outline:none !important; filter:none !important;
}
.skomo-qty button:hover{ background:var(--sk-bg) !important; }            /* last → wins over :focus */
.skomo-qty button[disabled]{ background:#fff !important; opacity:.4 !important; }

/* Remove ×: lock to a centred circle. WooCommerce ships
   `.widget_shopping_cart .cart_list li a.remove{ position:absolute; top:0; left:0 }`
   plus `height:1em` on a font-size:0 node, which detached the hover circle from the
   glyph. Scope with the drawer id + !important so it can't be beaten. */
#skomo-cart-drawer .skomo-cart__row a.remove,
#skomo-cart-drawer .skomo-cart__remove{
  position:static !important; top:auto !important; left:auto !important; right:auto !important; float:none !important;
  box-sizing:border-box !important;
  width:26px !important; height:26px !important; min-width:26px !important; flex:0 0 auto !important;
  margin:0 !important; padding:0 !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  border-radius:50% !important; background:transparent !important;
  color:#B4B4B4 !important; font-size:0 !important; line-height:1 !important; text-indent:0 !important;
}
#skomo-cart-drawer .skomo-cart__row a.remove::before,
#skomo-cart-drawer .skomo-cart__remove::before{
  content:"\2715" !important; font-size:14px !important; line-height:1 !important; display:block !important;
}
#skomo-cart-drawer .skomo-cart__row a.remove:hover,
#skomo-cart-drawer .skomo-cart__remove:hover{
  background:var(--sk-bg) !important; color:var(--sk-danger) !important;
}

/* Hide the drawer count badge when empty (guests / empty cart). */
.skomo-cart__count[data-count="0"]{ display:none !important; }

/* =====================================================================
   Logged-out login gate (B2B): shown in the drawer body for guests.
   ===================================================================== */
.skomo-cart__gate{ text-align:center; padding:34px 26px 28px; }
.skomo-cart__gate-icon{
  width:74px; height:74px; border-radius:999px; margin:6px auto 22px;
  background:rgba(239,25,35,.10); color:var(--sk-accent);
  display:flex; align-items:center; justify-content:center;
}
.skomo-cart__gate-title{ margin:0; font-family:var(--sk-font-display); font-weight:700; font-size:22px; letter-spacing:-.01em; color:var(--sk-ink); }
.skomo-cart__gate-text{ margin:12px auto 24px; max-width:330px; font-family:var(--sk-font-ui); font-size:15px; line-height:1.5; color:#6E6E6E; }
.skomo-cart__gate-btn-primary,
.skomo-cart__gate-btn-secondary{
  display:flex; align-items:center; justify-content:center; width:100%; box-sizing:border-box;
  padding:15px; border-radius:999px; text-decoration:none;
  font-family:var(--sk-font-ui); font-size:16px; font-weight:700; transition:all .15s ease;
}
.skomo-cart__gate-btn-primary{ background:var(--sk-accent); color:#fff !important; border:none; }
.skomo-cart__gate-btn-primary:hover{ filter:brightness(1.08); }
.skomo-cart__gate-btn-secondary{ background:#fff; color:var(--sk-ink-2) !important; border:1.5px solid var(--sk-ink-2); margin-top:12px; }
.skomo-cart__gate-btn-secondary:hover{ background:var(--sk-ink-2); color:#fff !important; }
.skomo-cart__gate-divider{ height:1px; background:#EFEFEF; margin:26px 0 22px; }
.skomo-cart__gate-list{ list-style:none; margin:0; padding:0; text-align:left; display:flex; flex-direction:column; gap:15px; }
.skomo-cart__gate-list li{ display:flex; align-items:center; gap:13px; font-family:var(--sk-font-ui); font-size:15px; line-height:1.35; color:var(--sk-ink-2); }
.skomo-cart__gate-check{
  flex:0 0 auto; width:30px; height:30px; border-radius:999px;
  background:var(--sk-bg); color:var(--sk-accent);
  display:flex; align-items:center; justify-content:center;
}

/* =====================================================================
   CART PAGE (Kurv) — classic shortcode template override
   ===================================================================== */
.skomo-cartpage{ max-width:var(--sk-content); margin:0 auto; width:100%; padding:8px 0 120px; box-sizing:border-box; color:var(--sk-ink-2); }
@media (max-width:1440px){ .skomo-cartpage{ padding-left:20px; padding-right:20px; } }
.skomo-cartpage *,
.skomo-cartpage *::before,
.skomo-cartpage *::after{ box-sizing:border-box; }

/* breadcrumb */
.skomo-cartpage__crumbs{ font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-muted); margin:6px 0 18px; }
.skomo-cartpage__crumbs a{ color:var(--sk-muted); text-decoration:none; }
.skomo-cartpage__crumbs a:hover{ color:var(--sk-ink-2); }
.skomo-cartpage__crumbs [aria-current="page"]{ color:var(--sk-ink-2); font-weight:600; }
.skomo-cartpage__crumb-sep{ margin:0 8px; }

/* head: title + steps */
.skomo-cartpage__head{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; margin-bottom:26px; }
.skomo-cartpage__title{ margin:0; font-family:var(--sk-font-display); font-weight:800; font-size:28px; letter-spacing:-.02em; color:var(--sk-ink); }
/* Antallet er en oplysning, ikke en del af overskriften — derfor mindre og lettere.
   em (ikke px) så det skalerer med titlen på mobil og i tom-tilstanden. */
.skomo-cartpage__title span{ color:#B9B9B9; font-weight:600; font-size:.6em; letter-spacing:0; margin-left:3px; }

.skomo-steps{ list-style:none; display:flex; align-items:center; gap:10px; margin:0; padding:0; font-family:var(--sk-font-ui); font-size:15px; }
.skomo-steps__item{ display:flex; align-items:center; gap:9px; color:var(--sk-muted); font-weight:500; }
.skomo-steps__item.is-active{ color:var(--sk-ink); font-weight:600; }
.skomo-steps__num{
  width:26px; height:26px; border-radius:999px; background:#EDEDED; color:var(--sk-muted);
  display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700;
}
.skomo-steps__item.is-active .skomo-steps__num{ background:var(--sk-accent); color:#fff; }
.skomo-steps__sep{ width:34px; height:2px; background:#E4E4E4; border-radius:2px; }

/* grid: items + summary */
.skomo-cartpage__grid{ display:grid; grid-template-columns:minmax(0,1fr) 384px; gap:34px; align-items:start; }
.skomo-cartpage__main{ min-width:0; border-top:1px solid #ECECEC; }

/* item row */
.skomo-cartpage__row{
  display:grid; grid-template-columns:88px minmax(0,1fr) auto auto 36px;
  gap:0 22px; align-items:center; padding:26px 0; border-bottom:1px solid #ECECEC;
}
.skomo-cartpage__thumb{
  align-self:start; width:88px; height:88px; border-radius:14px; background:var(--sk-bg);
  display:flex; align-items:center; justify-content:center; padding:10px; overflow:hidden;
}
.skomo-cartpage__thumb a{ display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
.skomo-cartpage__thumb img{ width:100%; height:100%; object-fit:contain; margin:0; }

.skomo-cartpage__info{ align-self:start; min-width:0; }
.skomo-cartpage__name{ display:block; font-family:var(--sk-font-display); font-weight:700; font-size:18px; line-height:1.3; color:var(--sk-ink-2); text-decoration:none; }
.skomo-cartpage__name:hover{ color:var(--sk-accent); }
.skomo-cartpage__meta{ margin-top:6px; font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-muted); }
.skomo-cartpage__dot{ margin:0 7px; }
.skomo-cartpage__priceline{ margin-top:8px; display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.skomo-cartpage__perstk{ font-family:var(--sk-font-ui); font-size:14px; font-weight:600; color:var(--sk-ink-2); }
.skomo-cartpage__perstk span{ color:var(--sk-muted); font-weight:400; }
.skomo-cartpage__discount{ font-family:var(--sk-font-ui); font-size:13px; font-weight:700; color:var(--sk-accent); }
.skomo-cartpage__note-toggle{
  margin-top:12px; background:none; border:none; padding:0; cursor:pointer;
  font-family:var(--sk-font-ui); font-size:14px; font-weight:500; color:#7A7A7A; display:inline-flex; align-items:center; gap:7px; transition:color .15s ease;
}
.skomo-cartpage__note-toggle,
.skomo-cartpage__note-toggle:hover,
.skomo-cartpage__note-toggle:focus,
.skomo-cartpage__note-toggle:active{
  background:none !important; background-color:transparent !important;
  border:none !important; box-shadow:none !important; outline:none !important; filter:none !important;
}
.skomo-cartpage__note-toggle:hover{ color:var(--sk-ink-2) !important; }
.skomo-cartpage__note-plus{ font-size:16px; font-weight:600; color:var(--sk-ink-2); }
.skomo-cartpage__note{ margin-top:10px; }
.skomo-cartpage__note-input{
  width:100%; max-width:340px; padding:9px 13px; border:1.5px solid #E6E6E6; border-radius:10px;
  font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-ink-2); outline:none;
}
.skomo-cartpage__note-input:focus{ border-color:var(--sk-ink-2); }

/* qty (bigger than the drawer stepper) */
.skomo-cartpage__qtycol{ align-self:center; }
.skomo-cartpage .skomo-qty{ border-radius:999px; }
.skomo-cartpage .skomo-qty button{ width:40px !important; height:40px !important; font-size:18px; }
.skomo-cartpage .skomo-qty__val{ min-width:46px; font-size:16px; }

.skomo-cartpage__line{ align-self:center; font-family:var(--sk-font-display); font-weight:700; font-size:18px; color:var(--sk-ink); white-space:nowrap; text-align:right; }
.skomo-cartpage__line .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; font-weight:inherit !important; font-size:inherit !important; }

/* remove × (grey circle, red on hover; beats Woo's red !important) */
.skomo-cartpage__remove{ align-self:start; }
.skomo-cartpage .skomo-cartpage__x{
  display:flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:999px;
  background:var(--sk-bg) !important; color:#9A9A9A !important; text-decoration:none; font-size:0 !important; line-height:1 !important; transition:all .15s ease;
}
.skomo-cartpage .skomo-cartpage__x::before{ content:"\00d7"; font-size:21px; }
.skomo-cartpage .skomo-cartpage__x:hover{ background:#FBE2E3 !important; color:var(--sk-danger) !important; }

/* list actions */
.skomo-cartpage__actions{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding:22px 2px 0; }
.skomo-cartpage__continue{ display:inline-flex; align-items:center; gap:9px; font-family:var(--sk-font-ui); font-weight:600; font-size:15px; color:var(--sk-ink-2); text-decoration:none; }
.skomo-cartpage__continue:hover{ color:var(--sk-accent); }
.skomo-cartpage__exmoms{ font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-muted); }
.skomo-cartpage__update{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

/* summary card */
.skomo-cartpage__summary{
  position:sticky; top:24px; background:#fff; border:1px solid #ECECEC; border-radius:18px;
  padding:26px 26px 28px; box-shadow:0 10px 40px rgba(11,11,13,.05);
}
.skomo-sum__title{ margin:0 0 18px; font-family:var(--sk-font-display); font-weight:700; font-size:20px; color:var(--sk-ink); }
.skomo-sum__rows{ display:flex; flex-direction:column; gap:13px; }
.skomo-sum__row{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; font-family:var(--sk-font-ui); font-size:15px; color:var(--sk-ink-2); }
.skomo-sum__row > span:first-child{ color:var(--sk-body); }
.skomo-sum__muted{ color:var(--sk-muted) !important; }
.skomo-sum__subtotal,.skomo-sum__moms{ font-weight:600; white-space:nowrap; }
.skomo-sum__subtotal .woocommerce-Price-amount,.skomo-sum__moms .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; font-weight:inherit !important; font-size:inherit !important; }
.skomo-sum__divider{ height:1px; background:#ECECEC; margin:20px 0 16px; }
.skomo-sum__total-row{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.skomo-sum__total-label{ font-family:var(--sk-font-display); font-weight:700; font-size:19px; color:var(--sk-ink); }
.skomo-sum__total{ font-family:var(--sk-font-display); font-weight:800; font-size:28px; color:var(--sk-ink); white-space:nowrap; }
.skomo-sum__total .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; font-weight:inherit !important; font-size:inherit !important; }
.skomo-sum__incl{ text-align:right; font-family:var(--sk-font-ui); font-size:13px; color:var(--sk-muted); margin-top:2px; }

/* RABATKODE / coupon field hidden per client request (re-enable: display:flex). */
.skomo-sum__coupon{ display:none; gap:10px; margin:22px 0 0; }
.skomo-sum__coupon-input{
  flex:1; min-width:0; padding:13px 15px; border:1.5px solid #E1E1E1; border-radius:12px;
  font-family:var(--sk-font-ui); font-size:14px; letter-spacing:.02em; color:var(--sk-ink-2); outline:none; text-transform:uppercase;
}
.skomo-sum__coupon-input::placeholder{ color:#A8A8A8; letter-spacing:.06em; }
.skomo-sum__coupon-input:focus{ border-color:var(--sk-ink-2); }
.skomo-sum__coupon-btn{
  flex:0 0 auto; padding:13px 22px; border:1.5px solid var(--sk-ink-2); border-radius:12px; background:#fff; cursor:pointer;
  font-family:var(--sk-font-ui); font-size:14px; font-weight:600; color:var(--sk-ink-2); transition:all .15s ease;
}
.skomo-sum__coupon-btn:hover{ background:var(--sk-ink-2); color:#fff; }

.skomo-sum__checkout{
  display:flex; align-items:center; justify-content:center; gap:10px; width:100%; margin-top:16px;
  padding:17px; border-radius:999px; background:var(--sk-accent); color:#fff !important; text-decoration:none;
  font-family:var(--sk-font-ui); font-weight:700; font-size:16px; letter-spacing:.04em; text-transform:uppercase; transition:filter .15s ease;
}
.skomo-sum__checkout:hover{ filter:brightness(1.08); }
.skomo-sum__faktura{ margin:16px 0 0; text-align:center; font-family:var(--sk-font-ui); font-size:13px; line-height:1.5; color:var(--sk-muted); }

.skomo-sum__trust{ list-style:none; margin:18px 0 0; padding:18px 0 0; border-top:1px solid #ECECEC; display:flex; flex-direction:column; gap:13px; }
.skomo-sum__trust li{ display:flex; align-items:center; gap:11px; font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-ink-2); }
.skomo-sum__trust-ico{ flex:0 0 auto; color:var(--sk-accent); display:flex; align-items:center; justify-content:center; }

/* empty / gate on the cart page */
.skomo-cartpage--empty .skomo-cartpage__title{ font-size:40px; margin-bottom:20px; }
.skomo-cartpage__emptywrap{ max-width:460px; margin:10px auto 40px; border:1px solid #ECECEC; border-radius:18px; }

/* responsive */
@media (max-width:980px){
  .skomo-cartpage__grid{ grid-template-columns:1fr; gap:26px; }
  .skomo-cartpage__summary{ position:static; }
  .skomo-cartpage__title{ font-size:32px; }
}
@media (max-width:680px){
  .skomo-cartpage__row{ grid-template-columns:64px minmax(0,1fr) auto; grid-template-areas:"thumb info remove" "thumb qty line"; gap:6px 16px; }
  .skomo-cartpage__thumb{ grid-area:thumb; width:64px; height:64px; }
  .skomo-cartpage__info{ grid-area:info; }
  .skomo-cartpage__qtycol{ grid-area:qty; align-self:center; }
  .skomo-cartpage__line{ grid-area:line; align-self:center; }
  .skomo-cartpage__remove{ grid-area:remove; justify-self:end; }
  .skomo-cartpage__head{ gap:16px; }
  .skomo-steps{ font-size:13px; }
  .skomo-steps__sep{ width:18px; }
}

/* =====================================================================
   PRODUCT PAGE (PDP) — content-single-product.php override
   ===================================================================== */
.skomo-pdp{ max-width:var(--sk-content); margin:0 auto; width:100%; padding:28px 0 116px; box-sizing:border-box; color:var(--sk-ink-2); }
.skomo-pdp *,.skomo-pdp *::before,.skomo-pdp *::after{ box-sizing:border-box; }
@media (max-width:1440px){ .skomo-pdp{ padding-left:20px; padding-right:20px; } }

.skomo-pdp__crumbs{ font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-muted); margin:0 0 28px; }
.skomo-pdp__crumbs a{ color:var(--sk-muted); text-decoration:none; }
.skomo-pdp__crumbs a:hover{ color:var(--sk-ink-2); }
.skomo-pdp__crumb-sep{ margin:0 8px; }
.skomo-pdp__crumb-cur{ color:var(--sk-ink-2); }

.skomo-pdp__grid{ display:grid; grid-template-columns:minmax(0,680px) minmax(400px,1fr); gap:48px; align-items:start; }

/* ---- gallery ---- */
.skomo-pdp__gallery{ position:sticky; top:20px; align-self:start; }
.skomo-pdp__stage{ position:relative; background:var(--sk-bg); border-radius:20px; padding:34px; display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; max-width:680px; max-height:680px; }
.skomo-pdp__badge{ position:absolute; top:18px; left:18px; z-index:2; background:var(--sk-accent); color:#fff; font-family:var(--sk-font-ui); font-weight:700; font-size:12px; letter-spacing:.05em; text-transform:uppercase; padding:7px 13px; border-radius:999px; }
.skomo-pdp__zoom{ position:absolute; top:18px; right:18px; z-index:2; width:42px; height:42px; border-radius:999px; background:#fff; color:var(--sk-ink-2); display:flex; align-items:center; justify-content:center; box-shadow:0 2px 10px rgba(0,0,0,.08); text-decoration:none; transition:all .15s ease; }
.skomo-pdp__zoom:hover{ background:var(--sk-ink-2); color:#fff; }
.skomo-pdp__main{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:#fff; border-radius:12px; overflow:hidden; }
.skomo-pdp__mainimg{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; transition:opacity .12s ease; }
.skomo-pdp__stage.is-loading .skomo-pdp__mainimg{ opacity:.3; }
.skomo-pdp__stage.is-loading::after{ content:""; position:absolute; top:50%; left:50%; width:38px; height:38px; margin:-19px 0 0 -19px; z-index:4; border:3px solid rgba(11,11,13,.15); border-top-color:var(--sk-ink-2); border-radius:50%; animation:skomo-spin .7s linear infinite; }
@keyframes skomo-spin{ to{ transform:rotate(360deg); } }
/* Elementor lightbox (produkt-zoom): grå baggrund + mørke UI-ikoner + brand-rød loader */
body.single-product .elementor-lightbox{ --lightbox-ui-color:#15171A; --lightbox-ui-color-hover:#EF1923; --lightbox-text-color:#15171A; background-color:#F4F4F4 !important; }
body.single-product .elementor-lightbox .swiper-lazy-preloader{ border-color:rgba(239,25,35,.2) !important; border-top-color:#EF1923 !important; }
body.single-product .elementor-lightbox .elementor-swiper-button,
body.single-product .elementor-lightbox .elementor-slideshow__header *{ color:#15171A !important; }
body.single-product .elementor-lightbox .elementor-swiper-button:hover,
body.single-product .elementor-lightbox .elementor-slideshow__header a:hover{ color:#EF1923 !important; }
.skomo-pdp__dots{ position:absolute; top:20px; left:50%; transform:translateX(-50%); display:flex; gap:7px; }
.skomo-pdp__dot{ width:7px; height:7px; border-radius:999px; background:#C9C9C9; }
.skomo-pdp__dot.is-active{ background:var(--sk-ink-2); }
.skomo-pdp__nav{ position:absolute; top:50%; transform:translateY(-50%); z-index:3; width:42px; height:42px; border-radius:999px; border:none; background:#fff; color:var(--sk-ink-2); box-shadow:0 2px 10px rgba(0,0,0,.1); cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .15s ease, color .15s ease; }
.skomo-pdp__nav:hover,.skomo-pdp__nav:focus{ background:var(--sk-ink-2) !important; color:#fff; box-shadow:none; outline:none; }
.skomo-pdp__nav--prev{ left:14px; }
.skomo-pdp__nav--next{ right:14px; }
.skomo-pdp__thumbs{ display:grid; grid-template-columns:repeat(6,1fr); gap:10px; margin-top:14px; max-width:680px; }
.skomo-pdp__thumb{ width:100%; aspect-ratio:1/1; border-radius:12px; background:var(--sk-bg); border:2px solid transparent; padding:8px; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:border-color .15s ease; }
.skomo-pdp__thumb.is-active{ border-color:var(--sk-accent); }
.skomo-pdp__thumb,.skomo-pdp__thumb:hover,.skomo-pdp__thumb:focus,.skomo-pdp__thumb:active{ background-color:var(--sk-bg) !important; box-shadow:none; }
.skomo-pdp__thumb:focus:not(:focus-visible){ outline:none; }
.skomo-pdp__thumb:focus-visible{ outline:2px solid var(--sk-accent); outline-offset:2px; }
.skomo-pdp__thumb img{ width:100%; height:100%; object-fit:contain; margin:0; border-radius:8px; }

/* ---- summary ---- */
.skomo-pdp__eyebrow{ font-family:var(--sk-font-ui); font-size:13px; font-weight:500; letter-spacing:.04em; text-transform:uppercase; color:var(--sk-muted); }
.skomo-pdp__sku{ color:var(--sk-ink-2); font-weight:600; }
.skomo-pdp__eyebrow-sep{ margin:0 8px; }
.skomo-pdp__title{ margin:10px 0 0; font-family:var(--sk-font-display); font-weight:800; font-size:34px; line-height:1.1; letter-spacing:-.02em; color:var(--sk-ink); }
.skomo-pdp__desc{ margin:12px 0 0; font-family:var(--sk-font-ui); font-size:15.5px; line-height:1.6; color:#5B5B5B; }
.skomo-pdp__desc p{ margin:0 0 8px; }
.skomo-pdp__desc p:last-child{ margin-bottom:0; }
.skomo-pdp__desc.skomo-clamp{ max-height:4.8em; overflow:hidden; -webkit-mask-image:linear-gradient(180deg,#000 62%,transparent); mask-image:linear-gradient(180deg,#000 62%,transparent); }
.skomo-pdp__desc.skomo-clamp.is-open{ max-height:none; -webkit-mask-image:none; mask-image:none; }
.skomo-pdp__readmore{ margin:8px 0 0; padding:0; background:none; border:none; cursor:pointer; font-family:var(--sk-font-ui); font-size:14.5px; font-weight:600; color:var(--sk-ink); text-decoration:underline; text-underline-offset:3px; }
.skomo-pdp__readmore:hover{ text-decoration:underline; }
.skomo-pdp__chips{ display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.skomo-pdp__chip{ display:inline-flex; align-items:center; gap:7px; background:var(--sk-bg); border-radius:999px; padding:8px 14px; font-family:var(--sk-font-ui); font-size:13.5px; font-weight:500; color:var(--sk-ink-2); }
.skomo-pdp__chip svg{ color:var(--sk-accent); }
.skomo-pdp__divider{ height:1px; background:#ECECEC; margin:18px 0; }

/* selectors */
.skomo-pdp__selgroup{ margin-bottom:26px; }
.skomo-pdp__selrow{ display:flex; flex-wrap:wrap; gap:14px 32px; }
.skomo-pdp__selrow .skomo-pdp__selgroup{ flex:0 1 auto; margin-bottom:0; }
.skomo-pdp__selrow .skomo-pdp__pill{ border-radius:999px; }   /* Tryk = round chips */
.skomo-pdp__sellabel{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:11px; font-family:var(--sk-font-ui); font-weight:600; font-size:15px; color:var(--sk-ink-2); }
.skomo-pdp__selnote{ font-weight:400; color:var(--sk-muted); font-size:14px; }
.skomo-pdp__selopts{ display:flex; flex-wrap:wrap; gap:10px; }
.skomo-pdp__pill{ background:#fff; border:1.5px solid #E2E2E2; border-radius:12px; padding:11px 18px; cursor:pointer; font-family:var(--sk-font-ui); font-size:14.5px; font-weight:600; color:var(--sk-ink-2); transition:all .15s ease; }
.skomo-pdp__pill:hover{ border-color:var(--sk-ink-2); }
.skomo-pdp__pill.is-active{ background:var(--sk-ink-2); border-color:var(--sk-ink-2); color:#fff; }
.skomo-pdp__swatch{ display:inline-flex; align-items:center; gap:9px; background:#fff; border:1.5px solid #E2E2E2; border-radius:999px; padding:7px 16px 7px 8px; cursor:pointer; font-family:var(--sk-font-ui); font-size:14.5px; font-weight:600; color:var(--sk-ink-2); transition:all .15s ease; }
/* valgt swatch = sort pill (samme logik som pills); hvid ring om prikken
   holder farven synlig — også sort-på-sort (nummerpladerammer!) */
.skomo-pdp__swatch.is-active{ background:var(--sk-ink-2); border-color:var(--sk-ink-2); color:#fff; }
.skomo-pdp__swatch-dot{ width:26px; height:26px; border-radius:999px; border:1px solid rgba(0,0,0,.1); }
.skomo-pdp__swatch.is-active .skomo-pdp__swatch-dot{ border-color:transparent; box-shadow:0 0 0 2px #fff; }

/* mængderabat tiers */
.skomo-pdp__tiers{ background:#F8F8F8; border-radius:16px; padding:18px; margin:20px 0 24px; }
.skomo-pdp__tiers-head{ display:flex; align-items:center; gap:9px; font-family:var(--sk-font-ui); font-weight:700; font-size:14.5px; color:var(--sk-ink-2); margin-bottom:14px; }
.skomo-pdp__tiers-head svg{ color:var(--sk-accent); }
.skomo-pdp__tiers-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:11px; }
.skomo-pdp__tier{ position:relative; background:#fff; border:1.5px solid #E6E6E6; border-radius:12px; padding:14px 14px 12px; cursor:pointer; transition:all .15s ease; }
.skomo-pdp__tier:hover{ border-color:#C9C9C9; }
.skomo-pdp__tier.is-active{ border-color:var(--sk-accent); box-shadow:0 0 0 1px var(--sk-accent) inset; }
.skomo-pdp__tier-badge{ position:absolute; top:-9px; right:10px; background:var(--sk-accent); color:#fff; font-family:var(--sk-font-ui); font-weight:700; font-size:11px; padding:3px 8px; border-radius:999px; }
.skomo-pdp__tier-range{ display:block; font-family:var(--sk-font-ui); font-size:13px; color:var(--sk-muted); margin-bottom:7px; }
.skomo-pdp__tier-price{ font-family:var(--sk-font-display); font-weight:700; font-size:17px; color:var(--sk-ink-2); }
.skomo-pdp__tier-price .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; font-weight:inherit !important; font-size:inherit !important; }
.skomo-pdp__tier.is-active .skomo-pdp__tier-price{ color:var(--sk-accent); }
.skomo-pdp__tier-unit{ font-family:var(--sk-font-ui); font-size:12.5px; color:var(--sk-muted); margin-left:2px; }

/* price */
/* PDP: vare uden for kundens sortiment (BC skomo_pdp_unavailable) */
.skomo-pdp__unavailable{ margin:6px 0 20px; padding:22px 24px; background:#FAFAFA; border:1px solid #ECECEC; border-radius:16px; }
.skomo-pdp__unavailable-title{ display:block; font-family:var(--sk-font-display); font-weight:700; font-size:17px; color:var(--sk-ink); margin-bottom:6px; }
.skomo-pdp__unavailable p{ margin:0 0 16px; font-family:var(--sk-font-ui); font-size:14px; line-height:1.55; color:#6A6D71; }
.skomo-pdp__priceblock{ margin:4px 0 18px; }
.skomo-pdp__price{ font-family:var(--sk-font-display); font-weight:800; font-size:34px; color:var(--sk-ink); }
.skomo-pdp__price .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; font-weight:inherit !important; font-size:inherit !important; }
.skomo-pdp__price-unit{ font-family:var(--sk-font-ui); font-size:16px; color:var(--sk-muted); margin-left:6px; }
.skomo-pdp__price-sub{ margin-top:2px; font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-muted); }

/* add to cart */
.skomo-pdp__cart{ display:flex; align-items:stretch; gap:14px; margin:0 !important; padding:0 !important; }
.skomo-pdp__cart > *{ margin:0 !important; }   /* kill Woo/Elementor button+input side-margins → qty flush left, add-btn flush right (gap:14px handles the middle) */
.skomo-pdp .skomo-pdp__cart .skomo-qty{ border-radius:999px; }
.skomo-pdp .skomo-pdp__cart .skomo-qty button{ width:44px !important; height:44px !important; font-size:18px; }
.skomo-pdp .skomo-pdp__cart .skomo-qty__val{ min-width:48px; font-size:16px; }
.skomo-pdp__add{ flex:1; border:none; border-radius:999px; background:var(--sk-accent); color:#fff !important; cursor:pointer; font-family:var(--sk-font-ui); font-weight:700; font-size:16px; padding:15px 22px; transition:filter .15s ease; }
.skomo-pdp__add:hover{ filter:brightness(1.08); }
.skomo-pdp__add.is-loading{ opacity:.7; cursor:default; }
.skomo-pdp__add.is-added,.skomo-pdp__add.is-added:hover,.skomo-pdp__add.is-added:focus{ background-color:var(--sk-success) !important; filter:none; }
.skomo-pdp__add-tick{ font-weight:800; }
.skomo-pdp__cart .added_to_cart,.skomo-pdp .added_to_cart{ display:none !important; }

/* ===== Brand the default WooCommerce notices (info / success / error) ===== */
.woocommerce-message,.woocommerce-info,.woocommerce-error{ font-family:var(--sk-font-ui); font-size:14.5px; line-height:1.5; color:var(--sk-ink-2); background:#fff; border:1px solid #ECECEC; border-left:4px solid var(--sk-ink-2); border-radius:12px; padding:14px 18px; box-shadow:0 4px 14px rgba(11,11,13,.05); list-style:none; max-width:var(--sk-content); margin:0 auto 18px; box-sizing:border-box; }
.woocommerce-message{ border-left-color:var(--sk-success); }
.woocommerce-error{ border-left-color:var(--sk-accent); }
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{ display:none !important; }
.woocommerce-message a.button,.woocommerce-info a.button,.woocommerce-error a.button{ background:none !important; color:var(--sk-accent) !important; padding:0 0 0 6px !important; font-weight:700; text-decoration:underline; box-shadow:none !important; border:none !important; min-height:0 !important; }
@media (max-width:1440px){ .woocommerce-message,.woocommerce-info,.woocommerce-error{ margin-left:20px; margin-right:20px; } }
/* Kurv-side: skjul Woo's default "Din kurv er tom."-notits — vi viser vores egen tomme-kurv/login-gate */
.woocommerce-cart .wc-empty-cart-message,
.woocommerce-cart .cart-empty.woocommerce-info,
.woocommerce-page .wc-empty-cart-message{ display:none !important; }

/* ===================================================================
   LOGIN / REGISTER (My Account, udlogget) — design_handoff_woo_login
   =================================================================== */
.skomo-login{ max-width:var(--sk-content); margin:0 auto; padding:28px 0 96px; font-family:var(--sk-font-ui); color:var(--sk-ink-2); box-sizing:border-box; }
@media (max-width:1440px){ .skomo-login{ padding-left:20px; padding-right:20px; } }
.skomo-login *,.skomo-login *::before,.skomo-login *::after{ box-sizing:border-box; }
.skomo-login__title{ font-family:var(--sk-font-display); font-weight:800; font-size:clamp(28px,4vw,42px); letter-spacing:-.025em; line-height:1.08; margin:0 0 12px; color:var(--sk-ink); }
.skomo-login__intro{ font-size:15.5px; line-height:1.6; color:var(--sk-body); max-width:600px; margin:0 0 40px; }
.skomo-login__grid{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; }
@media (max-width:920px){ .skomo-login__grid{ grid-template-columns:1fr; } }
.skomo-login__card{ background:#fff; border:1px solid #ECECEC; border-radius:18px; padding:30px 32px; box-shadow:0 18px 44px rgba(11,11,13,.13); }
.skomo-login__group{ margin-bottom:18px; }
.skomo-login__label{ display:block; font-size:13px; font-weight:600; color:var(--sk-ink-2); margin-bottom:6px; }
.skomo-login__label span{ color:var(--sk-accent); }
.skomo-login__input{ width:100%; border:1.5px solid #ECECEC; border-radius:11px; padding:12px 14px; font-size:14.5px; font-family:var(--sk-font-ui); color:var(--sk-ink-2); outline:none; transition:border-color .15s ease; }
.skomo-login__input:focus{ border-color:var(--sk-accent); }
.skomo-login__input::placeholder{ color:var(--sk-muted); }
.skomo-login__pw{ position:relative; display:flex; align-items:center; }
.skomo-login__pw .skomo-login__input{ padding-right:44px; flex:1; }
.skomo-login__eye{ position:absolute; right:8px; width:30px; height:30px; padding:6px; background:none; border:none; cursor:pointer; color:var(--sk-muted); display:flex; align-items:center; justify-content:center; }
.skomo-login__eye svg{ width:18px; height:18px; }
.skomo-login__eye:hover,.skomo-login__eye.is-on{ color:var(--sk-ink-2); }
.skomo-login__forgot{ display:inline-block; font-size:13.5px; color:var(--sk-muted); text-decoration:none; margin-top:8px; }
.skomo-login__forgot:hover{ color:var(--sk-ink-2); text-decoration:underline; }
.skomo-login__criteria{ font-size:12px; color:var(--sk-muted); margin:8px 0 0; padding-left:18px; }
.skomo-login__criteria li{ margin:2px 0; }
.skomo-login__btn{ display:inline-flex; align-items:center; justify-content:center; gap:9px; width:100%; font-family:var(--sk-font-ui); font-weight:700; font-size:15px; letter-spacing:.02em; text-transform:uppercase; padding:14px 28px; border-radius:999px; border:none; cursor:pointer; text-decoration:none; transition:filter .15s ease, background-color .15s ease, color .15s ease; }
.skomo-login__btn--primary{ background:var(--sk-accent); color:#fff; margin-top:24px; }
.skomo-login__btn--primary:hover{ filter:brightness(1.08); color:#fff; }
.skomo-login__btn--secondary{ background:#fff; border:1.5px solid var(--sk-ink-2); color:var(--sk-ink-2); }
.skomo-login__btn--secondary:hover{ background:var(--sk-ink-2); color:#fff; }
.skomo-login__form--register{ display:none; }
.skomo-login.is-register .skomo-login__form--login{ display:none; }
.skomo-login.is-register .skomo-login__form--register{ display:block; }
.skomo-login__switchrow{ border-top:1px solid #ECECEC; margin-top:24px; padding-top:20px; }
.skomo-login__toggle{ display:inline-flex; align-items:center; gap:10px; background:none; border:none; padding:0; cursor:pointer; font-family:var(--sk-font-ui); font-size:14px; font-weight:600; color:var(--sk-ink-2); }
.skomo-login__switch{ width:44px; height:24px; border-radius:999px; background:#ECECEC; position:relative; flex:0 0 auto; transition:background .18s ease; }
.skomo-login__switch::after{ content:""; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:999px; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.2); transition:transform .18s ease; }
.skomo-login.is-register .skomo-login__switch{ background:var(--sk-accent); }
.skomo-login.is-register .skomo-login__switch::after{ transform:translateX(20px); }
.skomo-login__info{ background:var(--sk-bg); border:1px solid #ECECEC; border-radius:18px; padding:26px 28px; }
.skomo-login__info h2{ font-family:var(--sk-font-display); font-weight:700; font-size:18px; letter-spacing:-.01em; margin:0 0 20px; color:var(--sk-ink); }
.skomo-login__benefit{ display:flex; align-items:flex-start; gap:12px; font-size:14px; line-height:1.55; color:var(--sk-body); }
.skomo-login__benefit + .skomo-login__benefit{ margin-top:16px; }
.skomo-login__benefit strong{ color:var(--sk-ink-2); }
.skomo-login__benefit-ico{ width:28px; height:28px; border-radius:999px; background:rgba(239,25,35,.13); color:var(--sk-accent); display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
.skomo-login__info-foot{ border-top:1px solid #ECECEC; margin-top:24px; padding-top:24px; }
.skomo-login .woocommerce-error,.skomo-login .woocommerce-message,.skomo-login .woocommerce-info{ margin-left:0; margin-right:0; }
@media (max-width:560px){ .skomo-login__card{ padding:22px 20px; } .skomo-login__title{ font-size:28px; } }

/* ============ LOGIN v2 — fane-skifter + mørkt B2B-panel (Login.dc.html) ============ */
.skomo-login--v2{ background:#fff; padding:80px clamp(18px,4vw,48px) 150px; width:100vw; margin-left:calc(50% - 50vw); max-width:none; }
/* Kill the Elementor single-template container's outer margins on the account page so this
   full-bleed band meets header & footer flush (removes the white bands above/below). */
.woocommerce-account .elementor-location-single > .e-con.e-parent{ margin-top:0 !important; margin-bottom:0 !important; }
.skomo-login--v2 .skomo-login__grid{ display:grid; grid-template-columns:1fr 1fr; gap:0; max-width:1060px; margin:0 auto; background:#fff; border-radius:22px; overflow:hidden; box-shadow:0 30px 70px rgba(11,11,13,.16); align-items:stretch; }
@media (max-width:900px){ .skomo-login--v2 .skomo-login__grid{ grid-template-columns:1fr; } }

/* Left panel */
.skomo-login--v2 .skomo-login__panel{ padding:28px clamp(24px,3.4vw,44px) 30px; }
.skomo-login--v2 .skomo-login__tabs{ display:flex; gap:4px; background:#F1F1F2; border-radius:999px; padding:5px; margin-bottom:20px; }
.skomo-login--v2 .skomo-login__tab{ flex:1; border:none; background:none; cursor:pointer; font-family:var(--sk-font-ui); font-weight:600; font-size:14.5px; color:var(--sk-body); padding:11px 10px; border-radius:999px; transition:background .15s ease, color .15s ease, box-shadow .15s ease; }
.skomo-login--v2 .skomo-login__tab.is-active{ background:#fff; color:var(--sk-ink); box-shadow:0 2px 8px rgba(11,11,13,.10); }

.skomo-login--v2 .skomo-login__h{ font-family:var(--sk-font-display); font-weight:800; font-size:clamp(24px,2.4vw,29px); letter-spacing:-.02em; line-height:1.1; color:var(--sk-ink); margin:0 0 8px; }
.skomo-login--v2 .skomo-login__sub{ font-size:14.5px; line-height:1.55; color:var(--sk-body); margin:0 0 18px; }
.skomo-login--v2 .skomo-login__group{ margin-bottom:14px; }
.skomo-login--v2 .skomo-login__grid2{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.skomo-login--v2 .skomo-login__label{ font-size:13px; font-weight:600; color:var(--sk-ink-2); margin-bottom:7px; }
.skomo-login--v2 .skomo-login__label span{ color:var(--sk-accent); }
.skomo-login--v2 .skomo-login__input{ width:100%; border:1.5px solid #E6E6E8; border-radius:12px; padding:13px 15px; font-size:14.5px; background:#FBFBFC; color:var(--sk-ink-2); }
.skomo-login--v2 .skomo-login__input:focus{ border-color:var(--sk-accent); background:#fff; box-shadow:0 0 0 3px rgba(239,25,35,.10); }
.skomo-login--v2 .skomo-login__pw .skomo-login__input{ padding-right:46px; }
.skomo-login--v2 .skomo-login__eye{ right:10px; }
/* Segment-dropdown — input-look + egen chevron (også på :focus, hvor input-reglens
   background-shorthand ellers ville fjerne pilen) */
.skomo-login--v2 select.skomo-login__select,
.skomo-login--v2 select.skomo-login__select:focus{ appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B5B5B' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; background-size:15px; padding-right:42px; cursor:pointer; }
.skomo-login--v2 select.skomo-login__select:focus{ background-color:#fff; }

.skomo-login--v2 .skomo-login__row{ display:flex; align-items:center; justify-content:space-between; gap:14px; margin:2px 0 4px; }
.skomo-login--v2 .skomo-login__remember{ display:inline-flex; align-items:center; gap:8px; font-size:13.5px; font-weight:500; color:var(--sk-ink-2); cursor:pointer; margin:0; }
.skomo-login--v2 .skomo-login__remember input,
.skomo-login--v2 .skomo-login__terms input{ appearance:none; -webkit-appearance:none; width:18px; height:18px; border:1.5px solid #CFCFD2; border-radius:5px; background:#fff; cursor:pointer; flex:0 0 auto; position:relative; margin:0; transition:background .12s ease, border-color .12s ease; }
.skomo-login--v2 .skomo-login__remember input:checked,
.skomo-login--v2 .skomo-login__terms input:checked{ background:var(--sk-accent); border-color:var(--sk-accent); }
.skomo-login--v2 .skomo-login__remember input:checked::after,
.skomo-login--v2 .skomo-login__terms input:checked::after{ content:""; position:absolute; left:5px; top:1.5px; width:5px; height:9px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
.skomo-login--v2 .skomo-login__forgot{ font-size:13.5px; color:var(--sk-body); text-decoration:none; margin:0; }
.skomo-login--v2 .skomo-login__forgot:hover{ color:var(--sk-accent); text-decoration:underline; }

.skomo-login--v2 .skomo-login__btn{ width:100%; text-transform:uppercase; letter-spacing:.03em; font-weight:700; font-size:14px; padding:15px 24px; border-radius:999px; }
.skomo-login--v2 .skomo-login__btn--primary{ background:var(--sk-accent); color:#fff; margin-top:14px; }
.skomo-login--v2 .skomo-login__btn--primary:hover{ filter:brightness(1.07); }
.skomo-login--v2 .skomo-login__btn--ghost{ background:#fff; border:1.5px solid #E6E6E8; color:var(--sk-accent); }
.skomo-login--v2 .skomo-login__btn--ghost:hover{ border-color:var(--sk-accent); background:rgba(239,25,35,.04); }

.skomo-login--v2 .skomo-login__divider{ display:flex; align-items:center; gap:14px; margin:14px 0 12px; color:var(--sk-muted); font-size:13px; }
.skomo-login--v2 .skomo-login__divider::before,
.skomo-login--v2 .skomo-login__divider::after{ content:""; height:1px; flex:1; background:#ECECEE; }

/* "Få adgang" — eksisterende BC-kontakt uden login. Skjules på Bliv kunde-fanen. */
.skomo-login--v2.is-register .skomo-login__access{ display:none; }
.skomo-login__access{ margin-top:16px; }
/* Link-agtig knap: Elementors default button/link-hover skal IKKE slå igennem
   (gav lyserød baggrund m. hvid tekst). Derfor låses alle tilstande eksplicit. */
.skomo-login__accesslink,
.skomo-login__accesslink:hover,
.skomo-login__accesslink:focus,
.skomo-login__accesslink:focus-visible,
.skomo-login__accesslink:active{
	background:none !important;
	background-color:transparent !important;
	border:none !important;
	box-shadow:none !important;
	padding:0 !important;
	font-family:var(--sk-font-ui);
	font-size:13.5px;
	font-weight:600;
	cursor:pointer;
	text-decoration:underline;
	text-transform:none;
	letter-spacing:normal;
}
.skomo-login__accesslink{ color:var(--sk-accent) !important; }
.skomo-login__accesslink:hover{ color:var(--sk-ink-2) !important; }
/* Tastatur-fokus skal stadig kunne ses (musefokus giver ingen ring). */
.skomo-login__accesslink:focus{ outline:none; }
.skomo-login__accesslink:focus-visible{ outline:2px solid var(--sk-accent); outline-offset:3px; border-radius:3px; }
.skomo-login__accessbox{ margin-top:12px; padding:16px; border:1px solid #ECECEE; border-radius:14px; background:#FAFAFA; }
.skomo-login__accesshelp{ margin:0 0 12px; font-size:13px; line-height:1.55; color:var(--sk-muted); }
.skomo-login__accesschoice{ display:flex; flex-direction:column; gap:8px; margin:0 0 12px; }
.skomo-login__accessopt{ display:flex; align-items:center; gap:9px; font-size:13.5px; color:var(--sk-ink-2); cursor:pointer; }
.skomo-login__accessmsg{ margin-top:10px; font-size:13px; line-height:1.5; color:var(--sk-ink-2); min-height:1em; }

.skomo-login--v2 .skomo-login__terms{ display:flex; align-items:flex-start; gap:10px; font-size:13px; line-height:1.5; color:var(--sk-body); margin:6px 0 4px; cursor:pointer; }
.skomo-login--v2 .skomo-login__terms a{ color:var(--sk-ink-2); text-decoration:underline; }
.skomo-login--v2 .skomo-login__terms a:hover{ color:var(--sk-accent); }
.skomo-login--v2 .skomo-login__note{ font-size:12.5px; line-height:1.5; color:var(--sk-muted); text-align:center; margin:16px 0 0; }

/* Form visibility (tabs) + kill WooCommerce's default form border/padding box */
.skomo-login--v2 form.skomo-login__form{ border:0 !important; padding:0 !important; margin:0 !important; background:none !important; border-radius:0 !important; box-shadow:none !important; max-width:none !important; }
.skomo-login--v2 .skomo-login__form--register{ display:none; }
.skomo-login--v2.is-register .skomo-login__form--login{ display:none; }
.skomo-login--v2.is-register .skomo-login__form--register{ display:block; }

/* Right dark B2B panel */
.skomo-login--v2 .skomo-login__aside{ position:relative; overflow:hidden; background:#141416; color:#fff; padding:30px clamp(26px,3.2vw,44px); display:flex; flex-direction:column; }
.skomo-login--v2 .skomo-login__deco{ position:absolute; border-radius:50%; background:radial-gradient(circle at 42% 42%, rgba(150,26,32,.34), rgba(20,10,12,0) 70%); pointer-events:none; }
.skomo-login--v2 .skomo-login__deco--tr{ width:250px; height:250px; top:-80px; right:-70px; }
.skomo-login--v2 .skomo-login__deco--bl{ width:220px; height:220px; bottom:-80px; left:-80px; }
/* :not(deco) — ellers overskriver denne catch-all (samme specificitet, senere i filen)
   dekoernes position:absolute, så de bliver 250/220px-blokke der skubber alt indhold
   ned og gør hele kortet ~470px for højt. */
.skomo-login--v2 .skomo-login__aside > *:not(.skomo-login__deco){ position:relative; z-index:1; }
.skomo-login--v2 .skomo-login__brand{ display:flex; align-items:center; gap:8px; }
.skomo-login--v2 .skomo-login__brand-txt{ font-family:var(--sk-font-display); font-weight:800; font-size:26px; letter-spacing:-.025em; color:#fff; }
.skomo-login--v2 .skomo-login__brand-badge{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:24px; background:var(--sk-accent); border-radius:4px; transform:skewX(-11deg); }
.skomo-login--v2 .skomo-login__brand-badge svg{ width:15px; height:15px; color:#fff; transform:skewX(11deg); }
.skomo-login--v2 .skomo-login__aside-h{ font-family:var(--sk-font-display); font-weight:700; font-size:clamp(22px,2.2vw,26px); letter-spacing:-.02em; line-height:1.15; color:#fff; margin:20px 0 10px; }
.skomo-login--v2 .skomo-login__aside-p{ font-size:14.5px; line-height:1.6; color:#B6B6BA; margin:0 0 18px; }
.skomo-login--v2 .skomo-login__perks{ list-style:none; margin:0; padding:0; }
.skomo-login--v2 .skomo-login__perks li{ display:flex; align-items:center; gap:13px; font-size:14.5px; color:#EDEDEE; }
.skomo-login--v2 .skomo-login__perks li + li{ margin-top:12px; }
.skomo-login--v2 .skomo-login__perk-ico{ width:26px; height:26px; border-radius:50%; background:var(--sk-accent); color:#fff; display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
.skomo-login--v2 .skomo-login__perk-ico svg{ width:14px; height:14px; }
.skomo-login--v2 .skomo-login__aside-foot{ margin-top:auto; padding-top:24px; }
.skomo-login--v2 .skomo-login__aside-foot::before{ content:""; display:block; height:1px; background:rgba(255,255,255,.13); margin-bottom:20px; }
.skomo-login--v2 .skomo-login__aside-foot p{ font-size:14px; line-height:1.55; color:#9A9A9E; margin:0; }
.skomo-login--v2 .skomo-login__aside-foot strong{ color:#fff; font-weight:700; }

@media (max-width:900px){
	.skomo-login--v2{ padding:28px 16px 36px; }
	.skomo-login--v2 .skomo-login__aside{ padding:36px 26px; }
}
@media (max-width:520px){
	.skomo-login--v2 .skomo-login__grid2{ grid-template-columns:1fr; }
	.skomo-login--v2 .skomo-login__panel{ padding:30px 22px 34px; }
}
/* My Account: skjul temaets side-titel/dato/post-navigation-chrome (designet leverer sine egne overskrifter) */
.woocommerce-account .entry-header,
.woocommerce-account header.entry-header,
.woocommerce-account .entry-title,
.woocommerce-account .entry-meta,
.woocommerce-account .posted-on,
.woocommerce-account .post-navigation,
.woocommerce-account .nav-links,
.woocommerce-account .navigation.post-navigation{ display:none !important; }
/* tilbuds-callout — blød boks m. luft (kundeønske: føltes klemt som nøgen linje) */
.skomo-pdp__quote{ display:flex; align-items:center; gap:11px; margin-top:24px; padding:15px 18px; background:#FAFAFA; border:1px solid #F0F0F0; border-radius:14px; font-family:var(--sk-font-ui); font-size:14.5px; color:var(--sk-ink-2); text-decoration:none; transition:border-color .15s ease; }
.skomo-pdp__quote svg{ color:var(--sk-ink-2); }
.skomo-pdp__quote strong{ text-decoration:underline; font-weight:700; }
.skomo-pdp__quote:hover{ border-color:#DBDBDB; }
.skomo-pdp__quote:hover strong{ color:var(--sk-accent); }

.skomo-pdp__trust{ list-style:none; margin:18px 0 0; padding:18px 0 0; border-top:1px solid #ECECEC; display:flex; flex-direction:column; gap:12px; }
.skomo-pdp__trust li{ display:flex; align-items:center; gap:12px; font-family:var(--sk-font-ui); font-size:14.5px; color:var(--sk-ink-2); }
.skomo-pdp__trust strong{ font-weight:700; }
.skomo-pdp__trust-ico{ flex:0 0 auto; width:38px; height:38px; border-radius:999px; background:var(--sk-bg); color:var(--sk-accent); display:flex; align-items:center; justify-content:center; }

/* tabs */
.skomo-pdp__tabs{ margin-top:56px; }
.skomo-pdp__tabnav{ display:flex; gap:30px; border-bottom:1px solid #E6E6E6; }
.skomo-pdp__tabbtn{ background:none; border:none; padding:0 0 14px; cursor:pointer; font-family:var(--sk-font-display); font-weight:600; font-size:17px; color:var(--sk-muted); position:relative; transition:color .15s ease; }
.skomo-pdp__tabbtn:hover{ color:var(--sk-ink-2); }
.skomo-pdp__tabbtn.is-active{ color:var(--sk-ink); }
.skomo-pdp__tabbtn.is-active::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:2.5px; background:var(--sk-accent); border-radius:2px; }
.skomo-pdp__tabpanel{ display:none; padding:28px 0 0; font-family:var(--sk-font-ui); font-size:15.5px; line-height:1.7; color:#444; max-width:880px; }
.skomo-pdp__tabpanel.is-active{ display:block; }
.skomo-pdp__tabpanel p{ margin:0 0 16px; }
.skomo-pdp__tabnote{ color:var(--sk-muted); font-size:13.5px; }
/* Fordele benefits grid (dummy demo) */
.skomo-pdp__benefits{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; max-width:780px; align-items:start; }
.skomo-pdp__benefit{ display:flex; gap:14px; background:#fff; border:1px solid #ECECEC; border-radius:14px; padding:16px 18px; }
.skomo-pdp__benefit-ico{ flex:0 0 auto; width:42px; height:42px; border-radius:11px; background:var(--sk-bg); color:var(--sk-accent); display:flex; align-items:center; justify-content:center; }
.skomo-pdp__benefit-title{ margin:0 0 3px; font-family:var(--sk-font-display); font-weight:700; font-size:15px; color:var(--sk-ink); }
.skomo-pdp__benefits .skomo-pdp__benefit-text{ margin:0; font-family:var(--sk-font-ui); font-size:13.5px; line-height:1.5; color:var(--sk-body); }
.skomo-pdp__benefit-ico i{ font-size:17px; line-height:1; }
.skomo-pdp__trust-ico i{ font-size:17px; line-height:1; color:transparent; -webkit-text-stroke:1.3px var(--sk-accent); }
.skomo-pdp__quote i{ font-size:16px; line-height:1; color:transparent; -webkit-text-stroke:1.3px var(--sk-ink-2); }
@media (max-width:560px){ .skomo-pdp__benefits{ grid-template-columns:1fr; } }
/* Force skomo colors over Elementor/theme default button :hover/:focus/:active (the "pink" default-link leak) */
.skomo-pdp__pill,.skomo-pdp__pill:hover,.skomo-pdp__pill:focus,.skomo-pdp__pill:active{ background-color:#fff !important; color:var(--sk-ink-2) !important; box-shadow:none; }
.skomo-pdp__pill.is-active,.skomo-pdp__pill.is-active:hover,.skomo-pdp__pill.is-active:focus,.skomo-pdp__pill.is-active:active{ background-color:var(--sk-ink-2) !important; color:#fff !important; }
.skomo-pdp__swatch,.skomo-pdp__swatch:hover,.skomo-pdp__swatch:focus,.skomo-pdp__swatch:active{ background-color:#fff !important; color:var(--sk-ink-2) !important; box-shadow:none; }
.skomo-pdp__swatch.is-active,.skomo-pdp__swatch.is-active:hover,.skomo-pdp__swatch.is-active:focus,.skomo-pdp__swatch.is-active:active{ background-color:var(--sk-ink-2) !important; color:#fff !important; }
.skomo-pdp__tabbtn,.skomo-pdp__tabbtn:hover,.skomo-pdp__tabbtn:focus,.skomo-pdp__tabbtn:active{ background-color:transparent !important; box-shadow:none; }
.skomo-pdp__tier,.skomo-pdp__tier:focus,.skomo-pdp__tier:active{ background-color:#fff !important; }
.skomo-pdp__readmore,.skomo-pdp__readmore:hover,.skomo-pdp__readmore:focus,.skomo-pdp__readmore:active{ background-color:transparent !important; color:var(--sk-ink) !important; box-shadow:none; }
.skomo-pdp__add,.skomo-pdp__add:hover,.skomo-pdp__add:focus,.skomo-pdp__add:active{ background-color:var(--sk-accent) !important; color:#fff !important; }
.skomo-pdp__quote,.skomo-pdp__quote:hover,.skomo-pdp__quote:focus{ background-color:#FAFAFA !important; }
/* a11y: real keyboard focus ring only */
.skomo-pdp__pill:focus:not(:focus-visible),.skomo-pdp__swatch:focus:not(:focus-visible),.skomo-pdp__tier:focus:not(:focus-visible),.skomo-pdp__tabbtn:focus:not(:focus-visible){ outline:none; }
.skomo-pdp__pill:focus-visible,.skomo-pdp__swatch:focus-visible,.skomo-pdp__tier:focus-visible,.skomo-pdp__tabbtn:focus-visible{ outline:2px solid var(--sk-accent); outline-offset:2px; }
.skomo-pdp__spec{ border-collapse:separate; border-spacing:0; width:100%; max-width:620px; border:1px solid #ECECEC; border-radius:14px; overflow:hidden; }
.skomo-pdp__spec th,.skomo-pdp__spec td{ padding:13px 18px; border:0; border-bottom:1px solid #F0F0F0; font-size:14.5px; }
.skomo-pdp__spec tr:last-child th,.skomo-pdp__spec tr:last-child td{ border-bottom:none; }
.skomo-pdp__spec tr:nth-child(odd) th,.skomo-pdp__spec tr:nth-child(odd) td{ background:#FAFAFA; }
.skomo-pdp__spec th{ width:42%; text-align:left; color:var(--sk-body); font-weight:600; }
.skomo-pdp__spec td{ text-align:right; color:var(--sk-ink-2); font-weight:600; }

/* related */
.skomo-pdp__related{ margin-top:60px; }
.skomo-pdp__related-title{ margin:0 0 24px; font-family:var(--sk-font-display); font-weight:800; font-size:28px; letter-spacing:-.01em; color:var(--sk-ink); }
.skomo-pdp__related-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.skomo-pdp__rcard{ display:flex; flex-direction:column; background:#F8F8F8; border:1px solid #ECECEC; border-radius:16px; padding:14px; transition:box-shadow .22s ease, transform .22s ease, border-color .22s ease; }
.skomo-pdp__rcard:hover{ box-shadow:0 18px 44px rgba(11,11,13,.13); transform:translateY(-4px); border-color:#E2E2E2; }
.skomo-pdp__rthumb{ display:flex; align-items:center; justify-content:center; background:#fff; border-radius:12px; padding:20px; aspect-ratio:1/1; }
.skomo-pdp__rthumb img{ width:100%; height:100%; object-fit:contain; margin:0; }
.skomo-pdp__rbody{ padding:14px 4px 0; display:flex; flex-direction:column; flex:1; }
.skomo-pdp__rcat{ font-family:var(--sk-font-ui); font-size:12px; font-weight:600; letter-spacing:.05em; color:var(--sk-muted); }
.skomo-pdp__rname{ margin:6px 0 0; font-family:var(--sk-font-display); font-weight:700; font-size:16px; line-height:1.3; color:var(--sk-ink-2); text-decoration:none; }
.skomo-pdp__rname:hover{ color:var(--sk-accent); }
.skomo-pdp__rprice{ margin:10px 0 14px; font-family:var(--sk-font-display); font-weight:700; font-size:16px; color:var(--sk-ink); }
.skomo-pdp__rprice .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; }
.skomo-pdp__rbtn{ margin-top:auto; display:block; text-align:center; background:var(--sk-ink-2); color:#fff !important; text-decoration:none; border-radius:999px; padding:12px; font-family:var(--sk-font-ui); font-weight:600; font-size:14px; transition:filter .15s ease; }
.skomo-pdp__rbtn:hover{ filter:brightness(1.2); }

/* responsive */
@media (max-width:900px){
  .skomo-pdp__grid{ grid-template-columns:1fr; gap:30px; }
  .skomo-pdp__gallery{ position:static; }
  .skomo-pdp__related-grid{ grid-template-columns:repeat(2,1fr); }
  .skomo-pdp__title{ font-size:28px; }
}
@media (max-width:520px){
  .skomo-pdp__tiers-grid{ grid-template-columns:1fr; }
  .skomo-pdp__related-grid{ grid-template-columns:1fr; }
  .skomo-pdp__cart{ flex-direction:column; }
  .skomo-pdp__tabnav{ gap:18px; overflow-x:auto; }
}

/* ---- info-accordion i højre kolonne (erstattede fuldbredde-tabs 2026-07-07,
        inspiration kvadrat.dk: rækker m. hairlines + chevron) ---- */
.skomo-pdp__acc{ margin-top:26px; border-top:1px solid #ECECEC; }
.skomo-pdp__acc-item{ border-bottom:1px solid #ECECEC; }
.skomo-pdp__acc-head{ display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 2px; cursor:pointer; list-style:none; font-family:var(--sk-font-display); font-weight:600; font-size:15.5px; color:var(--sk-ink); }
.skomo-pdp__acc-head::-webkit-details-marker{ display:none; }
.skomo-pdp__acc-head::marker{ content:''; }
.skomo-pdp__acc-head:hover{ color:var(--sk-accent); }
.skomo-pdp__acc-chev{ flex:0 0 auto; color:var(--sk-muted); transition:transform .18s ease; }
.skomo-pdp__acc-item[open] > .skomo-pdp__acc-head .skomo-pdp__acc-chev{ transform:rotate(180deg); }
.skomo-pdp__acc-body{ padding:2px 2px 20px; font-family:var(--sk-font-ui); font-size:14.5px; line-height:1.65; color:var(--sk-body); }
.skomo-pdp__acc-body p{ margin:0 0 12px; }
.skomo-pdp__acc-body p:last-child{ margin-bottom:0; }
/* indhold designet til fuld bredde → én kolonne i den smalle højre kolonne */
.skomo-pdp__acc-body .skomo-pdp__benefits{ grid-template-columns:1fr; }
.skomo-pdp__acc-body .skomo-pdp__spec{ width:100%; }


/* =====================================================================
   CHECKOUT (Kasse) — design_handoff_woo_checkout
   Read-only billing card, terms-gated GODKEND ORDRE, confirmation card.
   ===================================================================== */
.skomo-checkoutpage{ max-width:var(--sk-content); margin:0 auto; width:100%; padding:34px 0 120px; box-sizing:border-box; color:var(--sk-ink-2); }
/* samme gutter som headerens content-frame — flugter med logo/nav (som Min konto) */
@media (max-width:1448px){ .skomo-checkoutpage{ padding-left:clamp(34px,5vw,58px); padding-right:clamp(34px,5vw,58px); } }
.skomo-checkoutpage *,
.skomo-checkoutpage *::before,
.skomo-checkoutpage *::after{ box-sizing:border-box; }

/* breadcrumb + head (same pattern as the cart page) */
.skomo-checkoutpage__crumbs{ font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-muted); margin:6px 0 18px; }
.skomo-checkoutpage__crumbs a{ color:var(--sk-muted); text-decoration:none; }
.skomo-checkoutpage__crumbs a:hover{ color:var(--sk-ink-2); }
.skomo-checkoutpage__crumbs [aria-current="page"]{ color:var(--sk-ink-2); font-weight:600; }
.skomo-checkoutpage__crumb-sep{ margin:0 8px; }
.skomo-checkoutpage__head{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; margin-bottom:26px; }
.skomo-checkoutpage__head--steps-only{ justify-content:center; } /* ordrebekræftelsen: kun steps, centreret */
.skomo-checkoutpage__title{ margin:0; font-family:var(--sk-font-display); font-weight:800; font-size:clamp(28px,3.6vw,40px); letter-spacing:-.025em; color:var(--sk-ink); }

/* steps: done-state (green ✓) extends the shared .skomo-steps component */
.skomo-steps__item.is-done{ color:var(--sk-ink); font-weight:600; }
.skomo-steps__item.is-done .skomo-steps__num{ background:var(--sk-success); color:#fff; }

/* two-column grid */
.skomo-checkoutpage__grid{ display:grid; grid-template-columns:minmax(0,1fr) 452px; gap:48px; align-items:start; }
.skomo-checkoutpage__main{ min-width:0; }
.skomo-checkoutpage__h2{ margin:0 0 16px; font-family:var(--sk-font-display); font-weight:700; font-size:20px; color:var(--sk-ink); }

/* read-only billing card */
.skomo-billing-card{ background:#FAFAFA; border:1px solid #EDEDED; border-radius:16px; padding:22px 24px; }
.skomo-billing-card__top{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.skomo-billing-card__address{ font-family:var(--sk-font-ui); font-size:15px; line-height:1.7; color:var(--sk-body); }
.skomo-billing-card__company{ font-weight:700; color:var(--sk-ink-2); }
.skomo-billing-card__badge{ display:inline-flex; align-items:center; gap:7px; background:#fff; border:1px solid #E6E6E6; border-radius:999px; padding:6px 12px; font-family:var(--sk-font-ui); font-size:12px; font-weight:600; color:var(--sk-success); white-space:nowrap; }
.skomo-billing-card__badge::before{ content:''; width:7px; height:7px; border-radius:999px; background:var(--sk-success); }
.skomo-billing-card__note{ margin:16px 0 0; font-family:var(--sk-font-ui); font-size:13.5px; color:#8A8A8A; }
.skomo-billing-card__note a{ color:var(--sk-ink-2); text-decoration:underline; text-underline-offset:2px; }

/* custom 22px checkboxes (nyhedsbrev / anden adresse / vilkår) */
.skomo-checkoutpage__toggles{ display:flex; flex-direction:column; gap:4px; margin-top:22px; }
.skomo-check{ position:relative; display:flex; align-items:flex-start; gap:13px; cursor:pointer; padding:8px 0; font-family:var(--sk-font-ui); font-size:14.5px; color:#2A2D31; }
.skomo-check input{ position:absolute; opacity:0; width:22px; height:22px; margin:0; cursor:pointer; }
.skomo-check__box{ width:22px; height:22px; border-radius:7px; border:1.5px solid #CFCFCF; background:#fff; display:flex; align-items:center; justify-content:center; color:#fff; flex:0 0 auto; transition:background .12s ease,border-color .12s ease; }
.skomo-check__box svg{ display:none; }
.skomo-check input:checked ~ .skomo-check__box{ background:var(--sk-accent); border-color:var(--sk-accent); }
.skomo-check input:checked ~ .skomo-check__box svg{ display:block; }
.skomo-check input:focus-visible ~ .skomo-check__box{ outline:2px solid var(--sk-ink-2); outline-offset:2px; }
.skomo-check__label{ line-height:1.5; }
.skomo-check__label a{ color:var(--sk-ink-2); text-decoration:underline; text-underline-offset:2px; }
.skomo-check__req{ color:var(--sk-accent); }

/* delivery-address panel */
.skomo-delivery-fields{ margin-top:14px; padding:20px; border:1px solid #ECECEC; border-radius:16px; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.skomo-delivery-fields[hidden]{ display:none; }
.skomo-delivery-fields__full{ grid-column:1 / -1; }
.skomo-field-label{ display:block; font-family:var(--sk-font-ui); font-size:12.5px; font-weight:600; color:#8A8A8A; margin-bottom:6px; }
/* !important: tema/Elementor-kit'ets globale input-styling (mørk firkantet kant) må ikke vinde */
.skomo-input,
.skomo-textarea{ width:100%; border:1.5px solid #E2E2E2 !important; border-radius:10px !important; padding:11px 13px; font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-ink-2) !important; background:#fff !important; outline:none; }
.skomo-input:focus,
.skomo-textarea:focus{ border-color:var(--sk-accent) !important; box-shadow:none !important; }
.skomo-textarea{ border-radius:12px !important; }

/* notes + rekvisitionsnr */
.skomo-order-extras{ margin-top:24px; }
.skomo-order-extras label{ display:block; font-family:var(--sk-font-ui); font-size:14px; font-weight:600; color:var(--sk-ink-2); margin-bottom:9px; }
.skomo-order-extras__optional{ color:var(--sk-muted); font-weight:400; }
.skomo-textarea{ min-height:104px; resize:vertical; border-radius:12px; padding:13px 15px; font-size:14.5px; }
.skomo-input--ref{ max-width:340px; padding:12px 14px; font-size:14.5px; }

/* RIGHT: order card (sticky) */
.skomo-checkoutpage__aside{ position:sticky; top:20px; }
.skomo-order-card{ background:#fff; border:1px solid #E8E8E8; border-radius:18px; overflow:hidden; box-shadow:0 10px 30px rgba(11,11,13,.05); }
.skomo-order-card__head{ padding:20px 24px; border-bottom:1px solid #EFEFEF; display:flex; justify-content:space-between; align-items:center; }
.skomo-order-card__title{ margin:0; font-family:var(--sk-font-display); font-weight:700; font-size:19px; color:var(--sk-ink); }
.skomo-order-card__edit{ font-family:var(--sk-font-ui); font-size:13px; font-weight:600; color:#8A8A8A; text-decoration:none; }
.skomo-order-card__edit:hover{ color:var(--sk-accent); }

/* line items */
.skomo-order-review__items{ padding:6px 24px; }
.skomo-order-review__item{ display:flex; gap:14px; align-items:center; padding:16px 0; border-bottom:1px solid #F1F1F1; }
.skomo-order-review__thumb{ position:relative; flex:0 0 auto; width:62px; height:62px; border-radius:11px; background:#F4F4F4; display:flex; align-items:center; justify-content:center; padding:9px; }
.skomo-order-review__thumb img{ max-width:100%; max-height:100%; width:auto; height:auto; border-radius:4px; }
.skomo-order-review__qtybadge{ position:absolute; top:-7px; right:-7px; min-width:20px; height:20px; padding:0 5px; border-radius:999px; background:var(--sk-ink-2); color:#fff; font-family:var(--sk-font-ui); font-size:11px; font-weight:700; display:flex; align-items:center; justify-content:center; }
.skomo-order-review__info{ flex:1; min-width:0; }
.skomo-order-review__name{ font-family:var(--sk-font-ui); font-size:14px; font-weight:600; color:var(--sk-ink-2); line-height:1.35; }
.skomo-order-review__meta{ font-family:var(--sk-font-ui); font-size:12.5px; color:var(--sk-muted); margin-top:3px; }
.skomo-order-review__line{ flex:0 0 auto; font-family:var(--sk-font-display); font-weight:700; font-size:14.5px; color:var(--sk-ink-2); white-space:nowrap; }
.skomo-order-review__line .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; }

/* totals */
.skomo-order-review__totals{ padding:14px 24px 4px; display:flex; flex-direction:column; gap:11px; font-family:var(--sk-font-ui); font-size:14.5px; }
.skomo-order-review__row{ display:flex; justify-content:space-between; gap:16px; color:var(--sk-body); }
.skomo-order-review__val{ color:var(--sk-ink-2); font-weight:600; white-space:nowrap; }
.skomo-order-review__val--muted{ color:var(--sk-muted); font-weight:400; white-space:normal; text-align:right; }
.skomo-order-review__totalrow{ margin-top:14px; border-top:1px solid #ECECEC; padding:14px 24px 0; display:flex; justify-content:space-between; align-items:baseline; }
.skomo-order-review__total-label{ font-family:var(--sk-font-display); font-weight:700; font-size:18px; color:var(--sk-ink); }
.skomo-order-review__total-amount{ font-family:var(--sk-font-display); font-weight:800; font-size:23px; color:var(--sk-ink); white-space:nowrap; }
.skomo-order-review__total-amount .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; }

/* fee note */
.skomo-fee-note{ margin:16px 24px 0; background:#FAFAFA; border:1px solid #EFEFEF; border-radius:12px; padding:12px 14px; font-family:var(--sk-font-ui); font-size:12px; line-height:1.5; color:#8A8A8A; }

/* payment / submit area — the gateway radio list is functional but hidden */
.skomo-order-pay .wc_payment_methods{ display:none !important; }
.skomo-order-pay__foot{ padding:18px 24px 24px; margin:0; }
.skomo-order-pay__privacy{ margin:0 0 14px; font-family:var(--sk-font-ui); font-size:12.5px; line-height:1.55; color:var(--sk-muted); }
.skomo-order-pay__privacy a{ color:var(--sk-ink-2); text-decoration:underline; text-underline-offset:2px; }
.skomo-check--terms{ font-size:13.5px; padding:0; }
.skomo-check--terms .skomo-check__box{ margin-top:1px; }
.skomo-terms-error{ margin:9px 0 0 35px; font-family:var(--sk-font-ui); font-size:12.5px; color:var(--sk-danger); }
.skomo-terms-error[hidden]{ display:none; }

/* !important: Elementor-kit'ets globale button-farve (lilla) og Woo's default
   #payment-styling må ikke ramme GODKEND ORDRE-knappen */
.skomo-place-order{ width:100%; margin-top:20px !important; margin-bottom:14px !important; cursor:pointer; font-family:var(--sk-font-ui); font-weight:700; font-size:15px; letter-spacing:.02em; text-transform:uppercase; height:54px; border-radius:999px !important; background:#C7C9CC !important; border:none !important; opacity:.85; color:#fff !important; display:flex; align-items:center; justify-content:center; gap:9px; transition:filter .15s ease,transform .1s ease,opacity .15s ease,background .15s ease; }
.skomo-place-order:hover,
.skomo-place-order:focus{ background:#C7C9CC !important; color:#fff !important; }
.skomo-place-order.is-enabled,
.skomo-place-order.is-enabled:hover,
.skomo-place-order.is-enabled:focus{ background:var(--sk-accent) !important; opacity:1; }
.skomo-place-order.is-enabled:hover{ filter:brightness(1.06); }
.skomo-place-order.is-enabled:active{ transform:translateY(1px); }

/* Woo-core styler #payment m. grå baggrund + egen form-row-padding — nulstil,
   så kortets hvide flade og vores padding gælder */
.woocommerce-checkout #payment,
.skomo-order-pay{ background:transparent !important; border-radius:0 !important; }
.woocommerce-checkout #payment div.form-row.skomo-order-pay__foot{ padding:18px 24px 24px !important; margin:0 !important; }
.woocommerce-checkout #payment ul.payment_methods{ border:none !important; padding:0 !important; background:none !important; }
/* terms-checkboxen skal ligge på linje med teksten (Woo/tema sætter label til block) */
.skomo-order-pay .skomo-check{ display:flex !important; align-items:flex-start; }
.woocommerce-checkout #payment p.skomo-order-pay__note,
.skomo-order-pay__note{ margin:0 0 4px !important; padding:0 !important; background:none !important; text-align:center; font-family:var(--sk-font-ui); font-size:12.5px; color:var(--sk-muted); }

/* confirmation card (order received) */
.skomo-confirm-card{ max-width:640px; margin:30px auto 10px; text-align:center; background:#fff; border:1px solid #ECECEC; border-radius:22px; padding:48px 40px; box-shadow:0 16px 44px rgba(11,11,13,.08); font-family:var(--sk-font-ui); }
.skomo-confirm-card__check{ width:74px; height:74px; border-radius:999px; background:var(--sk-success); display:flex; align-items:center; justify-content:center; margin:0 auto 22px; color:#fff; }
.skomo-confirm-card__title{ margin:0; font-family:var(--sk-font-display); font-weight:800; font-size:28px; letter-spacing:-.02em; color:var(--sk-ink); }
.skomo-confirm-card__text{ margin:12px 0 0; font-size:16px; line-height:1.6; color:var(--sk-body); }
.skomo-confirm-card__text strong{ color:var(--sk-ink-2); }
.skomo-confirm-card__total{ display:flex; justify-content:space-between; gap:16px; background:#FAFAFA; border:1px solid #EDEDED; border-radius:14px; padding:16px 20px; margin:24px 0 0; }
.skomo-confirm-card__total-label{ color:#7A7A7A; font-size:14.5px; }
.skomo-confirm-card__total-amount{ font-family:var(--sk-font-display); font-weight:800; font-size:18px; color:var(--sk-ink); white-space:nowrap; }
.skomo-confirm-card__total-amount .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; }
.skomo-confirm-card__actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:26px; }
.skomo-btn{ cursor:pointer; text-decoration:none; font-family:var(--sk-font-ui); font-weight:600; font-size:15px; padding:14px 26px; border-radius:999px; white-space:nowrap; }
.skomo-btn--primary{ background:var(--sk-accent); color:#fff !important; border:none; }
.skomo-btn--primary:hover{ filter:brightness(1.08); }
.skomo-btn--secondary{ background:#fff; border:1.5px solid var(--sk-ink-2); color:var(--sk-ink-2) !important; }
.skomo-btn--secondary:hover{ background:var(--sk-ink-2); color:#fff !important; }
.skomo-checkoutpage__thankyou-hooks:empty{ display:none; }

/* checkout notices (AJAX errors) span the full grid width */
.woocommerce-checkout .woocommerce-NoticeGroup-checkout{ grid-column:1 / -1; }

/* responsive */
@media (max-width:980px){
  .skomo-checkoutpage__grid{ grid-template-columns:1fr; gap:34px; }
  .skomo-checkoutpage__aside{ position:static; }
}
@media (max-width:600px){
  .skomo-delivery-fields{ grid-template-columns:1fr; }
  .skomo-delivery-fields__full{ grid-column:auto; }
  .skomo-input--ref{ max-width:none; }
  .skomo-confirm-card{ padding:36px 22px; }
}


/* =====================================================================
   MIN KONTO (Kundekonto) — design_handoff_woo_account
   Korrektur (landing) / Ordrehistorik / Kontoinformation / Log ud.
   ===================================================================== */
.skomo-account{ max-width:var(--sk-content); margin:0 auto; width:100%; padding:34px 0 120px; box-sizing:border-box; color:var(--sk-ink-2); }
/* samme gutter som headerens content-frame (den globale .e-con-inner-regel) — så
   konto-indholdet flugter med logo/nav i stedet for at hugge sig fast i kanten */
@media (max-width:1448px){ .skomo-account{ padding-left:clamp(34px,5vw,58px); padding-right:clamp(34px,5vw,58px); } }
.skomo-account *,
.skomo-account *::before,
.skomo-account *::after{ box-sizing:border-box; }

/* konto-header */
.skomo-account__head{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin:6px 0 0; }
.skomo-account__avatar{ width:54px; height:54px; border-radius:14px; background:var(--sk-ink); color:#fff; display:flex; align-items:center; justify-content:center; font-family:var(--sk-font-display); font-weight:800; font-size:19px; flex:0 0 auto; }
.skomo-account__title{ margin:0; font-family:var(--sk-font-display); font-weight:800; font-size:clamp(26px,3.4vw,36px); letter-spacing:-.025em; color:var(--sk-ink); }
.skomo-account__subline{ margin:4px 0 0; font-family:var(--sk-font-ui); font-size:14px; color:#8A8A8A; }

/* grid + sidebar */
.skomo-account__grid{ display:grid; grid-template-columns:236px minmax(0,1fr); gap:36px; margin-top:26px; align-items:start; }
.skomo-account__nav{ position:sticky; top:20px; display:flex; flex-direction:column; gap:4px; }
.skomo-account__nav a{ display:flex; align-items:center; gap:12px; background:transparent; color:#3A3D41; font-family:var(--sk-font-ui); font-weight:600; font-size:15px; padding:13px 16px; border-radius:12px; text-decoration:none; white-space:nowrap; transition:all .15s ease; }
.skomo-account__nav a svg{ color:var(--sk-muted); flex:0 0 auto; }
.skomo-account__nav a:hover{ background:#F4F4F4; color:#3A3D41; }
.skomo-account__nav a.is-active,
.skomo-account__nav a.is-active:hover{ background:var(--sk-ink); color:#fff; }
.skomo-account__nav a.is-active svg{ color:#fff; }
.skomo-account__content{ min-width:0; }
/* dræb Woo's default 2-kolonne-layout (float + 30%/68% bredde) — vi bruger grid */
.skomo-account .woocommerce-MyAccount-navigation,
.skomo-account .woocommerce-MyAccount-content{ float:none !important; width:auto !important; max-width:none !important; margin:0 !important; }

/* view-heading (alle tre views) */
.skomo-view-head{ display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:18px; }
.skomo-view-head h2{ margin:0; font-family:var(--sk-font-display); font-weight:700; font-size:22px; color:var(--sk-ink); }
.skomo-view-head__subline{ margin:5px 0 0; font-family:var(--sk-font-ui); font-size:14px; color:#8A8A8A; }

/* korrektur: søgning + status-faner */
.skomo-korrektur-controls{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.skomo-korrektur-search{ display:flex; align-items:center; gap:9px; background:#fff; border:1.5px solid #E2E2E2; border-radius:999px; padding:9px 15px; min-width:305px; }
.skomo-korrektur-search svg{ color:var(--sk-muted); flex:0 0 auto; }
.skomo-korrektur-search input{ border:none; outline:none; flex:1; min-width:0; font-family:var(--sk-font-ui); font-size:14px; color:var(--sk-ink-2); background:transparent; box-shadow:none; padding:0; }
/* status-faner — samme filter-pill-design som kategorisidens chips
   (skomo-category-styles.css: hvid pill m. #E2E2E2-kant, aktiv = sort) */
.skomo-status-tabs{ display:flex; gap:10px; flex-wrap:wrap; }
.skomo-status-tabs button{ cursor:pointer; border:1px solid #E2E2E2; background:#fff; color:#2A2D31; font-family:var(--sk-font-ui); font-weight:600; font-size:14px; padding:10px 16px; border-radius:999px; white-space:nowrap; transition:all .15s ease; }
/* !important: Elementors globale button-hover (pink accent) må ikke ramme fanerne */
.skomo-status-tabs button:hover,
.skomo-status-tabs button:focus{ background:#F6F6F6 !important; border-color:#15171A; color:#15171A !important; }
.skomo-status-tabs button.is-active,
.skomo-status-tabs button.is-active:hover,
.skomo-status-tabs button.is-active:focus{ background:var(--sk-ink-2) !important; color:#fff !important; border-color:var(--sk-ink-2); }

/* korrektur-tabel */
.skomo-korrektur-card{ border:1px solid #E8E8E8; border-radius:18px; overflow:hidden; }
.skomo-korrektur-scroll{ overflow-x:auto; }
.skomo-korrektur-scroll::-webkit-scrollbar{ height:8px; }
.skomo-korrektur-scroll::-webkit-scrollbar-thumb{ background:#D7D7D7; border-radius:8px; }
.skomo-korrektur-table{ min-width:980px; }
.skomo-korrektur-table__head,
.skomo-korrektur-table__row{ display:grid; grid-template-columns:118px minmax(0,1fr) 150px 104px 106px 156px 128px; gap:14px; padding:17px 22px; align-items:center; font-family:var(--sk-font-ui); }
.skomo-korrektur-table__head{ padding:15px 22px; background:#FAFAFA; border-bottom:1px solid #EFEFEF; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--sk-muted); }
.skomo-korrektur-table__row{ border-bottom:1px solid #F2F2F2; }
.skomo-korrektur-table__row:last-child{ border-bottom:none; }
.skomo-korrektur-table__nr{ font-size:14px; font-weight:700; color:var(--sk-ink-2); }
.skomo-korrektur-table__vare{ font-size:14px; color:#3A3D41; line-height:1.4; }
.skomo-korrektur-table__dato{ font-size:13.5px; color:var(--sk-muted); white-space:nowrap; }
/* Handlingskolonnen er 128 px bred, så "Godkend" og "Rettelse" kan ikke stå ved
   siden af hinanden. De stables derfor bevidst. Flex + gap frem for margin, så
   afstanden også holder ved ombrydning, og `stretch` giver dem ENS bredde —
   ellers styrer tekstlængden bredden, og de står forskudt (rettet 2026-08-04). */
.skomo-korrektur-table__action{ display:flex; flex-direction:column; align-items:stretch; gap:8px; }
.skomo-korrektur-table__action button{ width:100%; }
.skomo-tag-chip{ display:inline-block; background:#F1F1F1; border-radius:8px; padding:5px 10px; font-size:12.5px; font-weight:600; color:#3A3D41; line-height:1.3; }
.skomo-tag-empty{ color:#C8C8C8; }
.skomo-pdf-link{ display:inline-flex; align-items:center; gap:6px; font-size:13.5px; font-weight:600; color:var(--sk-ink-2); text-decoration:none; }
.skomo-pdf-link:hover{ color:var(--sk-accent); }
.skomo-korrektur-empty{ padding:46px 22px; text-align:center; font-family:var(--sk-font-ui); color:var(--sk-muted); font-size:14.5px; }
.skomo-korrektur-empty a{ color:var(--sk-ink-2); text-decoration:underline; }
.skomo-korrektur-empty[hidden]{ display:none; }

/* status-pills — korrektur-rækker + ordrekort */
.skomo-status-pill{ display:inline-flex; align-items:center; gap:7px; border-radius:999px; padding:5px 12px; font-family:var(--sk-font-ui); font-size:12.5px; font-weight:600; white-space:nowrap; }
.skomo-status-pill::before{ content:''; width:7px; height:7px; border-radius:999px; }
.skomo-status-pill--godkendt,
.skomo-status-pill--leveret,
.skomo-status-pill--bekraeftet{ background:#E9F5EF; color:var(--sk-success); }
.skomo-status-pill--godkendt::before,
.skomo-status-pill--leveret::before,
.skomo-status-pill--bekraeftet::before{ background:var(--sk-success); }
.skomo-status-pill--grafisk{ background:#FEF3E6; color:#B26B00; }
.skomo-status-pill--grafisk::before{ background:#E59324; }
.skomo-status-pill--afventer{ background:#FDEBEC; color:#C11622; }
.skomo-status-pill--afventer::before{ background:var(--sk-accent); }
.skomo-status-pill--annulleret{ background:#F3F3F3; color:#8A8A8A; }
.skomo-status-pill--annulleret::before{ background:#B4B4B4; }

/* Genbestil + Se ordre-knapper */
/* --- Mængderabat i kurven (skuffe + kurv-side) --- */
.skomo-cart__unit{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:2px 0 8px; font-family:var(--sk-font-ui); font-size:13px; color:var(--sk-ink-2); }
.skomo-cart__unit span{ color:var(--sk-muted,#6A6D71); font-weight:400; }
.skomo-cart__unit .skomo-cart__disc,
.skomo-cartpage__saved{ display:inline-flex; align-items:center; gap:4px; padding:2px 9px; border-radius:999px; background:#E9F5EF; color:var(--sk-success); font-size:12px; font-weight:600; }
.skomo-cartpage__saved{ background:#E9F5EF; }
.skomo-cartpage__saved .woocommerce-Price-amount{ font-weight:700; }
/* I skuffen står besparelsen på egen linje (kun ~400 px bred), ikke inline som på
   kurv-siden. Lidt luft, så den ikke klistrer op ad stykprisen. */
.skomo-cart__saved{ margin:0 0 8px; }
/* Næste-trin-hint i skuffen — kompakt udgave af kurv-sidens.
   display:block (ikke flex): i en flex-container er teksten og prisen hvert sit
   element, så prisen hopper ned som en klump og efterlader et enkelt ord ("på")
   alene på linjen. Som almindeligt tekstflow brydes sætningen naturligt. */
.skomo-cart__nexttier{ display:block; margin:0 0 8px; padding:7px 11px; border-radius:10px; background:#FAFAFA; border:1px dashed #E4E4E4; font-family:var(--sk-font-ui); font-size:12px; line-height:1.5; color:var(--sk-muted,#6A6D71); text-wrap:pretty; }
/* ⚠️ `display:block` ovenfor slår browserens egen `[hidden]`-regel ihjel, så et
   TOMT næste-trin-felt blev vist som en tom grå stiplet bjælke. Ses når kunden er
   på ØVERSTE mængdetrin, hvor der ikke er et næste trin at fortælle om
   (fundet på Camillas skærmbillede 2026-08-04). Samme mønster som de øvrige
   `[hidden]`-regler i filen. */
.skomo-cart__nexttier[hidden],
.skomo-cartpage__nexttier[hidden],
.skomo-cartpage__saved[hidden]{ display:none !important; }
.skomo-cart__nexttier svg{ color:var(--sk-accent); vertical-align:-2px; margin-right:5px; }
.skomo-cart__nexttier .woocommerce-Price-amount{ font-weight:700; color:var(--sk-ink-2); white-space:nowrap; }
.skomo-cart__nexttier .skomo-cartpage__nexttier-pct{ display:inline-block; margin-left:5px; padding:1px 6px; border-radius:999px; background:var(--sk-accent); color:#fff; font-size:11px; font-weight:700; white-space:nowrap; }

/* Samme princip på kurv-siden: almindeligt tekstflow, så sætningen ikke knækker
   midt i en sætningsdel når prisen ikke kan være på linjen. */
.skomo-cartpage__nexttier{ display:block; margin-top:8px; padding:8px 13px; border-radius:12px; background:#FAFAFA; border:1px dashed #E0E0E0; font-family:var(--sk-font-ui); font-size:13px; line-height:1.5; color:var(--sk-ink-2); text-wrap:pretty; }
.skomo-cartpage__nexttier svg{ color:var(--sk-accent); vertical-align:-2px; margin-right:5px; }
.skomo-cartpage__nexttier .woocommerce-Price-amount{ font-weight:700; white-space:nowrap; }
.skomo-cartpage__nexttier-pct{ display:inline-block; margin-left:5px; padding:1px 7px; border-radius:999px; background:var(--sk-accent); color:#fff; font-size:11.5px; font-weight:700; white-space:nowrap; }

/* "Log ind for at se priser" hvor prisen ellers ville stå (gæster) */
.skomo-price-login{ font-family:var(--sk-font-ui); font-size:13px; font-weight:600; color:var(--sk-muted,#6A6D71); }

/* Afvisningsbesked ved Genbestil (fx spærret kunde) */
.skomo-reorder-error{ display:block; margin-top:8px; max-width:320px; font-family:var(--sk-font-ui); font-size:13px; line-height:1.5; color:#C11622; background:#FDEBEC; border-radius:10px; padding:8px 12px; }
.skomo-ordermodal__body .skomo-reorder-error{ max-width:none; margin:0 0 14px; }
/* Log ind for at se priser (gæst på produktsiden) */
.skomo-pdp__loginprompt-alt{ display:inline-block; margin-left:14px; font-family:var(--sk-font-ui); font-size:14px; font-weight:600; color:var(--sk-ink-2); text-decoration:underline; }

/* Korrektur-svar: Godkend (fyldt grøn) + Rettelse (outline) — samme pille-form som Genbestil */
.skomo-btn-approve,
.skomo-btn-decline{ cursor:pointer; font-family:var(--sk-font-ui); font-weight:600; font-size:13.5px; padding:9px 15px; border-radius:999px; white-space:nowrap; transition:all .15s ease; }
.skomo-btn-approve{ border:1.5px solid var(--sk-success) !important; background:var(--sk-success) !important; color:#fff !important; }
.skomo-btn-approve:hover,
.skomo-btn-approve:focus{ filter:brightness(.93); }
.skomo-btn-decline{ border:1.5px solid #D8D8D8 !important; background:#fff !important; color:#4A4D51 !important; }
.skomo-btn-decline:hover,
.skomo-btn-decline:focus{ border-color:var(--sk-ink-2) !important; color:#15171A !important; }
/* Note-dialogen (i ordre-modalens skal) */
.skomo-korrmodal__title{ font-family:var(--sk-font-display,var(--sk-font-ui)); font-size:20px; margin:0 0 4px; letter-spacing:-.02em; }
.skomo-korrmodal__meta{ margin:0 0 14px; font-size:13px; color:var(--sk-muted,#6A6D71); }
.skomo-korrmodal__lead{ margin:0 0 14px; font-size:14.5px; line-height:1.6; }
.skomo-korrmodal__note{ width:100%; box-sizing:border-box; border:1px solid #E0E0E0 !important; border-radius:12px !important; padding:12px 14px !important; font-family:var(--sk-font-ui); font-size:14.5px; background:#fff !important; resize:vertical; }
.skomo-korrmodal__note:focus{ outline:none; border-color:var(--sk-ink-2) !important; }
.skomo-korrmodal__err{ margin:10px 0 0; font-size:13.5px; color:var(--sk-accent); }
.skomo-korrmodal__actions{ display:flex; gap:10px; justify-content:flex-end; margin-top:18px; }
.skomo-korrmodal__send{ cursor:pointer; font-family:var(--sk-font-ui); font-weight:600; font-size:14px; padding:11px 22px; border-radius:999px; border:1.5px solid var(--sk-ink-2) !important; background:var(--sk-ink-2,#15171A) !important; color:#fff !important; }
.skomo-korrmodal__send.is-approve{ border-color:var(--sk-success) !important; background:var(--sk-success) !important; }
.skomo-korrmodal__send:hover{ filter:brightness(.93); }
.skomo-korrmodal__done{ padding:26px 4px; text-align:center; font-size:15.5px; }

.skomo-btn-reorder{ cursor:pointer; font-family:var(--sk-font-ui); font-weight:600; font-size:13.5px; padding:9px 16px; border-radius:999px; border:1.5px solid var(--sk-accent); background:#fff !important; color:var(--sk-accent) !important; white-space:nowrap; transition:all .15s ease; }
.skomo-btn-reorder:hover,
.skomo-btn-reorder:focus{ background:var(--sk-accent) !important; border-color:var(--sk-accent) !important; color:#fff !important; }
.skomo-btn-reorder.is-added,
.skomo-btn-reorder.is-added:hover,
.skomo-btn-reorder.is-added:focus{ background:var(--sk-success) !important; border-color:var(--sk-success) !important; color:#fff !important; }
.skomo-btn-view{ cursor:pointer; font-family:var(--sk-font-ui); font-weight:600; font-size:13.5px; padding:9px 16px; border-radius:999px; border:1.5px solid #DADADA; background:#fff; color:var(--sk-ink-2); text-decoration:none; white-space:nowrap; }
.skomo-btn-view:hover{ border-color:var(--sk-ink-2); color:var(--sk-ink-2); }

/* ordrehistorik-kort */
.skomo-orders{ display:flex; flex-direction:column; gap:14px; }
.skomo-orders-empty{ padding:8px 0; text-align:left; font-family:var(--sk-font-ui); color:var(--sk-muted); font-size:14.5px; }
.skomo-orders-empty a{ color:var(--sk-ink-2); text-decoration:underline; }
.skomo-order-row{ border:1px solid #E8E8E8; border-radius:16px; padding:18px 22px; display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.skomo-order-row__main{ flex:1; min-width:200px; }
.skomo-order-row__nrline{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.skomo-order-row__nr{ font-family:var(--sk-font-display); font-weight:700; font-size:15.5px; color:var(--sk-ink-2); }
.skomo-order-row__nrline .skomo-status-pill{ padding:4px 11px; font-size:12px; }
.skomo-order-row__nrline .skomo-status-pill::before{ width:6px; height:6px; }
.skomo-order-row__meta{ margin:5px 0 0; font-family:var(--sk-font-ui); font-size:13.5px; color:#8A8A8A; }
.skomo-order-row__total{ font-family:var(--sk-font-display); font-weight:700; font-size:16px; color:var(--sk-ink-2); white-space:nowrap; }
.skomo-order-row__total .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; }
.skomo-order-row__actions{ display:flex; gap:10px; flex-wrap:wrap; }
.skomo-orders__pager{ display:flex; gap:10px; justify-content:center; margin-top:18px; }

/* BC-ordre-detaljemodal ("Se ordre") */
.skomo-ordermodal{ position:fixed; inset:0; z-index:100000; display:flex; align-items:center; justify-content:center; padding:20px; }
.skomo-ordermodal[hidden]{ display:none; }
.skomo-ordermodal__backdrop{ position:absolute; inset:0; background:rgba(11,11,13,.55); -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px); opacity:0; transition:opacity .2s ease; }
.skomo-ordermodal__sheet{ position:relative; z-index:1; width:100%; max-width:660px; max-height:86vh; overflow-y:auto; background:#fff; border-radius:20px; box-shadow:0 30px 70px rgba(11,11,13,.4); padding:26px 26px 22px; transform:translateY(12px) scale(.98); opacity:0; transition:transform .22s ease, opacity .22s ease; }
.skomo-ordermodal.is-open .skomo-ordermodal__backdrop{ opacity:1; }
.skomo-ordermodal.is-open .skomo-ordermodal__sheet{ transform:none; opacity:1; }
.skomo-ordermodal__close{ position:absolute; top:16px; right:18px; border:none; background:none; cursor:pointer; font-size:26px; line-height:1; color:var(--sk-muted); padding:2px 6px; }
.skomo-ordermodal__close:hover{ color:var(--sk-ink-2); }
.skomo-ordermodal__nrline{ display:flex; align-items:center; gap:11px; flex-wrap:wrap; }
.skomo-ordermodal__nr{ font-family:var(--sk-font-display); font-weight:800; font-size:20px; color:var(--sk-ink); }
.skomo-ordermodal__meta{ margin:6px 0 0; font-family:var(--sk-font-ui); font-size:13.5px; color:#8A8A8A; }
.skomo-ordermodal__lines{ margin:20px 0 4px; border-top:1px solid #EFEFEF; }
.skomo-ordermodal__line{ display:grid; grid-template-columns:minmax(0,1fr) 88px 108px auto; gap:12px; align-items:center; padding:13px 0; border-bottom:1px solid #F2F2F2; font-family:var(--sk-font-ui); }
.skomo-ordermodal__ldesc{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.skomo-ordermodal__ldesc span{ font-size:14px; color:var(--sk-ink-2); line-height:1.35; }
.skomo-ordermodal__ldesc small{ font-size:12px; color:#A2A2A2; }
.skomo-ordermodal__lqty{ font-size:13.5px; color:#3A3D41; white-space:nowrap; }
.skomo-ordermodal__lprice{ font-size:14px; font-weight:600; color:var(--sk-ink-2); text-align:right; white-space:nowrap; }
.skomo-ordermodal__lprice .woocommerce-Price-amount{ color:inherit !important; font-family:inherit !important; }
.skomo-ordermodal__lact{ text-align:right; }
.skomo-btn-reorder--sm{ padding:6px 12px; font-size:12.5px; }
.skomo-ordermodal__foot{ margin-top:18px; display:flex; align-items:flex-end; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.skomo-ordermodal__totals{ display:flex; flex-direction:column; gap:5px; font-family:var(--sk-font-ui); font-size:13.5px; color:#6A6D71; min-width:180px; }
.skomo-ordermodal__totals span{ display:flex; justify-content:space-between; gap:24px; }
.skomo-ordermodal__totals strong{ color:var(--sk-ink-2); font-weight:600; }
.skomo-ordermodal__totals .is-total{ font-size:15px; color:var(--sk-ink); padding-top:5px; border-top:1px solid #EFEFEF; margin-top:3px; }
.skomo-ordermodal__totals .is-total strong{ font-family:var(--sk-font-display); font-weight:800; }
.skomo-ordermodal__actions{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin-left:auto; }
.skomo-ordermodal__actions .skomo-btn-view{ text-decoration:none; }
.skomo-ordermodal__error{ padding:24px 6px; text-align:center; font-family:var(--sk-font-ui); font-size:14.5px; color:var(--sk-muted); }
@media (max-width:560px){
	.skomo-ordermodal__line{ grid-template-columns:minmax(0,1fr) auto; grid-auto-rows:auto; }
	.skomo-ordermodal__lqty,.skomo-ordermodal__lprice{ text-align:left; }
	.skomo-ordermodal__foot{ flex-direction:column; align-items:stretch; }
	.skomo-ordermodal__actions{ margin-left:0; }
}

/* kontoinformation */
.skomo-konto-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.skomo-konto-card{ border:1px solid #E8E8E8; border-radius:16px; padding:22px 24px; }
.skomo-konto-card--wide{ grid-column:1 / -1; }
.skomo-konto-card__kicker{ display:block; font-family:var(--sk-font-ui); font-size:11px; font-weight:600; letter-spacing:.05em; text-transform:uppercase; color:#A2A2A2; margin-bottom:9px; }
.skomo-konto-card__data{ font-family:var(--sk-font-ui); font-size:15px; line-height:1.7; color:#3A3D41; }
.skomo-konto-card__data strong{ color:var(--sk-ink-2); }
.skomo-konto-card__head{ display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:14px; }
.skomo-konto-card__head .skomo-konto-card__kicker{ margin-bottom:0; }
.skomo-invite-link{ font-family:var(--sk-font-ui); font-size:13px; font-weight:600; color:var(--sk-accent); text-decoration:none; }
.skomo-user-row{ display:flex; align-items:center; gap:12px; }
.skomo-user-row + .skomo-user-row{ margin-top:12px; }
.skomo-user-row__avatar{ width:38px; height:38px; border-radius:999px; background:#F4F4F4; display:flex; align-items:center; justify-content:center; font-family:var(--sk-font-display); font-weight:700; font-size:14px; color:var(--sk-ink-2); flex:0 0 auto; }
.skomo-user-row__who{ flex:1; min-width:0; }
.skomo-user-row__name{ font-family:var(--sk-font-ui); font-size:14.5px; font-weight:600; color:var(--sk-ink-2); }
.skomo-user-row__email{ font-family:var(--sk-font-ui); font-size:13px; color:var(--sk-muted); }
.skomo-user-row__role{ font-family:var(--sk-font-ui); font-size:12px; font-weight:600; color:#6B6B6B; background:#F4F4F4; border-radius:999px; padding:5px 12px; white-space:nowrap; }
.skomo-konto-note{ margin:16px 2px 0; font-family:var(--sk-font-ui); font-size:13.5px; color:#8A8A8A; }
.skomo-konto-note a{ color:var(--sk-ink-2); text-decoration:underline; text-underline-offset:2px; }

/* kontoinformation: adgangskode- + nyhedsbrevs-formularer */
.skomo-konto-form{ margin:0; }
.skomo-konto-form__group{ margin-bottom:12px; }
.skomo-konto-form .skomo-check{ padding:2px 0 10px; }
/* radio-variant af den custom checkbox (nyhedsbrevs-status) */
.skomo-check--radio .skomo-check__box{ border-radius:999px; }
.skomo-check--radio .skomo-check__box::after{ content:''; width:8px; height:8px; border-radius:999px; background:#fff; opacity:0; transition:opacity .12s ease; }
.skomo-check--radio input:checked ~ .skomo-check__box::after{ opacity:1; }
.skomo-konto-save{ cursor:pointer; margin-top:6px; font-family:var(--sk-font-ui); font-weight:600; font-size:13.5px; padding:10px 20px; border-radius:999px; border:none; background:var(--sk-ink-2) !important; color:#fff !important; white-space:nowrap; transition:filter .15s ease; }
.skomo-konto-save:hover,
.skomo-konto-save:focus{ background:var(--sk-ink-2) !important; color:#fff !important; filter:brightness(1.25); }

/* Woo-rester på kontosiden: ingen default-styling omkring vores markup */
.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-notices-wrapper:empty{ display:none; }

/* ordre-detaljer ("Se ordre" / view-order) — Woo's native markup i design-look */
.skomo-account .woocommerce-MyAccount-content > p{ font-family:var(--sk-font-ui); font-size:14.5px; line-height:1.6; color:var(--sk-body); }
.skomo-account .woocommerce-MyAccount-content mark{ background:none; color:var(--sk-ink-2); font-weight:700; }
.skomo-account .woocommerce-MyAccount-content > h2,
.skomo-account .woocommerce-order-details__title,
.skomo-account .woocommerce-column__title{ font-family:var(--sk-font-display); font-weight:700; font-size:20px; letter-spacing:-.01em; color:var(--sk-ink); margin:28px 0 14px; }
.skomo-account table.shop_table{ width:100%; border-collapse:separate; border-spacing:0; border:1px solid #E8E8E8; border-radius:16px; overflow:hidden; font-family:var(--sk-font-ui); font-size:14px; color:#3A3D41; margin:0; }
.skomo-account table.shop_table th,
.skomo-account table.shop_table td{ border:none; border-bottom:1px solid #F2F2F2; padding:14px 20px; text-align:left; background:#fff; }
.skomo-account table.shop_table thead th{ background:#FAFAFA; border-bottom:1px solid #EFEFEF; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--sk-muted); }
.skomo-account table.shop_table tfoot th{ font-weight:600; color:var(--sk-ink-2); }
.skomo-account table.shop_table tr:last-child th,
.skomo-account table.shop_table tr:last-child td{ border-bottom:none; }
.skomo-account table.shop_table .woocommerce-Price-amount{ color:inherit; }
.skomo-account .woocommerce-table--order-details .product-name a{ color:var(--sk-ink-2); font-weight:600; text-decoration:none; }
.skomo-account .woocommerce-table--order-details .product-name a:hover{ color:var(--sk-accent); }
.skomo-account .woocommerce-table--order-details .product-quantity{ color:var(--sk-muted); font-weight:400; }
.skomo-account .woocommerce-customer-details address{ border:1px solid #E8E8E8; border-radius:16px; padding:20px 24px; font-family:var(--sk-font-ui); font-size:14.5px; line-height:1.8; color:#3A3D41; font-style:normal; }
.skomo-account .woocommerce-customer-details address .woocommerce-customer-details--phone,
.skomo-account .woocommerce-customer-details address .woocommerce-customer-details--email{ margin:6px 0 0; }

/* responsive */
@media (max-width:900px){
  .skomo-account__grid{ grid-template-columns:1fr; }
  .skomo-account__nav{ position:static; flex-direction:row; overflow-x:auto; scrollbar-width:none; }
  .skomo-account__nav::-webkit-scrollbar{ display:none; }
}
@media (max-width:640px){
  .skomo-konto-grid{ grid-template-columns:1fr; }
  .skomo-konto-card--wide{ grid-column:auto; }
  .skomo-korrektur-search{ flex:1; }
}

/* =====================================================================
 * Mobil-header (Elementor #24, container #949a4a1 — kun synlig < desktop):
 * logo VENSTRE · ikoner + burgermenu HØJRE. Var centreret, fordi Elementor
 * satte flex-wrap:wrap + 80%-bred ikon-container → wrap/centrering.
 * ===================================================================== */
.elementor-24 .elementor-element.elementor-element-949a4a1{ flex-wrap:nowrap !important; justify-content:space-between !important; }
.elementor-24 .elementor-element.elementor-element-949a4a1 > .elementor-element-1c6702b{ text-align:left !important; margin-right:auto !important; } /* logo venstre, skubber resten til højre */
.elementor-24 .elementor-element.elementor-element-949a4a1 > .elementor-element-e810b1c{ width:auto !important; max-width:none !important; flex:0 1 auto !important; justify-content:flex-end !important; }
/* mobil-headeren skal have MINDRE sidepadding end den globale gutter: den fik
   både Elementors egne 24px OG den globale 16px på .e-con-inner = ~40px. */
@media (max-width:1024px){
  .elementor-24 .elementor-element.elementor-element-949a4a1{ --padding-left:0px !important; --padding-right:0px !important; padding-left:0 !important; padding-right:0 !important; }
  .elementor-location-header .elementor-element-949a4a1.e-con-boxed > .e-con-inner{ padding-left:14px !important; padding-right:14px !important; }
}
/* Elementor sætter bredden via CUSTOM PROPERTY (--width:80%) + egne breakpoint-regler,
   som `width:auto` ovenfor ikke rammer → nulstil selve variablen, og gentag inde i
   mobil/tablet-breakpointet hvor Elementors egne regler bor (højere kaskade-vægt). */
.elementor-24 .elementor-element.elementor-element-e810b1c{ --width:auto !important; --container-widget-width:auto !important; }
@media (max-width:1024px){
  .elementor-24 .elementor-element.elementor-element-949a4a1{ --flex-wrap:nowrap !important; --justify-content:space-between !important; flex-wrap:nowrap !important; justify-content:space-between !important; }
  .elementor-24 .elementor-element.elementor-element-949a4a1 > .elementor-element-1c6702b{ --width:auto !important; width:auto !important; flex:0 0 auto !important; margin-right:auto !important; text-align:left !important; }
  .elementor-24 .elementor-element.elementor-element-949a4a1 > .elementor-element-e810b1c{ --width:auto !important; --justify-content:flex-end !important; width:auto !important; max-width:none !important; flex:0 1 auto !important; justify-content:flex-end !important; margin-left:auto !important; }
}

/* =====================================================================
 * MOBIL-SØGEOVERLAY (top-sheet m. live-søgning) — design_handoff_woo_search.
 * Åbnes af mobilmenuens søge-ikon (JS: .skomo-search-toggle). Kun mobil/
 * tablet (skjult ≥981px) — desktop beholder header-pillen indtil videre.
 * ===================================================================== */
.skomo-search-overlay{ position:fixed; inset:0; z-index:100000; background:rgba(11,11,13,.55); -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px); opacity:0; pointer-events:none; transition:opacity .18s ease; }
.skomo-search-sheet{ position:fixed; top:0; left:0; right:0; z-index:100001; background:#fff; border-radius:0 0 24px 24px; box-shadow:0 24px 60px rgba(11,11,13,.35); display:flex; flex-direction:column; max-height:100dvh; transform:translateY(-14px); opacity:0; pointer-events:none; transition:transform .22s ease, opacity .22s ease; }
.skomo-search--open .skomo-search-overlay{ opacity:1; pointer-events:auto; }
.skomo-search--open .skomo-search-sheet{ transform:translateY(0); opacity:1; pointer-events:auto; }
html.skomo-search-lock,
html.skomo-search-lock body{ overflow:hidden !important; }

/* input-række */
.skomo-search-bar{ display:flex; align-items:center; gap:12px; padding:14px 18px 12px; }
.skomo-search-field{ flex:1; display:flex; align-items:center; gap:10px; background:#F4F4F4; border:1.5px solid transparent; border-radius:999px; padding:12px 16px; transition:border-color .15s ease, background .15s ease; }
.skomo-search-field:focus-within{ border-color:var(--sk-ink-2); background:#fff; } /* neutral (ikke rød) aktiv-kant — kundeønske */
.skomo-search-field > svg{ color:var(--sk-muted); flex:0 0 auto; }
.skomo-search-field input{ flex:1; min-width:0; border:none !important; outline:none !important; background:transparent !important; box-shadow:none !important; padding:0 !important; font-family:var(--sk-font-ui); font-size:16px; font-weight:500; color:var(--sk-ink-2); } /* 16px = ingen iOS-zoom */
.skomo-search-field input::placeholder{ color:var(--sk-muted); }
.skomo-search-field input::-webkit-search-cancel-button{ -webkit-appearance:none; }
.skomo-search-clear{ border:none; cursor:pointer; flex:0 0 auto; width:22px; height:22px; border-radius:999px; background:#DADADA !important; color:#fff !important; display:none; align-items:center; justify-content:center; padding:0; }
.skomo-search-clear.is-visible{ display:flex; }
.skomo-search-cancel,
.skomo-search-cancel:focus{ border:none; background:none !important; cursor:pointer; padding:6px 2px; font-family:var(--sk-font-ui); font-size:15px; font-weight:600; color:var(--sk-ink-2) !important; white-space:nowrap; }
.skomo-search-cancel:hover{ background:none !important; color:var(--sk-accent) !important; }

/* scrollbart indhold + kickers */
.skomo-search-content{ overflow-y:auto; padding:2px 18px 22px; font-family:var(--sk-font-ui); }
.skomo-search-kicker{ font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#A2A2A2; margin-top:20px; }
.skomo-search-kicker:first-child{ margin-top:12px; }
.skomo-search-kicker-row{ display:flex; align-items:center; justify-content:space-between; margin-top:12px; }
.skomo-search-kicker-row .skomo-search-kicker{ margin:0; }
.skomo-recent-clear{ border:none; background:none !important; cursor:pointer; padding:0; font-family:var(--sk-font-ui); font-size:12.5px; font-weight:600; color:var(--sk-muted) !important; }
.skomo-recent-clear:hover{ color:var(--sk-accent) !important; }

/* seneste søgninger */
.skomo-recent-list{ display:flex; flex-direction:column; margin-top:4px; }
.skomo-recent-item{ display:flex; align-items:center; gap:12px; border:none; background:none !important; cursor:pointer; padding:11px 2px; font-family:var(--sk-font-ui); font-size:15px; color:#3A3D41 !important; text-align:left; border-bottom:1px solid #F4F4F4; border-radius:0; }
.skomo-recent-item:hover{ color:var(--sk-ink) !important; }
.skomo-recent-item__ico{ color:#C0C0C0; flex:0 0 auto; }
.skomo-recent-item__term{ flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.skomo-recent-item__arrow{ color:#C7C9CC; flex:0 0 auto; }

/* chips (populære + kategori-hits) — egen klasse, så kategorisidens .skomo-chip ikke kolliderer */
.skomo-search-chiprow{ display:flex; flex-wrap:wrap; gap:9px; margin-top:11px; }
.skomo-search-chip,
.skomo-search-chip:focus{ border:1.5px solid #E6E6E6; background:#fff !important; cursor:pointer; border-radius:999px; padding:9px 15px; font-family:var(--sk-font-ui); font-size:13.5px; font-weight:600; color:var(--sk-ink-2) !important; white-space:nowrap; text-decoration:none; display:inline-flex; align-items:center; gap:7px; }
.skomo-search-chip:hover{ background:#fff !important; border-color:var(--sk-accent); color:var(--sk-accent) !important; }
.skomo-search-chip__count{ color:var(--sk-muted); font-weight:500; }

/* "Gå direkte til"-genveje */
.skomo-shortcut-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:11px; }
.skomo-shortcut{ display:flex; align-items:center; gap:11px; text-decoration:none; background:#F8F8F8; border:1px solid #EFEFEF; border-radius:14px; padding:13px 14px; min-width:0; }
.skomo-shortcut:hover{ border-color:#DADADA; background:#fff; }
.skomo-shortcut__badge{ width:34px; height:34px; border-radius:10px; background:rgba(239,25,35,.08); display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
.skomo-shortcut__badge img{ width:18px; height:18px; object-fit:contain; }
.skomo-shortcut__label{ display:block; font-size:13.5px; font-weight:600; color:var(--sk-ink-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.skomo-shortcut__count{ display:block; font-size:11.5px; color:var(--sk-muted); margin-top:1px; white-space:nowrap; }

/* resultat-rækker */
.skomo-hit-list{ display:flex; flex-direction:column; margin-top:4px; }
.skomo-hit{ display:flex; align-items:center; gap:13px; text-decoration:none; padding:11px 2px; border-bottom:1px solid #F4F4F4; }
.skomo-hit__thumb{ width:52px; height:52px; border-radius:11px; background:#F4F4F4; flex:0 0 auto; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.skomo-hit__thumb img{ width:100%; height:100%; object-fit:cover; }
.skomo-hit__info{ flex:1; min-width:0; }
.skomo-hit__name{ display:block; font-size:14.5px; font-weight:600; color:var(--sk-ink-2); line-height:1.3; }
.skomo-hit__cat{ display:block; font-size:12.5px; color:var(--sk-muted); margin-top:2px; }
.skomo-hit__price{ flex:0 0 auto; font-family:var(--sk-font-display); font-weight:700; font-size:13.5px; color:var(--sk-ink-2); white-space:nowrap; }

/* "Vis alle N resultater" */
.skomo-search-viewall,
.skomo-search-viewall:focus{ width:100%; margin-top:18px; border:none; cursor:pointer; background:var(--sk-accent) !important; color:#fff !important; border-radius:999px; padding:15px 20px; font-family:var(--sk-font-ui); font-size:15px; font-weight:700; white-space:nowrap; text-align:center; text-decoration:none; display:block; box-sizing:border-box; }
.skomo-search-viewall:hover{ background:var(--sk-accent) !important; color:#fff !important; filter:brightness(1.07); }

/* tom-tilstand */
.skomo-search-empty{ text-align:center; padding:38px 20px 26px; }
.skomo-search-empty[hidden]{ display:none; }
.skomo-search-empty__icon{ width:54px; height:54px; border-radius:999px; background:#F4F4F4; color:var(--sk-muted); display:flex; align-items:center; justify-content:center; margin:0 auto; }
.skomo-search-empty__title{ margin-top:14px; font-family:var(--sk-font-display); font-weight:700; font-size:16.5px; color:var(--sk-ink); }
.skomo-search-empty p{ margin:7px 0 0; font-size:13.5px; line-height:1.55; color:#8A8A8A; }
.skomo-search-empty p a{ color:var(--sk-ink-2); font-weight:600; text-decoration:underline; text-underline-offset:2px; }
.skomo-search-empty__reset,
.skomo-search-empty__reset:focus{ margin-top:16px; border:1.5px solid var(--sk-ink-2) !important; background:#fff !important; cursor:pointer; border-radius:999px; padding:10px 20px; font-family:var(--sk-font-ui); font-size:13.5px; font-weight:600; color:var(--sk-ink-2) !important; }
.skomo-search-empty__reset:hover{ background:var(--sk-ink-2) !important; color:#fff !important; }

/* paner styres via hidden-attributten */
#skomo-search [data-pane][hidden]{ display:none; }
#skomo-search [data-recent-section][hidden],
#skomo-search [data-cats-section][hidden]{ display:none; }

/* kun mobil/tablet — desktop har den forankrede popover nedenfor */
@media (min-width:981px){
  .skomo-search-overlay,
  .skomo-search-sheet{ display:none !important; }
}

/* =====================================================================
 * DESKTOP-SØGEPOPOVER (>980px) — design_handoff_woo_search (desktop-del).
 * Forankret i headerens e-search-widget (#9811856, position:relative via
 * .skomo-dsearch-anchor). Åbner på fokus; let scrim over indholdet;
 * headeren holdes klikbar via hævet z-index.
 * ===================================================================== */
.skomo-dsearch-anchor{ position:relative; }
.skomo-dsearch{ position:absolute; top:calc(100% + 10px); left:0; right:0; min-width:560px; z-index:100001; background:#fff; border:1px solid #ECECEC; border-radius:16px; box-shadow:0 20px 50px rgba(11,11,13,.16); overflow:hidden; opacity:0; transform:translateY(-8px); pointer-events:none; transition:opacity .16s ease, transform .16s ease; font-family:var(--sk-font-ui); }
.skomo-dsearch.is-open{ opacity:1; transform:none; pointer-events:auto; }
.skomo-dsearch[hidden]{ display:none; } /* før JS-montering */
.skomo-dsearch-body{ padding:6px 18px 16px; max-height:min(68vh,560px); overflow-y:auto; }
.skomo-dsearch-scrim{ position:fixed; inset:0; z-index:99990; background:rgba(11,11,13,.28); -webkit-backdrop-filter:blur(1.5px); backdrop-filter:blur(1.5px); opacity:0; pointer-events:none; transition:opacity .16s ease; }
body.skomo-dsearch-open .skomo-dsearch-scrim:not([hidden]){ opacity:1; pointer-events:auto; }
body.skomo-dsearch-open .elementor-location-header{ position:relative; z-index:99995; } /* header over scrim = fuldt interaktiv */

/* (Handoff'ets røde fokus-kant/ring er BEVIDST udeladt: Elementors
   e-search-input-wrapper er firkantet og større end den synlige pille, så
   ringen tegnede en "firkantet streg" om feltet — fjernet på kundens ønske.) */
/* clear-× injiceres af JS i formen (pillen) og positioneres absolut —
   lodret centreret, lige til venstre for lup-knappen */
.elementor-element-9811856 .e-search-form{ position:relative; }
.skomo-dsearch-clear,
.skomo-dsearch-clear:focus{ display:none; position:absolute; right:56px; top:50%; transform:translateY(-50%); z-index:3; border:none; cursor:pointer; width:20px; height:20px; border-radius:999px; background:#DADADA !important; color:#fff !important; align-items:center; justify-content:center; padding:0; }
.skomo-dsearch-clear.is-visible{ display:flex; }
.skomo-dsearch-clear:hover{ background:#C4C4C4 !important; color:#fff !important; }

/* idle: recent-chips + 2-kolonne-grid (populære liste / genveje) */
.skomo-dsearch-recentrow{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.skomo-dsearch-recentchip,
.skomo-dsearch-recentchip:focus{ display:inline-flex; align-items:center; gap:7px; border:none; cursor:pointer; background:#F4F4F4 !important; color:var(--sk-ink-2) !important; border-radius:999px; padding:8px 14px; font-family:var(--sk-font-ui); font-size:13px; font-weight:600; }
.skomo-dsearch-recentchip svg{ color:var(--sk-muted); flex:0 0 auto; }
.skomo-dsearch-recentchip:hover{ background:#ECECEC !important; color:var(--sk-ink-2) !important; }
.skomo-dsearch-grid{ display:grid; grid-template-columns:minmax(0,1fr) 236px; gap:24px; }
.skomo-dsearch-poplist{ display:flex; flex-direction:column; margin-top:8px; }
.skomo-dsearch-popitem,
.skomo-dsearch-popitem:focus{ display:flex; align-items:center; gap:11px; border:none; background:none !important; cursor:pointer; padding:9px 2px; font-family:var(--sk-font-ui); font-size:14.5px; font-weight:500; color:var(--sk-ink-2) !important; text-align:left; text-decoration:none; border-radius:8px; }
.skomo-dsearch-popitem svg{ color:var(--sk-muted); flex:0 0 auto; }
.skomo-dsearch-popitem:hover{ background:none !important; color:var(--sk-accent) !important; }
.skomo-dsearch-popitem:hover svg{ color:var(--sk-accent); }
.skomo-dsearch-shortcuts{ display:flex; flex-direction:column; gap:8px; margin-top:8px; }
#skomo-dsearch .skomo-shortcut{ padding:10px 12px; border-radius:12px; }
#skomo-dsearch .skomo-shortcut__badge{ width:30px; height:30px; border-radius:9px; }
#skomo-dsearch .skomo-shortcut__badge img{ width:16px; height:16px; }
#skomo-dsearch .skomo-shortcut__label{ font-size:13px; }
#skomo-dsearch .skomo-shortcut__count{ font-size:11px; }

/* resultater: kompaktere hit-rækker m. hover-flade */
#skomo-dsearch .skomo-hit{ padding:9px 8px; margin:0 -8px; border-bottom:none; border-radius:12px; }
#skomo-dsearch .skomo-hit:hover{ background:#F8F8F8; }
#skomo-dsearch .skomo-hit__thumb{ width:46px; height:46px; border-radius:10px; }

/* "Vis alle N resultater →" — fuldbredde-bar i bunden (ikke rød pille) */
.skomo-dsearch-viewall,
.skomo-dsearch-viewall:focus{ display:flex; align-items:center; justify-content:center; gap:8px; background:#FAFAFA !important; border-top:1px solid #EFEFEF; padding:13px 18px; font-family:var(--sk-font-ui); font-size:14px; font-weight:700; color:var(--sk-ink-2) !important; text-decoration:none; }
.skomo-dsearch-viewall:hover{ background:#FAFAFA !important; color:var(--sk-accent) !important; }
.skomo-dsearch-viewall[hidden]{ display:none; }

/* tom-tilstand (kompakt, ingen Ryd-knap på desktop) */
.skomo-dsearch-empty{ text-align:center; padding:30px 20px 26px; }
.skomo-dsearch-empty[hidden]{ display:none; }
.skomo-dsearch-empty__icon{ width:48px; height:48px; border-radius:999px; background:#F4F4F4; color:var(--sk-muted); display:flex; align-items:center; justify-content:center; margin:0 auto; }
.skomo-dsearch-empty__title{ margin-top:12px; font-family:var(--sk-font-display); font-weight:700; font-size:16px; color:var(--sk-ink); }
.skomo-dsearch-empty p{ margin:6px 0 0; font-size:13.5px; line-height:1.55; color:#8A8A8A; }
.skomo-dsearch-empty p a{ color:var(--sk-ink-2); font-weight:600; text-decoration:underline; text-underline-offset:2px; }

#skomo-dsearch [data-pane][hidden],
#skomo-dsearch [data-recent-section][hidden],
#skomo-dsearch [data-cats-section][hidden]{ display:none; }

/* kun desktop */
@media (max-width:980px){
  .skomo-dsearch,
  .skomo-dsearch-scrim,
  .skomo-dsearch-clear{ display:none !important; }
}
.skomo-search__close:hover{ color:var(--sk-ink-2); }
